第一章:
软硬件区别 软件特点
软件生存周期分6个阶段
软件工程3要素 开发框架、方法(用例图、序列图、类图、健壮性分析图)、工具
scrum流程图 角色(3个+干系人)
1.软件:软件是计算机系统中与硬件相互依存的另一部分。它包括程序、数据及其相关文档的完整集合。
2.软件工程:是研究和应用如何以系统化的、规范的、可度量的方法去开发、运行和维护软件,即把工程化应用到软件上
3.软件生存周期:软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程。
六个阶段: 计划、分析、设计、实现、测试、集成、交付、维护等等(各阶段可以重叠交叉)
计划 : 确定总体目标和范围 研究可行性和可能的解决方案 估算资源成本和进度
分析: 分析用户需求,编写软件需求规格说明
设计:(总体设计和详细设计)软件体系结构、数据结构、用户界面和算法
实现:编码
测试:测试用例测试
运行和维护阶段
4.软件工程三要素
工具(系统 Xmind)
方法 (业务序列图、系统用例图……)
开发过程
ps:
5.迭代与增量:
迭代:反复求精
增量:逐块建造
6.经典的软件过程:瀑布模型、RUP统一软件过程(用例驱动)、Scrum敏捷过程、扩展ICONIX过程
7.统一建模语言:用来沟通交流,且表达精确清晰,UML承载着面向对象的思想
UML静态图:对象图、类图、组件图、部署图
UML动态图:用例图、序列图、活动图、状态图、协作图
第二章
1.需求开发 – 需求工程:通过合适的工具和记号 系统地描述待开发系统及其行为特征和相关约束,形成需求文档,并对用户不断变化的需求演进给予支持。
需求工程包括 需求开发和需求管理
2.需求分析:
定义愿景(愿景不是功能) 开源节流
第一步:找到老大
第二步:得到愿景
第三步:描述愿景度量指标
业务建模
用例分析
第三章
1.业务建模意义
2.业务建模的步骤
3.从外部看:组织是价值的集合,用业务用例图来建模。
从内部看:组织是系统的集合,用业务序列图来建模。
业务执行者:在组织之外和组织交互的人群或组织
业务用例:组织为业务执行者提供的价值
4.从内部看:组织是系统的集合(人是一种智能系统),用业务序列图来建模。
箭头终点给剪头起始点提供价值,服务
5.业务序列图常见错误:
涉及系统
返回消息用实线
6.时间作为特殊的业务实体
7.业务建模 改进业务流程
① 信息自动流转
② 封装复杂业务逻辑
③ 职责的转移
④ 访问和操作业务对象
8.如何采用改进业务序列图来改进现有业务流程
- 将“新系统”作为一个业务实体进行整体设计
- 将“新系统”引入组织现有业务流程
- 查看其可以改进的流程
- 评估改进结果
第四章
1.需求分析几种方法
传统分析 结构化分析 信息工程 面向对象
原型法
用例图
2.域模型
避免术语不统一
作用
步骤
域模型和数据模型区别(了解)
3.系统用例建模
意义:
注意画图区别
5.系统用例建模步骤:
- 绘制系统用例图
- 编写系统用例描述
- 更新域模型
6.主执行者
用例发起者
用例为其实现有价值的目标
7.辅执行者
用例支持者
用例的完成需要与其交互,得到其支持
8.确定用例间的关系:
包含:使用包含用例来封装一组跨越多个用例的相似动作,以便多个基用例复用
扩展:将基用例中一段相对独立并且可选的动作,用扩展用例加以封装,再让它从基用例中声明的扩展点上进行扩展,从而使基用例行为更简练和目标更集中。
泛化:子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系
雪梨作业
9.时间是主执行者
10.登录不是一个主用例
ps:
11.用例描述
12.基本路径的书写要求:
主语是执行者 或 系统
主动语态 名词-动词-名词
13.软件产品典型非功能性需求: 可靠性、可用性、性能、可支持性
第五章
健壮性分析
健壮性分析帮助完善和确认需求分析的成果
交互关系
注意信息化的实体 在健壮性分析图中体现
第六章
1.开源节流
2.关键设计的步骤
3.高内聚、低耦合
第七章
组件图
部署图
第八章
敏捷宣言的价值观
敏捷三个层次
理念:聚焦客户价值,消除浪费
激发团队潜能,加强合作
不断调整以适应变化
敏捷开发 与 scrum
角色的转变
第十章
产品backlog