目录
1.定义软件工程学科
∙
\bullet
∙ 定义
:将系统化的、规范化、可量化的方法应用于如那件的开发、运行和维护,即将工程化的方法应用于软件,并对上述方法的研究。
∙
\bullet
∙ 特点
:软件工程是一种层次化
的技术,支撑软件工程的根基在于质量关注点
。
∙
\bullet
∙ 组成
:软件过程(基础)、软件方法、软件工具。
2.软件过程
2.1定义
定义
:软件过程是工作产品构建时所执行的一系列活动、动作和任务的集合
∙ \bullet ∙ 活动:沟通
∙ \bullet ∙ 动作:体系结构设计
∙ \bullet ∙ 任务:单元测试
2.2过程框架
包含内容 | 目的 |
---|---|
沟通 | 理解利益相关者的项目目标,并收集需求以及软件特征和功能 |
策划 | 定义和描述了软件工程工作 |
建模 | 利用模型来更好地理解软件需求,并完成符合这些需求的软件设计 |
构建 | 对所做的设计进行构建包括编码和测试 |
部署 | 软件交付给用户,用户对其进行测评并给出反馈意见 |
2.3普适性活动
(1)软件项目跟踪和控制
(2)风险管理
(3)软件质量保证
(4)技术评审
(5)测量
(6)软件配置管理
(7)可复用管理
(8)工作产品的准备和生产
2.4软件生存周期
软件的生命周期归结为以下几个阶段:
∙
\bullet
∙ 软件计划
:问题+可行方案
∙
\bullet
∙ 需求分析和规格说明
:需求+报告(规格说明)
∙
\bullet
∙ 设计
:软件的表示(UML原型等)
∙
\bullet
∙ 编码
:体现了目标徐通的“具体实现”
∙
\bullet
∙ 软件测试
:测试用例
∙
\bullet
∙ 运行/维护
:根据实际情况
∙
\bullet
∙ 报废/退役
:经济或发展等因素
2.5实践的精髓
(1)理解问题(沟通与分析)
(2)策划解决问题(建模和软件设计)
(3)实施计划(代码生成)
(4)检查结果的正确性(测试和质量保证)
2.6通用原则
∙
\bullet
∙ 存在价值
∙
\bullet
∙ 保持简洁
∙
\bullet
∙ 保持愿景
∙
\bullet
∙ 关注使用者
∙
\bullet
∙ 面向未来
∙
\bullet
∙ 提前计划复用
∙
\bullet
∙ 认真思考