Using state machines to model and manage requirements changes and specification changes

Requirements change management is one of the most complex and difficult problems to deal with in requirements elicitation and tracking. It is generally not understood how a specific change propagates through the specification and into implementation. In this paper, we propose to capture requirements changes as a series of atomic specification changes, and utilize state machines to model and manage those changes. We give a comprehensive treatment of state machine modifications with global impact, and propose twelve algorithms for managing all possible atomic requirements changes to a sequence-based specification. Finally, we demonstrate how to apply the proposed theory with a safe controller example.