《面向对象分析与设计UML实验报告(共25页).doc》由会员分享,可在线阅读,更多相关《面向对象分析与设计UML实验报告(共25页).doc(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上面向对象分析与设计UML实验报告实验及作业一一、 实验目的了解软件工程等基础知识,为后续的统一建模语言UML知识的学习做好准备工作。二、 实验设备与环境 装有Visio、RationalRose的计算机。三、 实验内容1、复习阐述“软件工程开发模型”的相关概念,并分析各种模型的优缺点,写成实验报告。2、熟悉UML软件设计工具Visio、Rational Rose的安装及环境 四、实验过程及结果经过上网搜索相关信息进行了解软件工程开发模型 的相关概念与优缺点一,什么是软件工程概念模型模型就是抽象,就是有意识地忽略事物的某些特征。抽象带来的好处是能够反映模型中元素之间的关
2、系,清晰把握大局。概念模型是模型的一种,简单说就是抽象程度极高的一种模型。软件工程概念模型是对软件工程领域进行抽象描述的模型,它能够使我们对软件工程有一个完整把握。二,软件工程开发模型的种类以及优缺点瀑布模型由W.Royce于1970年首先提出。根据软件工程生存周期各个阶段的任务,瀑布模型从可行性研究开始,逐步进行阶段性变换,直至通过确认测试并得到用户确认的软件产品为止。瀑布模型上一阶段的变换结果是下一阶段变换的输入,相邻两个阶段具有因果关系,紧密联系。一个阶段的失误将蔓延到以后的各个阶段。为了保障软件开发的正确性,每一阶段任务完成后,都必须对它的阶段性产品进行评审,确认之后再转入下一阶段的工
3、作。评审过程发现错误和疏漏后,应该及时反馈到前面的有关阶段修正错误或弥补疏漏,然后再重复前面的工作,直至某一阶段通过评审后再进入下一阶段。瀑布模型如图1.1所示。瀑布模型有许多优点,如可强迫开发人员采用规范的方法;严格规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证等。但瀑布模型也存在缺点,其主要表现在:在软件开发的初始阶段指明软件系统的全部需求是困难的,有时甚至是不现实的。而瀑布模型在需求分析阶段要求客户和系统分析员必须做到这一点才能开展后续阶段的工作。确定需求后,用户和软件项目负责人要等相当长的时间才能得到一份软件的最初版本。如果用户对这个软件提出比
4、较大的修改意见,那么整个软件项目将会蒙受巨大的人力、财力和时间方面的损失。原型模型又称演化模型,主要是针对事先不能完整定义需求的软件项目开发而言的。许多软件开发项目由于人们对软件需求的认识模糊,很难一次开发成功,返工再开发难以避免。因此,人们对需开发的软件给出基本需求,作第一次试验开发,其目标仅在于探索可行性和弄清需求,取得有效的反馈信息,以支持软件的最终设计和实现。通常我们把第一次实验性开发出的软件称为原型(prototype)。这种开发模型可以减少由于需求不明给开发工作带来的风险,有较好的效果。相对瀑布模型来说,原型模型更符合人类认识真理的过程和思维,是目前较流行的一种实用的软件开发方法。
5、原型模型如图4.2所示。原型化模型有丢弃型、样品型和渐增式演化型三种形式。丢弃型是指原型开发后,已获得了更为清晰的需求反馈信息,原型无需保留而丢弃,开发的原型仅以演示为目的,这往往用在软件的用户界面的开发上。样品型是指原型规模与最终产品相似,只是原型仅供研究用。渐增式演化型是指原型作为最终产品的一部分,它可以满足用户的部分需求,经用户试用后提出精华系统、增强系统能力的需求,开发人员根据反馈信息,实施开发的迭代过程。如果在一次迭代过程中,有些需求还不能满足用户的需求,可以在下一迭代过程中予以修正,整个实现后软件才可最终交付使用。螺旋模型是瀑布模型与原型模型相结合,并增加两者所忽略的风险分析而产生
6、的一种模型,该模型通常用来指导大型软件项目的开发,它将开发划分为制定计划、风险计划、实施开发和客户评估四类活动。沿着螺旋线每转一圈,表示开发出一个更完善的新的软件版本。如果开发风险过大,开发机构和客户无法接受,项目有可能就此中止;多数情况下,会沿着螺旋线继续下去,自内向外逐步延伸,最终得到满意的软件产品。该模型是由TRW公司的B.Boehm于1988年提出的。图1.3显示了螺旋模型的原理,沿着螺旋线旋转,在笛卡儿坐标的四个像限上分别表达了四类活动。制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;风险分析:分析所选方案,考虑如何识别和消除风险;实施开发:实施软件开发;客户评估:评价
7、软件功能和性能,提出修正建议。螺旋模型有许多优点,主要表现在:对可选方案和约束的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标,减少了过多测试或测试不足所带来的风险。但是要求许多客户接受和相信并不容易,使用该模型需要具有相当丰富的风险评估经验和专门知识,如果项目风险较大,又未必能及时发现,势必造成重点损失。目前国内许多软件公司还未能及时掌握和运用这种模型,有待进一步积累经验。喷泉模型对软件复用和生存周期中多项开发活动的集成提供了支持,以面向对象的软件开发方法为基础,它适合面向对象的开发方法。它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。喷泉模型使开发过程具有
8、迭代性和无间隙性。系统某个部分常常重复工作多次,相关功能在每次迭代中随之加入演化的系统。无间隙是指在分析、设计和实现等开发活动之间不存在明显的边界。喷泉模型参见图1.4。三,软件工程与UML的关系随着计算机技术的发展,软件工程技术已经进入了一个新的阶段。人们开始使用面向对象的技术,同时UML融合了多种面向对象建模方法以及多种软件工程方法,成为软件系统设计建模的主要工具。五、 实验小结: 了解UML一些知识实验及作业二一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、Sta
9、rUML的计算机。三、实验内容1、熟悉Visio、RationalRose、StarUML的使用。2、熟悉利用统一建模语言进行分析、设计软件的过程,完成作业:论述面向对象(OO)方法的特点、优势以及存在的问题。四、实验过程及结果面向对象(OO)方法的特点1.信息隐藏和封装特性:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程
10、称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。3.组合特性组合用于表示类的“整体/部分”关系。例如主机、显示器、键盘、鼠标组合成一台计算机。4.动态特性(1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。(2)多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含
11、多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名.面向对象方法的主要优点符合人们通常的思维方式;从分析到设计再到编码采用一致的模型表示具有高度连续性;软件重用性好。面向对象方法的主要缺点1、OO方法比较抽象,如楼上所说的掌握它便要付出很多! 想一想,OO出现已经很早了,但为什么这一、两年这么受欢迎和重视呢?我想前两年(电子商务热之前),面向VISUAL大行其道,OO呢?也许只在VC界被谈得多些,但一般的应用开发领域并不怎么样啊!而正是WEB/INTERNET的大发展,类似于C语言的JAVA技术得到了空前的发展,正因为此,OO又被更多的公司所重视。 2、O
12、O思路在某些领域(主要集中于基于VISUAL开发的应用开发领域)并不理想关键原因还是“太过抽象”,难以使开发团队、客户轻松理解。五、实验小结:了解面向对象方法的优缺点。实验及作业三一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、StarUML的计算机。三、实验内容1、掌握“参与者”、“用例”、“各种关系”在StarUML或Rational Rose中的设计方法。体会用例图的设计方法。2、以图书馆管理系统为例,完成其用例图的设计。并书写实验报告。四、实验过程及结果1、系统
13、的用户分析管理员 : 建立课程信息 ,可以修改,删除,保存。学生: 查询课程信息,可以选课,付费。2、网上选课系统事件流(1)添加、删除选课事件流管理员登陆,用例开始;建立/删除/修改信息;保存信息。(2)学生选课事件流 学生登陆,用例开始; 进行选课; 保存信息到数据库;(3)查询课程事件流 学生登陆,用例开始; 查询已选课程信息;3、画出系统的用例图。五、实验小结:了解用例图的画法实验及作业四 用例分析综合练习一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、Star
14、UML的计算机。三、实验内容1、根据如下给定的系统需求,完成系统的需求分析。需求: 1) 管理员通过系统管理界面进入。 2) 建立本学期要开的课程。 3) 保存课程信息,且可改动和删除。 4) 学生通过客户机浏览器根据学号和密码 进入选课界面。 5) 学生可以有三种操作: 查询己选课程; 选课; 付费。 通过业务层,这些操作结果存入数据库。提示:实验过程应包括:1、系统的用户分析;2、网上选课系统事件流(包括添加、删除选课事件流,学生选课事件流,查询课程事件流等);3、画出系统的用例图。四、实验过程及结果管理员:需要登录,添加删除选课信息学生:需要登录,查询,选课,付费1添加、删除选课事件流:
15、登录添加/删除保存退出2学生选课事件流:登录选课付费退出3查询课程事件流:登录查询退出管理员用例图学生用例图五、实验小结:熟悉用例图的绘画实验及作业五 建立概念模型一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、StarUML的计算机。三、实验内容请根据概念模型创建的方法,根据实验三(图书馆管理系统)的用例图,创建该系统的概念模型,并添加相应的关联。提示:实验过程应包括:1、找出系统的概念;2、画出系统的概念类;3、在概念类中添加类之间的关联关系。四、实验过程及结果五、
16、实验小结:学会寻找概念 和 如何关联。实验及作业六 系统行为分析一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、StarUML的计算机。三、实验内容请根据实验五得出的概念模型,进行系统行为的分析。提示:实验过程应包括:1、画出系统的顺序图;2、画出系统操作类;3、给出系统的契约。四、实验过程及结果五、 实验小结: 初步学习契约的画法实验及作业七 类职责分配一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、
17、实验设备与环境 装有Visio、RationalRose、StarUML的计算机。三、实验内容请根据实验五、六得出的概念模型、系统操作、契约,进行类职责的分配。提示:实验过程应包括:1、请考虑系统界面;2、得出系统的真实用例;3、对系统类中的每个操作,根据契约中的后置条件,画出相应的协作图。四、实验过程及结果五、实验小结: 学习协作图的绘画实验及作业八 系统类图一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、StarUML的计算机。三、实验内容请根据实验五、六、七得出的
18、概念模型、交互图,给出系统的类图。提示:实验过程应包括:1、请给出系统中存在的类,并说明每个类的用途(在类图中加注释);2、添加类的关系。四、实验过程及结果Loan:罚款缴费Borrower:借书者Reservation:预定图书类Title:图书信息类Item:某种图书数量五、实验小结: 学习类图的绘画实验及作业九 系统状态图一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、StarUML的计算机。三、实验内容请根据系统的类图,找出具有多状态的类,画出状态图。四、实验过程及结果五、实验小结: 了解状态图的绘画实验及作业十 系统组件图、部署图一、实验目的1、了解面向对象的基本概念2、熟悉面向对象的分析、设计过程3、了解基于UML的面向对象分析设计过程 二、实验设备与环境 装有Visio、RationalRose、StarUML的计算机。三、实验内容请根据之前实验结果,画出系统的组件图、部署图。四、实验过程及结果五、实验小结:学习系统组件图和部署图的绘画专心-专注-专业