面向对象的思想和方法在软件开发中的应用_第1页
面向对象的思想和方法在软件开发中的应用_第2页
面向对象的思想和方法在软件开发中的应用_第3页
面向对象的思想和方法在软件开发中的应用_第4页
面向对象的思想和方法在软件开发中的应用_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2年级2005专业信息管理与信息系统学生姓名_____林红指导老师李廷全___________________________面向对象的思想和方法在软件开发中的应用i重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用i重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用[1]徐锋编著.UML面向对象建模基础.水利水电出版[3]施昊华,张朝辉.UML面向对象结构设计与应用[M]京:国防工业出版社,2003.9重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用 随着计算机技术的飞速发展,计算机管理系统应用的普及,企业信息化势在必行。传统开发方法结构化开发的软件存在很多问题,其有稳定性、可修改性和可重用性都比较差,生产效率低等缺陷,这是因为传统的软件开发是面向过程的。然而,用户需求的变化大部分是针对功能的,采用面向对象方法开发可以满足用户的需求,因为面向对象有以下优点:能够比较自然地反映现实事物,可重用性、可维护性和可扩展性比较强。本文将对面向对象技术的基本概念、基本特征,以及面向对象方法开发的基本过程和方法等作详细的介绍,其次介绍目前流行的几种面向对象程序设计语言方法,通过简述UM语言及常用软件来说明使用UM的面向对象开发方法是系统开发的趋势。最后本文阐述了UM的主要内容,并以开放式学籍管理系统为例,探讨了应用UM建模机制,对系统的需求分析、详细设计及实现的不同阶段的建模过程。展示了面向对象的思想和方法在软[关键词]面向对象UML管理信息系统重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用ABSTRACTAlongwiththerapiddevelopmentofcomputertechnology,computermanagementsystemiswidelyapplied,enterpriseinformationizationisimperative.Traditionalmethodofstructureddevelopmentsoftware,theexistingproblemsandthestabilityandcanmodifyreusabilityarepoor,lowproductionefficiency,becausethetraditionaldefectsinsoftwaredevelopmentisfacingtheprocess.However,theuserneedsmostisthechangeofthefunction,usingobject-orientedmethodcansatisfythedemandofusers,becausehavethefollowingadvantages:theobjectorientedtocomparenaturallyreflectreality,reusabilityandmaintainabilityandexpansibility.Thispaperanalyzesthebasicconceptsofobject-orientedtechnology,thebasiccharacteristics,aswellasthebasicmethodofobjectorienteddevelopmentprocessandthemethodsuchasdetailedintroduction,secondlyintroducesseveralpopulardesignofobject-orientedprogrammingIanguage,thispaperexpoundsthemaincontentandtheUMLtoopenregistrationmanagementsystemasanexample,discussestheapplicationofUMLmodelingmechanism,therequirementanalysis,systemdesignanddetailedthedifferentstagesoftheprocessofmodeling.Displaytheobject-orientedideasandmethodsintheapplicationofsoftwaredevelopment.formationSystem5重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用 ABSTRACT V第一章引言 1第二章面向对象概述 22.1面向对象的基本概念 22.2面向对象的特征 42.3面向对象开发的工作过程 52.4面向对象开发的常用方法 6第三章UML语言及常用软件简介 8 8 9 4.2使用UML建立开放式学籍管理系统的模型 1重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用 在20世纪60年代以前,软件开发者构造的软件系统大多都是较小的,且相对简单。编程语言及编程环境也相对简单,随着软件复杂性的增长,为了更好地维护代码,软件开发也需要方法来进行约束。传统的方法中,结构化方法和基于建模方法是典型的软件开发方法。结构化方法是结构化分析、结构化设计和结构化编程的总称。结构化方法的思想萌发于20世纪6代由TomDeMacro和EdYourdon等人被系统地进出来。其目的在于,杂的系统而言,容易导致模块的低内聚和模块间的高耦合,从面使得系统缺乏灵活性和可维护性。基于建模方法在20世纪70年代末提出,即PeterChen的实体------关系法与EdCodd的关系数据库理论相结合提出的一种新的软件开发方法。其强调对信息实体建模,而不是对象建模。结构化方法和基于建模方法都没有较强地描述系统的动态行为的能力。随着计算机技术的飞速发展,计算机管理系统应用的普及,企业信息化势在必行。传统开发方法结构化开发的软件存在很多问题,其有稳定性、可修改性和可重用性都比较差,生产效率低等缺陷,这是因为传统的软件开发是面向过程的。然而,用户需求的变化大部分是针对功能的,采用面向对象方法开发可以满足用户的需求,因为面向对象有以下优点:能够比较自然地反映Language,统一建模语言)是一种对面向对象系统进行可视化、详细描述、构造和文档化的标准建模语言。本文以UM语言软件建模过程为例,展示面向对象的思想和方法在软件开发中的应用。2重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用第二章面向对象概述语中最普通的一个单词。它在字典中的定义是这样的。对象:能感觉到或能够被感觉到“面向”也没有任何特别的含义,它的定义是“指向”。在这种定义下,“面向对象”被理解为形容词。因此,面向对象可以定义成这样,面向对象:指向你可以想到毫无疑问,软件工业无法为“面向对象”下一个统一的定义。这种模糊性使得任何一个软件零售商都声称他们的商品是“面向尽管权威人士对面向对象的概念没有达成一致的意见,但从程序设计方法的角度来联、聚合、消息、多态性等基本概念来进行程序设计。2.1.1对象(Object)对象是人们要进行研究的任何事物,它可以是有形的(比如一辆汽车),也可以是无形的(比如一项计划)。对象是构成世界的一个独立单位,它具有自己的静态特征和动态特征。对象是系统中用来描述客观事物的一个实体,它是构2.1.2类(Class)具体化就是对象,也可以说类的实例是对象。类的确定主要是确定该类的所有3重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用对象有哪些属性和哪些行为。这些属性和行为必须覆盖该类中的所有对象。例如在一个学生类中,它的属性有姓名、学号、性别、所在院系,它的行为有选课、注册等。抽象是指忽略事物的非本质特征,只注意那些与当前目标有拳本质特征,从而找出事物的共性;而分类是把具有共同性质的事物划分为一类,得出一个抽象的概念。另外,每一个属性与行为都被封装后,只能在类的内部起作用。2.1.3圭寸装(Encapsulation)为了实现信息的隐蔽,又提出了封装,就是把对象的属性和行为结合成一2.1.4继承(Inheritanee)任何一个子类都具有其父类所有的属性、方法、事件。这一特性叫做类的继承。如果父类的特性发生变化,其子类也相应改变。面向对象的编程技术强调了代码的重用性,而可重用性即是能过继承来实现的。简化了人们对事物的认识和描述,也简化了系统的构造强度及其文档,非常有益于软件复用。2.1.5关联可以通过对象的属性表达出来。例如“,学生”与“课程”类之间存在着关联“选课”,用类“学生”的对象的属性来记录该对象具体选课的课程对象(由“课程”类创4重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用是关联的一种,只是关联的语义没有聚合那么明显。聚合是具有整体一部分关系语2.1.7消息(Message)在面向对象方法中,把向对象发出的操作请求称为消息。对象之间通过消息进行通2.1.8多态性面向对象设计借鉴了客观世界的多态性,体现在不同的对象收到相同的消息时产生多种不同的行为方式。例如,在一般类“几何图形”中定义了一个行为“绘图”,但并不确定执行时到底画一个什么图形。特殊类“椭圆”和“多边形”都继承了几何图形类这样一个绘图的消息发出后,椭圆、多边形等类的对象接收到这个消息后各自执行不同面向对象方法是一种运用对象、类、封装、继承、关联、聚合、消息、多态性等概面向对象技术强调在软件开发过程中面向客观世界或问题域中的事物,采用人类在认识客观世界的过程中普遍运用的思维方法,直观、自然地描述客观世界中的有关事物。面向对象技术的基本特征主要有对象唯一性、分类性、继承性和多态性。5重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用221对象唯一性每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。2.2.2分类性分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。2.2.4多态性(多形性)到同一消息可以产生不同的结果,这种现象称为多态性。多态性允许每个对象以适合自身的方式去响应共同面向对象开发的过程一般包括:系统调查和需求分析、分析问题的性质和6重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用2.3.1系统调查和需求分析对系统将要面临的具体管理问题以及用户对系统开发的需求进行调查研究,即先232分析问题的性质和求解问题面向对象系统分析(ObjectOrientedAnalysis00A)抽象地识别出对象以及其行为、结构、属性、方法等。233整理问题,在繁杂的问题域中面向对象系统设计(ObjectOrientedDesign00D)即对分析的结果作进一步地抽2.3.4程序实现即用面向对象的程序设计语言将上一步整理的范式直接映射(直接用程序语言来取目前,面向对象开发方法的研究已日趋成熟,国际上已有不少面向对Booch最先描述了面向对象的软件开发方法的基础问题,指出面向对象开发是一种根本不同于传统的功能分解的设计方法。面向对象的软件分解更接近人对客观事务的理解,而功能分解只通过问题空间的转换来获得。7重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用法的主要优点是通过多年来大系统开发的经验与面向对象概念的有机结合,在对象、结构、属性和操作的认定方面,提出了一套系统的原则。该方法完成了从需求角度进一步进行类和类层次结构的认定。尽管Coad方法没有引入类和类层次结构的术语,但事实上已经在分类结构、属性、操作、消息关联该方法是一种新兴的面向对象的开发方法,开发工作的基础是对真实世界的对象建模,然后围绕这些对象使用分析模型来进行独立于语言的设计,面向对象的建模和设计应用领域的软件开发提供了一种实际的、高效的保证,努力寻求一种问题求解的实际方guage)语言软件工程领域在1995年1997年取得了前所未有的进展,其成果超过软件工程领域过去15年的成就总和,其中最重要的成果之一就是统一是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它融入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从第三章UML语言及常8重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用面向功能开发方法,已逐渐不能适应越来越复杂和多变的需求了,其成果不能得到很好的重用。而面向对象建模技术能够有效地控制复杂性和适应多变性,从而能提高系统UML(统一建模语言)是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软⑵UML表示法定义UMI符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型,在标准建模语言UML的主要特点可以归结为表示图形和方法,能简洁明了地表达面向对象的各种概念。(2)可视化,表示能力强。通过UML的模型图能清晰地表示系统的逻辑模型和实现⑷独立于程序设计语言。用UML建立的软件系统模型可以用Java、VC++9重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用UML进行系统分析和设计,可以加速开发进程,提高代码质量,支持动态的业务需MicrosoftOfficeVisio?2003PowerDesigner等就受到了业界的瞩目,并一直引领着可视化建模工具的发展。越来越多的软件公司和开杂系统建模;利用双向工程技术可以实现迭代式开发;团队管理特性支持大型、复杂的项目和大型而且通常队员分散在各个不同地方的开发团队。322Visio2003Visio2003简MicrosoftVisio是独立的图表解决方案,它可以帮助用户交流创意、信息和系统并将其可视化。使用Visio可以定义和记录日常工作生活的复杂信息,并与其他人有效地共享创意和信息。另外,如果将Visio图重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用3.2.3EnterpriseArchitectEnterpriseArchitect是一个全功能的、基于UM啲visualCASE工具,持C++Java、VisualBasic、Delphi、C#以及VB.Net。PowerDesigner是一个功能强大而使用简单工具集,提供了一个复杂的交互环Designer产生的模型和应用可以不断地增长,适应并随着你的组织的变化而变化。重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用 下面我将以UML(UnifiedModelingLanguage)例,展示面向对象的思想和方法在软件开发中的应用。语言软件建模过程为用途:用来明确问题需求;为用户和开发人员提供明确需求;为用户和开发人员提供一个协商的基础,作为后继的设计和实现的框架。通过对一些相关知识的理论研究后,结合实践经验,将基于UM的软件建模过程可简单总结为:4.1.1用例建模需求分析阶段,首先要对系统基本功能需求进行描述,接着可以使用用例来捕获用户需求。用例建模阶段,首先找出系统的执行者,分析执行者要做什么;在此基础上,获取用例,确立好角色;然后依据系统功能来确立系统的用例模型,建立用例视4.1.2静态建模在静态建模阶段,将从系统的内部结构和静态角度,分析和描述系统中的各类实体(对象和类)以及它们内部和彼此间的关系,确定实体功能范围的约束和限定,建立系统的粗略框架,再逐步细化其内部功能需求,最终建立系统的静态模型。静态建模的4.1.3动态建模为实现用例,类之间需要协作,这可以用UM动态模型来描述。动态建模阶段的主要任务是在前两个阶段的基础上,分析系统中各种行为发生的时序状态和交互关系,各类实体的状态变化过程,从而动态描述系统行为,反映系统内部对象之间的动态关系。动态建模应建立并发视图,包括顺序图、合作图、状态图和活动图。通常可以重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用根据需要只选取其中一到两种图来说明问题,而不必全部罗列出来。4.1.4实现与测试实现阶段是采用面向对象编程语言将来自设计阶段的类转换成实际的代码的过程。可作为测试阶段的依据。在完成系统编码后,需要进行测试以保证所开发的系统符合用户需求。总之,UML的建模过程是非常灵活的,开发者可以使用其全部或部分静态图和动态图来描述和分析应用系统,并且该过程可以循环往复。4.2.1用例建模阶段教研室分级管理,由学生档案管理、导师管理、授课教师管理、选课管理、成绩查询管理、打印报表等几部分组成,选课学生甚至联网的邻近院校共同参与的管理系统。学籍管理由学校学籍管理中心监控,各教学系部、教研室分级管理,任课教师,选课学生共开放式学籍管理系统是根据对学校学籍管理信息中心而建立的一个简单的学籍管理表外部与系统交互的角色,包括学生、系统管理员,用例图(见图4-1)是对系统需求的描述,表达了系统的功能和所提供的服务,包括学生档案管理子系统、导师档案管理子系统、课程管理子系统、授课教师管理子系统、选课管理重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用用例只描述参与者和系统在交互过程中做些什么,并不具体描述怎么做。在建模过程中,不可能也不需要一次就找出所有的用例,随着认识的加深,用例图可以不断地自顶向下逐步精化和细化,抽象出不同层次的用例图。在利用用例建模时,如果用例之间存在着重复应用,可以考虑关联或者包含关联,对特殊情况可以考虑泛化关联或422静态建模阶段类图设计是面向对象方法的核心技术,通过类图将用例的实现具体到每个类中,从开始,从系统的底层就把握住学籍管理信息资源的特征,为下一步的具体实现打好基件、节点、图等。学籍管理系统中的学生类如图4-2所示。重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用•訪tltml)423动态建模阶段UML的静态模型表示了系统的结构,动态模型表示系统的行为。在动态建模机制中,以消息来完成对象之间的交互,用状态图、顺序图、协作图和活动图来描述系统重庆通信学院本科毕业论文面向对象的思想和方法在软件开发中的应用[选揮萱询真型〕424实现与测试

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论