代码拉取完成,页面将自动刷新
软件工程是计算机科学与技术专业的核心课程,是一门指导软件开发和维护的工程学科。通过本课程的学习,同学们应该掌握系统的软件开发理论、技术和方法,能使用正确的工程方法开发出成本低、可靠性好、能高效运行的软件,为今后从事软件开发和维护打下坚实的基础。
章节 | 主要内容 | 讲义 | 课时 |
---|---|---|---|
第一章 软件和软件工程 | 软件和软件工程的含义;软件生命周期和软件过程模型。 | 讲义 | 4 |
第二章 结构化需求分析 | 结构化需求分析的过程;结构化需求分析模型:功能模型、数据模型、行为模型。 | 讲义 | 2 |
第三章 结构化总体设计 | 总体设计的过程;设计原理和启发规则;描绘软件结构的图形工具;面向数据流的设计方法。 | 讲义 | 2 |
第四章 结构化详细设计 | 结构化程序的含义;过程设计的工具;程序复杂度的度量。 | 讲义 | 2 |
第五章 面向对象需求分析 | 面向对象的基本概念;UML建模语言;分析模型(功能模型、对象模型、动态模型)的建立。 | 讲义 | 4 |
第六章 面向对象总体设计 | 面向对象设计的准则和启发规则;系统分解和体系结构;组件图和部署图。 | 讲义 | 3 |
第七章 面向对象详细设计 | SOLID设计原则;设计模式;从分析类到设计类的转化。 | 讲义 | 2 |
第八章 软件测试 | 软件测试基本概念;测试步骤;白盒测试和黑盒测试技术;软件可靠性。 | 讲义 | 4 |
第九章 软件维护 | 软件维护的定义和特点;软件维护过程;软件的可维护性;预防性维护和软件再工程。 | 讲义 | 自学 |
第十章 软件项目管理 | 软件规模的度量和估算;工作量估算;进度计划和跟踪;人员组织;软件质量管理和配置管理。 | 讲义 | 5 |
实验内容 | 课件 |
---|---|
实验一:Git和Gitee的使用。 | 课件 |
实验二:使用Git和Gitee进行协同开发。 | 课件 |
实验三:协同开发和Pull Request的应用。 | 同上 |
实验四:UML用例图和类图。 | 课件 |
实验五:UML状态图和活动图。 | 课件 |
本课程的课程项目以小组形式进行,每个小组3-4人,共同开发完成一个小型的软件系统。本课程与《计算机图像处理》联合教学,项目选题来自《计算机图像处理》,小组成员在两门课程中保持一致。本课程将考查该项目的以下方面:
其中前四部分通过 gitee.com 提交或记录,“课堂汇报和软件演示”在《计算机图像处理》课堂进行。
没有选修《计算机图像处理》的同学,项目课题见:https://gitee.com/zh-software-engineering/busware.git
注:项目过程中,请勿更改仓库。如不得不更改,请将新仓库的链接及时告诉给老师。
本次作业要求在确定选题的基础上,进行需求分析并撰写文档。各组自行选择 结构化分析方法 或者 面向对象分析方法 进行需求分析,并按照相应的文档要求撰写需求分析文档:
文档统一命名为需求分析文档.md(如果用Markdown书写)或者需求分析文档.docx(用Office或者WPS编写),放置在仓库的根目录下。最终版本应更新在仓库的master分支上,老师只检查master分支上的版本。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。