|
DEV475-Mastering Object-Oriented Analysis and Design with UML 2.0
using IBM Rational Software Architect v6.0 for J2EE development
Supplementary Training Curriculum Notes
| Course Code |
: |
RD601-DEV475 |
| Skill Level |
: |
Intermediate to Advanced |
| Duration |
: |
5 Days |
| Delivery Type |
: |
Classroom with Hands-on labs exercises |
Course Description
Mastering Object-Oriented Analysis and Design with Unified
Modeling Language (OOAD/UML) 2.0 presents the concepts, techniques
and process to effectively build the software architecture. The
standard curriculum from IBM stops at the concepts of modeling
without much details in the practical approach in a development
environment. We, however, extends beyond the course curriculum
prescription by showing the techniques to model the application
development in the J2EE development environment using IBM Rational
Software Architect version 6.0 (RSA).
This makes the training course an intensive hands-on workshop in
which the instructor will supply a "step-by-step" printed
supplementary exercises to guide the participants in building the
model and transforming the models into Java source codes. The
exercises cover the basics of modeling, which includes the new UML
2.0 notations. The modeling techniques are demonstrated using the
given templates from the RSA. The instructor will demonstrate how to
model the Persistency JDBC Mechanisms version 1.4 using the
Datasource factory objects.
For participants familiar with IBM Rational Rose, using RSA to
model your software architecture is a great leap forward. This is
especially valuable if you are targeting the J2EE development using
the latest technology in JSP, Servlet, Struts, JSF and the Datasource
connection. All of these, together with the IBM WebSphere Application
Server (WAS) version 6.0 Integrated Testing Environment, are
available in the IBM RSA version 6.0.
Learning Experience
Using the RSA, students will be developing a complete set of
models based on the standard UML version 2.0. The architecture is
based on a set of "given" requirements provided to you
during the training. Instructor will provide a
"step-by-step" supplementary exercises to guide students to
work with the requirements, and model the requirements using RSA. In
this process, students will learn the followings:
- Object-Oriented Concepts. Design principles, such as
Abstraction, Hierarchy, Polymorphisms and Modularity will be
introduced. The concepts cover the structural elements that make up
the overal Object-Oriented concepts. The concepts and structural
elements usage will be shown and represented by the UML notations.
- Use Case modeling. Introduces Requirement Management and
how documents are structured from the high-level requirements to the
low-level requirements. Students will be introduced to Use Case
Requirement Document which details the step-by-step description of
the flow of events. The requirement forms the basis of the
architecture which is also known as "Use Case Driven
Architecture".
- Architecture analysis and design. Software architecture
analysis forms the structure needed to support the system complexity
as new functionalities are added in an iterative development
process. Architecture design provides the building blocks taking
into the Object Oriented design principles consideration to create a
resilient and robust system architecture.
- Use Case analysis and design. In a use case driven
architecture, use cases provide the behaviors for the building
blocks, and how the building blocks are grouped into appropriate
level of details. In Use Case analysis, participants learn how to
model a high-level sequence diagram using appropriate analysis
classes (boundary, control and entity). In Use Case design, analysis
classes are grouped according to the functionality, which provides
the foundation for the impelementation.
- Persistency JDBC Mechanisms and Patterns. Use cases are
further refined to include mechanisms for back-end database access.
In a typcial J2EE development, architect must determine the
front-end interactions (responding to users´ requests) using
the current web technology; and at the same time, determine the best
approach for the back-end database connection. Architect must set
the ground-rule for the interactions between the front-end and the
back-end using standard mechanisms and patterns
- IBM Rational Software Architect ver.6.0. Learn to use RSA
staring from the modeling perspective all the way to the Enterprise
Application and Dynamic Web perspectives. RSA is a powerful tool for
the transformation of the model elements into Java codes. You will
be learning the coding techniques to complement the coding
transformation, and using the facilities / features to speed up the
coding process which will update the model continuously.
Learning Objectives
Participants are expected to understand the step-by-step processes
to building a resilient and robust architecture. At the end of the
course, participants will be able to construct an architecture from a
set of use case specification documents. The "step-by-step"
supplementary exercises, together with the given source codes (Java
Helper Classes) will provide a foundation for the participant to
start working on a new assignment J2EE project using the Object
Oriented Analysis and Design process with RAS. Other objectives
include the followings:
- Learn to build a use-case driven architecture starting from
reading the textual requirements; modeling the requirements using
the sequence diagram; communication and the association of classes.
- Use UML 2.0 for the sequence and communication diagrams; class
diagrams and the associations; component, deployment and activity
diagrams.
- Use the templates provided by RSA (for Use Case, Analysis, and
Enterprise IT Design Model) to create the architecture which is
targeted for the J2EE development environment.
- Describe the Persistency JDBC mechanisms (initialize, read,
update, insert, delete) that utilizes DataSource connection.
- Master the RSA for your development environment, which includes
all of the perspectives (Modeling, Java, Web, J2EE) and views (such
as Wizards, Views, Code Editor, etc.) for a complete J2EE
development.
Topics Covered
| Topics |
Exercises |
| - |
About This Course |
| - |
Best Practices of Software Development |
| - |
Concepts of Object Orientation |
|
| |
- |
Modeling Perspective |
| |
- |
Create a new workspace |
| |
- |
Preferences |
| |
- |
Views |
|
|
|
| Modeling the Requirements using
RSA: |
| |
- |
Create UML Project |
| |
- |
Create a new Use Case Model |
| |
- |
Create Use Cases and Actors |
| |
- |
Modeling the Use Cases and Actors |
|
| - |
Overview of Analysis & Design |
| - |
Architectural Analysis |
|
| Creating the Architecture using
RSA: |
| |
- |
Create a new Analysis Model |
| |
- |
Define Key Abstractions |
| |
- |
Define the Architecture Layers |
| |
- |
Create Functional Areas |
|
|
|
| |
- |
Realizing the Use Cases |
| |
- |
Modeling the interactions, using: |
| |
> |
Sequence Diagram |
| |
> |
Communication Diagram |
| |
> |
Participants Diagram |
| |
> |
Overview Diagram |
|
| - |
Describe Design Elements |
|
| Identify Design Elements: |
| |
- |
Create Enterprise IT Design Model |
| |
- |
Identify Classes and Subsystems |
| |
- |
Analysis Class Filtering and Merging |
| |
- |
Specify Attributes and the Types |
| |
- |
Identify Subsystem Interfaces |
|
| - |
Describe Design Mechanisms |
|
| Implementation Model for the
Design Mechanisms: |
| |
- |
Create Supporting Packages and Classes |
| |
- |
Create the Sequence and Communication Diagrams |
| |
- |
Create RDBMS JDBC Participant Diagram |
| Implementing the Mechanisms
Servlet |
| |
- |
Create a New Java Project |
| |
- |
Configure Transformation |
| |
- |
UML to Java Transformation |
| Create Enterprise Application
Project |
| |
- |
Transforming LoginForm to Servlet |
| |
- |
Servlet and Servlet Mapping |
| |
- |
Testing the Servlet |
|
| - |
Describe Runtime Architecture |
|
| Create a Deployment Model: |
| |
- |
Deployment Configuration for Production and
Test |
| |
- |
Specify the J2EE Artifacts for Deployment |
|
|
|
| Use Case Model Refinement: |
| |
- |
Create a Proxy Class |
| |
- |
Import Java Helper Classes |
| |
- |
Use Case Refinements Sequence Diagram |
| |
- |
Use Case Refinements Class Diagram |
| Implementing the Persistency
JDBC Mechanism: |
| |
- |
Persistency JDBC Initialization |
| |
- |
Persistency JDBC findById (Read) |
| |
- |
Updating the Persistency JDBC Mechanism
Class Diagram |
| |
- |
Completing the Servlet and JSP |
|
|
|
| Modeling Convention for
Subsystems: |
| |
- |
Subsystem Definition and Documentation |
| |
- |
Interface Realization |
| |
- |
Subsystem and Dependencies |
|
|
|
| Participants Diagram Refinements: |
| |
- |
Attributes, Operations and Signatures |
| |
- |
Attributes and Operations Scope |
| |
- |
Create a New State Machine Diagram |
| |
- |
Activity Diagram |
|
|
|
| Using Database Facility in RSA: |
| |
- |
Create a New Database Project |
| |
- |
Create a New Connection to the Database |
| |
- |
View Database Tables |
| |
- |
Create a New Database Schema |
| |
- |
Populate Database Tables |
| |
- |
Create IDEF1X Diagram |
|
Suggested For
If you are a developer wanting to learn software architecture,
this course is definitely for you. As a matter of fact, anyone with a
programming background (with Java experience preferably), will be
able to get the most out of this course. However, Java programming
experience may be obatained by running the exercises provided by: The
Java Tutorials - http://java.sun.com/docs/books/tutorial/
Understanding of the J2EE technology is not mandatory. But, if you
would like to get yourself familiar with the J2EE technology, work on
some of the tutorials provided by: The Java EE Tutorial - http://java.sun.com/javaee/5/docs/tutorial/doc/
|
|
|