文档2阅读报告-Requirements Interdependencies- Moulding the State.docx
《文档2阅读报告-Requirements Interdependencies- Moulding the State.docx》由会员分享,可在线阅读,更多相关《文档2阅读报告-Requirements Interdependencies- Moulding the State.docx(12页珍藏版)》请在三一办公上搜索。
1、Requirements Interdependencies- Moulding the State of Research into a Research Agenda摘要。定义:相互依赖关系(interdependent),即需求量相关,并相互影响的一种关系。(Requirements relate to and affect each other, i.e. they are interdependent.)一、 简介:大多数的需求量不能独立处理,因为它们是相关的,并且以复杂的方式相互联系、相互影响1, 2。基于一个需求量的执行操作可能会不经意或意料之外的方式影响到其他需求量。需求之间的
2、依赖关系(Dependencies)也可能会影响开发过程中的很多决定和活动,如需求变更管理3,4,发布规划2,5,需求管理6,要求重用7和要求的执行情况8。这意味着在开发过程中有必要对相互依赖关系(interdependencies)进行考虑,以作出合理的决定(例如,见3.1节)。尽管如此,很少有人知道的需求相互依赖关系(requirements interdependencies)的性质,需要进一步研究,以更好地理解这一现象5,9,10。我们研究的总体目标,是要明确在具体开发情况下哪些需求的相互依赖关系类型是要重点考虑的。比如:在发布计划或需求管理。同时,我们的目标也包括根据具体情况,提出管
3、理依赖关系(dependencies)的有效方法。这里提供了为实现这一目标的首要步骤:通过提供需求相互依赖关系(requirements interdependency)研究现状的概述,通过在书面上讨论、开发一种基于基本依赖关系类型的集成分类系统,(by developing an integrated classification offundamental interdependency types discussed in the literature)以及为了进一步的研究而制订新的研究现状。解决需求依赖关系(requirements interdependencies)的文献数量相当小
4、。而且不同的地方有不同的研究角度。(it approaches the area from different perspectives.)pohl4以及Ramesh和Jarke 6讨论主题中需求跟踪部分,重点放在需求管理以及变更管理上。需求依赖关系对需求的选择以及发布计划的影响由Karlsson等人讨论5,Carlshamre和Regnell 9和Carlshamre等人2 负责需求的互动管理(requirements interaction management),这是为了处理识别需求间如何影响彼此的结果。(which deals with identifying how requirem
5、ents may affect each others achievement)二、可跟踪性:理解需求相互依赖关系(Requirements Interdependencies)的基础需求跟踪被公认为是软件和信息系统开发的重要组成部分4,11,12,支持一个软件系统生命周期的多项活动。因此,需求跟踪被认为是正确解决相互依赖关系的前提。(We view the area as a basis for addressing requirements interdependencies.)这种观点,在理论和实证研究上,都经过大量文献描述并证实了(见如4,13,11,14,15,16,17。Rames
6、h和Jarke 6 基于数年的研究,扩展了该领域上当前的研究概述状况。文献中有几个关于长期可追溯性的定义见6,18,19,4,在这里我们将需求跟踪定义为:理想情况下,在整个系统的生命周期里,可以在向前和向后两个方向上描述、跟踪需求的生命状况。(ability to describe and follow the life of a requirement, in both forward and backward direction, ideally through the whole system life cycle)20, pp. 32, based on 14。这个定义表明,需求跟踪可
7、以分为两个主要类型:预先-跟踪性和后期-跟踪性(图1)。预先-跟踪性指需求的生命周期开始之前该需求的各方面信息,列入到需求规范中14(those aspects of a requirements life before it is included in the requirements specification 14 and is focused on enabling a better understanding of the requirement.),主要为了更好地理解需求。后期-跟踪性指需求的生命周期中实时反应该需求的各方面信息,列入到需求规范中14,(those aspects
8、 of a requirements life from the point in time when it has been included in the requirements specification)主要是为了能更好地理解、验收当前的系统/软件。Figure 1: Different types of traceability因此,需求的预先-跟踪性关注需求的结果(requirements production),将焦点放在域(domain),并当需求发生或系统安装时,进行交付工作。(Requirements pre-traceability is hence concerned
9、 with requirements production and focuses on the domain with which we interact when the requirements are developed and in which the systems is to be installed.)需求的后期-跟踪性关注的是需求的部署(requirements deployment),将焦点放在以需求为基础的软件(software)开发上。(Requirements post-traceability is concerned with requirements deplo
10、yment and is focused on the software that is developed based on the requirements.)预先-跟踪性和后期-跟踪性也可分为四跟踪类型,这是在21表述的。根据文献6关于跟踪性的信息,为需求工程设计、系统演变和测试程序提供了重要的支持。图1给出了需求跟踪链接的各种类型,在软件系统的开发和维护时支持不同的情况和活动。这一切都不会单独支持需求跟踪(见3)。不同利益相关者通常也对不同类型的需求跟踪信息感兴趣。尽管如此,目前的文献和规章很少有指导方针关于在上下文中哪些类型的信息应该捕获和使用6。(current literatur
11、e and standards provide few guidelines regarding which type of information should be captured and used in what context 6)需求跟踪关注的是各种跟踪对象之间的跟踪关系,例如要求、合理、文件、处理阶段等。在本文中,我们重点放在跟踪对象为特定种类之间的关系,即明确规定的需求(explicitly stated requirements)(图1的阴影部分)。不同的作者以许多不同的方式使用长期的依赖关系。(The term dependency is used in fairly di
12、fferent manners by different authors)Pohl 4用广义的术语,确定了18种不同类型的依赖关系(Pohl 4 has a broad view of the term and has defined 18 different dependency types )(见图2)。另一方面,Ramesh 和Jarke6使用更有具体(specific sense)的术语,区分了相互依赖关系(dependencies)和其他的关系(relationships)类型。这意味着,术语“相互依赖关系”(dependency)可以被看作是术词“关系”(term relation
13、ship)的代名词,或在这两个对象之间形成一种强大的关联,彼此以某种方式相互影响。例如在变化的情况下。在这里,我们不区分依赖关系(dependency)和关系(relationships)。我们将探索需求量以哪些不同的方式可以联系到其他需求量,这也可能意味着他们同时也在相互影响。(We are interested in exploring the different manners by which requirements can relate to each other, which may mean that they affect each other as well.)我们也选择使
14、用相互依赖关系(interdependency)这一术语来强调我们关注的、存在于同类跟踪对象之间的关系(relationships)。(We have also chosen to use the term interdependency to emphasise that the relationships that we focus on are those that exist between trace objects of the same type.)三、需求相互依赖关系的研究现状 本节旨在提供需求依赖关系(requirements interdependencies)研究现状的概
15、述,通过发现和概括那些关注需求依赖关系类型、关注影响开发情况的文献,以及对正在进行的调查访问作概括。(This section aims at providing an overview of the current state of research on requirements interdependencies by outlining findings from the literature concerning requirements interdependency types and affected development situations as well as find
16、ings from an ongoing interview survey.)完整的需求依赖关系类型集合在文献22中提出。3.1、需求依赖关系(Requirements Interdependencies)-文献的综述(a Literature Review)需求的相互依赖关系在相当的程度上,属于尚未开发的领域。很少数量的文献对它进行讨论及评审。不过,在这方面的研究领域内也有一些里程碑。在需求跟踪研究的初期,波尔4开发一个跟踪踪的框架,其中包括了一个依赖关系模型,定义了可能存在的18个不同类型的依赖关系链接(图2)。波尔4的模型描述了在任何需求工程过程中,所有跟踪对象类型之间的依赖关系类型。我
17、们专注于需求的相互依赖关系(requirements interdependencies,),但仍然有在一般依赖关系(general dependencies)和需求相互依赖关系(requirements interdependencies)之间已确定的关系(correlations),这激励着为什么这种依赖模型仍然应用于我们的投资中。(but there are most certain some correlations between these general dependencies and requirements interdependencies, which motivate
18、 why this dependency model is relevant for our investigation.)-表示不理解。Figure 2: The dependency model 4可是,Pohl的依赖关系模型必需有所调整,使之能适用于我们研究的需求依赖关系。因为Pohl模型里一些需求依赖关系显然不适用于需求量之间。(参见22类别的描述和模型中的依赖关系类型)。这些种类“文件”( Documents)和种类“比较”(Compare),因此这是进一步讨论有关依赖模型时排除在外的。在其他情况下,相互依赖关系类型(dependency types)里描述的“跟踪对象”(trace
19、 object)这一术词会被“需求”(requirement)这一词替用,并将之后的讨论中使用。尽管对我们的研究来说,Pohl的模型是一个有价值的开始,其模型的类别和依赖关系的种类有时很难明确区分彼此。另外的需求依赖关系类型将在随后的文献中提到。因此有必要修改和调整这种模型,为了发展一种模型专门用于需求依赖关系(requirements interdependencies),同时也为了合并最先的研究。Pohl提到需求如何演化的知识,因此在处理变化和变化的一体化时,彼此相互的关系是重要的。(and hence relate to each other, is considered to be i
20、mportant when dealing with changes and change integration.)Kotonya和Sommerville 3同意这种说法,并表示在变化管理(change management)的角度上,需求相互依赖关系(requirements interdependency)的概念是需求跟踪中最重要的一点。这些依赖关系(dependency)的类型在Pohl模型也是考虑的部分。(包括抽象和进化的)Pohl还明确了需求相互依赖关系作为明确可重用软件组件(reusable software component)的推动角色。如果被声明的需求(stated req
21、uirements)对比于现行的需求(existing requirements)时,检测到的需求是相似的,这表明这是一个可重用组件。依赖型的“相似”(Similar)是包含在模型中。 Karlsson等人5需求这部分开发了一种解决办法,通过成对的对比(pair-wise comparison)。他们指出,需求的优先级处理办法必须包括需求相互依赖关系管理,这是为了充分支持开发者。(They state that requirements prioritisation approaches must include means for managing requirements interdep
22、endencies in order to fully support developers.)由于这种相互依赖关系(interdependencies),需求不会被视为独立的个体(stand-alone artefacts.)。例如,如果您选择执行一个高优先级、低成本的需求量,您可能还必须执行一个低优先级、成本高的需求量。因此选择需求时,不可以单单考虑优先级。Karlsson等人5的结论是:当存在一个缺少支持的需求相互依赖关系,特定条件是,需求所包含或排除在外的影响都可以观察到。他们已经确定了一套初步的相互依赖关系的类型,且他们被认为在需求选择的前后过程中是有关的(见22)。(这个结论我表示
23、不理解。)Carlshamre和Regnell 9 同意5,并作出结论:由于需求的相互依赖关系,发布计划是一个非常复杂的任务。需求相互依赖关系的管理被认为是特别重要的,当需求是“培养异步生命周期模型”(fostered asynchronously in a life cycle model)时。因为他们连接着需求的片段(requirements fragments.)。对未来的研究,有必要关注需求之间存在着的、不同类型的相互依赖关系。Carlshamre和Regnell 9描述了一些的相互依赖关系的类型(见22)。Carlshamre等人2继续了5和9 的工作,并进行一个用于发布计划的需求依
24、赖关系的工业调查。确定了六种不同类型的相互依赖关系(见22),部分以5提出的类型作基础;并分析五个不同公司之间20个高优先级的需求量。从这个调查结果表示,很少有单独的需求量,即需求量与其他需求量没有关系。有时,研究中的受访者很难去选择两个需求量之间的关系(relationship)要使用何种依赖类型(interdependency type),因为多于一种类型的相互依赖可以使用。因此,有必要优化相互依赖的类型。另外,需求依赖关系很少有明确的定义,理由如下:大量的相互依赖关系会导致明确和管理需求的困难、需求相互依赖关系本身比较模糊,意味着其所描述的关系(relationship)或多或少会比较重
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文档2阅读报告-Requirements Interdependencies- Moulding the State 文档 阅读 报告 Requirements Interdependencies
链接地址:https://www.31ppt.com/p-1909121.html