Templar: a knowledge-based language for software specifications using temporal logic

A software specification language Templar is defined in this article. The development of the language was guided by the following objectives: requirements specifications written in Templar should have a clear syntax and formal semantics, should be easy for a systems analyst to develop and for an end-user to understand, and it should be easy to map them into a broad range of design specifications. Templar is based on temporal logic and on the Activity-Event-Condition-Activity model of a rule which is an extension of the Event-Condition-Activity model in active databases. The language supports a rich set of modeling primitives, including rules, procedures, temporal logic operators, events, activities, hierarchical decomposition of activities, parallelism, and decisions combined together into a cohesive system.

[1]  Narain H. Gehani,et al.  Ode as an Active Database: Constraints and Triggers , 1991, VLDB.

[2]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[3]  José Luiz Fiadeiro,et al.  The INFOLOG linear tense propositional logic of events and transactions , 1986, Inf. Syst..

[4]  Jeffrey D. Ullman,et al.  Principles Of Database And Knowledge-Base Systems , 1979 .

[5]  Sol Jaffe Greenspan,et al.  Requirements modeling: a knowledge representation approach to software requirements definition , 1984 .

[6]  Carlo Ghezzi,et al.  TRIO: A logic language for executable specifications of real-time systems , 1990, J. Syst. Softw..

[7]  Pericles Loucopoulos,et al.  TEMPORA — Integrating Database Technology, Rule Based Systems and Temporal Reasoning for Effective Software , 1990 .

[8]  Alexander Tuzhilin Temporally Active Databases := Active Databases + Time , 1991 .

[9]  Edward Yourdon,et al.  Modern structured analysis , 1989 .

[10]  Timos K. Sellis,et al.  Special Issue on Rule Management and Processing in Expert Database Systems - Letter from the Guest Editor , 1989, SIGMOD Rec..

[11]  Michael Stonebraker,et al.  On rules, procedure, caching and views in data base systems , 1990, SIGMOD '90.

[12]  Michael Stonebraker,et al.  On rules, procedures, caching and views in database systems , 1994, SIGMOD 1994.

[13]  M.P. Georgeff,et al.  Procedural knowledge , 1986, Proceedings of the IEEE.

[14]  Bertrand Meyer,et al.  On Formalism in Specifications , 1985, IEEE Software.

[15]  Jean-Marie Nicolas,et al.  Logic for Improving Integrity Checking in Relational Data Bases , 1989 .

[16]  R. Lathe Phd by thesis , 1988, Nature.

[17]  Alexander B. Kurzhanski,et al.  Discrete Event Systems: Models and Applications , 1988 .

[18]  Henk Sol,et al.  Information Systems Methodologies: A Framework for Understanding , 1988 .

[19]  Alexander Tuzhilin,et al.  Temporal Logic as a Simulation Language , 1990 .

[20]  Dov M. Gabbay,et al.  Using the Temporal Logic RDL for Design Specifications , 1989, Concurrency: Theory, Language, And Architecture.

[21]  David G. Buckman Louisiana , 1896, The Journal of comparative medicine and veterinary archives.

[22]  T. W. Olle IFIP comparative review of information systems design methodologies: problem definition , 1986 .

[23]  John Mylopoulos,et al.  The TaxisDL Software Description Language , 1993 .

[24]  Umeshwar Dayal,et al.  The architecture of an active database management system , 1989, SIGMOD '89.

[25]  Matthias Jarke,et al.  Telos: representing knowledge about information systems , 1990, TOIS.

[26]  Brian Henderson-Sellers,et al.  The object-oriented systems life cycle , 1990, CACM.

[27]  E. Dubois,et al.  A knowledge representation language for requirements engineering , 1986, Proceedings of the IEEE.

[28]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[29]  Martín Abadi,et al.  Temporal Logic Programming , 1989, J. Symb. Comput..

[30]  David Harel,et al.  On visual formalisms , 1988, CACM.

[31]  Roger King,et al.  Semantic database modeling: survey, applications, and research issues , 1987, CSUR.

[32]  Jeffrey D. Uuman Principles of database and knowledge- base systems , 1989 .

[33]  Jennifer Widom,et al.  Set-oriented production rules in relational database systems , 1990, SIGMOD '90.

[34]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[35]  Douglas R. Smith,et al.  Research on Knowledge-Based Software Environments at Kestrel Institute , 1985, IEEE Transactions on Software Engineering.

[36]  Hamid Pirahesh,et al.  Starburst Mid-Flight: As the Dust Clears , 1990, IEEE Trans. Knowl. Data Eng..

[37]  Babis Theodoulidis,et al.  A Rule Language to Capture and Model Business Policy Specifications , 1991, CAiSE.

[38]  James F. Allen Towards a General Theory of Action and Time , 1984, Artif. Intell..

[39]  Gunter Saake,et al.  Monitoring dynamic integrity constraints based on temporal logic , 1987, Inf. Syst..

[40]  Alan M. Davis,et al.  Software requirements - analysis and specification , 1990 .

[41]  S. J. Goldsack,et al.  Requirements engineering for real-time systems , 1991, Softw. Eng. J..

[42]  W. J. Kubitz,et al.  Biting the silver bullet: toward a brighter future for system development , 1992 .

[43]  S. Sudarshan,et al.  Data models , 1996, CSUR.

[44]  D. Harel Recurring dominoes: making the highly undecidable highly understandable , 1985 .

[45]  André Rifaut,et al.  A formal language for the requirements engineering of computer systems , 1991 .

[46]  Jeffrey D. Ullman,et al.  Principles of database and knowledge-base systems, Vol. I , 1988 .

[47]  Eric Simon,et al.  Modelling Non Deterministic Queries and Updates in Deductive Databases , 1988, VLDB.

[48]  Peter P. Chen The Entity-Relationship Model: Towards a unified view of Data , 1976 .

[49]  John Mylopoulos,et al.  Knowledge Representation as the Basis for Requirements Specifications , 1985, Computer.

[50]  Peter P. Chen The entity-relationship model: toward a unified view of data , 1975, VLDB '75.

[51]  William Stallings Handbook of computer-communications standards , 1987 .

[52]  Alexander Tuzhilin,et al.  Relational database behavior: utilizing relational discrete event systems and models , 1989, PODS.

[53]  Jim Cunningham,et al.  Logical animation , 1990, [1990] Proceedings. 12th International Conference on Software Engineering.

[54]  J. A Turner,et al.  Understanding Elements of System Design , 1986 .

[55]  Alexander Tuzhilin,et al.  SimTL: a simulation language based on temporal logic , 1992 .

[56]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[57]  Peter Øhrstrøm,et al.  Temporal Logic , 1994, Lecture Notes in Computer Science.

[58]  Fred Krögr Temporal Logic Of Programs , 1987 .

[59]  Dov M. Gabbay,et al.  The Declarative Past and Imperative Future: Executable Temporal Logic for Interactive Systems , 1987, Temporal Logic in Specification.

[60]  Antonio L. Furtado,et al.  On the Description of Database Transition Constraints Using Temporal Languages , 1982, Advances in Data Base Theory.