Object-Oriented Analysis and Design for Information Systems

Object-Oriented Analysis and Design for Information Systems

Modeling with UML, OCL, and IFML

1st Edition - January 28, 2014

Write a review

  • Author: Raul Wazlawick
  • eBook ISBN: 9780124172937
  • Paperback ISBN: 9780124186736

Purchase options

Purchase options
DRM-free (PDF, Mobi, EPub)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Object-Oriented Analysis and Design for Information Systems clearly explains real object-oriented programming in practice. Expert author Raul Sidnei Wazlawick explains concepts such as object responsibility, visibility and the real need for delegation in detail. The object-oriented code generated by using these concepts in a systematic way is concise, organized and reusable. The patterns and solutions presented in this book are based in research and industrial applications. You will come away with clarity regarding processes and use cases and a clear understand of how to expand a use case. Wazlawick clearly explains clearly how to build meaningful sequence diagrams. Object-Oriented Analysis and Design for Information Systems illustrates how and why building a class model is not just placing classes into a diagram. You will learn the necessary organizational patterns so that your software architecture will be maintainable.

Key Features

  • Learn how to build better class models, which are more maintainable and understandable.
  • Write use cases in a more efficient and standardized way, using more effective and less complex diagrams.
  • Build true object-oriented code with division of responsibility and delegation.


Systems Analysis and Design professionals; students in graduate level CS/SE/IS courses

Table of Contents

  • Dedication


    About the Author



    Chapter 1. Introduction

    Key Topics in this Chapter

    1.1 This book

    1.2 Object-oriented systems development

    1.3 Unified Modeling Language (UML)

    1.4 Unified Process (UP)

    1.5 The process so far

    1.6 Questions

    Chapter 2. Business Modeling

    Key Topics in this Chapter

    2.1 Introduction to business modeling

    2.2 General view of the system

    2.3 Business use cases

    2.4 Business activity diagram

    2.5 State-dependent aspects of a business

    2.6 Remarks

    2.7 The process so far

    2.8 Questions

    Chapter 3. High-Level Requirements

    Key Topics in this Chapter

    3.1 Introduction to high-level requirements

    3.2 System actors

    3.3 System use cases

    3.4 How to find system use cases in the business model

    3.5 Requirements

    3.6 Preliminary conceptual model

    3.7 The process so far

    3.8 Questions

    Chapter e4. Use Case Based Project Planning

    4.1 Introduction to effort estimation and risk analysis in software projects

    4.2 Use case point analysis

    4.3 Planning an iterative project

    4.4 The process so far

    4.5 Questions

    Chapter 5. Expanded Use Cases

    Key Topics in this Chapter

    5.1 Introduction to expanded use cases

    5.2 Main flow

    5.3 Alternate flows

    5.4 Writing recommendations

    5.5 Included use cases and fragments

    5.6 Expansion of stereotyped use cases

    5.7 Other sections of an expanded use case

    5.8 System sequence diagrams

    5.9 The process so far

    5.10 Questions

    Chapter 6. Conceptual Modeling: Fundamentals

    Key Topics in this Chapter

    6.1 Introduction to conceptual modeling

    6.2 Attributes

    6.3 Concepts

    6.4 Associations

    6.5 Collections

    6.6 Organization of the conceptual model

    6.7 Invariants

    6.8 Iterative construction of the conceptual model

    6.9 The process so far

    6.10 Questions

    Chapter 7. Conceptual Modeling: Patterns

    Key Topics in this Chapter

    7.1 Introduction to conceptual model patterns

    7.2 High cohesion

    7.3 Specification classes

    7.4 Quantity

    7.5 Measure

    7.6 Strategy

    7.7 Composite

    7.8 Organizational hierarchy

    7.9 Object joining

    7.10 Account/Transaction

    7.11 Range

    7.12 Temporal patterns

    7.13 Discussion

    7.14 The process so far

    7.15 Questions

    Chapter 8. Functional Modeling with OCL Contracts

    Key Topics in this Chapter

    8.1 Introduction to functional modeling

    8.2 Preconditions

    8.3 Transient associations

    8.4 Query return

    8.5 Postconditions

    8.6 Exceptions

    8.7 Pattern contracts for CRUD

    8.8 Pattern contracts for listing objects

    8.9 Contracts related to use cases

    8.10 The process so far

    8.11 Questions

    Chapter 9. Domain Tier Design

    Key Topics in this Chapter

    9.1 Introduction to domain tier design

    9.2 Object responsibility distribution

    9.3 Visibility

    9.4 Dynamic modeling based on postconditions

    9.5 System queries

    9.6 Delegation and low coupling

    9.7 Design class diagram

    9.8 The process so far

    9.9 Questions

    Chapter e10. Code Generation

    Key Topics in this Chapter:

    10.1 Introduction to code generation

    10.2 Classes and attributes

    10.3 Unidirectional associations

    10.4 Bidirectional associations

    10.5 Delegated methods and system operations

    10.6 Patterns for filtered queries

    10.7 The process so far

    10.8 Questions

    Chapter 11. Testing

    Key Topics in this Chapter

    11.1 Introduction to testing

    11.2 Functional testing

    11.3 Stubs and drivers

    11.4 Test-driven development

    11.5 Unit testing

    11.6 System operations testing

    11.7 Use case testing (System, acceptance, and business cycle tests)

    11.8 The process so far

    11.9 Questions

    Chapter 12. Interface Tier Design with IFML

    Key Topics in this Chapter

    12.1 Introduction to interface tier design

    12.2 Interaction flow modeling language (IFML)

    12.3 View components

    12.4 Pages

    12.5 Flows

    12.6 Hypertext organization

    12.7 Web Interface Patterns

    12.8 Modeling operations in the interface

    12.9 IFML models for CRUD operations

    12.10 Use case interface modeling with IFML

    12.11 The process so far

    12.12 Questions

    Chapter e13. Data Persistence

    Key Topics in this Chapter

    13.1 Introduction to data persistence

    13.2 Object-relational mapping (ORM)

    13.3 Saving and loading objects

    13.4 The whole process

    13.5 Questions




Product details

  • No. of pages: 376
  • Language: English
  • Copyright: © Morgan Kaufmann 2014
  • Published: January 28, 2014
  • Imprint: Morgan Kaufmann
  • eBook ISBN: 9780124172937
  • Paperback ISBN: 9780124186736

About the Author

Raul Wazlawick

Raul Sidnei Wazlawick - Possui Bacharelado em Ciência da Computação pela Universidade Federal de Santa Catarina (UFSC, 1988), Mestrado em Ciência da Computação pela Universidade Federal do Rio Grande do Sul (UFRGS, 1990), Doutorado em Engenharia de Produção (UFSC, 1993) e Pós-Doutorado pela Universidade Nova de Lisboa (UNL, 1998). É Professor Titular da UFSC, tendo sido contratado em 1992. Ministra "Engenharia de Software II" e "Informática e Sociedade" no Bacharelado em Ciência da Computação e "Modelagem Orientada a Objetos" no Mestrado/Doutorado em Ciência da Computação. Na UFSC ocupou os seguintes cargos: Coordenador do Bacharelado em Ciência da Computação, Coordenador do Programa de Pós-Graduação (Mestrado) em Ciência da Computação, Conselheiro da Câmara de Pós-Graduação e Diretor Acadêmico do Campus de Araranguá. Na Sociedade Brasileira de Computação (SBC) foi Conselheiro Suplente por quatro mandatos e Conselheiro Titular por um mandato, além de Coordenador do Comitê Especial de Informática na Educação entre 1995 e 1997. Criou e foi editor da Revista Brasileira de Informática na Educação da SBC entre 1997 e 2001. Na International Federation for Information Processing (IFIP) foi representante do Brasil no Comitê Técnico de Educação (TC3) por 11 anos e Chair do Working Group on ICT and Higher Education (WG3.2) por 2 anos. Coordenou vários eventos nacionais e internacionais, incluindo o Congresso da SBC (2002), Simpósio Brasileiro de Engenharia de Software (SBES, 2006) e, juntamente com Rosa Maria Vicari, a IX IFIP World Conference on Computers in Education (2009). É autor dos seguintes livros: "Análise e Projeto de Sistemas de Informação Orientados a Objetos", (Elsevier, 2004; 2ª edição em 2011; 3ª edição em 2015) "Metodologia de Pesquisa para Ciência da Computação" (Elsevier, 2009; 2ª edição em 2014), "Engenharia de Software: Conceitos e Práticas" (Elsevier, 2012) e "Object-Oriented Analysis and Design for Information Systems: Modeling with UML, OCL, and IFML" (Morgan Kaufman, 2014). Tem experiência na área de Engenharia de Software, atuando principalmente em modelagem de sistemas orientados a objetos e melhoria do processo de desenvolvimento de software. No Ministério da Educação (MEC) foi membro do Comitê de Especialistas de Ensino em Ciência da Computação (CEEInf) por 4 anos e é atualmente membro da Comissão Assessora da Área de Sistemas de Informação para o ENADE. É Supervisor Geral do Projeto e-SUS, parceria da UFSC com o Ministério da Saúde para a reestruturação do sistema de informação da atenção básica (Postos de Saúde) no Brasil. Recebeu, juntamente com sua orientanda Marília Guterres Ferreira, o prêmio Best Paper Award na Conferência Iberoamericana de Engenharia de Software em 2011. Em 2013 recebeu o título de "Professor Honoris Causa" pelo Centro de Instrução de Guerra Eletrônica do Exército Brasileiro.

Affiliations and Expertise

Professor Titular, Universidade Federal de Santa Catarina, Brazil

Ratings and Reviews

Write a review

There are currently no reviews for "Object-Oriented Analysis and Design for Information Systems"