好消息: 数控产品网(免费B2B信息发布电子商务平台)新版上线,欢迎注册免费发布信息! 点击进入>>

SEO智能优化,纯静态信息页,搜索引擎更加友好!现面向全行业开放免费注册信息发布中,速度前往>>


当前位置:首页 > 数控技术 > 数控论文 > 数控软件质量控制
数控软件质量控制

数控产品网 www.cncproduct.com   2014-06-24   来源:网络转载   阅读:929次

随着计算机技术的发展及可利用资源的增多,愈来愈多的数控系统采用PCNC方式,以前许多由硬件完成的功能现在交由软件处理,这对数控软件的设计提出了更高的要求。另外,一套数控软件的设计通常需要花费几年时间才能完成,因此,如何保证软件的质量和良好的可重用性就显得非常重要。

1 数控软件开发过程中存在的问题

  80年代初,我国引进日本FANUC数控系统及软件技术,以后又相继引入德国西门子、美国AB等公司的数控系统。由于采用大板组装方式,因而未形成真正的数控软件开发和生产的工业化规模。进入90年代后,许多研究院所和公司着手进行数控系统和数控软件的研制开发,由于投资分散,各自以小作坊方式存在,因此我国的数控软件开发与生产的能力依然很差,其中存在的主要问题有以下几点。

  遗产软件系统和现有软件系统的综合利用问题

  由于数控技术的不断发展和更新,现存的一些遗产数控系统软件正逐渐退出使用,我们应该对这些软件进行挖掘整理,进行可重用设计,以便获得有用的软件构件。而随着时间的流逝,现有的数控系统软件又会逐渐变得不可使用,为了适应当前技术的发展和需求的变化,我们应采用更易于理解的、适应变化的、可重用的系统软件构架,对现有软件进行维护、改进,以便提高软件质量、延长软件生命周期。

  数控软件开发与需求管理和计划实施问题

  数控软件产品必须满足用户的需求,但是用户对系统功能、开发时间、产品价格的要求往往比较苛刻。其需求在开发过程中又常常发生变化,因而系统软件的复杂性不断增长,软件开发活动的可见性越来越差,一旦投入资金、设备和人力,却无法预测何时会出结果,更无法把握研制出来的产品是否为用户所需。我们必须研究适当的方法,以控制和管理这些需求变化,并能保证数控软件的开发步骤不背离用户的需求。

  基于个人行为的软件开发方式

  企业化生产能力是相对于个人化生产能力而言的,两种不同的软件开发方式将产生完全不同的结果。当前我国的软件开发仍是基于个人行为,这样的开发方式及其开发过程,对企业而言无疑是一个黑箱。项目的成功与否仅仅依赖于个人的技术水平和职业道德,开发过程中所获得的成功与失败的经验,很难对企业今后的软件开发提供有益的帮助,尤其是软件从业人员的频繁流动和同行之间的激烈竞争对企业构成严重威胁。例如一个技术骨干离开一个汽车生产公司不会影响汽车的生产,因为其生产线是靠一套规范和程序保证的。而对于一个软件公司,不要说骨干,即使一个主要程序员的突然离开,都会使整个项目拖延,甚至造成无法挽回的损失。数控软件项目往往投资大周期长,如何减少个人行为的影响,保证开发过程的规范进行及软件的延续性和可重用性,就显得至关重要。

  作坊式的软件开发过程及其工业化、工程化问题

  许多企业的软件开发过程仍属小作坊方式。企业将软件项目交由课题组实施,所有有关的项目活动均由小组决策执行,企业很难对项目进行量化管理。即使项目做得非常成功,企业也很难让其它小组共享其经验。这种开发过程无法形成规模,数控软件的开发生产很难走工业化、工程化道路。

2 数控软件的质量控制

  数控软件开发过程中所存在的问题,将会影响数控软件的质量,如何解决这些问题?如何控制软件质量?如何提高企业的软件过程能力?这已经成为企业和软件业内人士十分关注的问题。

  90年代初,美国卡内基.梅隆大学软件工程研究所正式提出SW-CMM软件过程能力成熟模型。该模型已成为目前国际上最流行、最实用的一种软件生产过程标准,并成为事实上的软件过程改进的工业标准和规模型软件生产不可缺少的一项重要规范。

  所谓企业的软件过程能力,是指企业建立和执行软件开发过程规范和标准的能力。企业必须采用严格的制度和流程规范,确保软件开发的透明性和可操作性,确保开发过程的经验为企业今后的软件开发提供有益的借鉴和参考。

  根据SW-CMM模型要求以及针对上述软件开发过程中所存在的问题,在技术和管理两个方面对数控软件的质量进行综合控制,可采取如下措施。

  应用软件复用技术

  软件复用是指重复使用“为了复用目的而设计的软件”的过程,这是在软件开发中避免重复劳动的一种解决方案。软件复用的目的是使应用系统的开发不再采用一切从零开始的模式,而是在原有工作的基础上,充分利用过去在系统开发中所积累的知识、经验和开发成果,通过复用技术,将这些有用资产进行可重用构件的裁剪、提取、改造、重组,在原有系统的可靠性基础上将其演化成未来的新系统,从而避免重复劳动和重新开发引入的弊病,将开发重点集中于特殊构成部分。

  软件复用技术的基本框架由决策分析、系统理解、系统演化组成。例如,数控系统软件的核心构件分别为插补运算、加减速处理、PLC控制、刀具误差补偿、间隙和螺距误差补偿等模块。这些软件模块都经过实际运行考验,具有较高可靠性。根据软件复用原则,对系统软件的核心模块进行分析,在充分消化、理解的基础上将其裁剪、修改、重组,演化成新的系统,从而缩短数控软件的开发与生产周期,提高开发效率和质量。

 

  面向对象的软件工程学设计方法和构件技术

  在技术上保证软件的质量和可重用性,关键是采用面向对象的软件工程学设计方法及构件技术。数控系统对实时性要求较高。早期的数控系统由于受硬件技术的限制,程序设计大多采用汇编语言,导致程序的结构化程度低,调试和维护困难。随着硬件技术的发展,现在的数控系统通常采用面向对象的编程(OOP)和结构化设计方法,大大提高了系统的可调试性和可维护性。面向对象的软件工程学设计方法不同于面向对象的编程,前者强调在软件开发中以设计为主导,注重开发方法在开发过程中的应用;后者则强调所使用的开发手段,具有较大的被动性。

  程序设计采用构件技术,可以提高系统的可靠性和可重用性。所谓构件是指系统中可以明确辨识的构成成分。构件也不是仅仅局限于源代码构件,而是延伸至对开发活动有用的信息,例如,系统和软件的需求规划、系统和软件的结构、文档、测试计划、测试案例及典型数据等。数控系统软件可分成三大构件:MMI人机界面、MMC机床运动控制、PLC可编程逻辑控制器。MMI可分为动态MMI、静态MMI;MMC可按照功能将其分为不同的小构件;PLC可分为DI和DO处理构件。通过不同的数据和程序的封装组成不同的小构件,然后对不同的小构件进行组装,从而构成具有不同功能和风格的数控系统。构件技术的关键是如何对构件进行选择、构筑、描述、分类、组装及标准化。若能熟练掌握和运用以上方法与技术,将会使数控软件开发走上工业化、工程化的发展轨道,从而保证软件开发的质量及可重用性。

  运用SW-CMM软件过程能力成熟模型

  一个企业所具有的软件开发能力取决于该企业的过程能力。在体现企业软件开发能力的诸多因素中,技术和工具并非第一要素,企业的过程能力则起着更为重要的作用。企业建立一个软件开发过程,并通过政策保证,强制实行这个过程。项目的执行不再是一个黑箱子,企业清楚地知道该项目是按规定的过程进行的。该过程执行一段时间后,可根据反映的问题改善这个过程,使其逐渐完善、成熟。由于过程不再依赖于个人,而是企业开发经验的结晶,因此基于这个过程的软件开发能力也随之成熟。

  SW-CMM将企业的软件开发与生产过程分成五个阶段:初始级、可重复级、可定义级、管理级、优化级。在上述不同阶段,软件开发与生产的成熟程度将给企业带来完全不同的效果,软件开发与生产的计划精度会越来越高,每单位工程的生产周期越来越短,每单位工程的成本越来越低。这是因为根据SW-CMM模型的软件成熟度实践要求,采用更加规范的开发标准和方法,使用更加科学和精确的度量方法,选择便于管理和使用的开发工具,形成整个工程的可重构性、可分解性,根据过程执行的反馈信息改善下一步的执行过程,实现过程的最优化。

  SW-CMM提供了一个基于过去所有软件工程成果的过程改善的框架。根据这个框架管理企业内部的软件开发过程,可极大程度地提高企业按计划的时间和成本,提交有质量保证的软件产品的能力。同时,在软件开发与生产过程中,采用该模型实现软件开发的标准化,有利于缩短开发周期、提高软件的开发与生产效率,有助于在市场经济的多样化、复杂化的环境中实现软件的工业化。

  建立面向管理的软件开发过程

  软件系统开发的基本问题是如何管理开发过程,使开发过程可控且可重复。开发过程的管理主要包括以下几项工作。

  需求管理 管理的目标是软件需求能被控制,并产生一个用于软件工程过程和管理过程的基线,其目的是在用户需求与实现用户需求的项目之间达成一种共识,使二者保持一致。这就意味着用户的需求应该是合理可行的,项目的目标应能满足用户的需求,需求管理就是建立并维护这种共识。需求管理是一个相对动态的过程,要达到此目的,必须保证与用户和市场进行经常性沟通,根据用户和市场的变化,对项目的执行进行动态调整。

  项目管理 软件工程项目能否成功的主要因素在于项目管理,而项目能否有效进行管理的关键在于项目过程的可见性。如果软件项目计划不能按期完成,主要原因有两个方面:一方面是由于计划执行和管理的能力不够;另一是计划本身欠合理有效。软件项目管理的目的在于建立合理有效的软件项目计划,保证项目按时、按需完成。这就要求对于软件项目的规模、资源要求、风险、资金等有一个合理的估算,估算的合理性依赖于对需求及软件技术的充分了解。项目执行前,各参与方应明确并承担各自的责任。项目实施过程中,应设置合理的检查点,对项目进行监控和跟踪,从而为软件开发提供良好的可见性及可调整性,保证计划顺利完成。

  合同管理和软件质量保证活动 合同管理是一个基本的关键过程域。合同管理的目的就是选择合格的软件承包商,并进行有效的管理。

  软件子承包商的选择应由项目责任者(业主或主承包商)负责,子承包商的选择应是基于能力的,项目的责任者与子承包商对所承包的项目责任要有一致的认同,并保持不断地交流。项目的责任者应根据合同中所规定的责任,跟踪子承包商实际工作结果。

  软件质量保证活动是项目管理所提供的过程可见性的一个工具。由于开发软件系统或软件产品的过程是决定项目成功与否的关键因素,因此软件质量保证活动就是评审和审计软件活动和软件产品。评审和审计的依据是项目的实施步骤和相关标准。软件质量保证活动不能随意,必须经过充分的讨论和协商,相关的组织和个人必须了解质量保证活动及其结果。为了解决质量保证组织与软件开发组织对某些开发活动或开发出的产品的评价所发生的争议和分歧,企业应定义更高层次的管理组织,负责解决这些争议和分歧。

  软件配置管理 软件从需求分析开始到最后提交产品要经历几个阶段,每个阶段的工作产品又会有不同的版本,如何在整个生存期内建立和维护产品的完整性是软件配置管理的目的。SW-CMM软件配置管理也是一个基本的关键过程域,它遵循了传统软件配置管理的概念。其基本工作内容是标识软件配置项,建立产品基线库,对配置项的修改加以系统的控制。产品基线库的状态可以随时了解。此外,同软件质量保证活动一样,软件配置管理活动必须制定计划,不是随意的行为。其主要依据是各种文档及说明书,这是保证用户能够正确使用产品和产品进入市场的关键。

  综上所述,在数控软件开发过程中,如果从技术和管理两个方面采用合理的方法,一方面可以保证软件的质量和良好的可重用性,另一方面可以为数控软件的开发逐步走上工业化、工程化的发展轨道奠定良好的基础。 

CncProduct.Com(编辑:小朱)
本文标签(Tag)数控软件
关于“数控软件”的信息更多

免责声明:本网资讯均转载自其它媒体,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如因作品内容、版权和其它问题需要同本网联系的,请在30日内进行。
数控论文 阅读排行
数控论文 编辑推荐
最近更新
关于我们联系我们网站地图

公益免费-为推动我国数控行业发展而努力!
在线客服客服QQ
Copyright(C)2006 www.cncproduct.com 数控产品网 china All Rights Reserved  苏ICP备13054127号-5
数控产品网-数控行业垂直门户网站 - 专注于:数控机床┆数控设备┆数控系统┆数控技术
免责声明:本网部分信息由企业和个人自行提供,该企业和个人负责信息内容的真实性、准确性和合法性。数控产品网对此不承担任何保证责任!