软件开发过程中需遵循的7项基本原则返回>>

软件开发

1.成功原则

作为软件开发中决策和软件开发预评估时的基础,不管从过程还是软件产品的角度来看,软件开发成功的度量都应该在软件开发的开始就已经定义好。

软件开发成功是一个多维的概念,这就不可避免的意味着不同的人有不同的看法。最好在软件开发的开始时对软件开发成功或是失败相关的关键的和可测量的标准进行判定。比如:

满足软件开发的关键目标,比如客户组织,所有者或是用户的业务目标。

软件开发过程的满意度――比如:完成了交付,从标准的角度上看,是按时并在预算之内。

从软件开发的客户以及绝大多数的软件开发团队的角度来看,软件开发的交付反映了在不久的将来也具有普通意义上的可接受性和满意度。

软件开发的成功与机遇和风险紧密的联系在一起。软件开发实质上是对风险的处理,并且有些软件开发的风险既便被发现了也是完全不可避免的或者说是不能减轻的。由于软件开发的成功受风险的影响,涉众就要同时承担机遇与风险。你可能同时也会注意到成功的标准随时间而改变,并且仅仅是因为某些目标没有实现,但是这并不意味着软件开发的失败。

在软件开发开始时设置的软件开发成功的标准看起来可能是很明显并且很容易觉察到,然而遗憾的是,通常情况下它并不是通用的准则。如果没有定义成功的标准,那么我们如何在某一特定的软件开发的优先级,协定和重大的变化以及整个软件开发预期达到的效力和效率上达成一致?基于上述原因,我认为很多软件开发成功的调查是不可信的。我坚信软件开发的成功不只是完成了你预先准备去做的事。它同时在于你所做的是不是正确的。

在很多软件开发中生命力的真实体现在于每一个参与的或这与之关联的人并没有相同的热情和目标。结果,“软件开发被推向了许多不同的方向…身份,自尊心,权利,欲望”,很多情况下,这似乎有些夸张,但是在最基本的层次上,软件开发所有者关注的是软件开发所带来的效益,而工作人员则关心过程所带来的效率。这样就使得软件开发成功的定义显得更加重要――它为纠正进展中的分歧提供了可参考的基线。

2.承担义务原则

在可行的软件开发存在前需要在资源提供者与软件开发交付方之间有一个公平的约束。

资源的提供者(资金和/或者工具和服务,以及通常的方法说明)经常被软件开发的所有者或是发起人调用。软件开发交付方需要承担起开发适当的策略,计划和控制的责任,从而应用必要的技巧并努力将这些资源转化成必需的可交付的软件产品。一个公平的约束意味着双方都应该具有足够的承担起过程中所包含的以及它们所关联的风险的能力,并且也很愿意承担起这种挑战。

软件开发的所有者必须了解,即使是适当的使用了合适的管理控制方案,也要承担起其中的风险。双方共同的特点是他们都应该利用相关的技巧,以及相关的技术,经验,贡献,约束,坚韧和权力来保证软件开发的成功。

当然,每个软件开发都会经历生命周期的不断发展,并且这种承担义务和权衡也同样的在发展。同样,软件开发的执行者通常因软件开发生命周期的变化而变化,这是为了满足在每个阶段中所需要的工作和技能水平的变化。然而,如果软件开发能够保持可行,那么软件开发的每个阶段应该存在一个公平的承担义务。

3.四元交易原则

软件开发过程中核心的可变因素――即软件产品的范围,质量等级,交付日期以及4个总的实现费用――必须相互保持一致和明确可用。

这个原则是对承担义务原则和成功原则的一种扩展。软件产品范围,质量等级,交付时间以及整体生产成本这些关键的变量――通常简化地把它们分别说成范围,质量,时间,成本――它们是软件开发效率内在的度量方法。如果这些变量证明并不是相互一致以及很明显达不到的话,那么这种承担义务即不是公平的,也很可能不是满足软件开发成功的关键标准。这四个分离变量的相互关系有点像带有柔性接头的四边形框架。一边很安全另一边可以移动,而这仅仅通过影响其它两个变量才可以达到。

把这四个变量看成是四元的而不是选出三个组合成三角形,它的优点在于:它给质量上带来了很多显著的帮助。这四个变量中,软件产品的质量是很明显的,并且事实上也是最持久的。

4.策略原则

一个策略首先是计划然后才是行动,它关注于一系列的连续和改进的策略阶段。

软件开发生命周期过程的起源,从最基本的形式上,可以在“软件开发”其本身的术语中找到。从定义上来看,软件开发有一个起点和一个终点。软件开发的本质是在行动以前先计划。因此,绝大多数基础的软件开发生命周期过程由四个有顺序的阶段组成:“开始”,“计划”,“行动”和“完成”。当然,这四个阶段可以扩展成分离的阶段――每个阶段都带有它们自身的暂时可交付性和“可执行的控制点

陕西弈聪软件信息技术股份有限公司
电话:13679229477    15029073577
地址:陕西省西安航天基地神州四路科为城墅20栋4301