- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程读书报告二.doc
读书报告2. 1
阅读书籍:1、《软件工程》by Ian Sommerville 2、《软件工程方法》 阅读体会及心得:
一、参考书1 (4-5章)和参考书2 (4-6章)
UML中定义了哪些主要类型的图?综述用例建模中如何对交互模
型、结构模型、行为模型进行描述,举例说明。
UML提供的基本模型图拈
用例阁:展示系统外部的各类执行者与系统提供的各种用例之间的关系
类图:展示系统中类的静态结构(类是指其宥相同属性和行为的对象类图用來 描述系统中各种类之间的静态结构)
对象图:是类图的一种实例化图(对象图是对类图的一种实例化)
ti图:是一种分组机制。在UML1. 1版本中图不再看作一种独立的模型图)
状态聞:描述一类对象具冇的所冇可能的状态及其转移关系(它展示对象所具 宥的所宥可能的状态以及特定事件发生时状态的转移情况)
顺序图:展示对象之间的一种动态协作关系(一组对象组成随时间推移对象之 间交换消息的过程、突出吋间关系)
合作图:从另一个角度展示对象之间的动态协作关系(对象问动态协作关系突 出消息收发关系)
活动图:展示系统中各种活动的执行流程(各种活动的执行顺序、执行流程)
构件图:展示程序代码的物理结构(描述程序代码的组织结构各种构件之间 的依赖关系)
配置图:展示软件在硬件环境中(特别是在分布式及网络环境中)时间推移对 象之间交换消息的过程、突出时间关系)
2)
(1)交互模型
也是针对每个用例而言的,是在用例描述和Robustness分析的结果的基础 上进行的。因此,我们还将以用例为蓝本,来说明如何构建交互模型。我的习惯
是将用例描述屮的基本事件流与扩展事件流部分,以及Robustness分析的结果 打印出来,以便在设计时参考。而且这也方便了设计时团队成员之间的交流,可 以获得较好的效果。
交互建模之后,到此为止,我们就完成Y用例所对应的交互模型。不过,事 件还没有结束,我们需要在这个成果的基础上进一步工作,将其发挥更大的作用。 这些工作包括添加类的展性和方法、质量评审、引入基础类以及用设计模式进行 优化,卜*面我们就一一作个简单的介绍。添加个类的属性与方法。
在构建交互模型吋,我们将会发现类应该具冇的方法,也会在设计时找到一 些新的属性,而这些东两将进一步地完善我们的静态模型。我们基于域模型的基 础,结合Robustness分析、交瓦模型构建时所引入的设计炎,1叫出相应的设计 类图,并且将这里所找到的属性、方法补充在类图中去,这样我们将获得一个较 完整的类模型。质量评审当我们通过引入基础类之将获得一个较完整的类模 型,接下来我们就需要运用面向对象设计的一些基木原理,对其进行质量评审。 低耦合:耦合性是指W个类之问的连接强度,耦合性越低,说明类之问的独立性 越高,相应的系统的夾活性也越高。
高内聚:内聚性则是指一个类的属性与方法高度地集成,内聚性越高,说明 类的设计越合理,系统的稳定性也越高。
效率:低耦合与高内聚都是一个相对的概念,衡量的要点在于解决方案的执 行效率是否满足系统的需求。
完整性:类的完整性是指在任何环境T都可以重复使用,完整的类也就意味 着其K宥较高的内聚性,也就意味着它与其它类之间的耦合较低。
简单性:每一个类越简单,出错的可能性越小,系统的灵活性和可维护性也 越好。
而把类当作一个框,什么都往里装的代码风格,就是一个具有“坏味道”的 代码,需要重构它。
我们需要将这些包中,将耍使用的类引入,然后从中派生(使用继承)应用 系统所需要的类。如果你使用Rose进行类建模,那么你就吋以很方便地引入这 些基础类,因为Rose都将这些基础类做好了。应该看出一个学习开发知识的要 点,即应该花足够多的时问来了解各种基础框架、厍函数的功能与特性,以便在 设计时做出最优的选择;另外,还应该对这些基础框架、库函数的类结构冇一个 清晰的了解,这样就可以最宥效地找到基础类,最高效地使用。用设计模式进行 优化。
如果你在质量评审屮发现Y问题,那么你可以使用W种武器,那就是设计模 式与重构。它们都将帮助你使代码更加的高质量,重构技术侧重于代码结构的重 新整合,血设计模式则是通过引入新的设计类,还提高代码的可维护性、灵活性。 交互建模是详细设计阶段的重耍工再,当我们完成了交互模型之我们就会发 现所冇的类跃然纸上,而11这些类所需的属性和方法(即行为)也被清晰地找到, 还清楚地掌握了类与类之问的交互,然后通过引入基础类、利用设计模式优化, 将会使得紧接下来的代码编写工作将变得史加清晰。不幸的是,由于篇幅的限制, 我们从用例建模开始,只对其中的一个用例进行了分析,完成了用例描述,也仅 对一个用例进行了 Robustness分析(初步设计)、构建交互模型(详细设计)。 因此,我想大家也不知不觉地走进Y细节,也许让您感到“只见树木,不
原创力文档


文档评论(0)