用UML的软件工程设计.docx
- 文档编号:25085527
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:13
- 大小:936.16KB
用UML的软件工程设计.docx
《用UML的软件工程设计.docx》由会员分享,可在线阅读,更多相关《用UML的软件工程设计.docx(13页珍藏版)》请在冰豆网上搜索。
用UML的软件工程设计
学生:
学号:
《微机原理》网上学习系统(E-learning分析与设计建模报告
RationalRose是分析和设计面向对象软件系统的强大的可视化工具,可用来先对系统建模,再编写代码,从而一开始就保证系统结构合理。
利用模型可以更方便地捕获设计缺陷,从而以较低的成本修正这些缺陷。
RationalRose支持业务模型,帮助了解系统的业务,有助于系统分析,可以先设计使用案例和UseCase框图,显示系统的功能。
也可以用Interaction框图显示对象之间如何配合,提供所需功能。
Class框图可以显示系统中的对象及其相互关系。
Component框图可以演示类如何映射到实现组件。
最后,Deployment框图可以显示系统的网络设计。
在传统过程中,我们采用的步骤如图1所示。
Bob
图1传统软件开发过程
用户的需求被建成文档,但设计在Bob的脑子里,因此只有Bob知道系统的结构。
如果Bob离开,则这个信息也随他一起离开。
如果你代替Bob,则你会知道要了解一个文档不足的系统是多么费事。
Rose模型采用的过程如图2所示。
图2Rose模型采用的过程
设计被建成文档,开发人员就可以在编码之前在一起讨论设计决策了,不必担心系统设计中每个人选不同的方向。
下面以《微机原理》网上学习系统(E-learning为例说明分析与设计建模过程.
一、系统分析模型
1、用例图
系统,子系统或类与外部的参与者(actor交互的动作序列的说明,包括各种序列和出错序列,用例分析可以认为是对系统功能的分解,把一个系统分解成若干个功能,确定用例的粒度(功能如何细分一般控制在20个左右,用例是系统级的,抽象的描述,不是细化的(只说明做什么,而不关心怎么实现具体的做法,对复杂的系统可以划分为若干子系统。
获取用例(分析系统需求步骤:
活动者希望系统执行什么任务;活动者在系统中访问那些信息(创建存储,修改删除;需要将外界的那些信息提供给系统;需要将系统的那些信息告诉活动者;如何维护系统。
识别活动者(系统参与者就是活动者:
谁向系统提供信息;谁从系统获取信息;谁操作系统;谁维护系统;系统使用那些外部资源;系统是否和已经存在的系统交互;actor不仅仅是人,而是指代表某一种特定功能的角色,一个人可以对应很多个actor可以指外部系统或设备,如果一个角色的操作由另外一个角色代理完成,需要建立依赖关系。
对于《微机原理》网上学习系统来说,教师是一个活动的参与者(角色,学生也是一个活动参与者(角色。
在系统中,用例有:
资源共享、作业管理、成绩显示、在线考试、课程论坛、提交作业。
还有一些抽象用例,不是有用户直接驱动的,如:
作业公布、批改作业、课件下载、资料上传下载、工具上传下载。
《微机原理》网上学习系统的系统“用例图”如图3所示。
图3系统用例图
2、活动图
活动图是任何系统活动以及活动之间数据流或判断的可视表示。
活动图提供了多种不同的业务流程视图。
具有以下用途:
描述活动之间的数据流或判断;提供多种不同的业务流程视图;描述用例中出现的活动;使用不同的非连续符号显示多种不同的活动;显示并行线程。
《微机原理》网上学习系统的系统的“学生活动图”如图4所示。
“教师活动图”如图5所示。
学生进入系统的活动:
首先登陆,登陆成功后,进入系统,可以在系统上进行“资源共享”下的“课件下载”、“提交作业”、“在线考试”、“课程论坛”、“退出系统”等活动。
教师可以进行的活动:
首先登陆,登陆成功后,进入系统,可以在系统上进行“资源共享”下的“课件制作与发布”、“作业管理”下的“作业批改和成绩公布”、“在线考试”下的“在线阅卷和成绩发布”、“课程论坛”、“退出系统”等活动。
图4学生活动图
图5教师活动图
二、系统设计模型
1、类图
类图描述系统中类的静态结构。
不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作。
类图描述的是一种静态关系,在系统的整个生命周期都是有效的。
对象图是类图的实例,几乎使用与类图完全相同的标识。
他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。
一个对象图是类图的一个实例。
由于对象存在生命周期,因此对象图只能在系统某一时间段存在。
包由包或类组成,表示包与包之间的关系。
包图用于描述系统的分层结构。
通过对《微机原理》网上学习系统进行分析,系统中的类有:
教师信息类、学生信息类、课件信息类、课程信息类、题库类,根据教师和学生的特性,抽象出一般化类“用户类”。
系统“类图”设计模型如图6所示。
图6系统类图
2、顺序图
顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象
之间的交互;合作图描述对象间的协作关系,合作图与顺序图相似,显示对象间的动态合作关系。
除显示信息交换外,合作图还显示对象以及它们之间的关系。
如果强调时间和顺序,则使用顺序图;如果强调上下级关系,则选择合作图。
对于《微机原理》网上学习系统,首先根据“学生活动图”建立脚本。
学生进行网上学习的正常脚本如下:
1、用户登陆;
2、选择课程;
3、反馈选课信息并记录;
4、在线考试;
5、反馈在线考试成绩并记录;
6、在先提交作业;
7、反馈作业提交情况和批改情况;
8、课件下载;
9、反馈课件下载记录;
学生进行网上学习的异常脚本如下:
1、用户登陆;
2、非法登陆;
3、注销用户。
结合“学生活动图”,可以设计出《微机原理》网上学习系统中,“学生顺序图”如图7所示。
图7学生顺序图
教师进行网上操作的正常脚本如下:
1、登陆;
2、添加课程;
3、添加课件;
4、添加课程资源;
5、修改课件;
6、修改课程资源;
7、退出系统
学生进行网上学习的异常脚本如下:
1、登陆;
2、非法登陆;
3、退出系统。
结合“教师活动图”,可以设计出《微机原理》网上学习系统中,“教师活动图”如图8所示。
图8教师活动图
3、组件图
组件图描述代码部件的物理结构及各部件之间的依赖关系。
一个部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。
它包含逻辑类或实现类的有关信息。
组件图有助于分析和理解部件之间的相互影响程度。
在《微机原理》网上学习系统中,参与的部件有PHP、教师应用程序、学生应用程序、教师模版,学生模版、库文件。
“系统组件图”如图10所示。
图10系统组件图
4、部署图
部署图定义系统中软硬件的物理体系结构。
它可以显示实际的计算机和设备(用节点表示以及它们之间的连接关系,也可显示连接的类型及部件之间的依赖性。
在节点内部,放置可执行部件和对象以显示节点跟可执行软件单元的对应关系。
在《微机原理》网上学习系统中,主要的软硬件包括:
WEB服务器、应用服务器、数据库服务器、教师应用界面、学生应用界面。
“系统部署图”如图11所示。
图11系统部署图
三、系统数据库模型
对于《微机原理》网上学习系统这样的Web应用来说,关系数据库是一种强大的支持工具,这得益于它们的高可用性、性能,而且相对来说,关系数据库比较容易使用。
要找出一个功能完善、源代码开放、能够在多种平台上运行的数据库系统并不困难。
我们可以用Perl、Java、PHP以及其他服务器端脚本语言把关系数据库和Web网站连结到一起。
随着
网站规模的发展,它对数据库——通常是关系数据库——的依赖程度也日益增加。
大量页面和服务需要向数据库表写入信息,或者从数据库提取信息。
对于大多数网站,数据库表很快成为网站体系结构中的关键部分,成为网站运作的生命中枢。
用图(Diagram管理数据模型具有高效、方便的优点。
对于RDBMS,描述数据模型的图通常称为实体关系图(EntityRelationshipDiagram,ERD。
用ERD描述数据模型能够帮助你预先精确定义数据需求,使你能够对以后的改动做出有效的规划,能够随着网站的发展方便地改进规划。
在《微机原理》网上学习系统中,与解决问题密切相关的数据实体有:
教师、学生、课程、登陆系统、系统资源、课件信息、题库、作业信息。
因此,按照设计规范,设计出的“CDM图”如图12所示,“PDM图”如图13所示。
1、CDM图
图12CDM图
2、PDM图
图13PDM图
通过对《微机原理》网上学习系统进行分析和设计建模,充分认识到信息分析和设计在软件开发中的重要作用。
目前进行建模的工具很多,比较流行的是IBM公司RationalRose,它提供了信息分析和建模的平台,可以建立用例视图、逻辑视图、实现视图和部署视图,通过完善、详细的设计,最终可以产生用C++,VB等语言表示的代码,大大缩减了软件的开发周期。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UML 软件工程 设计