软件工程知识点整理

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

第一章:

软硬件区别 软件特点

软件生存周期分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


相关文章
|
7月前
|
人工智能 测试技术 编译器
Python语言从2.7到3.14的能力变化与演进逻辑
Python自2008年进入3.0时代以来,经历了持续演进与革新。十六年间,从语言设计、标准库优化到性能提升、虚拟机改进,Python不断适应人工智能、云计算和微服务等技术的发展需求。本文全面梳理了Python 3发布以来的重要变化,涵盖编程风格现代化、类型系统完善、类库生态调整、性能优化突破以及虚拟机技术创新等多个维度,展示了Python如何在保持简洁易用的同时,实现高效、稳定和可扩展的工程能力。未来,Python将在性能、类型安全和云原生等方面持续进化,进一步巩固其在现代软件开发中的核心地位。
559 30
|
存储 算法 C语言
C 408—《数据结构》算法题基础篇—链表(上)
408考研——《数据结构》算法题基础篇之链表(上)。
625 25
|
机器学习/深度学习 人工智能 边缘计算
24/7全时守护:AI视频监控技术的深度实现与应用分享
本文深入解析了AI视频监控系统在车间安全领域的技术实现与应用,涵盖多源数据接入、边缘计算、深度学习驱动的智能分析及高效预警机制,通过具体案例展示了系统的实时性、高精度和易部署特性,为工业安全管理提供了新路径。
3650 7
|
数据建模 测试技术 uml
【软件工程】期末复习总结(通俗易懂,学不会来打我)
【软件工程】期末复习总结(通俗易懂,学不会来打我)
|
监控 Nacos Docker
【开发问题记录】Nacos修改服务实例权重时报错
【开发问题记录】Nacos修改服务实例权重时报错
721 1
|
前端开发 Linux API
【推荐100个unity插件之8】实现多人在线联机游戏——Mirror插件的使用介绍(附项目源码)
【推荐100个unity插件之8】实现多人在线联机游戏——Mirror插件的使用介绍(附项目源码)
4987 0
|
JSON 前端开发 JavaScript
Vite 官方文档速通(上)
Vite 官方文档速通(上)
452 0
|
设计模式 缓存 算法
必知必会的22种设计模式(GO语言)
必知必会的22种设计模式(GO语言)
732 1
|
存储 NoSQL Redis
保障数据安全,保障系统稳定:Redis 数据备份与恢复全指南
保障数据安全,保障系统稳定:Redis 数据备份与恢复全指南
627 0
|
存储 安全 Java
简单聊聊copy on write(写时复制)技术
简单聊聊copy on write(写时复制)技术

热门文章

最新文章