当前位置首页 > 计算机 > UML理论/建模
搜柄,搜必应! 快速导航 | 使用教程

UML项目实训ppt课件

文档格式:PPTX| 44 页|大小 415.02KB|2024-11-12 发布|举报 | 版权申诉
第1页
第2页
第3页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 44
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • Click to edit Master title style,单击此处编辑母版标题样式,单击此处编辑母版文本样式,二级,三级,四级,五级,2020/3/26,#,面向对象技术及,UML,教程,第,13,章,UML,面向对象技术及UML教程第13章 UML,第,13,章,UML,项目实训,前面章节介绍了面向对象的基本概念、软件开发过程和,UML,介绍了,UML,的主要图符、模型图以及这些模型图的应用在学习了这些知识、方法和技能后可能还不清楚如何在一个实际项目中应用,UML,本章将给出一个具体的实例,“,打击游戏”,应用,UML,完成项目开发的全过程第13章 UML项目实训 前面章节介绍了面向对象的基本,13.1,项目启动,在实际的软件公司中,软件项目一般都是由软件项目组开发的,在软件项目组中每个项目组的成员都有自己明确的分工,他们相互合作完成项目开发,项目启动就是参照软件公司的软件项目开发方式,先组建项目组,确定项目的目标,制定项目开发计划,为实际的项目开发做好准备13.1 项目启动 在实际的软件公司中,软件项目一般都,13.1,项目启动,项目组一般由,4,到,5,人组成,采用自由结组的方式,定义四个角色:,项目经理,系统分析员,程序员,测试员,13.1.1,建立项目组,13.1 项目启动 项目组一般由4到5人组成,采用自由,13.1,项目启动,明确开发目标,打击游戏的项目目标可以确定为:开发一个简单的小娱乐游戏,通过点击游戏窗口中的图片,可以赢得游戏分数,随着分数的积累能够升级。

    制定开发计划(详细内容见教材),为什么先制定开发计划?一般在软件项目开发之初会根据项目开发的合同时间确定一个项目计划13.1.2,制定开发计划,13.1 项目启动明确开发目标 13.1.2 制定开发计,13.2,项目需求分析,这里要开发的打击游戏属于自己开发产品,因此需要系统分析员组织项目组成员进行系统的需求分析,具体的需求可以参考市面上流行的这些小游戏,根据它们提供的功能特点,游戏特色,吸引玩家的地方等等,在项目组全体成员的共同努力下,尽量多的挖掘出系统的需求,13.2.1,需求获取,13.2 项目需求分析 这里要开发的打击游戏属于自己开,13.2,项目需求分析,打击游戏的需求分析是从功能描述、界面描述两个方面着手的,游戏提供一个界面,随机在某个位置上放置一幅图片玩家可以点击该幅图片,当图片被点中时,图片消失,在窗口上别的位置上再出现一幅图片,游戏继续;如果在规定的时间内玩家没有点中图片,游戏结束玩家每次点中图片后,给玩家加分,将分数显示在界面上当玩家的分数达到一定数值后,游戏晋级,表现为图片停留的最长时间减少13.2.2,需求描述,13.2 项目需求分析 打击游戏的需求分析是从功能描,13.2,项目需求分析,用例图,13.2.2,需求描述,13.2 项目需求分析用例图13.2.2 需求描述,13.2,项目需求分析,用例说明:,玩家:实际游戏的软件使用者,通过点击图片,获取分数。

    Timer,:计算机系统的定时器,负责放置图片,记录图片显示时间打击游戏:玩家点击图片,赢得分数记录分数:系统记录玩家的分数,显示玩家的最后得分晋级:当玩家得到的分数达到某个规定的限值时游戏晋升到下一个级别13.2.2,需求描述,13.2 项目需求分析用例说明:13.2.2 需求描述,13.2,项目需求分析,事件流:,1,玩家启动游戏,进入游戏界面;,2,玩家点击开始按钮,游戏开始;,3,定时器在界面的某个位置放置一张图片,4,规定时间内,点击图片,图片消失,玩家得分;,5,系统显示玩家的分数;,6,循环,34,;,7,当玩家分数达到一个规定的值时,玩家晋级,显示玩家的级别8,如果玩家已经通关,游戏结束;,9,循环,38,;,13.2.2,需求描述,13.2 项目需求分析事件流:13.2.2 需求描述,13.2,项目需求分析,备选事件流:,3.a,玩家没有点击到图片,并且时间片结束,游戏结束,显示对话框“游戏结束,您的得分为,XXX,,是否重新开始游戏!”;,8.a,玩家通关后,显示对话框“您已经通关,是否重新开始游戏!”;,13.2.2,需求描述,13.2 项目需求分析备选事件流:13.2.2 需求描述,13.2,项目需求分析,13.2.3,软件界面,13.2 项目需求分析13.2.3 软件界面,13.2,项目需求分析,1,、加分规则:,2,、晋级规则:,3,、难度规则:,13.2.4,游戏规则定义,13.2 项目需求分析1、加分规则:13.2.4 游戏规,13.2,项目需求分析,1,、启动游戏,2,、进行游戏,3,、游戏晋级,4,、游戏通关,5,、游戏失败,6,、暂停游戏,13.2.5,游戏说明,13.2 项目需求分析1、启动游戏13.2.5 游戏说明,13.3,使用,UML,进行系统设计,进行系统设计主要步骤:,首先根据对需求用例的事件流进行分析,找到系统中的备选对象。

    其次分析系统中具体对象和对象之间的关系,也就是对象之间如何进行消息传递再次根据上面的分析,设计出系统顺序图或协作图最后,进行抽象得到系统的静态结构图,-,类图13.3 使用UML进行系统设计进行系统设计主要步骤:,13.3,使用,UML,进行系统设计,从事件流描述中找出所有可能的对象:,界面:游戏的界面,图片:打击游戏界面上显示的图片,分数:游戏玩家在玩游戏中赢得的分数,级别:游戏的难度等级,玩家获得的分数达到一定值,游戏晋级,定时器:控制游戏界面中图片的显示时间,13.3.1,系统备选对象,13.3 使用UML进行系统设计从事件流描述中找出所有可能,13.3,使用,UML,进行系统设计,进一步分析可能还有以下对象:,棋盘:游戏界面中的显示图片的区域,被划分成,3,行,4,列共,12,个单元格,每个单元格中可以显示图片,系统:控制和管理游戏中的系统事件,13.3.1,系统备选对象,13.3 使用UML进行系统设计进一步分析可能还有以下对象,13.3,使用,UML,进行系统设计,被选对象:,系统:,System,图片:,Picture,棋盘:,Board,定时器:,Timer,级别:,GameLevel,分数:,Score,13.3.2,系统对象分析,13.3 使用UML进行系统设计被选对象:13.3.2,13.3,使用,UML,进行系统设计,玩家要想开始游戏,就需要给发一个开始消息,给系统对象,System,发送一个消息,start(),13.3.2,系统对象分析,Player,System,start(),13.3 使用UML进行系统设计玩家要想开始游戏,就需要给,13.3,使用,UML,进行系统设计,系统对象收到开始游戏后,首先需要显示游戏的棋盘。

    这时系统对象,System,需要给游戏盘对象,Board,发送一个显示棋盘的消息,displayPic(),13.3.2,系统对象分析,System,Board,displayPic(),13.3 使用UML进行系统设计 系统对象收到开始游戏,13.3,使用,UML,进行系统设计,显示棋盘,同时还需要在棋盘上显示一张图片这时需要棋盘对象,Board,给图片对象,Picture,发送一个消息,show(),13.3.2,系统对象分析,Board,Picture,show(),13.3 使用UML进行系统设计 显示棋盘,同时还需要,13.3,使用,UML,进行系统设计,显示玩图片后,需要开始记录图片的显示时间这时需要系统对象,System,给定时器对象,Timer,发送一个消息,start(),13.3.2,系统对象分析,System,Timer,Start(),13.3 使用UML进行系统设计 显示玩图片后,需要开,13.3,使用,UML,进行系统设计,汇总得到协作图,13.3.2,系统对象分析,13.3 使用UML进行系统设计汇总得到协作图13.3.2,13.3,使用,UML,进行系统设计,点击图片后,隐藏图片,增加分数,计算晋级,按照前面过程可以得到协作图,13.3.2,系统对象分析,13.3 使用UML进行系统设计 点击图片后,隐藏图片,13.3,使用,UML,进行系统设计,前面分析了系统中的对象,进一步对这些对象进行抽象可以得到类和类间关系,13.3.3,系统类图设计,13.3 使用UML进行系统设计 前面分析了系统中的对,13.3,使用,UML,进行系统设计,完成系统类图设计后继续:,编写系统设计规格说明书,详细记录对象的分析和设计过程,给出系统顺序图或协作图,并给出说明,给出经过抽象后得到的类图,给出类的主要属性和方法的描述,13.3.3,系统类图设计,13.3 使用UML进行系统设计完成系统类图设计后继续:1,13.4,使用,UML,进行类设计,13.4.1,添加系统类,13.4 使用UML进行类设计13.4.1 添加系统类,13.4,使用,UML,进行类设计,13.4.2,类图设计,系统设计类在具体实现时可能被转化成一个包,13.4 使用UML进行类设计13.4.2 类图设计,13.4,使用,UML,进行类设计,13.4.2,类图设计,系统设计中的类在实现中也可能还映射成一个类,例如,System,类,有时系统设计中的类在实现是可能消失或者变成了一个属性或方法了,13.4 使用UML进行类设计13.4.2 类图设计,13.4,使用,UML,进行类设计,13.4.3,添加属性,对设计类进行细化,增加属性,类,Level,中需要增加一个属性,gameLevel,类,Board,中需要增加一个图片类的引用属性,pic,13.4 使用UML进行类设计13.4.3 添加属性,13.4,使用,UML,进行类设计,13.4.4,添加方法,对设计类进行细化,例如,System,类增加方法:,start,():开始游戏方法。

    hit,():用户点击动作处理方法System,():构造系统中的主要对象init,():初始化重要对象的属性stop,():结束游戏addScore,():游戏加分addLevel,():游戏晋级13.4 使用UML进行类设计13.4.4 添加方法,13.4,使用,UML,进行类设计,13.4.4,添加方法,例如,System,类增加方法后类图,13.4 使用UML进行类设计13.4.4 添加方法,13.4,使用,UML,进行类设计,13.4.5,类图设计,细化后实现类图,13.4 使用UML进行类设计13.4.5 类图设计,13.4,使用,UML,进行类设计,13.4.5,类图设计,System,类的主要方法:,init(),:初始化参数;,start(),:启动计时器,并显示图片;,stop(),:游戏结束;,addScore(),:计算和增加玩家分数;,addLevel(),:计算和增加玩家级别;,13.4 使用UML进行类设计13.4.5 类图设计,13.4,使用,UML,进行类设计,13.4.5,类图设计,Timer,类的主要方法:,Star(),:启动计时器;,13.4 使用UML进行类设计13.4.5 类图设计,13.4,使用,UML,进行类设计,13.4.5,类图设计,TimeLength,类的主要属性和方法:,INIT_TIME_LENGTH,:初始的时间片长度属性的值,getTimeLenth(),:获取时间片长度;,setTimeLenth(),:重新设置时间片长度;,13.4 使用UML进行类设计13.4.5 类图设计,13.4,使用,UML,进行类设计,13.4.5,类图设计,Board,类的主要方法:,displayPic(),:显示一张图片;,hidePic(),:隐藏图片;,13.4 使用UML进行类设计13.4.5 类图设计,13.4,使用,UML,进行类设计,13.4.5,类图设计,Score,类的主要方法:,addScore(),:点击图片正确后,玩家加分;,displayScor。

    点击阅读更多内容
    卖家[上传人]:晚风拂杨柳
    资质:实名认证
    相关文档
    正为您匹配相似的精品文档