A Visual Notation and an Improvement for the Syntax of Larman’s Operation Contracts

Title: A Visual Notation and an Improvement for the Syntax of Larman’s Operation Contracts
Authors: Algablan, Abdulaziz
Date: 2016
Abstract: System operation contracts were introduced by C. Larman as an application of the notion of Design by Contract (DbC) to the description of high-level system operations derived from requirements. A system operation contract specifies an operation in terms of changes induced in the domain. In the Responsibility Driven Development (RDD) process proposed by Larman, operation contracts play an important role in identifying and assigning systems' responsibilities, and help construct a sound design in later phases. Larman's notation for operation contracts is textual. In this thesis, we propose an alternative visual notation for operation contracts. As part of the process for the definition of this visual notation, we extended and clarified some informal aspects of Larman's notation in order to better accurately capture important aspects of system operations. Our extension allows the specification of data constraints, alternatives, and the temporal dimension of created domain objects, in addition to the description of changes in the state and associations of domain objects. The syntax of the visual notation for operation contracts aims to be cognitively effective and to reuse available UML notation. New visual elements were introduced only in the absence of corresponding elements in the UML. Elements reused from the UML are slightly modified to enhance their cognitive effectiveness. The introduced elements, on the other hand, are designed with the goal of not conflicting with the general theme of the UML. We used The Physics of Notations as a general guide and evaluation criteria. The Physics of Notations is a leading evaluation and design theory for visual models in software engineering. We propose a prototype tool (ViOpContract) that implements the proposed visual notation for operation contracts. ViOpContract is an Eclipse plug-in tool that helps to draw and manage visual operation contracts. The tool provides the capability to generate contracts in textual form from visual contracts.
URL: http://hdl.handle.net/10393/34976
CollectionThèses, 2011 - // Theses, 2011 -