|M.Sc Student||Amid David|
|Subject||Streamlining Requirements Modeling with an OPM-Based|
|Department||Department of Industrial Engineering and Management||Supervisors||Dr. Iris Reinhartz-Berge|
|Professor Dov Dori|
|Full Thesis text|
A major reason for failure of many software projects is poor requirements definitions. Indeed, specifying requirements correctly, completely, and unambiguously is not a trivial task. Requirements modeling is the process of constructing abstract descriptions of the system requirements that are amenable to interpretation. This process results in a requirements model, which is supposed to capture as much real world semantics as possible. Hence, a requirements model can be viewed as a means to bridge the requirements analysis, design, and testing phases. The challenge that we address in this research is providing practitioners with the ability to model both operational and non-operational requirements in a correct, fairly easy, straightforward, yet comprehensive, way. This research proposes to strengthen the software development process by streamlining the requirements modeling process via a combination of metamodeling, domain analysis, and Object-Process Methodology (OPM). We refer to requirements modeling as a domain and suggest an OPM-based Requirements Metamodel (OPM/RM). OPM/RM captures both the building blocks of the requirements modeling process and guidelines about how to use them for particular requirements definition processes. Using a requirement classification technique, OPM/RM describes the structure and behavior of different types of requirements, including operational, qualitative, quantitative, data, and declarative requirements. In addition OPM/RM offers a requirements categorization advisor for guiding a requirement engineer in selecting the correct category (or categories) for a given requirement. Theoretical and experimental evaluations have been conducted in order to determine OPM/RM strengths and weaknesses. In the theoretical path we examined the suggested methodology according to a set of well known characteristics in the RE domain. In the experimental path, we checked OPM/RM completeness, correctness, and complexity by requesting experts to model the requirements of a part of an electronic auction system in either the OPM/RM approach or a use-case derived approach. Our main conclusion is that OPM/RM helps achieve more complete and detailed requirement models. As the requirement models in OPM/RM become more detailed, their complexity increases, while the likelihood of errors is similar to that in the use case-derived models.