[计算机]第二课 软件工程标准化 Case工具.doc

上传人:sccc 文档编号:4561223 上传时间:2023-04-27 格式:DOC 页数:9 大小:366KB
返回 下载 相关 举报
[计算机]第二课 软件工程标准化 Case工具.doc_第1页
第1页 / 共9页
[计算机]第二课 软件工程标准化 Case工具.doc_第2页
第2页 / 共9页
[计算机]第二课 软件工程标准化 Case工具.doc_第3页
第3页 / 共9页
[计算机]第二课 软件工程标准化 Case工具.doc_第4页
第4页 / 共9页
[计算机]第二课 软件工程标准化 Case工具.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《[计算机]第二课 软件工程标准化 Case工具.doc》由会员分享,可在线阅读,更多相关《[计算机]第二课 软件工程标准化 Case工具.doc(9页珍藏版)》请在三一办公上搜索。

1、第二课 软件工程标准化 Case工具本课学习目标:了解软件工程标准化的意义和作用。了解软件工程标准的分类方法,软件工程标准的制定和推行过程。了解我国的软件工程标准化工作和制定的相关标准。掌握计算机软件产品开发文件编制指南(GB856788)中规定的14种文档以及文档各自的作用。了解CASE工具的定义和作用了解常见的几种CASE工具本课重点与难点软件件工程标准化的意义和作用GB856788CASE工具的定义2.1 软件工程标准化的意义5分钟1、提高软件的可靠性、可维护性和可移植性(这表明软件工程 标准化可提高软件产品的质量) ;2、提高软件的生产率 提高软件人员的技术水平 ;3、提高软件人员之间

2、的通信效率,减少差错和误解 ;4、有利于软件管理 ;5、有利于降低软件产品的成本和运行维护成本 ;6、有利于缩短软件开发周期。详细描述每项意义的具体体现2.2 软件工程标准分类10分钟1、类型:1)过程标准(如方法、技术、度量等)2)产品标准(如需求、设计、部件、 描述、计划、报告等)3)专业标准(如职别、道德准则、认证、特许、课程等)以及记法标准(如术语、表示法、语言等)。 2、标准介绍1)FIPSl05是美国国家标准局发布的软件文档管理指南 2)NSAC39是美国核子安全分析中心发布的安全参数显示系统的验证与确认3)ISO 5807是国际标准化组织公布(现已成为我国国家标准)的信息处理数据

3、流程图、程序流程图、系统流程图、程序 网络图和系统资源图的文件编制符号及约定。3、根据软件工程标地制定的机构和标准适用的范围的不同,将软件工程标准分为五个级别:(1)国际标准 由国际联合机构制定和公布,提供各国参考的标准。最有影响的是ISO(International Standards Orgnization)和IEC(International Electro-techinical Commission)国际标准化组织。(2)国家标准由政府或国家级的机构制定或批准,适用于全国范围的标准,如: GB中华人民共和国国家技术监督局是我国的最高标准化机构ANSI(American National

4、 Standards Institute)美国国家标准协会 FIPS(NBS)Federal Information Processing Standards (National Bureau ofstandards)美国商务部国家标准局联邦信息处理标准。(3)行业标准 由行业机构、学业团体或国防机构制定,并适用于某个业务领域的标准,如:IEEE(Institute of Electrical and Electronics Engineers)美国电气和电子工程师学会。(4)企业规范一些大型企业或公司,由于软件工程上作的需要,制定适用于本部门的规范。例如,美国IBM公司通用产品部(Gener

5、al Products Division)1984年制定的程序设计开发指南仅供该公内部使用。(5)行业规范 由某科研生产项目组织制定,且为该项任务专用的软件工作规范。例如,计算机集成制造系统(CIMS)的软件工程规范。详细描述每种标准的制定过程并举例说明2.3 软件工程标准的制定与推行 10分钟1、软件工程标准的制定与推行通常要经历一个环状的生命期。 (1)建议:拟订初步的建议方案。 (2)开发:制定标准的具体内容。 (3)咨询:征求并吸收有关人员意见。(4)审批:由管理部门决定能否推出。 (5)公布:公开发布,使标准生效。 (6)培训:为推行标准准备人员条件。 (7)实施:投入使用,需经历相

6、当期限。 (8)审核:检验实施效果,决定修订还是撤销。(9)修订:修改其中不适当的部分,形成标准的新版本,进入新的周期。详细描述每个阶段的工作2、影响软件工程标准顺利实施的不利因素可能有:标准本身制定得有缺陷,或是存在不够合理,不够恰当的部分。 标准文本编写得有缺点,例如,文字叙述可读性差,难于理解,或是缺少实例供读者参阅。 主管部门未能坚持大力推行,在实施的过程中遇到问题又未能及时加以解决。未能及时作好宣传、培训和实施指导。 未能及时修订和更新。2.4 我国的软件工程标准化工作3分钟现已得到国家标准总局批准的软件工程国家标准见书P11-2.3。简单描述相关的国家标准2.5 计算机软件产品开发

7、文件编制指南(GB856788)介绍10分钟 指南结出了编制14种文档的编写大纲,详细规定了每种文档自然语言形式的编写章节和内容,1 可行性研究招告 编制目的:说明软件开发项目的实现在技术、经济和社会条件方面的可行性,评述为了合理地达到开发目标而可能选择的各种方案;说明并论证所选定的方案。2 项目开发计划 编制目的:用文件形式把开发过程中对各项工作负责人员、开发进度、所需经费预算、所需软硬件条件等问题作出的安排记载下来,以便根据本计划开展和检查本项目的开发工作。3 软件需求说明书 编制目的;使用户和软件开发者双方对软件的初始规定有一个共同的理解,使之成为整个开发工作的基础;4 数据要求说明书

8、编制目的:为了向整个开发时期提供关于被处理数据的描述和数据采集要求的技术信息。5 概要设计说明书 编制目的;说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供原则和基础。6 详细设计说明书 编制目的;说明一个软件系统各层次中每一个程序(每个模块或子程序)的设计考虑。7 数据库设计说明书 编制目的;对于设计中的数据库的所有标识、逻辑结构和物理结构作出具体的设计规定。8 用户手册 编制目的:使用非专门术语,充分地描述该软件的功能和基本的使用方法,使用户(和潜在用户)通过手册能够了解软件

9、的用途、以及如何在不同的情况下正确使用它。9 操作手册编制目的:向操作人员提供该软件每一个运行的具体过程和有关知识,包括操作的细节。10 模块开发卷宗 编制目的:以一个模块或一组密切相关的模块为单位记录和汇总低层次开发的进度和结果,以便于整个模块开发工作的管理和复审,并为将来的维护提供非常有用的技术信息。11 测试计划 编制目的;为程序系统的组装测试和确认测试提供计划,包括每项测试活动的内容、进度安排、设计考虑,测试数据的整理方法及评价准则。12 测试分析报告 编制目的:把组装调试和确认测试的结果、发现及分析写成文件加以记载。13 开发进度月报 编制目的:及时向有关管理部门汇报项目开发的进展和

10、情况,以便及时发现和处理开发过程中出现的问题。14项目开发总结招告报告 编制目的:为了总结本项目软件开发工作的经验,说明实际取得的开发结果以及对整个开发工作的各个方面的评价。9个是属于技术开发档案:可行性研究报告、软件需求说明书、数据要求说明书、测试计划、概要设计说明书、详细设计说明书、数据库设计说明书、模块开发卷宗、测试分析报告。5个是管理文档和说明性资料,即:项目开发计划、开发进度月报、项目开发总结报告,用户手册和操作手册。详细描述GB856788的内容2.6 CASE 的定义5分钟CASE(Computer Aided Software Engineer计算机辅助软件工程) “用自动化手

11、段对结构化概念和设计方法重新进行组装”。CASE的实质是为软件开发人员提供一组优化集成的且能大量节省人力的软件开发工具,以实现软件生存期各个环节的自动化并使之成为一个整体。CASE是一套方法和工具,可使用系统开发商规定的应用规则,并由计算机自动生成合适的计算机程序。CASE工具分成高级CASE和低级CASE.高级CASE工具用来绘制企业模型以及规定应用要求,低级CASE工具用来生成实际的程序代码。CASE工具和技术可提高系统分析和程序员工作效率。其重要的技术包括应用生成程序、前端开发过程面向图形的自动化、配置和管理及寿命周期分析工具简单描述CASE的定义和实质2.7 CASE 的作用5分钟1)

12、通过自动检查提高软件的质量;2)使原型的建立成为可行;3)简化程序的维护工作;4)加快软件的开发过程;5)鼓励进化式和递增式的软件开发,使软件部件可重复使用。简单描述CASE每项作用的体现2.8介绍几个软件开发CASE工具15分钟 2.8.1 SoDARational公司提供的SoDA是一种强有力的软件文档自动生成器。它使软件文档的生成实现了自动化,减化了软件开发中文档的生成过程。特点: 1)SoDA可自动从软件开发环境中获取信息以制作文档,并可以直接输入附加信息。2)SoDA制作的文档用途广泛 3)SoDA自动从软件工程工具中获得信息4)使用文字处理工具直接添加并保存补充的信息5)定制文档模

13、板而无需编程6)创建模版7)检查文档和信息源的一致性8)生成和不断更新文档9)使用多信息源生成一个单一的文档10)通过用户所选择的工具提供了整个生命周期自动化11)提供对需求跟踪的支持 2.8.2图稿绘制: visio:这是目前国内用得最多的case工具。它提供了日常使用中的绝大多数框图的绘画功能(包括信息领域的各种原理图,设计图),同时提供了部分信息领域的实物图。visio支持 UML的静态和动态建模,对UML的建模提供了单独的组织管理。从2000版本后visio被Microsoft收购,正式成为Office大家庭的一员,目前最新版是2002。它是最通用的硬件、网络平台等图表设计软件。好处是

14、易用性高,特别是对不善于自己构造图的人。但是正因为很全,所以某个方面上会造成专业程度较低。 有关工程管理类的显然不如PROJECT2000好用; 2.8.3数据库建模(1)ERWin:强大的老牌数据库建模工具。如果你是开发中小型数据库,极力推荐ERWin,它提供的功能如PowerDesian一样强大(不支持UML)。 erwin支持即信息建模,就是我们常说的er图、实体关系图,也就是数据库结构图。 (2)PowerDesign:Sybase推出的主打数据库设计工具。PowerDesign致力于采用基于 E-R的数据模型, PowerDesign 功能强大,使用非常方便。首先它提供了概念模型和物

15、理模型的分组;它几乎能够产生到所有常用数据库管理系统的SQL脚本,当然你完全可以不经过SQL脚本直接在DBMS中生成数据库;它提供增量的数据库开发功发功能,支持局部更新,你可以在概念模型,物理模型,实际数据库三者间完成设计的同步。还有逆向工程,再工程支持,目前还支持UML建模. (3)Rational Rose 2.8.4 UML建模(1)Rational Rose:大恐龙, 小项目中难以使用, 虽然是 UML 设计者做的。虽然这是一个推荐使用的高端工具,它使改进和维护设计、从模型生成报表、在平行协作环境中与他人共同进行建模工作变得很方便。 尽管Rose这个名称跟英文中玫瑰单词一摸一样,但是这

16、里他代表Rational公司的面向对象分析和设计工具的一款力作。Rose目前在国内正被越来越多的公司所使用,其原因一方面是随着软件规模的扩大,面向对象分析和设计的优势突现出来,软件企业正在从面向过程向面向对象过渡。另一方面,Rose集中体现了统一软件建模(UML)的先进设计思想,能够通过一套统一的图形符号简洁有效地表达各种设计思想。当然, Rose本身在设计上的完善和与Rational CASE家族的完美集成也是作为一款最成功的CASE产品的基础。 Rose 2002功能上可以完成UML的9种标准建模,即静态建模(用例图 类图 对象图 组件图 配置图 )和动态建模(合作图 序列图 状态转移图

17、活动图),为了使静态建模可以直接作用于代码,Rose提供了类设计到多种程序语言代码自动产生的插件。 同时,作为一款优秀的分析和设计工具,Rose具有强大的正向和逆向工程能力。正向工程这里指的是由设计产生代码,逆向工程指由代码归纳出设计。通过逆向工程Rose可以对历史系统作出分析,然后进行改进,再通过正向工程产生新系统的代码,这样的设计方式我们称之为再工程。 (2)MS Visio 2003 for Visual Studio:Visio Professional 2000开始提供内建的UML支持。Enterprise版更加完整。这是一个功能广泛强大的工具。 (3)PowerDesigner:是

18、简练实用的建模工具、6.0支持数据流图,8.0支持UML的UseCase/sequence/class视图; (4)Jude:一个号称中日xp合作开发出来的小uml工具,只有几m的大小,功能也还不错。也是java做的,速度还是很快的。如果不需要使用逆向工程之类的高级功能的话,强烈推荐这个uml工具,并且它是免费的。 详细介绍有关的CASE工具2.9 软件开发的组织和角色分工10分钟对一个软件产品或者一项软件工程来说,参与角色通常包括如下几种:项目经理、设计师、开发人员、测试人员、项目实施人员产品经理(项目经理)作为客户方和公司内部交流的纽带,对项目过程进行监控,对项目的进度、质量负责。项目经理

19、应该是软件工程领域内的专家,但不一定是业务领域内的专家。项目经理的基本活动包括:制定计划、协调资源、关注和控制计划进度、控制客户期望值。其中控制客户期望值这一项在工程性质的项目中尤其重要。设计师是软件蓝图的设计者。通常设计师可以分需求分析师、构架设计师、业务设计师三种,在小规模的开发团队中,这三个角色通常由一个人承担。设计师一定是业务领域和技术领域内公认的专家,具有丰富的项目经验,能够准确把握客户需求并提供可行的实现思路。设计师的基本活动包括:进行需求分析、进行构架设计和功能设计,按照规范编写相应的文档,将设计思路传播给开发人员、测试人员。开发人员根据设计师的设计成果进行具体编码工作,对自己的

20、代码进行基本的单元测试。通常34个开发人员组成一个开发小组,由一个team leader带领进行开发活动。开发小组team leader由小组内技术和业务比较好的成员担任。team leader通常还负有进行详细设计和走查小组成员代码的职责。考虑到team leader需要进行详细设计、编写文档,和小组成员进行沟通,因此一个team leader的开发任务不能超过开发人员的平均任务量。对开发人员而言,必需具备产品开发所需要基本技术、技能,比如编程语音、数据库应用开发经验等。如果发现开发人员不完全具备这些技能,开发经理和项目经理应该提供必要的内部或外部、培训,以使开发人员具备这些必要的技能。测试

21、人员根据测试经理的计划和测试总体方案对目标产品进行测试,编写测试case和测试代码,发现和跟踪bug;编写用户手册;进行用户培训和教育。测试人员介入项目的时机从理论上讲越早越好,但考虑到测试人力资源,通常在需求分析确定后介入比较合适。对测试人员而言,除了要求和开发人员相同的技术技能外,还应该熟悉测试理论和测试方法,尽可能做到总是站在使用者的角度观察和思考问题。项目实施人员是针对工程性质的项目必需的人员配置。项目实施人员负责软件系统安装配置、系统割接、运行期间的维护工作。项目开始前,项目成员必需明确自己所在的岗位和需要承担的责任。详细描述开发小组各成员的任务,并组织学生按开发小组分配任务,选举组长小结 5分钟本课介绍了软件工程标准化的意义和作用。说明软件工程标准的分类方法,软件工程标准的制定和推行过程。阐述了我国的软件工程标准化工作和制定的相关标准。介绍了我国的计算机软件产品开发文件编制指南(GB856788)中规定的14种文档。对这14种文档及各自的作用应该重点掌握和领会。本节简单介绍了CASE工具的意义和作用,然后概要介绍了几种常见的CASE工具。本节还介绍了软件开发的组织和角色分工,并布置课程设计题目,学生按小组进行角色分工,并选举组长。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号