文章目录
- 七、面向对象的分析设计
- 1、面向对象分析(OOA)
- 2、面向对象设计(OOD)
- 八、编码
- 1、程序设计语言
- 九、软件测试
- 十、软件维护
- 十一、软件项目管理
- ++RUP(统一软件开发过程)
- ++面向对象编程和面向对象设计的五个基本原则「SOLID」
七、面向对象的分析设计
1、面向对象分析(OOA)
目的:完成对所需求解问题的分析,确定目标系统所要做的工作,定义所有与待解决问题相关类,并建立系统模型
向对象分析的3种模型类型:
(1)对象模型:描述系统的数据结构,它是用来描述系统包含的对象及对象之间关系的模型
(2)动态模型:描述系统的控制结构,它是用来确定各个对象之间交互及整体控制结构的模型
(3)功能模型:描述系统的功能结构,它是要描述系统要实现的功能的模型
对象模型的层次
- 主题层
- 类&对象层
- 结构层
- 属性层
- 服务层
建立对象模型的方法
确定类和对象、确定结构、确定主题、确定服务和消息
建立功能模型的方法:
(1)定义系统
(2)寻找行为者和用例
(3)描述用例
(4)定义用例之间的关系
(5)确认模型
2、面向对象设计(OOD)
面向对象设计的主要原则:开放封闭原则、单一职责原则、依赖倒置原则、里氏替换原则等。
面向对象设计的准则
(1)模块化
(2)抽象
(3)信息隐藏
(4)低耦合
(5)高内聚
(5)复用性
八、编码
1、程序设计语言
软件实现的任务:
程序设计语言的分类:
- 机器语言
- 汇编语言
- 高级语言
- 非过程化语言
程序设计语言选择的准则:
- 项目的应用领域
- 用户的要求
- 软件开发工具
- 算法和数据结构的复杂性
- 软件开发人员的知识
- 系统的可移植性要求
程序设计风格:
- 源程序文档化
1、标识符的命名
2、程序代码的视觉组织
3、程序的注释 - 数据说明
- 语句构造
- 输入与输出
- 效率
代码评审的主要方法、代码评审要点
九、软件测试
软件测试的基本任务: 发现软件产品中存在的软件缺陷,进而保证软件产品的质量
软件测试的方法
软件测试的分类(理解)
(1)单元测试
(2)集成测试
(3)确认测试
(4)系统测试
十、软件维护
软件维护的任务: 保证软件系统能持续地与用户环境、数据处理操作、政府或其他有关部门的请求取得协调。最终目的是延长软件的生存周期。
软件维护的类型:
1、改正维护
改正在系统开发阶段已经发生的而系统测试阶段尚未发生的错误
2、适应性维护
适应软件环境发生的变化而进行的维护
3、完善性维护
扩充软件的功能和用户提出的新需求而进行的维护
4、预防性维护
为改进软件效率、可靠性、可维护性而进行的维护
软件维护流程
-
确定维护的类型
-
对于改正性维护从评价错误的严重性开始
-
对于适应性维护和完善性维护建立每个请求的优先级
-
实施维护任务
-
维护复审
十一、软件项目管理
项目利用有限资源、在一定的时间内,完成满足一系列特定目标的多项相关工作
软件配置管理:用于整个软件工程过程,其任务是标识和确定系统中的配置项,在系统整个生存期内控制这些配置项的发布和变更,记录并报告配置的状态和变更要求,验证配置项的完整性和正确性
配置项:简单地说就是受scm控制和管理的工作产品单元,在配置管理过程中作为单个实体对待,是配置管理的对象
++RUP(统一软件开发过程)
统一软件过程是一个面向对象且基于网络的程序开发方法论
软件统一过程(RUP)是Rational软件公司(Rational公司被IBM并购)创造的软件工程方法。RUP描述了如何有效地利用商业的可靠的方法开发和部署软件,是一种重量级过程(也被称作厚方法学),因此特别适用于大型软件团队开发大型项目。软件统一过程(RUP)是Rational软件公司(Rational公司被IBM并购)创造的软件工程方法。RUP描述了如何有效地利用商业的可靠的方法开发和部署软件,是一种重量级过程(也被称作厚方法学),因此特别适用于大型软件团队开发大型项目。
RUP最重要的它有三大特点:
1)软件开发是一个迭代过程,
2)软件开发是由Use Case驱动的,
3)软件开发是以架构设计(Architectural Design)为中心的。
UP中的软件生命周期在时间上被分解为四个顺序的阶段,分别是:初始阶段(Inception)、细化阶段(Elaboration)、构造阶段(Construction)和交付阶段(Transition)。
RUP中有9个核心工作流,分为6个核心过程工作流(Core Process Workflows)和3个核心支持工作流(Core Supporting Workflows)。
++面向对象编程和面向对象设计的五个基本原则「SOLID」
单一职责原则(Single Responsibility Principle)
开放封闭原则(Open Closed Principle)
里氏替换原则(Liskov Substitution Principle)
接口隔离原则(Interface Segregation Principle)
依赖反转原则(Dependency Inversion Principle)
1.单一职责原则,规定一个类有且仅有一个理由使其改变。换句话说,一个类的边界和职责应当是十分狭窄且集中的。一个类应当做它该做的事,并且不应当被它的任何依赖的变化所影响。
2.开放封闭原则,又称开闭原则,规定代码对扩展是开放的,对修改是封闭的。
3.里氏替换原则,规定对象可以被其子类的实例所替换,并且不会影响到程序的正确性。
4.接口隔离原则,规定不应该强制接口的实现依赖于它不使用的方法。
5.依赖反转原则,规定高层次的代码不应该依赖低层级的代码。