In conventional information systems development, consistency between requirements specifications and design is achieved by manual checking. This work is a step toward improving consistency by applying the transformational paradigm to the specification and design phases. Requirements are expressed in the ADISSA notation, using the ADISSA method, a transaction-oriented refinement of Structured Systems Analysis. The control part of a transaction is transformed into a formal specification, the FSM transaction, by applying a set of rules. The design stage is realized by an algorithm which decomposes the FSM transaction into simpler transactions and implements them with a hierarchical set of finite-state machines. Consistency between the formal specification and the result of the design is achieved by proving that the latter has the same behavior as the former.