We're sorry. An error has occurred
Please cancel or retry.
Engineering Artificial Intelligence Software
Some error occured while loading the Quick View. Please close the Quick View and try reloading the page.
Couldn't load pickup availability
- Format:
-
01 May 1992

COMPUTERS / General, Artificial intelligence, COMPUTERS / Artificial Intelligence / General
Preface
1 Introduction to Computer Software 1
1.1 Computers and software systems
1.2 An introduction to software engineering
1.3 Bridges and buildings versus software systems
1.4 The software crisis
1.5 A demand for more software power
1.6 Responsiveness to human users
1.7 Software systems in new types of domains
1.8 Responsiveness to dynamic usage environments
1.9 Software systems with self-maintenance capabilities
1.10 A need for AI systems
2 AI Problems and Conventional SE Problems 27
2.1 What is an AI problem?
2.2 Ill-defined specifications
2.3 Correct versus 'good enough' solutions
2.4 It's the HOW not the WHAT
2.5 The problem of dynamics
2.6 The quality of modular approximations
2.7 Context-free problems
3 Software Engineering Methodology 36
3.1 Specify and verify - the SAV methodology
3.2 The myth of complete specification
3.3 What is verifiable?
3.4 Specify and test - the SAT methodology
3.5 The strengths
3.6 Testing for reliability
3.7 The weaknesses
3.8 What are the requirements for testing?
3.9 What's in a specification?
3.10 Prototyping as a link
4 An Incremental and Exploratory Methodology 56
4.1 Classical methodology and AI problems
4.2 The RUDE cycle
4.3 How do we start?
4.4 Malleable software
4.5 AI muscles on a conventional skeleton
4.6 How do we proceed?
4. 7 How do we finish?
4.8 The question of hacking
4.9 Conventional paradigms
5 New Paradigms for System Engineering 79
5.1 Automatic programming
5.2 Transformational implementation
5.3 The "new paradigm" of Balzer, Cheatham and Green
5.4 Operational requirements of Kowalski
5.5 The POLITE methodology
6 Towards a Discipline of Exploratory Programming 109
6.1 Reverse engineering
6.2 Reusable software
6.3 Design knowledge
6.4 Stepwise abstraction
6.5 The problem of 'decompiling'
6.6 Controlled modification
6.7 Structured growth
7 Machine Learning: Much Promise, Many Problems 141
7.1 Self-adaptive software
7.2 The promise of increased software power
7.3 The threat of increased software problems
7.4 The state of the art in machine learning
7.5 Practical machine learning examples
8 Expert Systems: The Success Story 158
8.1 Expert systems as AI software
8.2 Engineering expert systems
8.3 The lessons of expert systems for engineering AI software
9 AI into Practical Software 170
9.1 Support environments
9.2 Reduction of effective complexity
9.3 Moderately stupid assistance
9.4 An engineering toolbox
9.5 Self-reflective software
9.6 Overengineering software
10 Summary and What the Future Holds 193
References 200
Index 206