Software Engineering Using design RATionale

نویسنده

  • Janet E. Burge
چکیده

For a number of years, members of the Artificial Intelligence (AI) in Design community have studied Design Rationale (DR), the reasons behind decisions made while designing. DR is invaluable as an aid for revising, maintaining, documenting, evaluating, and learning the design. The presence of DR would be especially valuable for software maintenance. The rationale would provide insight into why the system is the way it is by giving the reasons behind the design decisions, could help to indicate where changes might be needed during maintenance if design goals change, and help the maintainer avoid repeating earlier mistakes by explicitly documenting alternatives that were tried earlier that did not work. Unfortunately, while everyone agrees that design rationale is useful, it is still not used enough in practice. Possible reasons for this are that the uses proposed for rationale are not compelling enough to justify the effort involved in its capture and that there are few systems available to support rationale use and capture. We have addressed this problem by developing and evaluating a system called SEURAT (Software Engineering Using RATionale) which integrates with a software development environment and goes beyond mere presentation of rationale by inferencing over it to check for completeness and consistency in the reasoning used while a software system is being developed and maintained. We feel that the SEURAT system will be invaluable during development and maintenance of software systems. During development, SEURAT will help the developers ensure that the systems they build are complete and consistent. During maintenance, SEURAT will provide insight into the reasons behind the choices made by the developers during design and implementation. The benefits of DR are clear but only with appropriate tool support, such as that provided by SEURAT, can DR live up to its full potential as an aid for revising, maintaining, and documenting the software design and implementation.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Design Rationale Representation in Requirements Engineering using the KAOS meta-model

Requirements specifications made in a poor or incorrect manner have been recognized as a source of problems in software development. Recording design rationale in this activity may contribute to a better reasoning about requirements and how to model them, since the software engineers need to carefully evaluate the justifications for their decisions. This work investigates the design rationale r...

متن کامل

An Integrated Approach for Software Design Checking Using Design Rationale

Design Rationale (DR), the reasons behind decisions made while designing, offers a richer view of both the product and the decision-making process by providing the designer’s intent behind the decisions. DR is also valuable for checking to ensure that the intent was adhered to throughout the design, as well as pointing out any unresolved (or undocumented) issues that remain open. While there is...

متن کامل

Industrial Applications of Software Synthesis via Category Theory

Over the last two years, we have demonstrated the feasibility of applying category-theoretic methods in spectjying, synthesizing, and maintaining industrial strength software systems. We have been using a-first-ofits-kind tool for this purpose, Kestrel’s Specwarelu software development vstem. In this paper, we describe our experiences and give an industrial perspective on what is needed to make...

متن کامل

Supporting Requirements Traceability with Rationale

Requirements, both functional and non-functional, are the driving force behind the many decisions required to develop a software system. These decisions, alternative solutions, and the reasons behind them, can be captured in the rationale for the software system. The rationale contains the arguments for and against each alternative solution, which in turn relate to the functional and nonfunctio...

متن کامل

Relating Product Line Context to Requirements Engineering Processes Using Design Rationale

The design of engineering processes is dependent on the context they are designed for. This paper presents the results of an action research study that used design rationale to discover a number of contextual factors that provide criteria for designing a requirements engineering process in a given product line environment. The presented context dimensions and process design argumentation provid...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005