You are previewing Developing Information Systems: Practical guidance for IT professionals.
O'Reilly logo
Developing Information Systems: Practical guidance for IT professionals

Book Description

Systems development is the process of creating and maintaining information systems, including hardware, software, data, procedures and people. It combines technical expertise with business knowledge and management skill. This practical book provides a comprehensive introduction to the topic and can also be used as a handy reference guide by those already working in the field. It discusses key topics of systems development such as lifecycles, development approaches, requirements engineering and how to make a business case, among others. It is the only textbook that supports the BCS Certificate in Systems Development.

Table of Contents

  1. FRONT COVER
  2. BCS, THE CHARTERED INSTITUTE FOR IT
  3. TITLE PAGE
  4. COPYRIGHT PAGE
  5. CONTENTS
  6. LIST OF FIGURES AND TABLES
  7. AUTHORS
  8. FOREWORD
  9. PREFACE
  10. 1. INTRODUCTION TO SYSTEMS DEVELOPMENT
    1. Contents of this chapter
    2. What is systems development
    3. Systems development and other disciplines
    4. Offshoring and outsourcing of systems development
    5. In the rest of this book
  11. 2. LIFECYCLE TYPES AND THEIR RATIONALES
    1. Contents of this chapter
    2. Introduction to system development lifecycles
    3. What we mean by ‘system development lifecycle’
    4. Lifecycles based on the linear approach
    5. Lifecycles based on the evolutionary approach
    6. The impact of Agile
    7. Hybrid approaches
    8. Development approaches and methods
    9. How to choose an approach
  12. 3. ANALYSING THE BUSINESS NEED
    1. Contents of this chapter
    2. Introduction
    3. Business analysis
    4. The place of business analysis in the business development lifecycle
    5. Outcomes from business analysis
    6. Conclusion
  13. 4. MAKING A BUSINESS CASE
    1. Contents of this chapter
    2. The purpose of a business case
    3. The business case and the development lifecycle
    4. Feasibility checking
    5. Elements of a business case
    6. Identifying, evaluating and selecting options
    7. Cost–benefit analysis
    8. Risk analysis
    9. Impact analysis
    10. Investment appraisal techniques
  14. 5. REQUIREMENTS ENGINEERING
    1. Contents of this chapter
    2. Requirements engineering defined
    3. A framework for requirements engineering
    4. Roles in requirements engineering
    5. Requirements elicitation
    6. Business analysis techniques
    7. Requirements analysis
    8. Requirements validation
    9. Requirements documentation
    10. Requirements management
    11. Requirements engineering and Agile development
    12. Requirements engineering and off-the-shelf solutions
  15. 6. PROGRAMMING AND DEVELOPMENT APPROACHES
    1. Contents of this chapter
    2. Approaches to development
    3. Build or buy?
    4. Component-based development
    5. Development methodologies
    6. Software engineering paradigms
    7. The influence of technological advances
  16. 7. SYSTEM MODELLING TECHNIQUES
    1. Contents of this chapter
    2. What is modelling?
    3. Rationale for modelling
    4. Multiple models and views
    5. Pre-UML modelling technoques
    6. The unified modelling language (UML)
    7. Abstraction, levelling and scope
    8. Opaqueness of model elements
    9. Levels of models and model elements
    10. Cross-referencing models, facets, perspectives and traceability
    11. Documentation and specification within models
    12. Conclusion
  17. 8. SYSTEMS DESIGN – 1
    1. Contents of this chapter
    2. Objective of systems design
    3. Constraints upon systems design
    4. Systems design in the development lifecycle
    5. The scope of design
    6. Process design
  18. 9. SYSTEMS DESIGN – 2
    1. Contents of this chapter
    2. Data design
    3. Security and control design
    4. Logical and physical design
    5. Design patterns
  19. 10. SOLUTION-RELATED ARCHITECTURES
    1. Contents of this chapter
    2. Introduction
    3. Architecture patterns
    4. Communication and interoperation patterns
    5. Enterprise architecture
    6. Architecture principles
    7. Solution architecture
    8. Software architecture
    9. Stakeholders and roles in architecture
    10. Architecture management
  20. 11. QUALITY AND TESTING
    1. Contents of this chapter
    2. Introduction
    3. The quality triangle
    4. The definition of software quality
    5. The objectives and limitations of testing
    6. The static test stages of the ‘V’ model lifecycle
    7. The dynamic test stages of the ‘V’ model lifecycle
    8. Re-testing
    9. Regression testing
    10. Progression through the dynamic testing stages
    11. Testing in the lifecycle
    12. The test plan
  21. 12. IMPLEMENTATION AND CHANGEOVER
    1. Contents of this chapter
    2. Implementation in the lifecycle
    3. Planning for implementation and changeover
    4. File and data conversion or creation
    5. The principles and problems of data mapping
    6. Planning, testing and performing data conversion
    7. Migration of software modules
    8. Installation of hardware and infrastructure
    9. Supporting documentation
    10. Training
    11. System implementation
    12. The implementation plan
  22. 13. MAINTENANCE AND EVALUATION
    1. Contents of this chapter
    2. Introduction
    3. Maintenance in the systems development lifecycle
    4. Maintenance categories
    5. Testing in the maintenance stage
    6. Evaluation
    7. The role and selection of metrics for evaluation
  23. 14. SOLUTION DEVELOPMENT TOOLS
    1. Contents of this chapter
    2. Introduction
    3. Typical tools functions and benefits
    4. Tools through solution lifecycles
    5. Conclusion
  24. GLOSSARY OF TERMS AND ABBREVIATIONS
  25. INDEX
  26. BACK COVER