Software Blueprints: Lightweight Uses of Logic in Conceptual Modelling / Edition 1

Software Blueprints: Lightweight Uses of Logic in Conceptual Modelling / Edition 1

by David Robertson, Jaume Agusti, Jaume Agusti
     
 

ISBN-10: 0201398192

ISBN-13: 9780201398199

Pub. Date: 08/20/1999

Publisher: Addison Wesley Professional

Daniel Cooke, University of Texas at El Paso

"Software Blueprints is a timely contribution to the important field of conceptual modeling. It is a technical tour de force, yet also a very readable presentation for both newcomer and the old hand."
John Fox, Advanced Computation Lab, Imperial Cancer Research Fund

Conceptual…  See more details below

Overview

Daniel Cooke, University of Texas at El Paso

"Software Blueprints is a timely contribution to the important field of conceptual modeling. It is a technical tour de force, yet also a very readable presentation for both newcomer and the old hand."
John Fox, Advanced Computation Lab, Imperial Cancer Research Fund

Conceptual models are descriptions of our ideas about a problem, used to shape the implementation of a solution to it. Everyone who builds complex information systems uses such models - be they requirements analysts, knowledge modellers or software designers - but understanding of the pragmatics of model design tends to be informal and parochial. Lightweight uses of logic can add precision without destroying the intuitions we use to interpret our descriptions. Computing with logic allows us to make use of this precision in providing automated support tools. Modern information scientists need to know what these methods are for and may need to build their own. This book gives you a place to begin.

Where do you start when building models in a precise language like logic? One way is by following standard paradigms for design and adapting these to your needs. Some of these come from an analysis of existing informal notations. Others are from within logic itself. We take you through a sample of these, from more commonplace styles of formal modelling to non-standard methods such as techniques editing and argumentation. Each of these provides a window onto broader areas of applied logic and gives you a basis for adapting the method to your own needs.

Features:
• Associated web site with detailedsupplementary material and links.
• Numerous examples from different methodological disciplines.
• End of chapter exercises to aid understanding.
• Navigational icons in the margins to help guide the reader through the material.

Product Details

ISBN-13:
9780201398199
Publisher:
Addison Wesley Professional
Publication date:
08/20/1999
Series:
ACM Press Series
Pages:
240
Product dimensions:
7.66(w) x 9.50(h) x 0.67(d)

Table of Contents

Foreword xiii
Preface xv
How to read this book xv
Acknowledgements xvii
Introduction
1(10)
A dream
1(1)
Reality
2(1)
Our corner of the problem
2(1)
What you can learn from this book
3(1)
The way we view conceptual modelling
4(7)
Models of problems are not specifications of solutions
4(1)
What we require of conceptual models
4(2)
Lightweight use of formality
6(1)
Our use of logic
7(1)
The need for eclecticism
7(4)
Models in a design lifecycle
11(24)
Requirements analysis
12(5)
Choice of representational paradigms
17(2)
Communication between divisions
17(1)
Decision procedures within divisions
18(1)
Model construction
19(5)
Communication between divisions
19(2)
Decision procedures within divisions
21(3)
Validation and verification
24(6)
Validation by analysing potential behaviours
24(5)
Using our requirements to justify design decisions
29(1)
Issues raised by our example
30(5)
Argumentation networks
32(1)
More extensive examples using operator models
32(1)
Conceptual models in knowledge engineering
32(1)
Model checking
33(1)
Exercises
34(1)
Logic as a modelling language
35(32)
Logics as frameworks for argument
35(4)
The boundary problem
39(4)
The search problem
43(1)
Proof strategies
44(2)
Describing proof strategies formally
46(1)
Distinguishing proof rules from selection strategies
47(2)
Knowing when two terms unify
49(2)
The closed world assumption
51(1)
Non-deductive patterns of inference
52(4)
Abduction
53(1)
Induction
54(2)
Ontologies
56(3)
Some properties of logical languages
59(4)
Logical consequence
59(1)
Correctness and completeness
60(1)
Decidability
61(1)
Correctness and completeness of arguments
62(1)
Further reading
63(4)
Exercises
63(4)
Communication
67(24)
From domains to formal languages
68(13)
An entity relationship diagram
69(4)
A BSDM entity diagram
73(2)
Lessons from the comparative analysis
75(1)
Building an early model
76(3)
Checking the consistency of the model
79(1)
Lessons learned from more detailed modelling
80(1)
From formal languages to domains
81(6)
Visual formal expressions
81(4)
Formal problem description by means of diagrams
85(2)
The correspondence between logic and diagrams
87(4)
Exercises
88(3)
Re-use of paradigms: parameterisable components
91(24)
Worldwide web site generation
93(4)
Problem description language (research group)
95(1)
Parameterisable components (site pages)
95(1)
Parameterisation system (simple instantiation)
96(1)
Design generated (web site)
96(1)
Rapid domain-specific model generation
97(6)
Design generated (animal population model)
98(2)
Parameterisable components (model fragments)
100(1)
Problem description language (ecological conditions)
101(1)
Parameterisation system (constrained generation)
102(1)
Design endorsements
103(7)
Problem description language (domain notations)
103(1)
Design generated (shutdown specification)
104(2)
Parameterisable components (shutdown segments)
106(1)
Parameterisation system (design endorsement)
106(4)
Costs and benefits
110(2)
Further reading
112(3)
Exercises
113(2)
Design processes inspired by formal methods
115(20)
Constructing definitions by slices
116(6)
Skeletons and additions
117(1)
A techniques editor at work
118(4)
Re-using part of an earlier definition
122(2)
Using design histories when combining definitions
124(3)
Issues raised by our example
127(8)
Structured formal definition and transformation
127(1)
Stripping structure from predicates
128(1)
Case-based reasoning
128(4)
Exercises
132(3)
Argumentation
135(22)
Reasoning about sources of uncertainty
135(8)
Reconstructing the model in logic
137(3)
Reasoning about uncertainty in the model
140(3)
Justifying design decisions
143(5)
Data describing reserve sites
145(1)
Formal requirements guidelines
145(2)
Interactively constructing justifications
147(1)
Accommodating the dynamics of argument in logic
148(5)
An example of defeasible argumentation
149(3)
An abstract argumentation framework
152(1)
Further reading
153(4)
Exercises
155(2)
Temporal reasoning
157(22)
Reasoning with temporal intervals
157(4)
Modal temporal logic
161(6)
An example using a 'ticking clock' time sequence
161(2)
A modal temporal logic for our example
163(1)
Proofs in modal temporal logic
164(2)
Other kinds of modal operators
166(1)
Reasoning with temporal constraints
167(8)
Determining when properties hold
170(1)
Temporal constraint networks
171(4)
Further reading
175(4)
Exercises
176(3)
Syntax, semantics and pragmatics
179(6)
Syntax
179(1)
Semantics
180(3)
Linguistic interpretation
181(1)
A formal semantics for each modelling language
181(1)
A formal semantics for all modelling languages
182(1)
Semantics of a family of models within a lifecycle
182(1)
Pragmatics
183(2)
Conclusion
185(6)
A summary of our main arguments
186(2)
Lightweight tools
188(1)
Closing remarks
188(3)
Appendix A Glossary 191(4)
Appendix B Syntax of expressions 195(2)
Appendix C Answers to exercises 197(10)
References 207(10)
Index 217

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >