欢迎来到天天文库
浏览记录
ID:42719194
大小:1.79 MB
页数:126页
时间:2019-09-21
《软件工程第9章-面向对象》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1第九章面向对象方法学引论(Object-OrientedMethodology)§1传统方法学的缺点§2.软件工程的新途径§3.基本概念§4.ObjectModelingTechnique(OMT)§5.Coad与Yourdon的分析与设计§6.Booch方法§7.OOSE方法§8.小结2本质上是功能分解,以实现功能的过程为中心,而用户的需求变化主要是针对功能的。这就使基于过程的设计不易被理解;且功能变化往往引起结构变化较大,稳定性不好。系统有明确的边界定义,且系统结构依赖于系统边界的定义,这
2、样的系统不易扩充和修改。数据与操作分开处理,可能造成软构件对具体应用环境的依赖,可重用性(reusability)较差.2、SA-SD-SP技术的缺点:§1传统方法学的缺点1、瀑布模型的缺点:僵化3§2.软件工程的新途径1、快速原型法(Prototyping)适用于用户驱动的系统(即需求模糊或随时间变化的系统)PrototypeFeedbackModification4§2.软件工程的新途径⑴抛弃原型法(throw-awayprototype)Brooks(1975):“Doittwice.”
3、Version1:atrialtoverifyrequirements,andtogetenoughfeedback.Version2:producedfollowingawaterfallmodel.⑵演化原型法(evolutionaryprototype)①螺旋模型(thespiralmodel):Boehm(1988)5ReviewCommitmentPartitionRiskanaly-sisPrototype1Simulations,models,benchmarksRequirem
4、entsplan,life-cycleplanConceptofoperationPrototype2RiskanalysisSoftwarerequirementsRequirementsvalidationDevelop-mentplanRiskanalysisPrototype3SoftwareproductdesignDesignvalidationandverificationIntegrationandtestplanRiskanalysisOperationalprototypeD
5、etaileddesignUnittestCodeIntegrationandtestAcceptancetestImplementationPlannextphasesDevelop,verifynext-levelproductDetermineobjectives,alternatives,constrainsEvaluatealternatives,identify,resolverisksCumulativecostProgressthroughstepsThespiralmodel§
6、2.软件工程的新途径6②渐增模型(theincrementalmodel):Gilb(1988)Thewaterfallmodelisstillfollowed,butforeachseparateincrement.§2.软件工程的新途径注:演化原型法与传统方法最大的不同,在于它是一种高度迭代的动态方法,系统的初始版本很早就交付用户试用。7§2.软件工程的新途径2、面向对象方法学(OOM)特点:尽可能模拟人类习惯的思维方式,即问题域与求解域在结构上尽可能一致。与传统方法相反,OOM以数据或信息
7、为主线,把数据和处理结合构成统一体——对象。这时程序不再是一系列工作在数据上的函数集合,而是相互协作又彼此独立的对象的集合。OOM的四要素:①对象(object):世界由对象组成。②类(class):对象可划分为类;单个对象可视为某一类的实例(instance)。8§2.软件工程的新途径③继承(inheritance):类可分层,下层子类与上层父类有相同特征,称为继承。④消息(message):对象间只能通过发送消息进行联系,外界不能处理对象的内部数据,只能通过消息请求它进行处理(如果它提供相
8、应消息的话)。9§2.软件工程的新途径如果一个软件系统是使用这样4个概念设计和实现的,则认为这个软件系统是面向对象的。一个面向对象的程序的每一成份应是对象,计算是通过新的对象的建立和对象之间的通信来执行的。方法的唯一性,从生存期的一个阶段到下一个阶段的高度连续性,生存期后一阶段的成果只是前一阶段成果的修改和补充。系统结构的稳定性,系统的基本成分是对象,对象在软件开发和运行过程中是稳定的,经常变化的是功能。在面向对象系统中,功能是由对象中的操作和对象之间的消息序列来实现的,变更发生在对象内部。10
此文档下载收益归作者所有