软件工程标准如何实施计算机职称论文
软件工程标准如何实施计算机职称论文
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。以下是学习啦小编今天为大家精心准备的计算机相关职称论文:软件工程标准如何实施。内容仅供阅读与参考!
软件工程标准如何实施 全文如下:
一、 软件工程标准的现状和问题
目前,我国各行各业根据自身的特点,也都相应制定了一定数量的软件工程标准,就其标准的内容、质量以及相互之间都存在一定的问题,因而给实施带来一定的困难。下面,就初步掌握已发布的国家标准、国家军用标准和航夭工业行业标准的现状和问题作一分析。
1.已发布的软件工程标准
据不完全统计,目前已发布国家标准n项、国军标12项、航天工业行业标准14项。详见下表。
据了解,目前准备报批的国家标准有:软件工程分类法;计算机软件单元测试;信息技术软件产品评价、质量特性及其使用指南;软件支持环境。国家军用标准有:军用软件产品;军用软件项目管理规程;军用软件支持环境;军用软件测试与评估通用要求。除此以外,其它工业部门也制定了类似的软件工程标准。
2.存在的问题
从上表可清楚地看出,目前我国软件工程标准存在两方面问题:①在高层次上缺乏统一规划和系统性,因而造成各级盲目制定和重复制定。大家知道,计算机软件作为标准化对象,应是具有重复性的概念和事物,因而不管是国标还是国军标,在同类型标准的内容上应该是大同小异的,而不应该制定成多套标准,更无必要层层都制定。②标准体系缺乏系统的规划,配套性差,标准内容不够协调,甚至有些急需的标准未有定出,如二院需要的C语言编程格式约定等。这样就制约了标准的正确性、可操作性和系统配套性。特别是针对航夭产品特征的软件产品标准还没有一项,直接影响了各项软件工程标准的有效实施。
针对上述存在的问题,从实际工作出发,笔者认为应解决下述几个问题,方可促进软件标准的实施。
a.对软件工程标准应从系统工程的概念出发,认真审查,统筹规划,该补充的补充,该合并的合并,形成一个完整的软件工程标准体系。目前软件工程的高层次标准已不少了,而对于型号作战软件需求规范、测试软件需求分析等一些低层次软件标准应加补充。
b.从一些标准的内容看,大多数是引自国外有关标准的,由于国情、体制的不同,在软件管理标准方面执行起来就比较困难。在术语概念方面存在着较大差别,往往有些标准中的词语生涩,难以理解,不太符合中国人的语言习惯,影响了标准的可操作性。比如“配置”、“配置管理”、“项目管理”、“用户手册”等在以前的型号研制中是没有碰到的语言,不仅仅是术语的不同,其内涵也有很大差别。因此,要把这些标准认真消化,准确地建立起软件工程化的概念,在软件开发中实行工程化管理还要做大量的工作。
c.由于我们对软件文件的编写和管理方面缺乏实践经验,具体到一种文件写什么内容,怎样编写仅有标准是解决不了问题的。比如,指控软件的需求分析,结合具体型号该写什么内容并没有现成的模式和规范,这就需要我们在实践中进一步总结提高,制定一些规范来指导今后的软件开发和文件的编写。
d.目前,我们软件开发中存在的最大问题,仍然是个管理问题。由于软件工程化的概念建立起来相对容易些,而软件工程体系建起来就不是短时间能完成的。至今,很多计划部门、质量管理部门以及主管领导还不清楚软件工程化的具体含义,具体操作也没有一个定式,软件开发的工程化只是某些领导和软件开发人员自觉不自觉的行为。因此,我们必须发动广大科技人员积极参与,广为宣传,加强管理,按照软件工程标准的各项要求,推动软件开发工作的向前发展。
二、 加强软件工程标准实施的几个管理环节
为了有效地控制软件开发质量,切实实施各项软件工程标准,还应加强标准实施中的几个管理环节。
1.软件开发的计划管理
如上所述,软件工程不仅要建立起工程化的概念,更重要的是工程体系的运行。这个体系的首要一环就是计划管理,计划部门必须清晰地明确软件是产品,是一个开发项目。描述开发项目的有关文件必须纳入计划,就像硬件的任务书、方案论证报告、图纸文件一样,软件的可行性研究报告、需求说明书、设计说明书开发计划等文件都必须落实单位、人员、时间、经费,列入计划考核。计划是龙头,有了计划管理,软件开发才能全面启动起来。如果只给硬件落实了计划、任务(虽其中包括软件),但往往不可能使软件成为一个项目,也就没有成套的文档。设计、测试和程序的生成、维护等一系列任务不容易落实,工程化也就不存在了,所以加强软件开发的计划管理十分重要。必须说明,有关标准中提出的项目管理规范不仅在词句上区别于计划管理,反映在管理内容上也存在很大差别。
2.设计与编程的分岗
设计与编程的分岗,总公司的提法是双岗制,笔者认为分岗提法更科学。在总公司有关文件中已多次强调了这个问题。目的是一方面提高软件开发的透明度,另一方面也是提高开发质量的一项措施。在硬件研制中,设计与生产部门的分岗就从制度上保证了设计文件完整性、内容的正确性以及差错的可追溯性。当然软件和硬件不是一回事,但道理是一样的。实行分岗制就要求设计人员把设计思想进行书面描述,保证了设计思想的透明。同时,由于分岗,编程人员在理解设计文件的过程中可以客观地找出设计的不足,及早暴露出设计的差错。这在大型软件开发中必须做到,否则质量无法控制,甚至信息也无法保留。实际情况是往往由于软件人员不足,自己设计自己编程的情况还很普遍。这不利于软件开发的质量控制,也反映出管理体制上的不足。
3.加强软件的测试管理
硬件开发中很难想像一个产品不经检验就交付使用。但在一般软件的开发中不经专门的检测,而是随着硬件一起做功能性验收,就交付使用是经常的事。这样,软件本身固有的不足不易暴露出来。所以,在大型软件开发中逐步实现第三方测试是控制软件开发质量的必要手段。当然,要实现这一点还有测试工具、测试方法等问题需要逐步解决。
4.加强配置管理
“配置管理”是外来词,英文是“eonfigurationmanagement”。其定义:“标识和确定系统中配置项的过程,在系统整个生存周期内控制这些项的投放和更动,记录并报告配置的状态和更动要求,验证配置项的完整性和正确性”。配置管理还涉及到“配置项”、“配置标识”、“配置控制”等一些术语。抛开这些抽象的术语,我们可以这样理解:配置管理就是指软件开发的各个阶段所需要形成的软件产品和相应文件以及这些文件的完整性、更改、技术状态的控制,软件的存放,文件的归档等管理工作。因此,这里既有型号研制中设计文件管理的含义(包括文件的完整性、编号、更改、阶段标记等),也包括软件产品配备的含义。因为软件与硬件不同,它是无形的,软件产品本身和描述产品的文件可以存放在介质中(如软盘、硬盘),什么阶段放在设计人员手中、什么阶段进入介质、什么阶段归档、更改的控制、文件完整性要求,这些就是软件的配置管理。所以配置管理十分重要,加强配置管理可以使软件开发的技术状态受控,进而控制软件的质量。
5.加强软件的标准化检查
配置管理是一项很重要的工作,首先是软件文件的配置,也就是软件文件的管理。在型号的硬件研制中,主要是靠设计文件管理制度和标准化检查制度,使设计文件质量受控的。软件也必须这样。目前,软件开发、研制的标准已经制定得不少,但实施存在着不少问题,主要是没有切实可行的实施措施。因此,要从软件文件的标准化检查入手,严格实施各项软件工程标准。完善软件文件,制定一套制度,按照QJ1912的要求,进一步明确软件文件的格式、编号、编写内容以及文件的完整性、签署、更改等规定和要求,从而不断提高软件文件的质量和水平。只要我们认真实施软件工程标准,软件文件一定能够完善和配套。同时在完善文件的过程中也会使软件工程标准逐步得以实施。
三、认真解决软件标准实施中的技术概念问题
GJB8566把软件生存周期划分为可行性与计划、需求分析、概要设计、详细设计、实现、组装测试、确认测试和使用维护等8个阶段,而且各个阶段都相应规定要完成的技术文件。QJ1912规定应完成的软件文件是在GB8566规定的基础上还增加了任务书、源程序使用文件汇总表、鉴定证书、试验报告、媒体内程序/数据目录等其它文件。而这些文件并不全是设计文件,有些属于管理文件。如开发总结、开发计划等。这与传统的设计文件概念是有区别的。这些管理文件是否也要由标准化部门统一检查,需要研究和探讨。从硬件阶段的划分看,航夭产品的研制分为论证、方案、工程研制、定型和批生产等5个阶段,而产品交给用户使用后就不属于研制阶段了。
我们开发的软件是用在航天产品上的,那么,软件开发在大的阶段上必须与航天产品的研制相吻合,这样才有利于型号研制标准化工作顺利进行。由此看出在软件开发中,上述的5个阶段与8个阶段是什么关系,所形成的软件文件如何确定阶段标记等问题,也是实施软件工程标准时不可回避的技术问题,必须认真分析解决好。为了使软件开发阶段尽量与航天产品研制各阶段吻合,便于软件工程标准顺利实施,不妨对两者作一分析。一般来讲,产品在工程研制时每一阶段又可分为设计、生产、试验等若干小的阶段。这些小的阶段与软件的设计、实现、测试等阶段相对应,这样软件开发的阶段划分就更复杂了。这里需要把产品的研制阶段和研制过程的概念区别开。
一般说来,研制阶段是表示产品研制过程中成熟程度的标志,而研制过程则是产品研制中必须经过的一个程序。某型号经过方案、初样、试样阶段,以致性能逐渐稳定达到成熟可以定型。在某一阶段如初样要经过设计、生产、试验这些过程,在这些过程中暴露的问题在下一阶段,即试样阶段更改设计、重新生产、试验,使产品性能稳定达到任务书提出的要求进入定型阶段。GB8566中规定的软件开发中的8个阶段实际是软件形成的过程,与我们型号研制阶段不是同一个概念,可能在某一阶段软、硬件有相吻合的部分。为此,笔者认为,软件的可行性研究报告、项目开发计划是软件可行性研究与计划阶段形成的文件,它应当在型号的论证阶段完成。这种文件应当属于研试文件。软件需求说明书、测试计划属于软件需求分析阶段,这个阶段相当于型号的方案阶段。
如果在文件上作阶段标记,应当是M。软件概要设计说巴18.明书、详细设计说明书、数据库设计说明书、用户手册、操作手册则分属于概要设计、详细设计、实现各阶段工作,对应型号研制则属于工程研制阶段的初样、试样阶段。需求分析、设计说明书等文件在不断修改完善过程中逐步由M阶段进入C阶段、S阶段、D阶段,在研制过程中经过各研制阶段修改、完善才能逐步定型。除此以外,如项目开发计划,开发进度月报、开发总结等文件,按照航天系统的概念属于研试文件,应由有关职能部门完成,不一定由设计来完成。
所以,解决了上述具体认识间题以后,对所形成的软件文件阶段标记达到共识,同时加强各项管理工作,那么软件工程标准就能顺利实施,从而提高软件的开发质量。