`
vissul
  • 浏览: 194224 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

论软件开发管理的作用——从PVCS谈起

阅读更多

当今计算机工业发展迅速,软件产业更是如此,技术和产品的更新换代常令技术人员和管理人员感到明显的压力。我国信息技术产业的蓬勃发展促使各种先进技术和产品广泛应用,为国内的软件开发注入了活力。然而,值得注意的是,各种先进的操作系统,开发工具等在带来效益的同时,也使得我们的开发环境日益复杂化而难以管理。无组织的开发环境会导致潜在问题的产生,甚至影响整个系统。比如:团队沟通困难,软件重用率低下,开发人员各自为政,代码冗余度高,文档不健全等;结果造成数据丢失,开发周期漫长,产品可靠性差,质量低劣,软件维护困难,用户抱怨使用不便,项目风险增加等。
事实已经表明,随着整个软件业的迅速发展,没有得到有效管理的软件开发过程中所出现的风险和挑战将越来越突出。加强软件开发管理,通过管理和追踪软件开发环境中产生的变更,建立规范化的软件开发环境,早已为西方发达国家软件产业的发展实践证明是解决上述问题的唯一有效途径,并已在软件业发展领先的国家和地区得到普及。
A-软件开发管理的必要性
1.软件
资源作为企业赖以发展的关键财富日益受到重视的同时,软件的开发逐渐转变成为一种工业化的生产过程,因此必须对其所有环节施加有效的管理和控制。
2.处于激烈市场竞争中的软件开发机构若想在预定的期限内用有限的资金,满足不断增长的软件产品需求,就必须努力加强软件开发过程的管理。
3.Client/Server已成为今天软件开发的主流,而在日益复杂的分布开发环境下,要实现团队开发所必须的代码共享就更为困难,需要跨越的
平台增多。
4.一个
应用系统的开发可能包含成百上千个软件模块以及数万行代码,而任何一个编程人员都不可能了解和追踪应用系统的各个片段。
5.任何一段软件代码对开发机构来说都是负有重要使命的软件财富,因而使其具备可管理性和可审核性就显得尤为重要。
6.软件产品与其它产品不同,在投入使用后的维护和支持工作十分重要,因此需要可靠的维护支持、有序的文档资料,以及完整的开发、维护记载。
B-软件开发管理工具———PVCS
先进的软件开发管理工具不仅具备版本管理、建立管理、构造管理、问题追踪这些基本的功能模块,还融合了需求管理、需求变更管理技术,并支持工作流程,以至Internet/Intranet应用的异地通讯和管理功能。在下面的篇幅中,我们以软件开发管理工具的主要代表产品———PVCS为例来分析软件开发管理在软件开发各阶段中所充当的重要角色。
·PVCS由下面8个功能模块组成,几乎覆盖了软件开发管理中的所有问题:
·PVCSVersionManager:
存储任何类型的文件的变更资料,可快速得到系统中任何文件的各个版本。
·PVCSConfigurationBuilder:为软件系统提供了可靠的自动重建过程。它保证系统在任何时候对某一发布的产品准确地进行重建,避免发生错误,同时自动地对修改过的模块重新编译以节省时间。
·PVCSTracker:在整个开发过程中确定和追踪软件的每一变更的要求。
·PVCSNotify:将软件状态的变更通过E-mail通知组织机构中的其他成员。
·PVCSReporter:为GUI界面环境提供一个客户报表工具,使用它能很容易地生成和存储多个项目的报表。
·PVCSProductionGateway:提供了局域网间与大型机MVS系统双向同步互联。
·PVCSDeveloper'sToolkit:为PVCS客户提供了应用
程序开发接口(API),使项目信息通过编程访问。
PVCSRequisitePro:实现了先进的需求管理,以及需求变更管理功能。
上述的8个模块既可以单独的安装和使用,也可以相互集成,建立工业化软件开发企业所需的完整的软件开发管理环境。PVCS不仅很好的解决了代码重用,数据丢失等问题,它还从下述的几个主要方面,满足了软件开发机构迅速增长的市场需求,成为全球开发机构首选的软件开发管理工具。
C-加快提高软件开发速度适应市场的压力
无论所开发的产品是为内部用户还是外部用户,都同样面临着要求加快开发速度的强大压力。一方面,软件产业的发展促进越来越多的供应商更快推出产品,为开发机构参与竞争提供了有利条件;另一方面,开发机构借助Internet/Intranet作为软件分发工具,使得开发周期从原来的数月甚至数年缩短到几天或几个小时。在这样不断增长的市场压力下,若不能及时地配备开发工作所需的开发管理工具,势必使产品长期停留在低水平上,并且开发机构也会因此而丧失原有竞争优势。面对上述挑战,开发机构需要软件开发管理体系能自动地建立、收集和
管理信息系统,而且这样的管理体系必须是可重复的,可适用于其它开发项目,并在产品的生命周期中保持软件资源的完整性。总之,对开发过程的控制是加速开发过程和推出新产品的关键。
AmericanInternationalUnderwriters(AIU)公司的ITgroup负责公司系统内部保险单预定系统的建立和传送。为了更好地服务于国内及国际市场的用户,AIU从原来集中化的企业运作转为分散式结构。由于所需的源代码遍布于全球的各个角落,ITgroup很难找出所需代码并识别其应用系统的版本,因而这种状况极大地降低了开发人员的工作效率,增加了潜在的错误,减缓了产品推出的速度。
采用PVCS以后,AIU得以实现理想的软件开发管理环境,并能有序地管理所有的源代码,使系统的建立、测试和代码分发符合各种质量
标准和程序,加快了内部系统的开发速度并提高了软件质量。
D--支持软件开发质量亟待提高的迫切需要
开发机构为了提高开发速度,往往在工作量投入不足的情况下推出未经过充分测试的产品; 而客户对投放市场的产品却抱有越来越高的期望值,这一矛盾发展的结果使开发机构迫于市场和用户的压力必须取得ISO9000质量
认证,并遵循美国卡内基·梅隆大学软件工程研究所SEI的CapabillityMaturityModel(CMM)标准来改进自己的开发过程。这些质量标准,为软件产品在开发过程中进行内部产品的评估和管理提供了框架。能否赢得越来越多的销售合同,取决于该企业是否已得到ISO9000及SEICMM的质量认证。而软件开发管理是通过这些认证的基石,它能够提供符合高质量标准所必须的控制要求、安全要求,以及在取得认证后还必须达到的审核追踪要求。软件开发机构若想从初始混乱的开发过程过渡到可重复、可管理的有序化过程,进而上升到更高的成熟水平,软件开发管理则是最有力的支持。这一情况也可从以下事例得到证实:
WayneDivisionofDresserIndustries位于美国德克萨斯州的奥斯汀,为取得ISO9000-3认证全面应用了PVCS。WayneDivision负责为世界各地的主要跨国石油公司建立所需的应用开发系统,经常接触蜘蛛网般错综复杂的多用户、多产品、多应用系统的软件版本。Dresser开始准备ISO9000-3的认证时已在使用PVCS,他们发现ISO9000中所要求的软件开发程序和步骤已经是其使用PVCS所实现的开发过程管理的一部分。因而对于ISO9000来说,他们仅需按照ISO9000-3的标准进行简单的调整即可。
E--适应纷繁复杂的开发环境
今天的软件开发环境确是一个多样化的复杂集合体。多操作系统、多开发工具、多数据库和多对象类型造成的多重效果,形成了难以管理的纷繁复杂的开发环境。开发Internet及Client/Server应用系统的软件团队往往分布于各个不同的地点。这种情况下若没有一个自动化的通讯手段,追踪软件模块变更管理体系,使开发团队成员共享LAN或WAN的开发环境,就会不可避免地引起错误,造成时间和资源的浪费。
多重结构开发致使很多的对象类型需要管理。开发项目会产生多样化的档案格式,如文本档案、文件档案、图形格式、电子表格等。当开发环境中开发工具和对象类型发生变化时,软件开发管理的基础结构必须始终保持统一,手段必须足够灵活。能适合任何操作系统、测试系统、计算机语言和对象类型的开发环境,必须具有可扩展性以适应任何规模和结构的开发团队。最为重要的是,所采用的软件开发管理工具不仅要能够支持今天的复杂环境,而且应可以随时调整适应将来的需要。比如:ChaseManhattanBank即美国大通银行是一家拥有1000亿美元资产的跨国金融机构,使用各种工作站(包括独立的和与大型主机经LANs相连的)和LANs(均在WANs下与大型主机相连)。工作站运行在DOS、OS/2和
Windows环境下,其中有一些还连接在Novell、OS/2Server、LANServer和LANManager中。ChaseManhattanBank之所以选择了PVCS,因为它是能够支持其所有硬件系统和操作系统平台的唯一产品。PVCS能够有效地管理任何对象类型并且可以在独立的工作站上运行,跨越单个LAN或多个LAN,使ChaseManhattanBank在这样复杂的环境中获得了成功。
F--解决开发过程中的需求管理问题
最近一份由TheStandishGroup提供的调查报告表明:30%以上的软件项目在没有完成之前就被取消;剩余的70%的项目不能完全实现所需的功能:平均完成每个项目的实际经费超过预算的189%,而实际时间则超过预期的222%。这些情况往往是软件开发项目遇到的致命问题,其原因在于以下几个方面:
需求管理水平低下 我们的应用系统缺乏吸收来自用户的需求变更能力,在项目开发进展的同时不能响应这种变化。
变更管理水平低下 需求的变更和其他开发产品的变更是不可避免的,而我们很少去追踪这些变更,也意识不到它给项目开发所带来的影响。
低水平的
质量控制 缺乏系统质量控制的方法,不了解开发过程中影响质量的环节,并且缺乏反馈。
没有对开发经费和期限进行有效的控制 虽然可以精确地计划,但是出乎意料的变化却经常出现。
解决上面所有问题的基础在于需求管理。需求管理,是一种对
软件应用开发系统的需求变更进行标识、组织、通讯和管理的系统方案。
PVCSResiquitePro是PVCS与世界上最先进的需求管理工具的完美集成。PVCSRequistePro提供了一个独特的MS
Word的界面和需求数据库,使软件开发团队实现了实时的、直观的应用需求管理和需求追踪功能。同时,PVCSRequisitePro还确保用户完全符合CMM标准和ISO9000标准。
小结
PVCS是一个优秀的软件开发管理工具,在解决上述几方面问题中显示了优越性,它在应付复杂环境、增强竞争优势方面所发挥的重要作用已经得到了众多开发机构的一致承认。在我国,许多的软件机构往往将注意力放在先进的操作系统、平台,以及开发工具上,而忽视了对开发过程的管理和控制,殊不知所造成的管理混乱不仅使宝贵的投资难以收回,也使软件开发的质量和效率长期徘徊于低水平重复状态,更不用说因人员流失所导致的项目风险。而且上述情况将随着各种操作系统、开发工具,以及开发团队人员的增多而更加严重。尽早地应用软件开发管理工具对开发过程进行有效的管理和控制,有助于我国的软件开发水平一步跨越西方软件企业所走过的弯路,上升到一个新的高度。

pvcs下载

http://www.serena.com/geo/cn/pages/downloads/index.html

分享到:
评论

相关推荐

    PVCS Professional

    在软件开发领域,PVCS Professional可以帮助团队高效地管理源代码版本、追踪缺陷与改进需求、自动化构建流程等,显著提升开发效率和产品质量。 **2. IT运维** 对于IT运维部门而言,PVCS Professional同样具有重要...

    软件开发版本管理之VSS

    【软件开发版本管理之VSS】是一个关于使用Visual SourceSafe(VSS)作为版本控制工具的讲解稿。版本控制在软件开发中至关...了解并熟练掌握VSS的使用,对于提升软件开发团队的协作效率和代码管理质量有着积极的作用。

    开源软件配置管理过程——Git

    软件配置管理过程是贯穿整个软件开发周期的重要过程,为此,也诞生了许多著名的企业级工具,开源的CVS、SVN,企业级的ClearCase、PVCS。 由于财力有限,无法调研大型企业级软件,但CVS和SVN对于目前的软件开发,已...

    使用DOORS与Serena PVCS接口.pdf

    而Serena PVCS是主要用于版本控制的软件工具,支持软件开发生命周期中的版本控制和变更管理。这两个工具通过接口结合,可以在需求管理和版本控制之间实现无缝的数据流转和同步。 知识点二:Rational DOORS for ...

    pvcs的安装和配置初步介绍

    PVCS(Program Version Control System)是一款由Merant公司开发的版本控制系统,主要用于软件开发过程中对源代码及其他文档进行版本管理和变更跟踪。PVCS提供了丰富的功能,如版本控制、变更管理、构建管理等,适用...

    PVCS Version Manager 7.5 英文指南

    PVCS Version Manager 7.5 是一款由 Merant 开发的软件配置管理工具,用于组织、管理和保护软件资产,支持整个组织的成本有效软件配置管理(SCM)。该版本易于安装、使用和管理,并支持并行开发和大型项目的管理。 ...

    2021年10月自考软件开发发工具试题真题整理.pdf

    1. 软件开发工具的发展阶段:软件开发工具的发展可以分为几个阶段,从专门用于支持软件开发的软件开发工具的出现,到现在的多样化和趋同性并存的阶段。 2. 软件开发工具的概念模式:软件开发工具的概念模式包括数据...

    说明PVCS SBM

    PVCS(Project Version Control System)是Serena的核心产品之一,主要提供版本管理和配置管理功能,帮助企业有效控制和追踪软件开发过程中的源代码和其他文件的变更。而SBM则在PVCS的基础上,更加强调业务的创新与...

    PVCS使用

    PVCS使用

    第六章软件开发工具的现状与发展.ppt

    PVCS Version Manager是由Intersolv开发的版本控制软件,它提供了图形化、用户友好的版本管理环境,可实现对Client/Server开发项目的全面管理。PVCS不仅支持整个配置管理软件套件,也能单独使用。其主要功能包括标识...

    软件能力成熟度模型(PDF 35页).

    ### 软件能力成熟度模型(CMM)...PVCS作为一款强大的SCM工具,在支持软件开发过程的不同阶段发挥了重要作用。通过合理利用这些工具和技术,组织可以有效地提升其软件开发的能力成熟度水平,最终实现持续改进的目标。

    精品(2021-2022年)资料软件开发工具与环境自检自测一精.doc

    选择题部分进一步细化了MFC的结构、软件发展的阶段划分、PVCS的功能定位、Visual Basic的优点以及软件开发工具的核心作用。其中,软件开发工具是解决“软件危机”的有效途径之一。 简答题部分涵盖了Visual BASIC和...

    软件开发工具与环境自检自测一精.doc

    在选择题中,MFC的标准化结构是文档视图结构,软件发展的第三代是软件工程阶段,软件工程阶段包括需求分析、设计和编码等阶段,PVCS是一个开发过程管理软件,Visual BASIC的优点在于其易用性、32位编程语言特性和...

    项目管理 Vss6.0

    源代码版本控制机制是现代软件开发中必不可少的管理机制之一,通常借助版本控制软件即Source Code Management(SCM) systems或者Version Control systems来实现。版本控制在软件开发中的重要作用如下:  1)作为...

    PVCS Commander Eclipse Plugin-开源

    《PVCS Commander Eclipse Plugin——开源助力Eclipse与PVCS6.X无缝对接》 在软件开发领域,版本控制系统是不可或缺的工具,它帮助开发者追踪代码的变更历史,协同工作。PVCS(Productivity Version Control System...

    Borland配置管理PPT文档

    【Borland配置管理PPT文档】主要涵盖了软件配置管理(Software Configuration Management,简称SCM)的核心概念和Borland的解决方案——StarTeam。SCM是软件开发过程中的关键环节,它确保了软件项目的资产(如代码、...

    Git学习总结——大型分布式团队的代码版本管理

    代码版本管理系统在软件开发中扮演着至关重要的角色,从最初的无管理到集中式,再到如今的分布式管理,每个阶段都反映了技术发展的需求变化。本文将探讨代码版本管理的历史,特别是针对大型分布式团队的解决方案,...

Global site tag (gtag.js) - Google Analytics