《最新《可视化建模与UML》课程设计结业报告.doc》由会员分享,可在线阅读,更多相关《最新《可视化建模与UML》课程设计结业报告.doc(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date可视化建模与UML课程设计结业报告可视化建模与UML课程结业报告可视化建模与UML课程结业报告项目名称: 大学生毕业论文评审系统 专 业: 软件工程 班 级: 11软件本(2)班 学 号: 姓 名: 完成日期: 2014年6月6日 目录1. 前言介绍2.大学生毕业论文评审系统的需求分析32.1 系统需求的项目背景42.2 系统的需求分析42.3 系统的功能模块图53.
2、 用例图设计建模53.1 创建用例图53.2 用例说明64. 类图设计建模74.1 类图简介74.2 建立类图84.3 类图说明105. 交互建模105.1 交互建模简介105.2 建立顺序图115.3 建立协作图166. 行为建模176.1 行为建模简介176.2 建立状态图186.3 建立活动图197. 学习小结207.1.建模207.2 UML介绍 227.3.公共机制207.4. 图247.5 类图247.6 学习心得258. 参考文献261. 前言介绍 需求工程是随着软件工程的发展而产生的。在软件开发的初级时期,软件规模不大,软件开发所关注的是代码编写,软件需求很少受到重视。在引入软
3、件生命周期的概念后,需求工程成了软件生命周期的第一阶段。随着软件系统规模的扩大,以及为了解决“软件危机”而引起的软件工程技术与方法的发展,需求工程在整个软件开发与维护过程中就显得越来越重要了。人们普遍认识到,充分研究软件需求可以避免开发系统时的盲目性,能够直接关系到软件的成功与否。随着软件工程的研究和应用的逐渐深入,人们同时认识到软件需求不再仅限于软件开发的最初阶段,它贯穿于系统开发的整个生命周期。许多项目开发过程中出现的诸多问题都与需求工程阶段没有合理完整的进行需求获取、分析有关。由此可见,需求工程对于项目开发尤其是大型项目的研发的至关重要的作用。 需求工程的准确含义,没有严格统一的表述。一
4、种比较常用的解释如下: 需求工程是指应用已证实有效的技术、方法进行需求分析、确定客户需求,帮助分析人员理解问题并确定目标系统的所有外部特征的一门学科;它通过合适的工具和记号系统地描述待开发系统及其行为特征和相关约束,形成需求文档;并对用户不断变化的需求演进给与支持。需求工程可以分为需求开发和需求管理两部分。需求开发包括需求获取、需求分析、编写需求规格、需求验证;这些子学科涵盖了为软件和软件相关产品收集、评估和记录需求相关的所有活动。需求管理包括需求变更控制、版本控制、需求跟踪、需求状态跟踪等内容。 另一方面,领域用户通常不知道如何按软件开发的要求去描述他们的需求,而且,他们一开始常常对自己的需
5、求仅有一个模糊的认识,如果没有任何提示和引导,就不可能立刻给出正确而完整的需求描述。确定系统的需求是一个连续的过程,开发人员在开发系统之前不可能完全详细地说明一个系统的真正需求。一个不完整的需求获取和管理过程,会对项目的生命周期产生多米诺骨牌的效应。用户需求的缺失会导致系统需求的缺失,从而导致设计单元及功能的缺失,并最终导致系统不能实现预期的功能,或者需要在后期花费较大的代价来修正或补充这些功能,导致项目延期、产生严重的质量问题或超出项目预算。因此,及时、准确地获取用户需求,是决定软件项目能否取得成功的关键步骤之一。-2.大学生毕业论文评审系统的需求分析2.1 系统需求的项目背景伴随着我国高等
6、教育的逐渐扩展,每届的大学身越来越多,因此每年在高校毕业的大学生也越来越多,因而每年的高校毕业论文的评审工作越发复杂。毕业生都要经历关注论文选题、选题、提交论文、和导师沟通交流、修改稿件、定稿等过程,导师要经历开题、确定学生、评阅每份稿件、定稿、评分等多个环节。我们可以发现,以往的大学生论文评审的过程很熟悉但处理起来却很繁琐,耗费着大量的精力。因此,建立一个统一的毕业论文处理系统是十分必要的,不但可以减轻老师和学生的负担,使得繁琐的流程有了一个统一的流水线似的发展,不容易在过程中出现错误。2.2 系统的需求分析大学生论文评审系统的需求分析反应系统能够完成的各项功能,并且能够简单明了地把要各项的
7、功能展示给所有参与人员。大学生论文评审系统的功能分析如下所示:l 系统只针对系统管理员、毕业生以及评审老师这三类用户。l 系统允许用户注册各自的账号。l 系统分配用户权限。l 系统允许用户登录。l 系统允许修改个人账号信息。l 系统提供评审老师开题。l 系统允许毕业生查看开题信息以及选题。l 系统提示毕业生检查并确定将要提交的论文。l 系统允许评审老师批阅论文。l 系统允许评审老师给毕业生论文评分。l 系统允许系统管理员录入毕业生论文答辩的成绩。l 系统允许系统管理员对毕业生和评审老师的用户信息进行增删查改。l 该系统允许系统管理员公布毕业生论文评审成绩l 该系统允许毕业生查询个人论文的评审结
8、果成绩。2.3 系统的功能模块图 大学生毕业论文评审系统的功能模块图反映了大学生毕业论文评审系统的功能及各个功能之间的关系,具体的内容如图2.3.1。图2.3.1 大学生毕业论文评审系统功能模块图【功能模块图说明】 1)大学生毕业论文评审系统:包括用户管理、选题管理、师生互动管理和论文管理四个模块。 2)用户管理:主要用于用户登入以及用户的信息管理。 3)选题管理:用于毕业生导师开题和毕业生选题。 4)师生互动管理:师生之间方便交流。 5)论文管理:用于对每位毕业生用户的论文修改、提交、批阅管理、成绩查询。 6)用户登录管理:按照毕业生、评审老师、管理员三类用户的不同权限登录系统。 7)用户信
9、息管理:管理员可以对毕业生、评审老师两类用户的信息进行增删查改。 8)评审老师开题:评审老师在系统中公布选题。 9)毕业生选题管理:毕业生从公布的选题中选题。 10)毕业生留言:毕业生在论文中遇到的问题,可以在线给自己老师留言。 11)评审老师回复:老师在进入系统后,发现学生留言,及时回复。 12)论文提交管理:毕业生最多提交论文次数最多三次,以最后一次为终稿,最终稿不可在修改。 13)论文批阅管理:评审老师对毕业生提交的论文进行批阅,评分。 14)成绩管理:论文评审的总成绩为导师评定论文分数的60%加上毕业生论文答辩分数的40%。3.用例图设计建模3.1 创建用例图系统主要由 毕业生、评审老
10、师、系统管理员这三个二元关联类的事项组成,毕业生与大学生论文评审系统之间的选题管理事项,以及毕业生导师与大学生论文评审系统管理事项。选题者即毕业生,代表做论文行为。开题者即导师,它代表公布选题、评阅论文、论文评分。系统服务器管理员操作,它模拟管理员与毕业生和毕业生导师之间的中介,验证的行为,整个系统在服务器、工作站(毕业生、毕业生导师)运行,因此整个系统参与者是毕业生、毕业生导师、管理员。通过对系统的用例进行分析,建立用例图如下图3.1.1。图3.1.1 大学生毕业论文评审系统用例图3.2 用例说明(1) 登录系统用例,用于方便要进行操作并且没有登录系统的用户登录系统。(2) 沟通交流用例,方
11、便毕业生和毕业生导师之间就论文问题可以在线交流。(3) 论文选题用例,用于毕业生选取毕业论文论题。(4) 提交稿件用例,用于毕业生向系统提交论文。(5) 查询成绩用例,用于毕业生查询自己的成绩详情。(6) 论文总成绩用例,用于系统计算论文的总成绩。(7) 答辩分数录入用例,用于系统管理员向系统录入答辩成绩。(8) 维护用户信息用例,用于管理员管理毕业生和毕业生导师的用户信息。(9) 论文开题用例,用于毕业生导师公布论文论题。(10) 评分。4.类图设计建模4.1 类图简介类图是最常用的UML图,显示出类、接口以及它们之间的静态结构和关系;它用于描述系统的结构化设计。类图最基本的元素是类或者接口
12、。类图一般包含3个组成部分。第一个是类名;第二个是属性(attributes);第三个是该类提供的方法,类名部分是不能省略的,其他组成部分可以省略。4.2 建立类图 (1)毕业生类:该对象直接与服务器联系,登录、验证身份,得到论文选题的唯一身份,然后在规定的时间内,确认论文题目,之后进行论文提交和修改。另可联系成绩查询类查询论文总成绩及论文评语等。(2)毕业生导师类:该对象直接与服务器联系,登录、验证身份,在一定的时间内论文开题并进行论题公布,对毕业生提交的论文进行评阅并给出评语,并对毕业生终稿进行评分。(3)管理员类:此类对象直接与系统进行交互,与毕业生类、毕业生导师类进行交互,管理其信息并
13、设置其权限,另将导师发布的考试安排、考试成绩及试卷答案上传至考试记录供学生查询。(4)论文库类:包括问题论文编号、论文题目、论文提交时间。由管理员和导师类共同维护修改。(5)论文成绩类:包括论文评分、论文答辩分数、总成绩三个属性。毕业生可依据学生编号、论文题目、提交论文时间查询到相应论文分数及试论文评语等信息。(6)交流平台类:包括毕业生编号、导师编号、交流信息三个属性。毕业生可以通过该类实现与导师交流互动。(7)公告栏类:包括公告编号、公告信息、公告日期三个属性。用户都可以可以通过该类查看公告信息。根据以上描述,可以发现该系统中有七个类,类的属性,根据类的描述及属性,画出系统类图,具体如下图
14、4.2.1。图4.2.1 大学毕业论文评审系统类图4.3 类图说明根据大学生毕业论文评审系统类图的分析,在该系统中涉及到的主要类及类的作用如表4.3.1所示。表4.3.1 大学生毕业论文评审系统中的类说明类名编号属性操作毕业生1学生账号、学生姓名、学生编号、用户密码、班级、联系方式登录、更改信息、论文选题、成绩查询、提交论文、交流互动毕业生导师2导师账号、账号密码、导师编号、导师姓名、导师联系方式登录、更改信息、论文开题、评阅论文、论文评分、交流互动管理员3管理员用户、管理员密码、管理员姓名、管理员编号、联系方式登录、管理公告信息、管理用户信息、录入答辩成绩论文库4论文编号、论文名称无公告栏5
15、公告编号、公告信息、公告日期信息公布论文成绩6论文编号、论文成绩、答辩成绩、论文评语、评语导师编号无交流平台7学生编号、导师编号、交流信息编码、信息内容通信5.交互建模5.1 交互建模简介交互图描述对象间的交互关系。其中顺序图是将交互关系表示为一个二维图,它显示对象之间的动态合作关系,强调对象之间消息发送的顺序,同时显示对象之间的交互;合作图描述对象间的协作关系,合作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们之间的关系。如果强调时间和顺序,则使用顺序图;如果强调上下级关系,则选择协作图。这两种图合称为交互图。5.2 建立顺序图顺序图纵向是时间轴,时间沿
16、竖线向下延伸。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。UML顺序图一般用于:确认和丰富一个使用情境的逻辑。一个使用情境就是系统潜在的使用方式的描述,也就是它的名称所要描述的。一个使用情境的逻辑可能是一个用例的一部分,或是一条备选线路。大学生毕业论文评审系统主要有:l 开题顺序图l 选题顺序图l 提交论文顺序图l 录入成绩顺序图l 成绩查询顺序图l 沟通交流顺序图 (1) 开题顺序图通过分析,开题顺序图中有四个对象,分别为导师用户、管理用户UI、论题控制器、数据库。基本操作顺序如下:. 选择开题. 显示开题界面. 提交选题. 保存选题. 保存成功. 操作
17、成功. 开题成功. 公布论题. 公布成功图5.2.1 用户顺序图(2) 选题顺序图通过分析,选题顺序图中有四个对象,分别为毕业生、界面UI、选题控制器、数据库。基本操作顺序如下: 论文选题 显示选题界面 确认选题 是否可选 保存选题 保存成功 选题成功 返回成功图5.2.2 选题顺序图(3) 提交论文顺序图通过分析,提交论文顺序图中有五个对象,分别为导师、毕业生、论文管理器、界面UI、数据库。基本操作顺序如下: 进入提交界面 显示论文提交界面 提交论文 论文检查 上传论文 上传成功 显示上传成功 通知学生 评阅论文 写评语 保存评语 保存成功 通知学生有评语图5.2.3 提交论文顺序图(4)
18、录入成绩顺序图通过分析,录入成绩顺序图中有四个对象,分别为导师、管理员、界面UI、成绩控制器、数据库。基本操作顺序如下: 论文评分 确认分数 论文分数保存 保存成功 通知导师 答辩成绩录入 确认成绩录入 保存答辩成绩 保存成功 通知管理员图5.2.4 录入成绩顺序图(5) 成绩查询顺序图通过分析,成绩查询顺序图中有五个对象,分别为毕业生、界面UI、成绩控制器、数据库。基本操作顺序如下: 录入学号 成绩查询 数据库查询 返回论文和答辩成绩 计算总成绩 显示成绩 通知用户图5.2.5 成绩查询顺序图(6) 沟通交流顺序图通过分析,沟通交流顺序图中有四个对象,分别为导师、毕业生、留言平台。基本操作顺
19、序如下: 学生留言 反馈留言 回复留言 反馈留言图5.2.6 沟通交流顺序图5.3 建立协作图(1) 毕业生选题协作图毕业生选题协作图显示了毕业生、管理界面UI、数据库、管理用户控制器四个对象之间的交互,编号为交互步骤。图5.3.1 毕业生选题协作图(2) 导师开题协作图导师开题协作图显示了导师、管理界面UI、论文控制器、数据库四个对象之间的交互,编号为交互步骤。图5.3.2 导师开题协作图6.行为建模6.1 行为建模简介行为模型常用状态转换图(简称状态图)来描述,它又称为状态机模型。行为模型通过描述系统的状态以及引起系统状态转换的事件来表示系统的行为。状态图中的基本元素有事件、状态和行为等。
20、其描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。6.2 建立状态图(1) 管理员状态图管理员状态图主要包括以下状态:. 登录时账号密码核对,不正确则返回重新输入. 核对成功后进入用户管理界面. 在用户管理界面添加用户信息. 在用户管理界面删除用户信息. 在用户管理界面修改用户信息. 在公告栏管理界面进行公告栏管理. 在答辩成绩录入界面录入答辩成绩图6.2.1 管理员状态图(2) 用户状态图用户状态图主要包括以下状态:. 毕业生用户登录时账号密码核对,不正确则返回重新输入. 核对成功后进入系统主界面,可以选择进入个人信息界面、公告栏及论文管理界面. 在个人信
21、息界面可以修改个人信息. 在公告栏可以查看公告栏信息. 在论文管理界面可以进入选题界面、论文成绩查询界面和上传下载论文界面. 在选题界面可以进行选题. 在上传下载论文界面可以提交或者下载论文. 在论文成绩查询界面可以查询个人论文总成绩图6.2.2 用户状态图(3) 导师状态图导师状态图主要包括以下状态:. 导师用户登录时账号密码核对,不正确则返回重新输入. 核对成功后进入系统主界面. 在系统主界面可以选择进入个人信息界面、公告栏、论文管理界面. 在个人信息界面修改个人信息. 在公告栏查看公告. 在开题界面开题. 在论文评阅中评阅论文并写评语. 在论文评分中给论文打分数图6.2.3 导师状态图6
22、.3 建立活动图在论文评分活动图中,创建了三个个泳道,分别为毕业生对象、导师对象和论文评审系统对象。具体活动过程描述如下:. 毕业生选题. 系统判断选题失败,返回重新选择. 系统判断选题成功,毕业生提交论文. 所提交的论文次数不能超过三次. 提交论文次数超过三次,最后一次视为终稿. 提交论文成功后,导师批阅论文. 导师要对论文终稿评分. 评分完成即为结束6.3.1 论文评分活动图7.学习总结7.1.建模 7.1.1 为什么要建模 要生产合格的软件就要有一套关于体系结构、过程和工具的规范。 建模的目标: 模型帮助我们按照实际情况或按照我们所需要的样式对系统进行可视化。 模型允许我们详细说明系统的
23、结构和行为。 模型给出一个知道我们构造系统的模板。 模型对我们的决策进行文档化。 * 建模就是把复杂的系统变成小的系统,采用“各个击破”的原则逐一解决。 7.1.2 建模原理 1)选择创建什么模型很重要,模型要反映你难于处理的开发问题。 2)模型要在不同的精度级别上来表示。你可以根据观察的角色和观察的原因来选择精度。 3)建造模型要和现实相连。 4)重要的系统需要用一组独立的模型去处理。在面向对象的软件体系中, 7.1.3 面向对象的建模 面向算法的建模在需求发生变化或者系统增长后就变得难以维护。 面向对象的建模把对象和类作为其主要构造块。例如,在三层结构中,我们可以在用户接口层、中间层和数据
24、库层中找到你想要的对象。 7.2 UML介绍 7.2.1 概述 1)UML可以对软件密集型系统的制品进行可视化、详述、构造和文档化。最好把它用于以用况(用例)为驱动、以体系结构为中心、跌代及增量的过程中。 2)UML是一种语言,它是一种可视化的语言,它是一组图形符号。它可用于详细描述。它又是一种构造语言,可以直接生成代码。用Rational XDE就可以实现从UML到C#,或者从C#到UML的双向工程。 7.2.2 UML的概念模型 学习建模的三个要素:UML的基本构造块、这些构造块放在一起的规则、一些运用于整个UML的公共机制。 UML中有以下四种事物 : 1)结构事物 类、接口、协作(它是
25、一个交互,它是由一组共同工作以提供某协作行为的角色和其它元素构成的一个群体。)、用例、主动类(至少拥有一个进程或者线程,其元素的行为可以和其它元素的行为并发)、构件(如COM+和Java Bean)、节点。 2)行为事物 交互、状态机(描述了一个对象或者一个交互在生命期内响应事件所经历的状态序列)。 3)分组事物 包 4)注释事物 注解 UML中的四种关系 : 1)依赖 两个事物间的语义关系 2)关联 是一种结构关系,如聚合 3)泛化 一般/特殊关系 4)实现 用在两种地方:接口和实现他们之间的类和构件之间;用例和实现他们的协作之间。 UML中的图 : 1)类图 系统的静态状态图,包含主动类的
26、类图给除系统的静态进程视图。 2)对象图 3)用例图 4)顺序图 5)协作图 6)状态图 7)活动图 强调对象间的控制流程 8)构件图 9)实施图 7.2.3 体系结构 我们用5个互联的视图来描述软件密集型系统的体系结构: 1)系统的用例图 2)系统的设计视图 静态方面由类图和对象图描述,动态方面由交互图、状态图和活动图描述。 3)系统的进程视图 包含了形成系统并发和同步机制的线程和进程。 4)系统的实现视图 主要针对系统发布的配置管理。 5)系统的实施视图 7.2.4 软件开发生命周期 用况驱动以体系结构为中心 跌代过程 涉及到一连串可执行发布的管理。 软件开发生命周期的(RUP)四个阶段:
27、初始、细化、构造、移交。 7.3 公共机制 四个公共机制可以使UML简化:详述、修饰、公共划分和扩展 构造型、标记值和约束使UML提供的用以增加新的构造块、创建新的特性以及描述新的语义的机制。 7.4 图 有5种最重要的互补视图:用例视图、设计视图、进程视图、实现视图和实施视图,每一种视图包含结构建模(静态)和行为建模(动态) 建图的两种方法:正向工程和逆向工程 如何选择视图来建模? 1)视图能够表达系统的体系结构,能够暴露项目的技术风险。 2)决定用哪些制品来捕获视图的基本细节。 3)作为你的过程策略的一部分,决定把那种视图至于某种形式或者半形式的控制之下。 4)保留废弃的视图。 两种系统建
28、模的方法: 1)针对同一模型,用不同层次上的细节描述图。 2)在不同的抽象层次上,从一个模型跟踪到另一个模型的方法建模。 7.5 类图 类图包括如下内容:类、接口、协作、依赖、泛化和关联关系。 对系统的静态设计视图建模时使用类图的3种方式: 1)对系统的词汇建模 2)对简单协作建模 协作提供的一些合作行为强于其所有元素行为之和。 3)对逻辑数据库模式建模 在UML中更一般的构造块是类元,类元包括:类、接口、数据类型、信号、构件、节点、用况和子系统。他是描述结构特性和行为特性的机制。7.6学习心得刚开始接触这门课是,对这门课不是很了解,甚至不知道什么叫UML,也不知道为什么要学习这么多的模型。现
29、在这本书上的模型终于是学完了,不能说自己学的有多么好,也不敢说自己能工对Ration Rose、StarUML、Visio这些建模工具有多么的熟悉,但是当做完这份结业报告的时候,我的心里有千万说不出来的成就感和喜悦感。所有的模型只有自己亲自使用了那些生疏的、困难的工具一个个绘制出来后,才知道学习的过程中尽管困难重重,但是只有切实的认真的去做,才会有意想不到的收获。这次的结业报告我自己非常满意,毕竟是自己一点一滴做出来的,辛劳的成果让我格外的开心。通过这门课,我感觉学到了很多的东西。在课后查找资料、和同学一起讨论、一起发现问题、发现解决办法让我学会了使用身边的一切力量来学习,也学会了用新的思考问题的方式,更重要的是还学到了做事要认真仔细,实践才能出真知的道理。8.参考文献1衣杨等. 基于UML可视化设计实验教程M. 广东:中山大学出版社,20062张龙祥. UML与系统分析设计M. 北京:人民邮电大学出版社,20073吴建,汪杰UML基础与ROSE建模案例M北京人民邮电大学出版社,20074卢苇,杨少波J2EE项目实训UML及设计模式M. 北京清华大学出版社,20085杨宏平等. UML基础、建模与设计实战M. 北京:清华大学出版社,2012