Software requirements patterns and meta model: a strategy for enhancing Requirements Reuse (RR) - Imam Yau'u, Badamasi; Nordin, Azlin; Salleh, Norsaremah (The Institute of Electrical and Electronics Engineers, Inc., 2016)
Reuse is a fundamental activity in software development lifecycle, which can be employed at any stage of development. Reuse of software artefacts, such as requirements, architectures, models, test cases among others, improves software quality and productivity. Because of its higher level of abstraction, requirements reuse (RR) is recognized as reuse approach that can provide more benefits in software development. A number of RR approaches are reported in the literature. These include domain-specific, pattern-based, ontology-based and general approaches. However, these approaches lack a strategy that could incorporate some key aspects of reuse, which are, reusable structure, variability modeling (VM) and traceability of software artefacts. In line with this, we make our contribution in this paper by (1) presenting the concepts and importance of software requirements patterns (SRP) and meta model for the enhancement of RR; (2) proposing a meta modeling strategy based on software product line engineering (SPLE), which comprises SRP, VM and traceability. We believe our proposal is novel and can support developers in SPL and model-driven engineering (MDE) benefit more from reuse in the course of software developments.