软件工程知识点整理

简介: 软件工程知识点整理

第一章:

软硬件区别 软件特点

软件生存周期分6个阶段

软件工程3要素 开发框架、方法(用例图、序列图、类图、健壮性分析图)、工具

scrum流程图 角色(3个+干系人)

1.软件:软件是计算机系统中与硬件相互依存的另一部分。它包括程序、数据及其相关文档的完整集合。

2.软件工程:是研究和应用如何以系统化的、规范的、可度量的方法去开发、运行和维护软件,即把工程化应用到软件上

3.软件生存周期:软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程。

六个阶段: 计划、分析、设计、实现、测试、集成、交付、维护等等(各阶段可以重叠交叉)


计划 : 确定总体目标和范围 研究可行性和可能的解决方案 估算资源成本和进度

分析: 分析用户需求,编写软件需求规格说明

设计:(总体设计和详细设计)软件体系结构、数据结构、用户界面和算法

实现:编码

测试:测试用例测试

运行和维护阶段

4.软件工程三要素


工具(系统 Xmind)

方法 (业务序列图、系统用例图……)

开发过程

20.png

ps:

5.迭代与增量:

迭代:反复求精

增量:逐块建造

6.经典的软件过程:瀑布模型、RUP统一软件过程(用例驱动)、Scrum敏捷过程、扩展ICONIX过程

7.统一建模语言:用来沟通交流,且表达精确清晰,UML承载着面向对象的思想

UML静态图:对象图、类图、组件图、部署图

UML动态图:用例图、序列图、活动图、状态图、协作图

第二章

1.需求开发 – 需求工程:通过合适的工具和记号 系统地描述待开发系统及其行为特征和相关约束,形成需求文档,并对用户不断变化的需求演进给予支持。

需求工程包括 需求开发和需求管理


21.png


2.需求分析:

定义愿景(愿景不是功能) 开源节流

第一步:找到老大

第二步:得到愿景

第三步:描述愿景度量指标

22.png

业务建模

用例分析

第三章

1.业务建模意义

86.png

2.业务建模的步骤

87.png

3.从外部看:组织是价值的集合,用业务用例图来建模。

从内部看:组织是系统的集合,用业务序列图来建模。

23.png

业务执行者:在组织之外和组织交互的人群或组织

业务用例:组织为业务执行者提供的价值

24.png

4.从内部看:组织是系统的集合(人是一种智能系统),用业务序列图来建模。

箭头终点给剪头起始点提供价值,服务

25.png


5.业务序列图常见错误:

涉及系统

返回消息用实线

6.时间作为特殊的业务实体

7.业务建模 改进业务流程

26.png

① 信息自动流转

27.png

② 封装复杂业务逻辑

28.png

③ 职责的转移

29.png

④ 访问和操作业务对象

30.png

8.如何采用改进业务序列图来改进现有业务流程

  1. 将“新系统”作为一个业务实体进行整体设计
  2. 将“新系统”引入组织现有业务流程
  3. 查看其可以改进的流程
  4. 评估改进结果


第四章

1.需求分析几种方法

传统分析 结构化分析 信息工程 面向对象

原型法

用例图

2.域模型

避免术语不统一

作用


31.png

步骤

32.png

域模型和数据模型区别(了解)

3.系统用例建模

意义:

33.png

注意画图区别

34.png35.png

5.系统用例建模步骤:

  1. 绘制系统用例图
  2. 编写系统用例描述
  3. 更新域模型


36.png

6.主执行者


用例发起者

用例为其实现有价值的目标

7.辅执行者


用例支持者

用例的完成需要与其交互,得到其支持

8.确定用例间的关系:


包含:使用包含用例来封装一组跨越多个用例的相似动作,以便多个基用例复用

扩展:将基用例中一段相对独立并且可选的动作,用扩展用例加以封装,再让它从基用例中声明的扩展点上进行扩展,从而使基用例行为更简练和目标更集中。

泛化:子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系

雪梨作业


37.png

9.时间是主执行者

38.png

10.登录不是一个主用例

39.png

ps:

11.用例描述

40.png

12.基本路径的书写要求:

主语是执行者 或 系统

主动语态 名词-动词-名词

13.软件产品典型非功能性需求: 可靠性、可用性、性能、可支持性


第五章

健壮性分析

健壮性分析帮助完善和确认需求分析的成果

交互关系


41.png

注意信息化的实体 在健壮性分析图中体现

第六章

1.开源节流

2.关键设计的步骤

42.png

3.高内聚、低耦合

44.png

第七章

组件图

45.png

部署图

46.png

第八章

敏捷宣言的价值观

47.png

敏捷三个层次

48.png

理念:聚焦客户价值,消除浪费

激发团队潜能,加强合作

不断调整以适应变化

敏捷开发 与 scrum

49.png50.png

51.png

角色的转变52.png


第十章

产品backlog

53.png


相关文章
|
3月前
|
自然语言处理 算法 测试技术
|
3月前
|
存储 算法 测试技术
|
10月前
|
安全
病理学知识点整理
病理学知识点整理
48 0
|
2月前
|
机器学习/深度学习 供应链 数据挖掘
管理信息系统知识点复习
管理信息系统知识点复习
67 0
|
12月前
|
敏捷开发 安全 数据可视化
【软件工程题库】第一章 软件工程概述
【软件工程题库】第一章 软件工程概述
766 1
|
12月前
|
测试技术
【软件测试】基础知识第一篇
软件测试就是验证软件产品特性是否满足用户的需求。
|
12月前
|
敏捷开发 测试技术
【软件测试】基础知识第二篇
瀑布模型在软件工程中占有重要地位,是所有其他模型的基础框架。瀑布模型的每一个阶段都只执行一次,因此是线性顺序进行的软件开发模式。
|
12月前
|
编解码 安全 前端开发
素养复习笔记!
素养复习笔记!
大学物理B2 知识点整理
大学物理B2 知识点整理
66 0
大学物理B2 知识点整理
2018《软件工程导论》知识点复习【第五章】
2018《软件工程导论》知识点复习【第五章】
54 0
2018《软件工程导论》知识点复习【第五章】