论文标题

面向对象的要求:针对规格,方案和测试的统一框架

Object-Oriented Requirements: a Unified Framework for Specifications, Scenarios and Tests

论文作者

Naumcheva, Maria, Ebersold, Sophie, Naumchev, Alexandr, Bruel, Jean-Michel, Galinier, Florian, Meyer, Bertrand

论文摘要

该行业中主要实践的需求规格的悖论是,它们通常声称是面向对象的(OO),但在很大程度上依赖于程序(非OO)技术。用例和用户故事描述了功能流,而不是对象类型。为了获得对象技术提供的好处(例如扩展性,可重复性,可靠性),需要利用相同的数据抽象概念 - 类,继承,信息隐藏 - 作为OO设计和OO程序。 由于这些概念的简单性和实用性,许多人发现用例和用户故事吸引人。我们可以将要求与面向对象的原则调和并获得两全其美吗? 本文提出了一个统一的框架。它表明,班级的概念足以在狭窄的意义上描述“对象”,还可以描述诸如用例和用户故事以及其他重要文物(例如测试用例和甲壳)等场景。 拥有一个框架为享受这两种方法的好处的需求开辟了道路:例如用例和用户故事,它们反映了利益相关者的实际观点;像面向对象的要求一样,它们也可以进化和再利用。

A paradox of requirements specifications as dominantly practiced in the industry is that they often claim to be object-oriented (OO) but largely rely on procedural (non-OO) techniques. Use cases and user stories describe functional flows, not object types. To gain the benefits provided by object technology (such as extendibility, reusability, reliability), requirements should instead take advantage of the same data abstraction concepts - classes, inheritance, information hiding - as OO design and OO programs. Many people find use cases and user stories appealing because of the simplicity and practicality of the concepts. Can we reconcile requirements with object-oriented principles and get the best of both worlds? This article proposes a unified framework. It shows that the concept of class is general enough to describe not only "objects" in a narrow sense but also scenarios such as use cases and user stories and other important artifacts such as test cases and oracles. Having a single framework opens the way to requirements that enjoy the benefits of both approaches: like use cases and user stories, they reflect the practical views of stakeholders; like object-oriented requirements, they lend themselves to evolution and reuse.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源