软件工程复习重点:面向对象知识与UML图解析

需积分: 0 0 下载量 114 浏览量 更新于2024-07-26 收藏 117KB DOC 举报
"软件系统分析与设计复习资料" 这篇复习资料涵盖了软件工程中的一些核心概念,特别是面向对象分析与设计的方面。以下是其中涉及的重要知识点: 1. 面向对象分析与设计(OOA&D):面向对象分析(OOA)是识别问题域中的实体并定义它们的属性和行为的过程,而面向对象设计(OOD)则是将这些分析结果转化为具体的软件设计方案。 2. 多态性:多态性是面向对象编程的一个关键特性,指的是一个消息可以根据接收它的对象类型产生不同的动作或结果。 3. 软件生命周期阶段:可行性研究通常在软件定义阶段进行,这个阶段确定项目的范围、目标,并进行初步的可行性分析。 4. 视图:在软件系统中,视图是从特定角度观察系统的一种方式,每个视图都揭示了系统的不同方面。 5. UML(统一建模语言)图:类图是UML中的静态模型图,它描绘了类、接口及其关系;时序图、状态图和协作图属于动态模型图,分别描述对象间的消息顺序、对象状态变化和对象间的交互关系。 6. 协作图:协作图主要展示对象间的动态协作关系,包括消息的交换和对象之间的连接。 7. UML软件开发统一过程(UP):开始阶段主要任务是确定项目范围、目标,进行可行性分析,而非立即进行用例图绘制或架构构建。 8. 用例建模:用例模型是客户和设计者之间沟通的重要工具,它以用户的角度描述系统功能,客户的参与至关重要,且以用例驱动的设计方法现在是面向对象方法的主流。 9. 层次化用例图:用于清晰、全面地描述复杂系统,通过分层来简化大型系统的描述,并帮助确定子系统的边界。 10. 对象类关联:关联是类之间的关系,可以是双向或多向的,关联类是关联的特殊形式,可以包含数据和行为。两个或更多类之间可以建立关联。 11. 关联的重数:在UML中,"0..1"表示0个或1个,"0..*"和"*"都表示0个或多个,但"0..*"更强调可以是任意多个,而"*"则通常表示非空集合;"1..*"表示至少1个,最多无限个;"5..11"表示有5到11个。 12. 时序图对象排列:对象通常在时序图的左侧排列,生命线自上而下延伸,交互密切的对象应靠近,新创建的对象其生命线始于创建时刻。 13. 状态机:在UML中,状态机是一种描述对象在其生命周期中可能经历的一系列状态以及触发状态转换的事件的模型。 以上知识点是软件工程,尤其是系统分析与设计领域中的基础内容,对于学习和理解软件开发过程至关重要。