Object-Oriented Analysis and Design for Information Systems - 1st Edition - ISBN: 9780124186736, 9780124172937

Object-Oriented Analysis and Design for Information Systems

1st Edition

Modeling with UML, OCL, and IFML

Authors: Raul Wazlawick
eBook ISBN: 9780124172937
Paperback ISBN: 9780124186736
Imprint: Morgan Kaufmann
Published Date: 13th February 2014
Page Count: 376
Sales tax will be calculated at check-out Price includes VAT/GST
25% off
25% off
25% off
25% off
25% off
20% off
20% off
25% off
25% off
25% off
25% off
25% off
20% off
20% off
25% off
25% off
25% off
25% off
25% off
20% off
20% off
Price includes VAT/GST
× DRM-Free

Easy - Download and start reading immediately. There’s no activation process to access eBooks; all eBooks are fully searchable, and enabled for copying, pasting, and printing.

Flexible - Read on multiple operating systems and devices. Easily read eBooks on smart phones, computers, or any eBook readers, including Kindle.

Open - Buy once, receive and download all available eBook formats, including PDF, EPUB, and Mobi (for Kindle).

Institutional Access

Secure Checkout

Personal information is secured with SSL technology.

Free Shipping

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



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





No. of pages:
© Morgan Kaufmann 2014
Morgan Kaufmann
eBook ISBN:
Paperback ISBN:

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

Associate Professor in the Department of Informatics and Statistics at Federal University of Santa Catarina, Brazil

Ratings and Reviews