1. Introduction.- 1.1 Two Information System Examples.- 1.1.1 The IFIP Conference Example.- 1.1.2 A University Administration System.- 1.2 Information Systems Modeling.- 1.2.1 Conceptual Models Have a Key Role in IS-Design.- 1.2.2 Four Different Modeling Approaches.- 1.2.3 Modeling Approaches May Be Classified According to Their Time Perspective.- 1.2.4 Desirable Features of a System Specification Model.- 1.3 Contemporary Changes in System Development Practices.- 1.4 System Development Activities.- 1.5 The Methods Problem in Information Systems Engineering.- 1.6 Information Systems Analysis Approaches.- 2. Structured Analysis and Design.- 2.1 Structured Analysis.- 2.1.1 The Process Aspect — Dataflow Diagrams.- 2.1.2 Defining the Processing Rules.- 2.1.3 The Data Aspect — Flows and Stores.- 2.1.4 Resolution of Data Access Conflicts.- 2.2 Structured Design.- 2.2.1 Software Structure Specification.- 2.2.2 The System’s Architecture.- 2.2.3 Refining the Subprogram Design.- 2.2.4 Packaging of Subprograms into Implementation Units.- 2.3 User Interfaces.- 2.3.1 The User and the Usage ofInteractive Systems.- 2.3.2 Interaction Styles and Techniques.- Exercises.- 3. Software Design.- 3.1 A Review of Software Terminology.- 3.1.1 A Standard Software Terminology is Lacking.- 3.1.2 Software Component Independence.- 3.1.3 Code-Level Concepts.- 3.2 Software Design for Maintainability.- 3.2.1 Subprogram Cohesion.- 3.2.2 Subprogram Coupling.- 3.2.3 Subprogram Structures.- 3.3 Program Structures for Hierarchical Files.- 3.3.1 Jackson’s Structured Programming (JSP).- 3.3.2 Structured Design for Hierarchical Files.- 3.4 The Object Oriented Approach.- 3.4.1 Object Orientation and Structured Analysisl/Design.- 3.4.2 Properties of Software Objects.- 3.4.3 Object Oriented Analysis and Design.- 3.5 Principles for Creating Software with Acceptable Response Times.- 3.6 Workload Analysis of Software Design Specifications.- 3.6.1 An Example of Transactions on Data Stores.- 3.6.2 Estimation of Traffic Load.- 3.6.3 Estimation of Penalties Because of One Transaction Activation.- 3.6.4 Estimation of Penalties for Systems of Many Transaction Types.- 3.6.5 An Example of Traffic Load Analysis.- 3.6.6 On the Estimation of the Design Parameters.- 3.6.7 An Example of Sensitivity Analysis.- Exercises.- 4. Database Design.- 4.1 Files and Databases.- 4.1.1 File Organization Techniques.- 4.1.2 Database Management Systems.- 4.1.3 Data Security.- 4.2 Data Model Alternatives.- 4.2.1 The Hierarchical Data Model.- 4.2.2 The Network Model.- 4.2.3 The Relational Data Model.- 4.2.4 The Entity-Relationship Model.- 4.3 Issues in Database Physical Design.- 4.3.1 Properties of Database Management Systems.- 4.3.2 Translation and Analysis of the Logical Design.- 4.3.3 Physical Design Approaches.- 4.4 Database Design Constrained by Traffic Load Estimates.- 4.4.1 The Example.- 4.4.2 Traffic Load Estimation.- 4.4.3 Reasoning About the Consequences of the Transaction Traffic.- 4.4.4 Refining the Database Design.- 4.4.5 Interpretation of the T-matrix.- Exercises.- 5. Rule Modeling.- 5.1 Rule Formulation.- 5.1.1 Rule Processing Versus Rule Manipulation.- 5.1.2 Ambiguity in Range Specification.- 5.1.3 Ambiguity in and/or Combinations.- 5.2 Simple Rule Modeling Tools.- 5.3 Decision Trees.- 5.3.1 Standard Decision Tree Development.- 5.3.2 Progressive Decision Tree Development.- 5.3.3 Completeness Checking of Decision Trees.- 5.3.4 Syntactical Simplification.- 5.3.5 Syntactical Simplification Process.- 5.3.6 Semantical Simplification.- 5.4 Decision Tables.- 5.4.1 Standard Decision Table Construction.- 5.4.2 Extended-Entry Decision Tables.- 5.4.3 Indifference and Consolidation.- 5.4.4 Completeness of Decision Tables.- 5.4.5 Semantical Simplification of Decision Tables.- 5.5 Structured English.- 5.6 Comparison of Decision Trees, Decision Tables and Structured English.- 5.7 Process Logic and Expert Systems.- 5.8 An Introduction to Logical Inference.- 5.8.1 Rewriting of Logical Formulas.- 5.8.2 The Resolution Principle.- 5.8.3 Three Main Tasks for Applying Logical Proof.- 5.8.4 Some Properties of Proof Methods.- Exercises.- 6. Information Systems Evolution: The Software Aspect.- 6.1 The Role of Standard Software in Information Systems Evolution.- 6.1.1 Common, Standard, and Custom-Tailored Software.- 6.1.2 Application Platforms, Common Software, and Information Systems Integration.- 6.1.3 The Architecture of Common Systems.- 6.2 The Installation of Software Systems in Organizations.- 6.2.1 Installation Approaches.- 6.2.2 Who is the User?.- 6.2.3 Installation Experiences.- 6.2.4 Features of an Installation Strategy.- 6.3 Evolutionary Behavior of Large Software Systems.- 6.3.1 An Analysis of Observed Evolutionary Behavior.- 6.3.2 Basic Assumptions of Different Models of Evolutionary Behavior.- 6.3.3 The Impact of Error Propagation on Structural Degeneration.- 6.3.4 The Impact of Resource Allocation on Structural Degeneration.- Exercises.- 7. Managing Information Systems Development Projects.- 7.1 Project Selection: The Master Plan.- 7.2 The Project Life Cycle.- 7.2.1 Phase 1: Pre-project Study.- 7.2.2 Phase 2: Requirement Specification.- 7.2.3 Phase 3: System Modeling and Evaluation.- 7.2.4 Phase 4: Functional Specification.- 7.2.5 Phase 5: Data Processing System Architecture.- 7.2.6 Phase 6: Programming.- 7.2.7 Phase 7: System Installation.- 7.2.8 Phase 8: Project Evaluation.- 7.3 Project Evaluation and Control.- 7.4 The Information System Development Organization.- 7.4.1 The Information System Department.- 7.4.2 The Functional “Large-Project” Structure.- 7.4.3 The Project Team Structure.- Exercises.- 8. Information System Support for Information System Development.- 8.1 Contemporary Environments for Supporting System Development.- 8.2 The Functional Properties of Support Systems for Information Systems Engineering (lSE-systems).- 8.3 A Database for Supporting Information Systems Engineering.- 8.4 Information Systems Configuration Management.- 8.4.1 Versions, Revisions and Variants.- 8.4.2 Change Management.- 8.4.3 Efficient Storage of Components.- 8.4.4 Software Manufacture.- Exercises.- 9. Engineering Design Principles for Unsurveyable Systems.- 9.1 The Engineering Design Process.- 9.1.1 Problem Formulation.- 9.1.2 Problem Analysis.- 9.1.3 Solution Generation.- 9.1.4 Solution Selection.- 9.1.5 Design Specification.- 9.1.6 Implementation.- 9.1.7 Modification.- 9.1.8 The Engineering Design Process: Ideals and Reality.- 9.2 Properties of Unsurveyable Systems.- 9.2.1 Problems of the Whole and Problems of Components.- 9.2.2 The System Concept.- 9.2.3 Dealing with Unsurveyable Systems.- 9.2.4 Langefors’ Fundamental Principle for System Development Work.- 9.2.5 A Guideline for System Development Work.- 9.2.6 The Feasibility Study.- 9.3 Development of Non-constructive Systems.- 9.3.1 Properties of Wicked Problems and Tame Problems Contrasted.- 9.3.2 Principles for the Solution of Wicked Problems.- Exercises.- 10. Information and Information Systems.- 10.1 Relationships Between Knowledge and Information.- 10.1.1 Types of Knowledge.- 10.1.2 Knowledge, Information, and Information Processes.- 10.1.3 Some Important Properties of Information.- 10.2 Ways of Obtaining Knowledge.- 10.3 Formal and Informal Information.- 10.4 The Information System and Its Environment.- 10.5 Information Systems Viewed as Production Organizations.- 10.6 Self-Referential Information Systems.- 10.6.1 Static Programs.- 10.6.2 Problem Oriented Programs.- 10.6.3 Evolutionary Programs.- Exercises.- 11. Three Domains of Information Systems Modeling — and the Object-Oriented Approach.- 11.1 Subject Domain Modeling.- 11.2 Interaction Domain Modeling.- 11.3 Implementation Domain Modeling.- 11.4 The Basic Concepts of the Object-Oriented Approach.- 11.4.1 Objects.- 11.4.2 Object Class.- 11.4.3 Encapsulation.- 11.4.4 Inheritance.- 11.4.5 Polymorphism.- 11.5 Object-Oriented Analysis.- 11.5.1 Coad and Yourdon’s Approach.- 11.5.2 The Object Modeling Technique..- 11.6 Ob