UniMate AI

COMP1531

软件工程基础

6 学分难度 中等

课程定位 COMP1531 是 UNSW 计算机专业的第一个‘工程’课。如果说之前的课程是在教你‘写代码’,这门课是在教你‘做软件’。它模拟了真实工业界的团队开发环境,让你在协作、测试和项目管理中理解软件的生命周期。它是所有 CSE 学生从‘码农’向‘工程师’转变的关键一课。 技术栈与学习内容 课程围绕‘全栈开发与团队协作’展开。核心技术栈包括:Python 3 (Flask 框架)、现代前端初步、Git 版本控制进阶(分支管理、Merge Request)、RESTful API 设计规范、自动化测试(Pytest)、以及基础的 UI/UX 原则。此外,课程重点传授敏捷开发(Agile/Scrum)、持续集成(CI)以及软件需求规格说明书(Requirements)的编写。 课程结构 10 周高强度团队项目驱动。开学即组建 5 人团队,共同完成一个贯穿全学期的‘巨型项目’(如模拟 Slack 的后端系统)。考核包含多次项目迭代评审(Sprints)、个人贡献评估、一份详尽的技术报告(Technical Report)以及期末理论与实操考试。这门课以‘队友靠不靠谱决定生死’著称。 适合人群 通过 COMP1511 的学生。对于性格孤僻或不习惯使用 Git 协作的同学,这门课是一次巨大的挑战。建议每周投入 15-20 小时进行团队沟通与代码集成。

Syllabus

每周大纲

  1. 1

    软件工程概论与环境

    SDLC 概览,Git 基础命令,Python 虚拟环境配置。

  2. 2

    版本控制进阶与团队协作

    Git 分支策略,处理冲突,Merge Requests 流程规范。

  3. 3

    需求分析与敏捷开发

    用户故事 (User Stories),Scrum 框架,Sprint 计划制定。

  4. 4

    RESTful API 设计

    HTTP 动词应用,路由设计,状态码规范,JSON 数据交互。

  5. 5

    自动化测试 (1):单元测试

    Pytest 基础,黑盒 vs 白盒测试,测试覆盖率 (Coverage) 概念。

  6. 6

    灵活性周 (Flex Week)

    复习 API 设计,冲刺 Sprint 2 核心功能开发。

  7. 7

    自动化测试 (2):集成与回归

    模拟对象 (Mocking),测试 Web API,持续集成 (GitLab CI) 基础。

  8. 8

    代码规范与重构

    Pylint 使用,DRY 原则,如何编写可维护的工业级代码。

  9. 9

    UI/UX 原则与文档

    尼尔森启发式评估,编写专业的技术文档与用户手册。

  10. 10

    项目总结与系统演示

    项目回顾,性能分析,模拟面试级别的项目答辩。

Assessment

考核结构

Major Group ProjectHurdle

5 人团队协作开发一个全功能后端系统,分三个 Sprint 交付并评审。

50%

Week 10

Technical Blog/Lab Tasks

涵盖 Git 操作、测试编写及代码质量评估的个人任务。

15%

Week 10

Peer Peer Assessment

由队友根据你的代码贡献量、沟通活跃度及任务完成度进行打分。

5%

Week 10

Final Examination

涵盖软件工程理论、Git 逻辑、API 设计及测试策略的综合考试。

30%

Week 11

From Seniors

学长留下的

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

学姐说

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

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

往年考点 / 踩坑

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

毕业生去向(整体)

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

统计自 313 份脱敏校友证言

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)的整体分布,无法关联到具体学员或其所选课程;仅作为毕业生去向的总体社会证明展示。

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