节点文献

一种面向问题的需求变更应对方法的研究与实现

Research and Implementation of A Problem-Oriented Approach to Requirements Change

【作者】 林亚娜

【导师】 李智;

【作者基本信息】 广西师范大学 , 软件工程(工程硕士)(专业学位), 2017, 硕士

【摘要】 随着科技的发展,计算机早已普及到社会的各个角落,软件项目也由最初的高科技定位走向了大众的视野。各行各业几乎都离不开软件产品,大到大规模企业的运转,小到每个人的日常生活都与软件产品息息相关。现代人们不仅仅关心软件能够做哪些事情,更加关心软件的质量及其稳定性,保证质量的关键首先在于需求的准确获取以及当需求发生变更时的应对方法。几乎所有项目都无法摆脱需求变更所带来的影响,需求变更可以影响到软件项目的各个阶段,包括设计、编码、测试等,越到项目后期的变更所花费的成本就越高。在一个软件项目中,需求是最先被提及的部分,需求的提取至关重要,这关系到软件的质量、成本。同时需求变更无时无刻不在影响着软件项目,需求变更是指由于内外在因素导致原本的需求发生了变化,在软件开发过程中如果不能及时地处理这些变化将会导致软件项目的成本提高、质量下降,最终可能直接导致项目的失败。变更本身并不可怕,如何处理好变更关系着软件项目的成败。因此,研究面向问题的应对需求变更的方法具有一定理论和实际意义。问题框架最初是由英国软件工程学者Michael A.Jackson提出的,其核心理论可以用K,S|-R表示,其中K指软件所处的上下文环境,包括硬件设备、人等;S指软件的规格说明;R指用户提出的需求;符号(|-)表示满足关系。这种方法从面向问题的角度出发,通过构造问题图、上下文图来描述问题,更贴近现实世界也更加有利于项目利益相关者理解并参与讨论与需求相关的问题。本文研究的目的在于将问题框架的思想应用于需求变更的应对方法中,并研发一套需求变更管理工具以应用于实际项目中,将理论与实际相结合。本文研究的方法是以问题框架K,S|-R为理论基础,研究当K(上下文环境)、S(规格说明)、R(用户需求)其中任意两项发生变化时,另一项如何变化才能继续保证满足(|-)关系的成立。本文引入了变更和任务清单的概念,变更包含了 K、S、R的变化,任务清单依附于问题图中的需求、领域,是其属性之一,将需求变更细化并分解,记录变更引起的每个部分的详细变更情况。通过需求之间共享的领域来定量计算需求变更的复杂度并给出其公式及实现的算法。根据如上理论本文研发一套可以应用于实际项目的需求变更管理工具,工具在问题框架的基础上提供用户录入需求的功能并最终根据录入情况转换为问题图反馈给用户。利用问题图中的共享领域来计算需求变更的复杂程度。在现实项目中针对同一个需求可能会产生多次变更,这可能会导致需求本身产生矛盾。工具可以记录每次变更的内容并生成针对一条需求的状态变换追踪链,通过需求的状态转换以及变更的任务清单记录每次需求变更的关键点,从而找出导致冲突的变更所处的位置。最后本文通过两个案例验证工具的可用性,一种情况为需求自身较复杂但需求之间关联程度低,另一种情况刚好相反,每个需求自身复杂度不高但与其他需求之间关联程度较高。将工具应用于如上两种情况的案例中得出的结果与实际项目结束后得到的结果对比,得到基本一致的结果,展示了工具的可用性。本文从问题框架理论研究入手,将理论结合到需求变更的实际中并进行研究分析,通过创建任务清单记录分析变更内容。利用需求的可追踪性实现需求状态转化追踪链。通过分析问题图中的共享领域量化计算出需求变更复杂度,为问题框架理论与实际应用相结合做出了一定贡献。

【Abstract】 With the development of science and technology,computers have been widely used in every corners of our society.Software projects have moved from high-tech to public applications.Almost all kinds of modern work can not be separated from software products.Software products are needed from large-scale enterprises to everyone’s daily life.Modern people are not only concerned about what the software can do,but also concerned about the quality of the software and its stability.The key to ensuring software quality is obtaining requirements accurately and responding to requirements changes.Requirements changes can affect most stages of a software project,such as design,coding,testing,etc,The later requirements change happens,the higher the cost.In a software development project,requirements are mentioned for the first time.A requirements change is crucial because it is related to the quality and cost of the software.At the same time requirements change affects software projects at all times,and internal and external factors lead to these changes to happen.In the process of software development,if we can not deal with these changes on time,they will lead to rising costs and declining software quality.Finally,these changes may lead to project failures.Therefore,it is of theoretical and practical significance to study problem-oriented approach to responding to requirement changes.The Problem Frames approach was originally proposed by Michael A.Jackson,a British scholar in software engineering.Its core theory can be expressed in K,S |-R,in which the K refers to the relevant context of the software,including hardware,people,etc,the S refers to the specification of the software,the R refers to user’s requirements,and the symbol“|-“refers to satisfaction of the requirements.This method describes the problem in problem-oriented perspective by constructing problem diagrams and context digrams.It emphasizes the importance of adhering closely to the real world,which facilitates the project stakeholders’ understanding and participating in the discussion of requirements.The purpose of this dissertation is to apply the theory of Problem Frames in order to response to requirement changes and to develop a requirement change management tool which can be applied to an actual project,thus combining theory with practice.The approach of this dissertation is based on the theory of Problem Frames K,S|-R in which,when any of the context K,the specification S,the requirement R changes,how to keep ensuring that satisfaction relationship(|-)is established.This dissertation introduces the concept of change points and task lists.A change point includes the overall changes of K,S,R,and a task list is a kind of domain properties attached to the domain in a problem diagram.By refining and decomposing requirements,details of requirements changes caused by the change points are recorded.The complexity of requirement changes is quantitatively calculated based on the number of the shared problem domains between requirements.In this dissertation,the formula of complexity and its imple4menting algorithm are given.According to the above theory,this dissertation introduces the development process of a requirements change management tool which can be applied to practical projects.On the basis of the Problem Frames,this tool enables imputting of requirements,transformation of inputted requirements into problem diagrams,and providing feedback to the tool users.It also provides a method of calculating the complexity of the requirements change based on the number of shared problem domains.Multiple changes may occur in the actual project for the same requirement,which may also lead to conflicts in the requirement itself.The tool can record the contents of each change and generate a state transformation tracing chain for a requirement.The key points of each requirement change are recorded by the chain and associated task list,in order to help find the location of the change that leads to the conflict.Finally,two cases are used to demonstrate the practicability of this tool.The first case is that the requirement itself is complex but the correlation between requirements is low.The second case is just the opposite:the complexity of each requirement is not so high but the correlation between requirements is high.The tool is applied to the above cases,and the results are compared with the results obtained after the actual project,which produces consistent results.This shows the usability of this tool.This dissertation starts with the research of the Problem Frames theory,combines the theory with actual requirements changes,analyzes changes by creating a task list,creates the state transitions of the causal chain by tracking the requirements,calculate the complexity of requirements change by analyzing the shared problem domains in problem diagrams.It makes some contribution to the combination of Problem Frames theory and its practical applications.

  • 【分类号】TP311.5
  • 【下载频次】56
节点文献中: