软件过程
软件过程实务
业内人士在谈及软件工程时都与软件过程存在或多或少的联系,比如软件开发规范、开发流程等等,在此不想深究软件过程的准确定义,而是给出一些具有较强实用价值的资料供参考,也许软件过程实务的用词不一定恰当,只希望能有所帮助。
软件过程及其裁剪
不存在适应所有情况的通用软件过程,软件开发过程的实用性受到许多因素的影响,如企业文化、项目特点、人员特点等等。不过,一些机构在长期实践工作总结出一些开发过程模型,虽不能照搬套用,但作为参考依据还是很有价值的,尤其对于初学者。
1. NASA推荐的软件开发过程是传统瀑布模型的经典代表;
2. Rational公司提出的RUP(Rational Unified Process)是基于UML的开发流程,随着UML的发展会受到越来越多的关注和应用;
3. SPC(Software Productivity Consortium)推荐的集成的系统及软件工程(ISSEP)
对于软硬件集成的系统开发商而言很有价值;
4. NASA推荐的基于程序包的系统开发过程,那些需要大量使用商业软件包(COTS)的系统开发商值得一看。
软件开发过程必须经过适当调整和裁剪才能够适用于特定项目开发,在这方面国内不少软件企业似乎认识不足,在此给出由STSC(Software Technology
Support Center)提供的软件过程评估报告和裁剪建议,对于实践人士和学者均有参考价值。
另外,目前国内CMM研究和应用很热,但不少企业在具体应用CMM时似乎仅注重于CMM标准本身,在此从CMM的裁剪角度提供一些参考资料,这或许是CMM实施的关键所在:
1. 用于对CMM标准根据实际情况进行量身定制的软件过程框架(Software
Process Framework)及其使用指南;
2. 与CMM的相关的软件过程裁剪指南。
◇ 软件过程不断改进
软件过程改进是CMM和ISO9000:2000的核心,在此提供一些来自不同组织的SPI指南和经验之谈,也许能使国内的软件企业在开展SPI工作中少走弯路:
1. NASA的SPI指南;
2. SPC的SPI指南;
3. SPI具体实施的经验总结,以及一些SPI相关数据分析;
◇ 快速应用开发(RAD)
目前的IT开发人员正处于市场驱动下的两难境地:一方面,根据以往的痛苦开发经历,他们知道如果采用杂凑的作坊模式来开发复杂的、高质量的信息系统具有太大的风险;另一方面,他们也同样知道,形式化的、戒律森严的软件工程方法(典型情况下是与ISO9000和SEI-CMM相关的)又常常是官僚主义和耗费时间的,不可能满足目前高度竞争的”Internet时代”环境下对于进度方面不断增长的挑战性要求。显然,如何使得企业在保证软件质量的前提下,同时又能够适应快速变化的市场需求,无疑是业内人士关注的焦点。在此,给出一篇对于国际上有关"轻"方法和满意质量的思潮总结,同时汇总有关快速应用开发(RAD)的相关过程和技术,对于那些面临强大市场压力的软件企业而言,可能会受到新的启发。
参见:
Windows Workflow Foundation又一个轮回开始了
http://blog.sciei.com/user1/414/archives/2006/2006641387.html 软件过程实务(转)
Integrated Systems and Software Engineering Process.zip 449k
Light-Method&Good-Enough-Quality.zip 28k
Process Tailoring and CMM.zip 123k
Rapid Application Development(RAD).zip 343k
Rational Unified Proccess.zip 224k
Recommended Approach to Software Development.zip 1712k
STSC-Proc_Tailor.zip 318k
Software Process Framework.zip 2669k
软件过程实务.txt 3k