第1章 UML导论

第1章 UML导论

ID:43280370

大小:82.01 KB

页数:12页

时间:2019-09-29

第1章  UML导论_第1页
第1章  UML导论_第2页
第1章  UML导论_第3页
第1章  UML导论_第4页
第1章  UML导论_第5页
资源描述:

《第1章 UML导论》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第1、2、3章学习提示第1章的重点是:模型和建模的概念,应当结合实际例子对模型在软件开发中的地位和作用有一个正确的理解。搞清楚模型、模型元素、图和视图之间的关系,分析模型和设计模型之间的关系,设计模型和代码之间的关系。对于方法学,应当知道为什么在软件开发中要使用它,结构化方法和面向对象方法的基本区别。方法学包括语言和过程,UML是一种语言。结合第2章的学习,理解为什么说对象模型是UML和面向对象程序设计语言共享的共同的计算模型和在软件开发过程中使用UML的好处。第2章的重点是:理解什么是对象、链接、消息和对象模型,对象有那些特性,这些特性对软件开发带来什么好处。书中

2、说“对象模型的基本性质是计算发生在对象之中和对象之间。”你对这句话是怎样具体理解的。你对于对象模型在软件开发中的作用是怎样理解的。结合库存控制例子知道为什么要引入类、关联、抽象类和多态性,并将这些概念与相应代码相对照,具体了解这些代码与对象的特性的关系,如何创建对象,如何保持链接,如何传递消息,以及相应的UML表示法。2.10讨论了“对象模型的适用性”。你的观点是什么?同意、不同意还是部分同意部分不同意,提出自己的看法和依据。第3章概述了有代表性的软件开发过程模型。你能说明在什么情况下使用什么模型比较合适吗?你对统一过程模型如何评价?如果你了解极限编程(XP)也可以

3、对统一过程和XP说说你的看法。本书每章的习题对于理解课文很有帮助,可以自由选做。第1章UML导论统一建模语言(UnifiedModelingLanguage),简称UML,按照UML的设计者所言,是一种“通用的可视建模语言,用于说明、可视化、构造并文档化软件系统的体系结构”。本章阐述软件开发过程中如何使用模型,以及像UML这种语言的作用。文中描述了UML的高级结构及其语义的非形式说明,以及设计表示法和代码之间的关系。1.1模型与建模模型在软件开发中的使用非常普遍。本节先介绍模型的两种典型用法,即在描述现实世界的应用中和实现应用的软件系统中的用法,随后讨论这两种模型之

4、间的关系。1.1.1软件模型软件开发通常按以下的方式进行:一旦决定建立一个新的系统,就要写一个非正式的描述说明软件应该做什么,这个描述称作需求说明书(requirementsspecification),通常是经过与系统未来的用户磋商制定的,并且可以作为用户和软件供应商之间正式合同的基础。完成后的需求说明书移交给负责编写软件的程序员或者项目组,他们去相对隔离地根据说明书编写程序。幸运的话,结果程序能够按时完成,不超出预算,而且能够满足最初方案目标用户的需要。但不幸的是在许多情况下,事情并不是这样。许多软件项目的失败引发了人们对软件开发方法的研究,试图了解项目为何失败

5、,结果得到了许多对如何改进软件开发过程的建议。这些建议通常以过程模型的形式,描述了开发所涉及的多个活动及其应该执行的次序。过程模型可以用图解的形式表示。例如,图1.1表示一个非常简单的过程,其中直接从系统需求开始编写代码,没有中间步骤。图中除了圆角矩形表示的过程之外,还显示了过程中每个阶段的产物。如果过程中的两个阶段顺次进行,一个阶段的输出通常就作为下一个阶段的输入,如虚线箭头所示。图1.1软件开发的原始模型开发初期产生的需求说明书可以采取多种形式。书面的说明书可以是所需系统的非常不正规的概要轮廓,也可以是非常详细、井井有条的功能描述。在小规模的开发中,最初的系统描

6、述甚至可能不会写下来,而只是程序员对需要什么的非正式的理解。在有些情况下,可能会和未来的用户一起合作开发一个原型系统,成为后续开发工作的基础。上面所述的所有可能性都包括在“需求说明书”这个一般术语中,但并不意味着只有书面的文档才能够作为后继开发工作的起点。还要注意的是,图1.1没有描述整个软件生命周期。在本书中,术语“软件开发”是在比较狭隘的意义上使用的,它只包括软件系统的设计和实现,而忽略了生命周期的其他一些重要组成部分。一个完整的项目计划还应该提供例如项目管理、需求分析、质量保证和维护等关键活动。单个程序员在编写简单的小程序时几乎不需要比图1.1更多地组织开发过

7、程。有经验的程序员在写程序时心中会很清楚程序的数据和子程序结构,如果程序的行为不是预期的那样,他们能够直接对代码进行必要的修改。在某些情况下,这是完全适宜的工作方式。然而,对比较大的程序,尤其是如果不止一个人参与开发时,在过程中引入更多的结构通常是必要的。软件开发不再被看作是单独的自由的活动,而是分割为多个子任务,每个子任务一般都涉及一些中间文档资料的产生。图1.2描述的是一个比图1.1稍微复杂一些的软件开发过程。在这种情况下,程序员不再只是根据需求说明书编写代码,而是先创建一个结构图,用以表示程序的总体功能如何划分为一些模块或子程序,并说明这些子程序之间的调用

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。