6.1 软件维护与版本控制的意义
软件维护与版本控制的目的有三点:
1). 解决由于问题处理带来对已定版软件的版本升级等管理问题,确保可以提供某一特定时间的版本,为用户提供满意的售后服务。
2). 解决软件开发过程中的版本控制问题,有利于团队开发的协同工作问题,也有利于公司对开发项目的版本控制及知识产权的保护。
). 良好的版本控制与管理,有利于新版软件的开发工作的进行。确保软件产品循环渐进,逐步提高。
6.2 开发过程的版本控制
软件开发过程中的版本控制一般都是基于特定的开发工具和特定的版本控制管理工具,现在绝大部分的软件开发工具均提供这方面的功能。如Microsoft Visual Source Safe (简称VSS),IBM Visual 系列开发工具等,版本控制的原理大同小异,以下以VSS为例介绍软件开发过程的版本控制模型。
软件配置管理包括软件开发过程中的文档管理与程序管理,软件开发中的文档主要包括如下文档:
* 可行性分析报告
* 需求分析文档
* 功能规范及界面文档
* 总体设计文档
* 详细设计文档
* 编码设计文档(包括模块测试计划及结果文档)
* 测试计划文档
* 测试用例
* 测试评估文档(包括问题报告)
* 用户手册
* 在线帮助文档
与CMO软件配置管理相关的文档一般包括:
* 工作报告(编码期间协同工作文档)
* 问题报告文档 (编码期间协同工作文档)
* 问题处理报告 (编码期间协同工作文档)
* CMO每日报告(为程序经理提供每日项目变化报告)
不同配置管理软件的功能大同小异,总体来说,配置管理软件的安全性较差,为确保软件开发过程中代码与文档的安全,制定一个合理的系统备份策略是必要的。
7. 开发工具与技术积累
7.1 开发工具的选择
开发工具是开发人员进行软件开发所必备工具,选择合适的开发工具有利于产品的开发与软件公司的健康发展。选择开发工具时应考虑以下几方面的因素:
1) 开发工具的功能与技术先进性
开发工具的功能必须能够满足应用开发的需要,同时具备行业优势。这是选择开发工具必须首先应考率的。
2) 供应商的技术经济实力
开发工具供应商的技术经济实力是第二个应考虑的因素。雄厚的技术经济实力是开发工具在激烈的市场竞争中生存发展的基础,频繁更换开发工具意味着建立其上的技术积累将付之东流,不利于软件公司的发展。
3) 对行业标准的支持与左右程度
对行业标准的支持也是选择开发工具应加以考虑的因素,软件开发工具中各种标准发展迅速,开发工具对各种标准应有良好的支持。制定与左右标准的制定是公司技术实力的象征,每一新的标准的产生必然提高软件开发及程序运行的效率。有利于应用开发的进行。
4) 开发工具的市场占有率
市场占有率越高,意味着市场上可供选择的控件越多,选择成熟的控件是降低软件开发成本、提高软件可靠性的重要手段。应尽可能选择市场占有率高的开发工具。
5) 适应快速应用软件开发
适应快速应用软件开发是应用开发的需要,也是选择开发工具应考虑的因素。
7.2 技术积累
技术积累历来是公司发展的基础,对于软件公司尤其如此。这种技术积累一般包含三方面的含义。其一是人员技术素质及能力的提高;其二是公司在公共模块方面的积累;其三是对新技术的跟踪发展方面;
对于软件公司而言,人员的稳定是技术积累的主体,人员作为技术的载体在技术积累方面占有重要的位置,频繁的人员变动不利于软件公司的发展。
公共模块方面的积累主要取决于公司的发展方向,不同的公司有不同的积累方式与方向。公共模块的积累有利于后来项目开发的速度于质量,也是在激烈的市场竞争中求得生存发展得重要保证。
对于新技术得跟踪可以确保公司在技术上处于地位,适应日新月异技术得发展,确保公司不被淘汰。?
7.3 对用户负责
用户是软件生命周期中重要的一环。软件开发的终目的是为了满足用户的需求,同时用户的积极参与也是产品提高的基础,也是软件公司发展的前提。因此在软件开发过程中,应把用户的利益放在第一位。确保用户的利益不被侵犯。
结束语
一个良好的可操作的应用软件开发管理模式是确保应用软件开发达到预期目的的基本保证,有利于降低软件开发与维护成本,降低软件开发风险。建立合理的软件开发管理模式、制定与完善相关软件开发标准是国内大部分软件公司与系统集成公司迫切需要解决的问题。希望本文在这方面能够给予一些启示。