面向对象的系统开发方法是一种广泛应用的软件开发技术,它强调通过模拟现实世界的实体和它们之间的关系来设计和构建软件系统。本章详细介绍了面向对象方法(OOM)的关键概念、过程和技术,包括统一建模语言(UML)的应用、面向对象系统的开发流程、业务事件分析、用例建模、类图构建以及交互模型的建立。
在面向对象方法中,"参与者"是系统中的关键角色,他们与系统进行交互,触发系统的行为。例如,在图书馆系统中,读者可以是参与者,他们通过查询书目或借阅图书来与系统互动。事件表展示了这些互动的细节,如读者检查库存书目时,会发送书目查询请求,系统响应后返回书籍列表。同样,读者借书时,提供借书单,系统记录借书记录并归还书本。
面向对象方法起源于60年代的Simula67语言,经过70年代Smalltalk的推动,到80年代各种面向对象语言的成熟,最终在90年代随着Java的诞生而广泛普及。这种方法论不仅包含编程技术,还包括对软件系统和现实世界之间关系的理解,以及问题求解的视角。
8.1面向对象方法概述中,对象是基本单位,具有状态(属性)和行为(方法)。分类(类)是对象的模板,继承允许子类继承父类的属性和方法,而通信(消息传递)是对象间相互作用的方式。Coad和Yourdon的定义强调了这些核心概念。
8.2面向对象系统开发过程涵盖了需求分析、设计、实现和测试等多个阶段,每个阶段都可能涉及到面向对象的工具和技巧,如用例分析来描述参与者与系统之间的交互,类图用于表示系统结构,交互模型则描绘了对象间的动态协作。
8.3业务事件分析是识别和理解系统中关键业务活动的过程,这些活动通常以事件的形式出现,如读者的查询请求或借书动作。
8.4用例模型描述了系统边界内的用户需求,用例表示了参与者和系统之间的交互序列,帮助定义系统必须提供的功能。
8.5类图是静态模型的一种,显示了类的结构,包括类的属性和操作,以及类之间的关系,如继承、关联和聚合。
8.6交互模型,如序列图和协作图,展现了对象在时间上的交互顺序,帮助理解系统动态行为。
面向对象方法提供了一种结构化和模块化的系统开发框架,使软件设计更接近人类思维,便于理解和维护。通过这些模型和方法,开发者能够更有效地构建复杂、可扩展的软件系统,满足不同参与者的需求。