欢迎来到天天文库
浏览记录
ID:42363951
大小:273.00 KB
页数:52页
时间:2019-09-13
《面向对象软件工程设计1》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实用面向对象软件工程教程casestudiesinOBJECTORIENTEDANALYSIS&DESIGN过渡到设计问题论域中的问题定义用户界面任务管理问题数据库设计面向对象的设计引言和讨论设计策略SBSS的OOD问题要点过渡到设计引言和讨论在传统的开发模式中,分析和设计采用不同的表示、不同的用语、不同的CASE工具等。在面向对象开发模式中,分析和设计之间的界限是模糊的。是面向对象方法的一个有意识的深思熟虑的特征。通常,分析涉及系统做什么,设计则涉及需求如何实现。分析通常建立在“完美的”技术的假设之上,而对于设计,则通常涉及具体的实现环境,包括系统的运行硬
2、件平台、操作系统、使用的编程语言等。OOD表示法OOD涉及到实现,它的表示涉及任务、模块、处理器、队列,以及其它硬件/软件等。用图形表示表达设计。假定:OOD的表示法应尽可能地接近OOA表示法。问题:利用OOA模型描述的需求,软件工程师应当如何策划面向对象的设计?从哪儿开始着手?采取什么步骤?应该得出什么类型的体系结构或结构?OOD策略OOD的良好准则制定评价准则的目的是使得我们能够以一种客观的方法来对一个设计作出评价,看它是否可以被接受,还是应当拒绝或应当修改。以往评价一个项目的设计时,常用效率、完备性、灵活性等指标来衡量。老的设计方法,如结构化设计方法,
3、有它自己的一套完善的设计准则。其中最著名、最重要的概念是模块的耦合、内聚性。而针对OOD的准则与它们很类似,其中有一些准则在本质上与老的方法相同,有些具有面向对象的独特特点。其它问题用OOD方法产生的设计还不是软件的最终成品。必须将这个设计翻译成语言程序,然后对产生的代码进行测试。编程语言对设计过程及设计者的设计思想都将产生巨大的影响。连面向对象的方法也会受到编程语言的影响。一些商品化的OOD形式就受到Ada、Eiffel、C++、Smalltalk、Java等语言的影响。设计策略采用什么样的表示法来表达和描述设计,这是一个很重要的问题。从这个角度来看,标准
4、体系结构的表示法就类似于一本食谱“若想要制作意大利面条,首先应准备,,样的原料,然后再按照下列步骤”。有了这个食谱,并不能保证制作一定能够成功,因为制作过程中还需要个人的经验、判断以及人的感觉。但有了食谱,就不会陷入盲目,知道该如何办,有了成功的条件和依据。OOD体系结构最早Smalltalk公司提出了一种称之为MVC(Model-View-Controller)的结构。将OOD体系结构分为三个主要成分:模型(Model):为底层应用建立模型的类和对象;视图(View):为用户提供与模型有关的类接口视图的类和对象;控制器(Controller):用
5、于控制(或同步)其他类的行为的类和对象。MVC模型这里提出的OOD体系结构与MVC结构类似,但增加了一个成分:数据库管理部分。模型视图控制器OOD模型的体系结构类与对象层属性层服务层结构层主题层问题论域部分人机交互部分任务管理部分数据管理部分主题服务消息属性实例连接类边界实例边界这个体系结构中使用的类和对象与OOA模型中的一样,然后围绕着这些类和对象,又加入了另外一些类和对象,用来处理与实现有关的活动,如任务管理(TMC)、数据管理(DMC)以及人机交互(HIC)。以往的开发方法在设计阶段基本上废弃了分析模型,并以一个新的设计模型重新开始。但OOD方法与以往
6、方法不同,它以OOA模型为设计的雏形。由于OOA和OOD采用相同的基本图形表示法,更容易体现OOA与OOD工作的连续性和无缝隙性。SBSS的OOD问题对SmallBytes系统没有实时要求,可以不要任务管理部分(TMC)。但HIC和PDC是需要的。关于DMC的设计:从原始的问题陈述可知,用户当前已有的订阅系统使用的是一个基于文件的数据库。如果有其它应用也在使用这个数据库,而且这些应用不能改动,只有继续使用这个既存的数据库。就要用到DMC。如果SBSS是这个数据库的唯一用户,可以用一个OODBMS替代这个数据库。PDC部分可以不做太多的改动。原始的OOA模型可
7、以原样照搬到设计体系结构的PDC部分来。对于HIC,要精心设计窗口和屏幕,为用户提供友好的GUI。人机交互的另一问题是格式和协议。新的订阅、续订以及赠阅的格式是什么样?具有智能辅助和联机文档的帮助工具又是什么样?数据库的一致性问题:如每一个订阅都必须与一个确定的收件人对应,这就是限制或事务规则。如何保证这种一致性?SBSS的初始化活动和结束活动也需要考虑。要点从OOA转到OOD需要在OOA模型的基础上加入实现方面的限制。OOA模型需要用实现技术和环境方面的详细的规格说明来加以补充。SBSS相对较小,安全性可能不是主要问题。但对一个大的系统,可能需要对特定用户
8、做身份确认,限制他们的操作权限。可复用性的考虑是:可
此文档下载收益归作者所有