Skip to Main Content
In order for a software system to be of value, it should meet both functional requirements (FRs) and non-functional requirements (NFRs). Concerning FRs, UML has been used as the de facto object-oriented analysis and design notation. Concerning NFRs, the NFR framework extends, and complements, UML, by treating NFRs as potentially conflicting or synergistic softgoals to be achieved, thereby allowing for the consideration of alternatives and analysis of trade-offs among the alternatives. Albeit the complementary nature of the two, UML and the NFR framework offer two different notations -syntactically, semantically and visually, which makes it difficult to produce requirements models that integrate both FRs and NFRs. In this paper, we propose an integrated modeling language by extending UML with the NFR framework using the standard extension mechanism called UML profile where we define a metamodel to represent the concepts in the NFR framework and identify the extension points for integrating the two notations. We also show how CASE tools may use this profile in building an integrated requirements model based on a model of the well known London ambulance case study.