We present a model-and pattern-based approach that allows software engineers to take quality requirements into account right from the beginning of the software development process. The approach comprises requirements analysis as well as the software architecture design, in which quality requirements are reflected explicitly.
Design decisions should take quality characteristics into account. To support such decisions, we capture various solution artifacts with different levels of satisfying quality requirements as variabilities in the solution space and provide them with rationales for selecting suitable variants. We present a UML-based approach to modeling variability in the… (More)
Affecting multiple parts in software systems, security requirements often tangle with functional requirements. In order to separate crosscutting concerns and increase modularity, we propose to represent security requirements as aspects that can be woven into functional requirements. Using problem frames to model the functional requirements , weaving is… (More)
Many problems might arise when performance requirements are not taken into account from the beginning of software development. Architectural solutions such as performance patterns represent design decisions on the architecture level that might constrain quality requirements significantly. Knowledge which is gained in the solution space, for example from… (More)
Trustworthiness plays a key role in acceptance and adoption of software by the end-users. When maintaining long-living software systems, trustworthiness has to be addressed since trust of the end-user is volatile and can change over time. In this paper, we discuss the challenges regarding trustworthiness of long-living software systems. Trustworthi-ness… (More)