论文部分内容阅读
软件过程诊断是指通过度量分析的方法,对软件过程中出现的问题进行分析,发现并给出参考的解决方案,帮助项目经理达到过程执行的预期目标。软件过程诊断技术为软件过程的执行提供了可复用的决策支持,避免了相同问题的发生,使组织有了软件过程改进的依据和标准。
判断软件过程的执行情况有两个比较困难的地方:首先,由于涉及质量、进度、成本等多个方面,在决策分析的时候通常是对多个因素的权衡取舍,而由于软件过程的特点,一旦某个因素改变,其余因素或多或少总要受到影响,而这些影响可能最终会导致项目的失败,由于软件过程的各个方面的关系非常复杂而且不确定,因而如何在过程执行中不断判断与预期目标的符合性是很难通过通常的方法去解决的。其次,由于软件过程的一个重要特征是极大地依赖于软件开发人员的能力,显然不同能力的人员经验对于组织的同一过程而言不具有参考性。
本文提出一种利用组织历史经验数据,基于过程Agent对进行中的软件过程进行诊断的一种方法,从而使得在问题未出现的时候,提前采取措施避免问题的发生。
具体来说,本文所提出的诊断方法主要解决了两个方面的问题:
第一:针对质量、进度、成本等多方面目标,如何进行有效的异常预防的问题,本文所提出的诊断方法参照了基于模型的量化的诊断方法的思想。通过建立诊断模型,然后依据模型进行诊断,达到了异常预防的目的。而且本方法在建立诊断模型的时候采用了多个度量指标联合度量的策略,从而建立的模型能够诊断当前在质量、进度、成本等多方面上的目标。
第二:针对能力不同的人力资源,如何依据历史数据对当前项目进行诊断分析的问题,本文所提出的诊断方法同时参照了基于历史数据的诊断方法的思想。通过引入过程Agent机制对软件过程中的数据进行组织,依据不同能力的过程Agent来度量历史数据,建立诊断模型,然后依据模型对当前项目进行诊断分析。因此保证了不同能力的人力资源拥有不同的诊断模型。