Murugesan, Anitha2020-05-042020-05-042020-01https://hdl.handle.net/11299/213089University of Minnesota Ph.D. dissertation.January 2020. Major: Computer Science. Advisor: Mats Heimdahl. 1 computer file (PDF); xi, 166 pages.Reference models such as Parnas' Four Variable model, Jackson's World-Machine model, and Gunther et al.'s WRSPM model abstractly define and relate key artifacts in requirements engineering. In the past decades, when systems were typically defined and developed in the traditional top-down way, these models were enormously useful for engineers to rigorously define and analyze their requirements. However, nowadays these models don't seem to be as helpful in discussing the requirements of systems. Modern systems are developed in a hierarchical, middle-out and distributed manner; i.e. starting from candidate architectures, they are iteratively composed using a set of existing or newly developed subsystems. This has necessitated the need for engineers to define requirements at progressively varying levels of scope within the system, hierarchically co-evolve those requirements with the architecture, and apportion them to parts of the system such that each part is independently governable, yet composable. Unfortunately, hierarchically scoping, defining and reasoning about requirements and architecture in an intertwined manner is both a conceptually and methodologically challenging task. While the use of reference models have been a time-honored approach to systematically address such challenges, none of the existing models discuss the notion of hierarchy or the co-evolution between requirements and architecture. Nevertheless, capturing this hierarchical, co-evolutionary relationship in a generic framework such as a reference model, we believe, will be practically helpful for engineers. In this dissertation, we define the hierarchical requirements reference model that abstractly, yet formally, explains the "Twin Peaks" of requirements and architecture. The goal of this model is to provide an unambiguous framework---a set of vocabulary and rules---that engineers can use as a frame of reference to rigorously discuss these artifacts in real system developments. Central to this model is the notion of hierarchy that weaves together the requirements and architecture in a way that naturally allows understanding their attributes and relationships as well as addressing the related challenges. Further, we define a new formal definition of traceability based on the hierarchical satisfaction relationship. This way of formally defining traceability allowed us to formulate the notion of "complete traceability"---the ability to identify all possible satisfaction trace links between requirements. Further, it helped bring out the distinction between "necessary" vs. "sufficient" sub-systems' requirements to achieve a system-level requirement. This new insight into traceability, we believe, will greatly help engineers manage the requirements of large complex systems. To illustrate the practicality of this model, we use an infusion pump case example system ---an industrial case study from the medical domain. Using a model-based approach we describe how the concepts defined in this new reference model help rigorously define and reason about the device's hierarchic requirements and architecture. As we illustrate, we also describe our novel enhancements/extensions to existing requirements techniques and tools to allow requirements capture and analysis. While the specifics of this illustration, such as the use of formal methods-based tools and techniques are particular to the case example considered, the reference model concepts are applicable to both formal and informal requirements engineering of modern, complex systems.enA Reference Model For Hierarchical RequirementsThesis or Dissertation