天天看点

软件工程中的系统文献映射研究实例-假设条件的自动化和人工管理的比较(第十二部分)

之前的博客详细描述了软件工程中的系统文献映射研究方法。这里接着给出一个我曾经做过的工作作为例子,以更直观地展示这种研究类型。该研究的背景信息这里不再赘述。                    

这篇博客主要介绍基于前面分析的文献,假设条件的自动化和人工管理的比较。

方面 假设条件的自动化管理 假设条件的人工管理
定义 假设条件的自动化管理的相关文献一般不会定义假设条件的概念。 假设条件的人工管理的文献中有多种显式的假设条件概念的定义。
目标 假设条件的自动化管理一般用于系统验证,包括模块、构件、程序的验证。其管理过程中假设条件均被自动化管理。 假设条件的人工管理用于多个目的,如在各个软件开发活动中管理假设条件。假设条件的人工管理一般需要涉众的参与(如假设条件制定)。
软件开发活动 假设条件的自动化管理主要用于软件设计和构造,而很少用于其他软件开发活动。 假设条件的人工管理主要用于需求工程和软件设计,但也会在其他软件开发活动中使用。
软件制品 与假设条件的自动化管理关联最紧密的制品为构件。其他类型的制品如接口、代码、线程、模型、需求也可能存在关联。 与假设条件的人工管理关联紧密的制品有多种,如需求、体系结构、设计决策、构件、模型、代码。
假设条件的分类 假设条件的自动化管理的相关文献一般不对假设条件分类。 假设条件的人工管理的相关文献中提出了特定的假设条件分类。
假设条件管理活动 假设条件的自动化管理的主要活动为制定、描述、评价。 假设条件的人工管理的主要活动为制定、描述、评价、维护。其他活动也可被用于假设条件的人工管理。
方法 假设条件的自动化管理的代表性方法为assume-guarantee reasoning。 假设条件的人工管理无代表性的方法。
工具 假设条件的自动化管理有多种专用工具。 假设条件的人工管理的大部分工具为软件开发中的一般性工具或主要用于管理其他制品但可用于管理假设条件的工具。
涉众 假设条件的自动化管理的相关文献一般不提到涉众。 假设条件的人工管理的相关文献包括不同种类的涉众,如客户、需求工程师、设计师、开发人员。
收益 假设条件的自动化管理主要为软件设计、构造、验证获得收益。 假设条件的人工管理除了可为所有五个软件开发活动获得收益,也可为软件开发的其他方面获得收益,如提高软件质量,提高制品间的可追溯性。
挑战 假设条件的自动化管理的挑战主要与假设条件自身有关,如如何解决假设条件爆炸的问题。 假设条件的人工管理的挑战不仅与假设条件管理本身相关,且与假设条件的概念关联,如理解和分类假设条件。 
未被妥善管理的假设条件带来的后果 假设条件的自动化管理的相关文献一般不提及未被妥善管理的假设条件带来的后果。 假设条件的人工管理的相关文献提到多种未被妥善管理的假设条件带来的后果,如系统错误、设计问题。
经验 假设条件的自动化管理的大部分经验为对假设条件管理的建议,特别是如何使用特定的方法、工具等的建议。 假设条件的人工管理的经验包括所有三个方面,即假设条件的影响、假设条件管理的建议、假设条件的理解。

继续阅读