Learn More
Although the term ‘non-functional requirement’ has been in use for more than 20 years, there is still no consensus in the requirements engineering community what non-functional requirements are and how we should elicit, document, and validate them. On the other hand, there is a unanimous consensus that nonfunctional requirements are important and can be(More)
State automata are an attractive means for formally representing scenarios. Scenarios describe how users interact with a system. However, the current approaches treat every scenario as a separate entity. This paper introduces a statechart-based model that allows the formal composition of all scenarios of a system into an integrated, consistent model of(More)
In this paper, we present the Adora approach to object-oriented modeling of software (Adora stands for analysis and description of requirements and architecture). The main features of Adora that distinguish it from other approaches like UML are the use of abstract objects (instead of classes) as the basis of the model, a systematic hierarchical(More)
Scenarios (use cases) are used in many modern software engineering methods for capturing requirements and specifying a system. Yet prominent and renowned approaches like the UML (Unified Modeling Language [1]) are missing a concept for modeling dependencies and relations between scenarios and offer only little support for the management and description of(More)
Software applications executing in highly dynamic environments are faced with the challenge of frequent and usually unpredictable changes in their execution environment. In order to cope with this challenge effectively, the applications need to adapt to these changes dynamically. CASA (Contract-based Adaptive Software Architecture) provides a framework for(More)
The classical notion of requirements quality focuses on Adequacy1, Unambiguity, Completeness, Consistency, Verifiability, Modifiability and Traceability (IEEE 1993). In practice however, most requirements specifications do not meet these qualities. One could argue that this is only a problem of applying the right methods and processes and that we should(More)
Graphical models are omnipresent in the software engineering field, but most current graphical modeling languages do not scale with the increasing size and complexity of today's systems. The navigation in the diagrams becomes a major problem especially if different aspects of the system are scattered over multiple, only loosely coupled diagrams. In this(More)