软件工程监理的几点体会
发表于:2008-08-05来源:作者:点击数:
标签:软件工程体会
关键字:工程监理 软件工程 监理的几点体会 大型 信息系统 建设是一项投资大、周期长、知识密集、高风险的系统工程,行业新颖、人员年轻、科技含量高、智力密集、所涉及的领域宽广、对实践经验要求高。但目前信息系统工程的市场不规范、政策法规不完善、缺少
关键字:工程监理
软件工程监理的几点体会
大型
信息系统建设是一项投资大、周期长、
知识密集、高风险的系统工程,行业新颖、人员年轻、科技含量高、智力密集、所涉及的领域宽广、对实践经验要求高。但目前信息系统工程的市场不规范、政策法规不完善、缺少监督监理机制,致使不成功的信息系统工程建设屡见不鲜。
保障信息系统工程签约双方的利益是保证我国
计算机信息产业和信息系统工程顺利发展的重要方面。在新形势下,为了确保国家信息产业更加健康、有序地发展,为了使我国信息资源得到更充分的利用,对计算机信息系统工程建设进行有组织、规范化的监理,就显得更加重要。
一、信息系统工程监理的概念和内容
信息系统工程监理是监理方受业主方委托,代表业主的利益,保护投资、控制质量、确保进度;站在第三方的立场,公平对待工程各方,确保公正性、公平性、公开性。在实际操作中,我们把信息系统工程监理分为网络工程监理和
软件工程监理。
所谓网络工程监理,是指在网络建设过程中,给用户提供建设前期咨询、网络方案论证、系统集成商的确定、网络质量控制等一系列的服务,帮助用户建设一个性价比最优的网络系统。
所谓软件工程监理,是参照软件工程的思想,对在建
软件系统的整个
软件生命周期进行的全过程监理;并给用户提供咨询、帮助建设运行制度等有益的服务项目,目的是帮助用户建设一个高质量的、具有可持续生命力的软件系统。
二、软件工程监理现况
近期流行这样一句话:软件就是服务。
CCID在发布的2001-2002年中国软件市场研究年度报告中指出,2002年及以后几年的重点是建立软件服务评测体系和监理制度。可见,包括业主和软件提供商都认识到了软件质量对一个软件系统建设的重要性。软件工程监理逐渐会得到大家的共识和认同。
但软件工程监理的难度并非一般人所能想象的,下面从软件工程本身和监理依据两个方面来解释这一观点:
1.软件工程的特点及对监理人员的要求
软件工程技术含量高,是智力、知识密集型的产业;往往处于发展中的高科技领域,涉及当前最新的研究领域,有时会是多种科学技术领域的综合与交叉;与技术的继承程度相比,创新成分多,新开发的工作量大;工程
类型广泛,涉及国民经济的各行各业。这些特点决定了从事软件工程的监理人员必须具有较高、较广的知识面,并且相对熟悉所涉及行业的领域知识。
软件工程不可预见成分高,风险程度大,监理人员必须认识到软件质量对用户的重要性。另外,用户
需求随形势发展而容易发生急速变化,甚至有许多要求超过新技术的发展。监理人员必须能有效控制用户需求的不确定性对
项目管理所带来的影响,另一方面,有时需要监理人员花费时间和精力收集资料,为用户提供前期咨询。
2.软件工程监理依据的缺乏
首先,计算机信息系统工程中缺少信息系统建设的规范及详细的成套标准,软件工程更是如此,监理人员对项目的控制可以参照的依据和标准不多。另外,国家在信息产业中还没有实行过信息系统工程建设监理制度,虽然有些城市已经开始制定信息产业工程监理的法制体系和管理结构体系,但很多地方还不完善。好在近几年有些研究机构和企业一直坚持从事着信息系统工程监理、包括软件工程监理的探索工作,这对创造一个有效的信息系统工程监理的大环境是巨大的推动。
对工程进行规范化管理,按标准规范开展工作是顺理成章的。而软件系统建设的实际情况较为复杂,由于技术更新快,标准规范常常滞后,如何坚持按软件工程的思想对项目进行有力的控制,这需要监理人员有很高的创新性。既能在情况复杂的条件下支持软件工程的思想对项目进行监督约束,又能做到合作协调,在目前没有更多的依据作参照的前提下,如何进行软件工程监理工作,是一个巨大的课题。
三、软件工程监理的几点探索
1.监理首要是咨询
监理首要是咨询。其次才是对工程的监督与控制。实践中表明这两点并不矛盾。深入的和具有说明力的咨询工作会引导监督与控制工作向着更健康、更协调的方面发展。需要强调一点:对工程技术文档的熟悉和理解。文档包括业主的需求报告、集成方的
需求分析报告、概要设计、详细设计等标识软件生命周期各阶段的文档。监理人员对工程项目的理解和把握很大部分通过这些文档实现。监理人员对这些文档所述内容的咨询、建议可以通过监理意见书的形式提交与业主和集成方。
2.全过程监理
著名的质量管理专家W.E.Deming认为,产品质量涉及到生产的所有环节,只有各个生产层面都不忽视质量,最后才能得到高质量的产品。监理人员对软件工程几个开发阶段如分析、设计、实施、
测试等实施全过程监理,使影响系统质量的要素在开发过程中处于受控状态。
我们参考建筑工程监理的流程和规范制订软件工程监理的通用规划,根据软件工程开发规范和
ISO90003标准制订
软件开发和系统集成过程的监理规范。并根据工程的特点及需要,制定工程的监理依据,包括
质量保证书等全局性依据和其他阶段性监理依据。
3.确定三方
工作流程
由于软件开发独有的特点,监理方对工程细节的理解远不如集成方,为实施有效的监督控制工作,必须制定规范的三方工作流程,并征得业主同意。对某一个重要阶段,也有必要制定相应的三方工作流程。如针对子项开发与验收,我们制定了以下流程:
4.系统初验
软件系统的初验是监理工作在
软件项目管理上的一个创新点,是人为地将软件试运行另外划分为一个新的阶段。它的目的在于尽可能快的和有效地解决用户对软件系统的不适应,增强软件的生命力。通过初验的形式,使集成方投入相对多的人力对系统进行完善。当然,如果业主与集成方事先有约定,可以作为分期付款的一个阶段。
初验应遵循严格的流程,这样才能体现出初验在全过程监理中的特殊作用。符合初验的系统(子项)应满足以下条件:1)集成方开发结束;2)监理方已经进行过阶段性验收;3)集成方进行相应的修改(若有必要);4)监理已进行第二次针对性检验;5)
子系统已经上线试运行;6)已上线一个月左右,已有用户反馈意见(视具体工程而定)。
四、案例
本人及所在的监理组在苏州河综合整治
MIS(SSRCC-MIS)等软件工程的监理项目中进行了更多有益的探索。实践证明,这些探索是科学的、有效的,有力地提高了用户满意度,提高了监理公司的理论和实践水平,也会对软件工程监理的健康、科学的发展有一定的启发。
原文转自:http://www.ltesting.net