Handling variant requirements in domain modeling

  • Authors:
  • Stan Jarzabek;Wai Chun Ong;Hongyu Zhang

  • Affiliations:
  • Department of Computer Science, School of Computing, National University of Singapore, Singapore 117543, Singapore;Department of Computer Science, School of Computing, National University of Singapore, Singapore 117543, Singapore;Department of Computer Science, School of Computing, National University of Singapore, Singapore 117543, Singapore

  • Venue:
  • Journal of Systems and Software - Special issue: Best papers on Software Engineering from the SEKE'01 Conference
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Domain models describe common and variant requirements for a family of similar systems. Although most of the notations, such as UML, are meant for modeling a single system, they can be extended to model variants. We have done that and applied such extended notations in our projects. We soon found that our models with variants were becoming overly complicated, undermining the major role of domain analysis which is understanding. One variant was often reflected in many models and any given model was affected by many variants. The number of possible variant combinations was growing rapidly and mutual dependencies among variants even further complicated the domain model. We realized that our purely descriptive domain model was only useful for small examples but it did not scale up. In this paper, we describe a modeling method and a Flexible Variant Configuration tool (FVC for short) that alleviate the above mentioned problems. In our approach, we start by modeling so-called domain defaults, i.e., requirements that characterize a typical system in a domain. Then, we describe variants as deltas in respect to domain defaults. The FVC interprets variants to produce customized domain model views for a system that meets specific requirements. We implemented the above concepts using commercial tools Netron FusionTM and Rational RoseTM. In the paper, we illustrate our domain modeling method and tool with examples from the Facility Reservation System domain.