A bilingual, project-driven open course for international students 面向国际学生的双语 · 项目驱动开源课程
Course Language Progress Update License: CC BY-NC-SA 4.0 PRs Welcome
Course Overview 课程简介 · Syllabus 教学大纲 · CampusGuard Project 项目实践 · Adoption 采用登记 · Author 作者
A complete, bilingual (English-primary with Chinese annotations) open course for Software Engineering I — a 16-week, 32-hour undergraduate course for international students, taught with a project-driven approach built around the CampusGuard smart campus access & safety case.
面向国际学生的《软件工程 I》开源课程:16 周 / 32 学时,英文主讲、中文注释,以 CampusGuard 校园智能通行与安防系统项目贯穿全学期。
🆕 2026年09月05日 · Case change 案例更换:The course project has moved from SafeHome (the intellectual property of Pressman & Maxim) to CampusGuard, an original case released under CC BY 4.0. It is structurally isomorphic to SafeHome but set on campus — every modeling exercise keeps its type and difficulty, and students already have intuitions about dormitory access control they can bring to requirements work. 课程项目已由 SafeHome(Pressman & Maxim 的知识产权)更换为原创案例 CampusGuard(CC BY 4.0)。两者结构同构、领域错开,所有建模练习的类型与难度完全保留。
Course status 课程状态:Teaching in progress (Semester 2026-2027-1). Slides are rebuilt weekly and published progressively — W01–W04 released, W05–W16 in production. 课程进行中(2026-2027-1 学期)。课件按周重制并陆续发布——已发布 W01–W04,W05–W16 制作中。
📚 Companion textbook 配套教材:An open English textbook covering the full 64-hour SE I + SE II sequence (running case: CareLink) is being written alongside this course — klausren/oose-textbook. 配套英文教材(覆盖 SE I + II 共 64 学时,贯穿案例 CareLink)正在随课程同步编写——klausren/oose-textbook。
By design 教学设计:the textbook demonstrates each technique with the original CareLink case, while student teams build CampusGuard — learn from one case, practice on another. 教材用原创案例 CareLink 示范讲解,课程项目用 CampusGuard 动手实践——一学一练,学练分离。
| Item 项目 | Detail 内容 |
|---|---|
| Course 课程 | Software Engineering I 软件工程 I |
| Credits / Hours 学分 / 学时 | 2 credits / 32 hours (Theory 24 + Practice 8) |
| Duration 周期 | 16 weeks, 2 hours per week |
| Language 语言 | English with Chinese annotations 英文主讲、中文注释 |
| Textbook 参考教材 | R. S. Pressman, Software Engineering: A Practitioner's Approach (9th ed.) |
| Project 项目 | CampusGuard — a smart campus access & safety system built by student teams all semester |
Highlights 教学特色
- 🔧 Project-driven 项目驱动 — One semester-long team project (CampusGuard); every modeling technique learned in class is immediately applied to the project. 每周所学建模技术即刻应用于团队项目。
- 🌏 Bilingual 双语 — English-primary slides with concise Chinese annotations to help international students master technical terms. 英文主讲,中文注释辅助术语理解。
- ✍️ Hands-on 每课练习 — Each week includes 2–3 in-class exercises with answers. 每周 2–3 个课堂练习(含答案)。
- 🎨 Original figures 原创图表 — All diagrams are original vector drawings (no copyrighted textbook images), so the materials are safe to remix. 全部图表为原创矢量图,不含教材原图。
| Week 周 | Topic 主题 | Slides 课件 |
|---|---|---|
| 01 | Introduction to Software Engineering 软件工程导论 | ✅ W01 · 44 pages |
| 02 | Software Process Models 软件开发过程模型 | ✅ W02 · 41 pages |
| 03 | Agile Development & Scrum 敏捷开发与 Scrum | ✅ W03 · 42 pages |
| 04 | Requirements Inception & Elicitation 需求启始与获取 | ✅ W04 · 43 pages |
| 05 | Requirements Gathering & Practice I 需求收集实践 | 🚧 in production 制作中 |
| 06 | Requirements Modeling: Business Process 业务流程建模 | 🚧 in production 制作中 |
| 07 | Requirements Modeling: Use Case 用例建模 | 🚧 in production 制作中 |
| 08 | Requirements Modeling: Use Case Specification 用例描述 | 🚧 in production 制作中 |
| 09 | Requirements Modeling: Domain Model 领域模型 | 🚧 in production 制作中 |
| 10 | Domain Model (Cont.) 领域模型实践 | 🚧 in production 制作中 |
| 11 | Behavior-Based Modeling 行为建模 | 🚧 in production 制作中 |
| 12 | Behavior-Based Modeling (Cont.) 行为建模实践 | 🚧 in production 制作中 |
| 13 | Class-Based Modeling 类建模 | 🚧 in production 制作中 |
| 14 | Class-Based Modeling (Cont.) 类建模实践 | 🚧 in production 制作中 |
| 15 | User Interface Design 用户界面设计 | 🚧 in production 制作中 |
| 16 | Architectural Design & Final Defense 架构设计与项目验收答辩 | 🚧 in production 制作中 |
Students work in 5 teams of 5–6 throughout the semester, building CampusGuard — a smart campus access and safety system covering authorised entry, tailgating detection, tiered alerting, visitor passes and device maintenance. The case ships with 20 functional requirements, 8 non-functional requirements and 5 core scenarios.
学生分组完成 CampusGuard(校园智能通行与安防系统),覆盖授权通行、尾随检测、分级告警、访客通行码与设备运维。案例含 20 条功能需求、8 条非功能需求与 5 个核心场景。
Requirements and review follow a two-track model 双轨需求与评审机制:
| Track 轨道 | Teams 组数 | Requirements 需求来源 | Review 评审 |
|---|---|---|---|
| Track A — Client-driven 甲方制 | 3 | Provided by Client A as the client 由甲方 Client A 提出需求 | Dual review: Client A (domain expert) + instructor (technical expert) 甲方(领域专家)与教师(技术专家)共同评审 |
| Track B — Instructor-driven 教师制 | 2 | Provided by the instructor 由教师提供需求 | Sole review by the instructor 教师唯一评审 |
Review points 评审时点:requirements gathering (Week 4–5) → modeling phase reviews in class (Week 6–14) → final acceptance & defense (Week 16).
See 03-project/CampusGuard-Project-Brief.md for the full brief. 详见项目说明。
.
├── README.md # This file 本说明
├── LICENSE # CC BY-NC-SA 4.0
├── 01-slides/ # Weekly lecture slides (rebuild version) 每周课件(重制版)
│ ├── W01-Introduction-to-Software-Engineering.pptx
│ ├── W02-Software-Process-Models.pptx
│ ├── W03-Agile-Development-and-Scrum.pptx
│ ├── W04-Requirements-Inception-and-Elicitation.pptx
│ └── ... # W05–W16 coming weekly 每周更新
├── 02-teaching-plans/ # Teaching plans & course standard (sanitized) 教案与课标(脱敏版,陆续补充)
├── 03-project/ # CampusGuard team project brief (CC BY 4.0) 项目说明
└── assets/ # Images used in README 说明用图片
- For teachers 教师 — You are free to reuse, adapt, and translate the materials for your own classes (non-commercial). 可自由复用、改编、翻译用于教学(非商业)。
- For students 学生 — Follow the weekly slides; in-class exercises include answers for self-check. 随周学习课件,练习含答案可自查。
- For self-learners 自学者 — Each deck is self-contained: concepts → diagrams → exercises. Recommended pace: one deck per week. 每份课件自成体系,建议每周一份。
If you use these slides — in whole or in part — in your own course, please register your adoption. A public adoption record sustains the project, helps other teachers find classroom-proven materials, and builds evidence for the future print edition. 如果您在本校课程中使用(全部或部分)本课件,欢迎登记。公开的采用记录既能帮助项目持续迭代,也能让更多同行找到经过课堂验证的素材,同时为将来的出版积累依据。
How to register 如何登记:open an issue with the Course adoption template — takes about one minute. 提交一个「课程采用登记」issue(已有现成模板,一分钟搞定): 👉 登记 / Register here
Adopters 采用记录
| Institution 学校 | Course 课程 | Term 学期 | Scope 使用范围 |
|---|---|---|---|
| Dalian Neusoft University of Information 大连东软信息学院 | Software Engineering I 软件工程 I | 2026–2027–1 | Full course 全部课件 |
| Yours? 你的课程? |
Found a typo, a broken link, or a factual error? Open an issue or submit a pull request — corrections from practitioners and educators are especially welcome.
发现错别字、失效链接或内容错误?欢迎提 issue 或直接发 Pull Request,特别欢迎一线教师与从业者的修正。
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).
本课程资料采用 知识共享 署名—非商业性使用—相同方式共享 4.0 国际 许可协议。
You are free to share and adapt the material for non-commercial purposes with attribution, provided you distribute your contributions under the same license.
Ren Zheng 任政 — Software Engineering Lecturer 软件工程专业教师
- 🎓 Teaching: bilingual (EN/CN) software engineering courses for international students 国际学生双语教学
- 💻 GitHub: klausren
- 📕 Xiaohongshu 小红书: 改卷子的任老师 (ID:
63808230340) — teaching notes & study tips on Software Engineering. 分享软件工程教学笔记与学习干货,欢迎关注!
⭐ Star this repo to follow the course · 点个 Star 追更本课程 ⭐
Built week by week, published every week. 逐周制作,每周发布。