论文部分内容阅读
软件系统的需求既包含系统应具备的各项功能,即功能需求(FunctionalRequirements,简称FRs),也包含施加在系统功能上的约束,即非功能需求,又称质量需求(QualityRequirements,简称QRs)。获取和描述这两类需求是软件开发过程中的一个关键阶段,直接关系到整个开发项目的成败。需求获取和描述阶段面临着用户与开发者之间的知识鸿沟、用户缺乏综合概括需求知识的能力、以及需求知识的混乱、无结构性这些困难。目前的需求获取与描述方法在面对上述困难时,仍然存在一些挑战:1)功能需求和质量需求在获取与描述过程中被长期分离开来,并不符合这两类需求之间紧密关联的自然规律,目前对于如何集成这两类需求的研究并不够广泛;2)虽然存在少数研究关注于功能需求与质量需求的集成建模,但仅止于在模型层面进行形式上的集成,并未在元模型层面真正从概念上实现这两类需求的有机结合;3)对于需求获取的研究,现有的方法或是仅针对功能需求知识的获取,如基于过程的方法,或是对功能需求和质量需求分开进行建模来分别获取这两类需求知识,如面向目标的方法,目前仍然缺乏一种能够实现功能需求知识与质量需求知识获取在同一模型中进行的方法;4)需求描述长期以来并不考虑用户和开发者的不同知识背景,都采用同种需求描述来面向用户和开发者,直到问题框架方法提出将需求分为面向用户的需求描述和面向开发者的规格说明两种形式,更利于用户和开发者理解需求,然而该方法目前仅面向功能需求且缺乏可行的方案来指导如何将混乱的需求知识转化为这两类描述。 针对上述挑战,本文着重研究如何集成获取与描述功能需求和质量需求,结合业务目标、业务过程和问题框架这三种常见的需求模型,建立起一个系统化的功能需求与质量需求集成建模体系,以求突破现有需求建模研究中功能需求与质量需求集成建模方法匮乏的研究困境,主要工作和贡献如下: 1)提出一种系统化的功能需求与质量需求集成建模语言,在元模型层定义了这两类需求分别在业务目标、业务过程和问题框架这三种模型中实现集成的相关概念,为这两类需求在模型层实现有机集成奠定了基础,克服了现有的功能需求和质量需求集成研究中缺乏元模型定义支持的缺点; 2)基于业务目标和业务过程,提出一种集成获取功能需求和质量需求的方法,完整的获取功能需求知识、质量需求知识以及两者之间的关联,克服了传统业务目标模型和业务过程模型在需求获取方面的缺点,也为这两类需求的集成描述作了初步准备; 3)基于问题框架建模,提出一种集成描述功能需求和质量需求的方法,将所获取的需求知识转化为面向用户的需求描述(包括功能需求描述和质量需求描述)和面向开发者的规格说明(包括功能规格说明和质量规格说明),克服了传统问题框架仅面向FRs以及难以将混乱需求知识转化为需求描述和规格说明的缺点。 本文将上述方法应用到某股票交易系统案例的需求获取与描述中,并在该案例的基础上,对集成FRs和QRs的系统化获取与描述方法分别开展有效性和可行性的评估,证实了本文研究成果对于需求获取与描述的重要价值,解决了现有方法面临的一些关键问题。