UniMate AI

SENG2011

软件工程工作坊 2

6 学分难度

课程定位 SENG2011 是 UNSW 软件工程专业(SENGA)最核心的‘实战炼金炉’。如果说基础编程教你写代码,这门课则是教你如何在复杂的团队中‘交付工程’。它模拟了真实工业界的开发环境,要求学生在 10 周内完成一个从需求分析到线上部署的全功能软件产品。它是通往高级软件架构及 Capstone 项目的必经之路,也是简历上最能体现工程能力的实战经历。 技术栈与学习内容 课程围绕‘敏捷开发 (Agile)’展开。核心技术栈由团队自选,通常涵盖:前端(React/Next.js)、后端(Node.js/Python/Go)、数据库(PostgreSQL/MongoDB)以及 DevOps 工具链(GitLab CI/CD, Docker)。学习内容涵盖:需求工程(User Stories)、系统建模、设计模式应用、持续集成、自动化测试(单元测试与端到端测试)、以及极其严格的代码审查 (Code Review) 机制。课程强调‘工程流程的规范性’胜于‘功能的多寡’。 课程结构 10 周全实战项目模式。第一周组建固定团队,后续分为三个 Sprint 进行迭代开发。没有期末考试,所有分数均来自:Sprint 交付物、技术设计文档(TDD)、团队演示 (Demo) 以及个人代码库贡献。评估极其硬核,助教会深入检查每一行 Commit 的逻辑与 Linting 规范。 适合人群 软件工程专业学生。如果你想体验真实的‘硅谷式’开发流程,或者想摆脱乱写代码的坏习惯,这门课会让你脱胎换骨。建议团队每周至少进行 3 次同步会议,个人投入 20 小时以上。

Course decision

选课先看

先看考核重心、截止节奏和入门要求,再决定这门课是否适合你的学期安排。

考核总权重

100%

4 项考核

最高单项

35%

Sprint Deliverables (1 & 2)

期末考试

成绩来自平时考核与项目

Hurdle

1 项

需要单独满足

Deadline map

考核时间线

按截止周排列作业节点;持续考核会保留在下方完整考核结构中。

Week 6

Sprint Deliverables (1 & 2)

35%

涵盖代码质量、Git 分支管理及功能实现的阶段性迭代评估。

Week 8

Technical Design Document

20%

一份详尽的系统架构说明书,涵盖数据库设计、API 规范及选型权衡分析。

Week 10

Individual Peer Assessment

10%

由队友评价及 GitLab 贡献统计共同决定的个人参与权重分。

Week 11

Implementation & Demo

35%

最终系统的稳定性、创新性、代码整洁度及现场演示表现。

Syllabus

每周大纲

默认只展示每周独有的知识重点;节奏、考核、Tutorial 和避坑信息按需展开。

  1. 1

    团队组建与需求对接

    选择项目主题,建立 GitLab 工作流,撰写初步需求说明书与 User Stories。

  2. 2

    架构设计与技术选型

    系统架构图设计,数据库建模,API 规格定义,确定 Sprint 1 开发目标。

  3. 3

    Sprint 1:骨架构建与 CI/CD

    建立自动化流水线,完成基础 CRUD 功能,确保前后端联通。

  4. 4

    Sprint 1 Review 与重构

    第一个迭代演示,分析技术债,根据反馈调整 Sprint 2 优先级。

  5. 5

    Sprint 2:复杂逻辑实现

    攻克认证鉴权、实时同步或高级算法模块,完善单元测试覆盖率。

  6. 6

    灵活性周 (Flex Week)

    集中修复 Sprint 2 中的 Bug,优化代码异味,整理技术设计文档。

  7. 7

    集成测试与 UI 优化

    跨模块联调,执行端到端 (E2E) 测试,优化交互体验 (UX)。

  8. 8

    Sprint 3:完善与加固

    处理边缘情况(Edge cases),进行安全性审计,准备大规模并发测试数据。

  9. 9

    文档编制与性能评估

    完成用户手册、技术总结及性能分析报告。

  10. 10

    Final Demo Day

    现场演示全功能系统,接受导师与同伴的技术质询(Q&A)。

Assessment

考核结构

Sprint Deliverables (1 & 2)

涵盖代码质量、Git 分支管理及功能实现的阶段性迭代评估。

35%

Week 6

Technical Design Document

一份详尽的系统架构说明书,涵盖数据库设计、API 规范及选型权衡分析。

20%

Week 8

Implementation & DemoHurdle

最终系统的稳定性、创新性、代码整洁度及现场演示表现。

35%

Week 11

Individual Peer Assessment

由队友评价及 GitLab 贡献统计共同决定的个人参与权重分。

10%

Week 10

Assignments

作业详情

Assignment 2

使用形式化语言(如 Dafny)实现一组复杂的算法(如二分搜索或堆排序),并提供机器可验证的正确性证明

重点: 工具应用, 逻辑严谨性

要求:代码需完全通过静态验证器检查

⏱ 预计 30 小时

From Seniors

学长留下的

基础信息谁都查得到,真正值钱的是过来人的经验。

学姐说

比你早一年的学长留下的真实经验 —— ChatGPT 给不了。

这门课还没有学长经验,你可以是第一个 —— 注册后在课内分享。

往年考点 / 踩坑

这门课暂无往年考点记录。

毕业生去向(整体)

下面是匠人学院毕业生整体去过的公司分布(来自脱敏校友证言)。这是全平台的总体去向,不代表选这门课的人一定去这些公司。

统计自 317 份脱敏校友证言

Deloitte

6 位校友

岗位:Graduate Program · Graduate Consulting · Platform Engineer · Web developer · Platform engineer

Zerologix

4 位校友

岗位:Frontend Dev · junior frontend developer · Front-end Developer · Full Stack Developer

Servian

4 位校友

岗位:Full-stack Developer · Data Engineer · Consultant

关于这块数据,我们说实话

雇主墙来自脱敏毕业生证言(testimonials)的整体分布,无法关联到具体学员或其所选课程;仅作为毕业生去向的总体社会证明展示。

我们没有"某位学长选了这门课、后来进了哪家公司"这种可查询的个人去向档案 —— 校友证言是脱敏的,无法关联到具体的人或他选过的课。所以这里只给整体分布,不给个人路径,不编。