第一章
- 软件开发过程由客户需求分析、系统分析、系统设计、系统实现、测试与维护
- 软件生存周期:软件定义时期、软件开发时期、软件运行与维护时期
- UML的优点:唯一性、连续性、复用性、逐步完善、维护性
- 软件:计算机系统中与硬件相互依存的另一部分,是程序、数据及相关文档的完整集合
- 对象:把客观世界中的实体对象抽象为问题世界中的对象,每个对象又具有属性和操作,即它的静态特征和动态特征
- 类:把具有相同特征的对象归在一起就形成了类
- 封装:使信息隐蔽和局部化,把相关的数据和对这些数据的操作结合在一起
- 继承性:子类可以拥有父类所有的属性和操作
- 多态:消息的发送者不必知道接收对象所属的类,多态性是指同一个消息被不同的对象接受时,产生不同的动作或执行结果
- 消息是实现对象类之间的通信和任务传递。
现代软件的概念和特点
- 软件规模大
- 软件开发过程趋于标准化
- 软件开发方法多,支持软件开发的工具也多
- 注重软件开发的管理
- 软件维护相比较过去也容易的多
软件的分类
- 按功能分类:系统软件、支撑软件、应用软件
- 按软件的规模来分:微型软件、小型软件、中型软件、大型或超大型软件
- 按软件的工作方式来分:实时处理软件、分时软件、交互式软件、批处理软件
- 按照服务对象来分:项目软件、产品软件
- 按使用频度来分:一次性使用软件,使用频度较高的软件
面对对象分析步骤(OOA)
- 识别类和活动,定义类和对象
- 识别结构活动,确认继承和组合机构
- 识别主题活动,将性质相同的类归为同一主题
- 识别属性活动,确认对象属性
- 识别服务活动,确认操作与关联和对象的状态
第二章
- UML的软件以用例为中心,以系统体系结构为主线,采用循环、迭代、渐增的方式进行开发
- UML的特点:统一标准、面向对象、可视化、表达能力强且独立于过程、易掌握易用
- UML五种视图:用例视图、逻辑视图、构件视图、配置视图、进程视图
- UML关系:关联;连接模型元素及链接实例
依赖:表示一种元素以某种方式依赖于另一种元素
泛华:表示一般与特殊的关系
聚合:表示部分与整体的关系 - 三大类十种图
用例模型图:用例图
静态模型图:对象图、包图、配置图、构件图、类图
动态模型图:合作图、顺序图、协作图、状态图 - UML 的扩展机制
构造型:是UML的一种用来对模型元素进行分类或标记的新模型元素,可以有效的防止UML变得过于复杂,实现了必要的拓展和调整
标记值:是特性规格说明,是UML的扩充,用来描述模型元素的特征
约束:约束扩展了模型元素的语义,它增加了新的规则或修改的规则
第三章
- 经济可行性分析、技术可行性分析、法律可行性分析
用例建模的步骤
- 确定系统的边界和范围
- 确定系统的执行者和用例
- 对用例进行描述
- 定义用例之间的关系
- 审核用例模型
- CRC包含:类名、类的类型、类的特征、责任和协作者
- 执行者:是指在系统外部与系统交换的人或者其他系统
- 用例:功能以用例表示,每一个用例即一个完整的功能
- 用例模型:是表达系统外部事物与系统之间交互的可视化工具
第四章
系统分析步骤
- 建造对象静态结构模型
- 建造对象动态结构模型
- 建造系统功能处理模型
- 编制系统分析规格说明文档
建造对象类模型步骤
- 寻找对象类
- 定义类的接口
- 定义类之间的关系
- 建立对象类图
- 建立系统包图
建造对象动态结构模型
- 建造对象状态模型
- 建造对象之间交互行为模型
- 复审对象类动态模型,以验证其准确性和一致性
- 编制相应的文档资料
- 在系统分析阶段要建造三个模型 对象静态模型、对象动态模型、系统功能模型
- UML 对象类图中,类之间的关系有关联、聚集、继承、细化和依赖
- 包是一种分组机制,可以清晰简洁的描述一个复杂的系统,形成一个描述系统的层次结构
第五章
- 顺序图和合作图主要用来表达对象之间的交互,是描述一组对象如何和合作完成某个行为的模型化工具
- 合作图和顺序图主要是用于对用例图中控制流的建模,具有共同的模型元素对象 消息 链接
- 面向对象方法中四种消息 简单消息、同步消息、异步消息、返回消息
- 进程是一个动作流,线程是进程内部的一个动作流
- 主动对象是一个拥有进程或线程的对象,能够初始化控制活动;被动对象必须要由其他对象发来的消息触发才能执行动作。
- 每一个交互都有发送者和接收者
面对对象中的设计原则(类设计)
- SRP 单一职责原则,一个类应该有且只有一个改变的理由
- OCP 开放封闭原则,应该能够不用修改原来的类就能扩展一个类的行为
- LSP liskov替换原则,派生类要与其基类相容
- DIP 依赖倒置原则,依赖于抽象而不是实现
- ISP 接口隔离原则,客户只需要关注它们所需要的的接口
包设计原则
- REP,重用发布等价原则,重用的粒度就是发布的粒度。
- CCP,共同封闭原则,包中的所有类对于同一类性质的变化应该是共同封闭的。
- CRP,共同重用原则,一个包中的所有类应该是共同重用的。
- ADP,无环依赖原则,在包的依赖关系图中不允许存在环。
- SDP,稳定依赖原则,朝着稳定的方向进行依赖。
- SAP,稳定抽象原则,包的抽象程度应该和其稳定程度一致。
顺序图建模步骤
- 确定交互和涉及的对象
- 顺序图中对象排列的原则
- 消息传递
合作图建模步骤
- 确定交互及涉及的对象
- 合作图中对象排列的原则
- 链接与消息传递
第六章
- 状态模型
** 没写完 过会再写 先发**