谈谈对软件文档和UML的认识.doc_第1页
谈谈对软件文档和UML的认识.doc_第2页
谈谈对软件文档和UML的认识.doc_第3页
谈谈对软件文档和UML的认识.doc_第4页
谈谈对软件文档和UML的认识.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、UML及软件开发标准与文档写作结课论文 学院:计算机科学与技术学院专业:软件工程班级: 2012级3班姓名:学号: 谈谈对文档写作与UML的认识摘要:随着计算机技术的发展,软件工程技术已经进入了一个新的阶段.人们开始使用面向对象的技术,同时UML融合了多种面向对象建模方法以及多种软件工程方法,成为软件系统设计建模的主要工具。该文从软件工程概述、UML概述以及UML在软件工程的应用为基础,对软件工程与UML管理进行概述。从目前的情况来看,这门课从以前的不太受重视已经发展到让人们越来越关注了,因此我们学校为我们准备了这麽一门课,它需要我们以软件相关开发为目的的人对此研究一下,以紧跟时代发展和开拓创

2、新.引言:第一遍学习软件工程和UML时,看了视频,总结了,简单实践了一下就过去了,主要根据学生管理系统学习前后,反过来头来看了看!下边是一些新的感受!主要内容:首先侧重谈的是软件文档,然后侧重是uml,最后是侧重谈谈自己的学习感受。正文:首先,软工文档 软工文档,也就是计划,设计,描述,使用软件的一些文件,它最大的特点就是固定不变,用来给不同的人和计算机来阅读.在期间,文档起到了桥梁的作用,看这张图很形象:       在这里在看一下国家统一规定的13个文档的相关知识。先看一下文档的分类:   

3、   各个文档的内容:      1,可行性研究报告:说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施的方案,说明并论证所选定实施方案的理由。      2, 项目开发计划:为软件项目实施方案制定出具体计划,应该包括各部分工作的负责人员、开发的进度、开发经费的预算、所需的硬件及软件资源等。项目开发计划应提供给管理部门,并作为开发阶段评审的参考。    &#

4、160; 3,软件需求说明书:也称软件规格说明书,其中对所开发软件的功能、性能、用户界面及运行环境等作出详细的说明。它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议,也是实施开发工作的基础。      4,数据要求说明书:该说明书应给出数据逻辑描述和数据采集的各项要求,为生成和维护系统数据文卷作好准备。      5, 概要设计说明书:该说明书是概要设计阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,

5、为详细设计奠定基础。      6, 详细设计说明书:着重描述每一模块是怎样实现的,包括实现算法、逻辑流程等。      7,用户手册:本手册详细描述软件的功能、性能和用户界面,使用户了解如何使用该软件。      8,操作手册:本手册为操作人员提供该软件各种运行情况的有关知识,特别是操作方法的具体细节.      9, 测试计划:为做好组装测试和确认测试,

6、需为如何组织测试制定实施计划。计划应包括测试的内容、进度、条件、人员、测试用例的选取原则、测试结果允许的偏差范围等。      10,测试分析报告:测试工作完成以后,应提交测试计划执行情况的说明.对测试结果加以分析,并提出测试的结论意见.      11, 开发进度月报:该月报系软件人员按月向管理部门提交的项目进展情况报告.报告应包括进度计划与实际执行情况的比较、阶段成果、遇到的问题和解决的办法以及下个月的打算等.     &

7、#160; 12, 项目开发总结报告:软件项目开发完成以后,应与项目实施计划对照,总结实际执行的情况,如进度、成果、资源利用、成本和投入的人力。此外还需对开发工作作出评价,总结出经验和教训。       13,软件维护修改建议:此是为后期维护修改做记录报告用的。    上边讲述了,文档分类以及基本作用,下边我们看文档在软件生命周期的位置:        最后我们看看这些文档的宏观作用,即它们要完成的任务,用这张图展示

8、一下:     对于上边的几个简单的字符,我给大家解释一下:         1,"什么”,即回答此做什么,哪些需求需要被满足;       2,"何处"即回答从何处,即所开发的软件在什么环境中实现以及所需信息从哪里来;       3,”何时”即回答何时干,即所开发工作的时间如何安排;   

9、60;   4,"谁" 即某些开发(或维护)工作打算由”谁来干?”·       5,”如何"即某些需求是怎么实现的;       6,”为何”即为什么要进行那些软件开发或维护修改工作?  二者,UML一、为什么要学习UMLUML是Unified Modeling Language(统一建模语言)的简称。UML是对软件密集型系统中的制品进行可视化、详述、构造和文档化的语言。制品Artifact是指

10、软件开发过程中产生的各种各样的产物,如模型、源代码、测试用例等。1) UML建模可以达到以下目的:2) 使用模型可以更好地理解问题3)使用模型可以加强人员之间的沟通4)使用模型可以更早地发现错误或疏漏的地方5)使用模型可以获得设计结果6)模型为最后的代码提供依据 二、UML的特点1)UML的主要特点包括:2)统一的标准3)面向对象。UML是支持面向对象软件开发的建模语言。4)可视化、表现能力强5)独立于过程,UML不依赖于特定的软件开发过程。6)概念明确,建模表示法简洁,图形结构清晰,容易掌握和使用。共3三、UML中的视图UML中的视图包括用例视图(Use Case Vie

11、w)、逻辑视图(Logical View)、实现视图(Implementation View)、进程视图(Process View)、部署视图(Deployment View)等,这5个视图被称作”4+1”视图.如下图所示:逻辑视图。逻辑视图关注功能,不仅包括用户可见的功能,还包括为实现用户功能而必须提供的"辅助功能模块”;它们可能是逻辑层、功能模块等.开发视图。开发视图关注程序包,不仅包括要编写的源程序,还包括可以直接使用的第三方SDK和现成框架、类库,以及开发的系统将运行于其上的系统软件或中间件。开发视图和逻辑视图之间可能存在一定的映射关系:比如逻辑层一般会映射到多个程序包等。处

12、理视图。处理视图关注进程、线程、对象等运行时概念,以及相关的并发、同步、通信等问题。处理视图和开发视图的关系:开发视图一般偏重程序包在编译时期的静态依赖关系,而这些程序运行起来之后会表现为对象、线程、进程,处理视图比较关注的正是这些运行时单元的交互问题。物理视图。物理视图关注"目标程序及其依赖的运行库和系统软件"最终如何安装或部署到物理机器,以及如何部署机器和网络来配合软件系统的可靠性、可伸缩性等要求。物理视图和处理视图的关系:处理视图特别关注目标程序的动态执行情况,而物理视图重视目标程序的静态位置问题;物理视图是综合考虑软件系统和整个IT系统相互影响的架构视图.页四、UM

13、L建模工具市面上UML建模工具很多,比较流行的有Rational Rose ,Microsoft Visio、Enterprise Architect 、Visual UML等。UML建模面向对象设计系列文章使用的UML建模工具是Enterprise Architect 7。0,此工具还是比较好用的。五、UML的应用领域UML具有很广泛的应用领域,其中最常用的是为软件系统建模,主要领域有:企业信息系统、银行金融系统、电信、交通、国防、航空、零售领域、科学计算、分布式的基于Web的服务。UML还可以用来描述其他非软件系统,比如一个机构的组成和机构的工作流程等等。: 上六、UML的构成UML建模面

14、向对象设计系列文章描述了常见的一些UML图,主要包括了用例图(Use Case Diagram)、类图(Class Diagram)、活动图(Activity Diagram)、时序图(Sequence Diagram)、状态图(Statechart Machine Diagram)、部署图(Deployment Diagram)、业务处理模型(Business Process Model)、数据建模(Data Modeling Diagram)等等.(1、需求阶段如何书写Use Case用例描述文档的书写是系统分析人员对用户需求的深刻理解的体现。是后期时序图和实际开发的重要依据。也可以对作为

15、项目估算的依据,以及根据UC复杂度和开发周期来衡量开发人员的工作效率.因此UC的书写规范及其重要,就工作用的一些经验,比如书写格式、书写内容及其注意事项与大家分享.2、设计阶段如何画用例图(UseCase Diagram)例试图描概括了用例中角色和系统之间的关系,描述了系统功能需求,角色和系统的交互以及系统的反应。是客户和开发人员全貌理解项目需求功能比较好的一个方式,也是后续功能迭代的依据和方向.3、类与类之间的关系图(Class Diagram,UML图)本文针对类之间常用的关系进行了简单的描述,主要有:关联关系、泛化、依赖、聚合和组合。4、UML建模之活动图介绍(Activity Diag

16、ram)活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。活动图能够表示并发活动的情形,活动图是面向对象的。5、UML建模之状态图(Statechart Diagram)状态图重点在于描述对象的状态及其状态之间的转移,状态图的基本元素主要有:状态、转移、动作、自身转移、组合状态、进入节点、退出节点、历史状态、并发区域等,状态中的事件分为调用事件(Call)、变化事件(Change)、时间事件(Time)和信号事件(Singal).最后以实例对状态对进行了分析。6、UML建模之时序图(Sequence Diagram)时序图(Sequence Diagr

17、am)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。时序图中包括的建模元素主要有:对象(Actor)、生命线(Lifeline)、控制焦点(Focus of control)、消息(Message)等等.最后,以课程创建功能演示一时序图实例.7、UML建模之业务处理模型(Business Process Model,BPM)业务处理模型是一组活动的集合,描述了活动从开始到结束在时间或者空间上的顺序,以及输入和输出。业务处理模型最终输出要能够满足业务需要。包括输入、输出、资源、消息和目标等元素。最后以实例进一步说明了业务逻辑模型.8

18、、UML建模之数据建模(Data Model Diagram)主要介绍了数据库建模所涉及建模元素,主要包括模式 Schema、主键 Primary、外键 Foreign key、关系 Relationship、约束 constraint、索引 Index、触发器 Trigger、存储过程 Stored Procedure、视图 View等等,并配以实例加以说明。)七对uml观点 1、序列图 2、协作图 3、状态图 4、活动图 第一个问题: 图为现象的描述还是分析结果 分析以上图背后的认识论 一致调度机制的形成 1、序列图认识论 有一个边界对象,接受外界激励,按照预设的规则,将任务分配给各个对象

19、完成职责,并产生结果 结果可能为一些实例生死,或一些对象的状态改变 行为为有序的,依照规定去完成,很象我国的计划经济呀 2、协作图 看看足球场的场景,球(执行权)被不断传递,为了一个共同的目的射门获破坏射门 若有一个激励,对象如何配合去完成任务 预定义的配合关系为协作图的重点,贪官们的攻守同盟可算一个好的场景 3、状态图 冷眼旁观,着眼点在系统或重要的对象 1、状态为如何演化的(有几种状态,有价值的演化次序 2、状态演化的原因 状态图首先确定几种状态 从状态演化的原因我们就分析透彻了系统的动态行为 好的用例一个贪官的堕落 4、活动图 活动图原来与oo思想不兼容较大,如何理解呢 模型中的活动怎样

20、理解 活动与行为的关系 如果我们用模型的规则论来认识,活动图其实表达为各项活动的产生规则. 那么活动抽象了什么呢,活动将系统运动过程分割,并进一步分割为对象行为 从这个观点其实就是状态图,但更符合思维习惯. 比如 结婚-生子 若理解为进入结婚状态,生子状态就较为难受 另一个问题设计模式中行为模式和这些图的关系 从图出发研究因为图时明确定义了的,没有统一的方法,但认识的加深有助于我们解决问题,文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络另外UML目前在各高校的重视程度还有所不同,有的高校作为必修课,有理论和实验课相结合,有的只作为选修课,大部分靠学生自己看书,然后老师布置作业,所以有很多学生对作业无从下手。但是UML对计算机相关专业,并且希望日后从事软件开发方面工作的同学来说,真的是很重要的,可以给自己找工作加分不少,但是这门课程比较抽象,有需要有一定的编程基础,所以学起来有点费劲。如果以建造房子比喻,那么学习UML的过程,就是学习如何从建筑工人成长为建筑师的过程。一个软件工程师不能简单地只是掌握堆砌砖瓦的技术,还应该有设计高楼大厦的能力。结束语以上是软件文档与uml的

温馨提示

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

最新文档

评论

0/150

提交评论