Specifying Transaction-Based Information Systems with Regular Expressions

The work is about the formal specification of transaction-based, interactive information systems. A transaction is a task that the user can execute independently, and the system can be defined as a partially ordered set of transactions. The general framework is the transformational paradigm, based on the classical Waterfall development model (W.W. Royce, 1970). The stages are systems analysis, software specification, design, and implementation. The systems analysis and software specification stages are covered. An informal, transaction-oriented method for systems analysis is proposed. The resulting system specification involves two parts: a high-level specification of each transaction and a formal specification of the system's control flow, i.e., the order of execution of the transactions. The system's control flow is expressed in a formal language describing concurrent regular expressions built on transaction names. At the software specification stage, some operational requirements, such as connect/disconnect transactions and the application of the all-or-nothing principle, are added to the system specification. Then a serial product automaton (SPA) is used to transform the concurrent expression into a single regular expression. This result is proven to be consistent with the system specification. >

[1]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[2]  Pei Hsia,et al.  Another approach to system decomposition: requirements clustering , 1988, Proceedings COMPSAC 88: The Twelfth Annual International Computer Software & Applications Conference.

[3]  Thomas E. Cheatham,et al.  Software Technology in the 1990's: Using a New Paradigm , 1983, Computer.

[4]  Leslie Lamport,et al.  Artificial Intelligence and Language Processing ]acques Cohen Editor a Simple Approach to Specifying Concurrent Systems , 2022 .

[5]  D. Bjorner,et al.  On the use of formal methods in software development , 1987, ICSE '87.

[6]  E. V. Krishnamurthy,et al.  Transaction processing systems , 1991 .

[7]  George J. Milne,et al.  The Formal Description and Verification of Hardware Timing , 1991, IEEE Trans. Computers.

[8]  Roger S. Pressman,et al.  Software engineering (3rd ed.): a practitioner's approach , 1992 .

[9]  A. Arnold Systèmes de transitions finis et sémantique des processus communicants , 1990 .

[10]  Robert Balzer,et al.  Transformational Implementation: An Example , 1981, IEEE Transactions on Software Engineering.

[11]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[12]  Gregor von Bochmann,et al.  On the Construction of Submodule Specifications and Communication Protocols , 1983, TOPL.

[13]  Peretz Shoval,et al.  ADISSA: architectural design of information systems based on structured analysis , 1988, Inf. Syst..

[14]  T. T. Carey,et al.  Prototyping interactive information systems , 1983, CACM.

[15]  W. W. Royce,et al.  Managing the development of large software systems , 1970 .

[16]  Robert J. K. Jacob,et al.  Using formal specifications in the design of a human-computer interface , 1983, CACM.

[17]  Pierre-Yves Schobbens,et al.  An experiment in formal software development: using the B theorem prover on a VDM case study , 1991, ICSE '90.

[18]  Michael Jackson,et al.  Principles of program design , 1975 .

[19]  Jules Desharnais,et al.  Formal models of stepwise refinements of programs , 1986, CSUR.

[20]  Alan M. Davis,et al.  A comparison of techniques for the specification of external system behavior , 1988, CACM.

[21]  Peretz Shoval,et al.  Specification and Design of Transactions in Information Systems: A Formal Approach , 1991, IEEE Trans. Software Eng..

[22]  Philip A. Bernstein Transaction processing monitors , 1990, CACM.

[23]  François Lustman,et al.  A dialog-based architecture for interactive information systems , 1985, DATB.