< Previous | Next >

Create the design model

In the analysis model, you identified the main classes of the PiggyBank application . Although the analysis model can help you understand what the system does, it does not describe the details of how the system does it. The design model builds on the analysis model by describing both the details of the domain and the details of the implementation. The design model describes not only the structure of the application, but also how it is implemented. Where the analysis model provides an abstract view of the system, the design model provides a very detailed, technical view of how the system works. The PiggyBank design model is modeled with Java™ class diagrams.

The PiggyBank online banking system is based on an architecture with several layers that communicate with each other by using transfer objects and delegate interfaces. The PiggyBank design model is organized into a set of layers, where each layer represents a different component of the implementation. The following figure provides a general overview of the PiggyBank online banking system architecture:

The architecture of the PiggyBank online banking system

This tutorial describes the components of each layer. Each layer contains the classes, interfaces, and subsystems that were derived from the PiggyBank analysis model that you created in the previous module. As the following figure illustrates, the PiggyBank application contains a presentation layer, a business layer, an integration layer, and a common-elements layer:

The PiggyBank online banking design model is organized according to the application architecture.

Each layer represents a package in the PiggyBank design model.

  • The Presentation package contains the PiggyBank user-interface design elements such as the HTML user interface, the Java Swing user-interface elements, as well as any servlets and JavaServer Pages (JSP) files.
    Note: The Presentation layer is not implemented in this tutorial.
  • The Business package contains the main business logic for the PiggyBank system. The business package, called itso.ad.business, contains the EJB, EJB delegate, and Framework subpackages. Each subpackage is modeled on the PiggyBank architecture.
  • The Integration package, called itso.ad.CityBank, contains the design elements that describe the integration between the external CityBank system and the PiggyBank business layer. The CityBank is an external bank that processes all PiggyBank transactions. The PiggyBank system communicates with the CityBank system by using a Data Access Object.
  • The Common package contains the design elements that are common to all layers in the system. The Common layer contains utility classes, such as the log wrapper, that perform common tasks.
    Note: The Common layer is not implemented in this tutorial.

Learning objectives

The lessons in this module explain how to complete the following tasks:
  • Create a new UML model and explore the design model template
  • Create the business layer and integration layer domain models
  • Apply a profile to a class
  • Create a package diagram

Time required

This module takes approximately 60 minutes to complete.
< Previous | Next >

Feedback