Module 10: Completing Physical Design 355
Deliverables of the Rationalization Baseline
Task
Determining a packaging and
distribution strategy
Transforming objects into
services-based components
Distributing components across
topologies
Using strategy and prototypes to
refine packaging and distribution
Deliverable
Packaging and distribution strategy
Services-based preliminary
components
Deployment model
"
Future network topology
"
Future data topology
"
Future component topology
Baselined deployment model
Rationalization Baseline
Rationalization
The rationalization baseline results in several deliverables. These deliverables
describe the technologies, strategies, and topologies that you have designed for
the solution.
Slide Objective
To list the deliverables of
the rationalization baseline.
356 Module 10: Completing Physical Design
Distribution and Packaging Strategy
"
Distribution Strategy
$
Rationale for determining which services go where in the
solution architecture
$
Distribution is services-based, not component-based
"
Packaging Strategy
$
Rationale for determining which services go into which
components
$
May have multiple strategies in a single solution
The rationalization step is an iterative process that strives for the optimum
solution at a particular point in time.
The following strategies can be used to help determine an appropriate overall
component distribution and packaging strategy:
"
Scalability involves the ability to quickly and easily extend the solution to
handle more transactions or more use.
"
Performance involves the response time of the system and the speed with
which a system performs application tasks.
"
Manageability involves the ease with which an application can be managed
on all levels.
"
Reuse involves the ease with which components can be reused by other
applications.
"
Business context involves the separate business functions such as
accounting or sales.
"
Granularity involves the number of services and objects that are packaged in
a component.
Slide Objective
To define what is meant by
distribution and packaging
strategy.
Lead-in
One of the main goals of the
rationalization step is the
distribution of services and
the packaging of those
services into components.
Delivery Tip
Do not spend too much time
on this topic; it is just the
introduction to distribution
and packaging. The details
are presented in the next
section.
Module 10: Completing Physical Design 357
Packaging Terminology: Cohesion
"
Defines how well internal parts of a component relate to
one another
$
High level: Print Timesheet Component contains only
services that help it to print timesheets
$
Low level: Application Server Component contains all
services that exist on the application server
"
High cohesion is the goal
$
Provides a better definition of the component’s function
and behavior
Cohesion refers to how the operations in a specified unit, a component, are
related. The closer the relation between the services is, the higher the reliability
of the component. Cohesion is beneficial when it is as follows:
"
Functional
A unit does only one thing. This is the strongest type of cohesion.
"
Sequential
A unit contains operations that must be performed in a specific order and
that must share the same data.
"
Communicational
Operations in a unit use the same data but aren’t related in any other way.
This type of cohesion minimizes communication overhead in the system.
"
Temporal
Operations are combined, because they are all performed simultaneously.
Not all cohesion, however, is beneficial. Other types of cohesion can result in a
solution that is poorly organized and difficult to understand, debug, and modify.
Ineffective types of cohesion include the following:
"
Procedural
Operations are grouped together because they are executed in a specific
order. Unlike sequential cohesion, the operations do not share any of the
same data.
"
Coincidental
Operations are grouped without any discernible interrelationship.
Slide Objective
To define cohesion as an
aspect of packaging and to
define the importance of a
high level of cohesion.
Lead-in
When packaging services
into components, it is
important to take into
account how the services of
a component relate to each
other.
Delivery Tip
The concepts of cohesion
and coupling are important
to the process of distribution
and packaging of services.
Make sure that the students
understand these concepts.
Facilitate a discussion if it is
required.
358 Module 10: Completing Physical Design
Packaging Terminology: Coupling
"
Defines how each component relates externally to other
components
$
Tight: Component relies heavily on other components in
order to accomplish its function
$
Loose: Component is not dependent or less dependent
on other components to accomplish its function
"
Loose coupling is the goal
$
Provides greater component independence, enables
distribution flexibility, and leads to better-defined and
simpler interfaces
Typically, the looser the link that binds components to each other, the freer the
designer is to use individual components without causing problems. A
component should depend as little as possible on other components.
If a dependency exists, however, the connection between those components
must be as clear as possible for easier definition and greater simplicity in
determining interfaces.
Slide Objective
To define component
coupling and the importance
of loose coupling.
Lead-in
When packaging services
into components, it is also
important to take into
account how components
relate to each other.
Delivery Tip
The concepts of cohesion
and coupling are important
to the process of distribution
and packaging of services.
Make sure that the students
understand these concepts.
Facilitate a discussion if it is
required.
Module 10: Completing Physical Design 359
Distribution and Packaging Strategy Considerations
"
Each strategy will be greatly impacted by solution
architecture and infrastructure
$
If strategy involves performance and a one-user solution,
then services may all reside on one computer
$
If strategy involves performance and thousands of users,
then services may be distributed across many
computers
"
Balance is required when multiple strategies are used
$
Performance and reuse may mean one machine but
many small components
When deciding on a strategy for distributing and packaging the services of the
business solution, you to must consider the solution and physical requirements
and constraints.
Although a single strategy — such as installing all services on a single machine
— might work in some cases, you will more likely have to use multiple
strategies to accomplish your goals. When using multiple strategies, you should
strive for a balance between the various requirements and constraints of the
solution.
Slide Objective
To describe two
considerations when
distributing and packaging
services.
Lead-in
When deciding how to
distribute and package the
solution services, you must
take into account solution
and physical requirements.
360 Module 10: Completing Physical Design
!
!!
!
Rationalization: Distribution and Packaging
"
Creating Preliminary Components
"
Transforming Objects into Components
"
Distributing Preliminary Components
"
Activity 10.1: Creating and Distributing Preliminary
Components
"
Validating Distribution and Packaging
"
Refining Distribution and Packaging
In this section
In this section
Creating and refining a component topology is a crucial aspect of the services-
based approach to business solution design.
In this section, you will learn how to create an initial component topology and
how to validate and refine the topology.
Slide Objective
To provide an overview of
the topics and activities in
this section.
Module 10: Completing Physical Design 361
Creating Preliminary Components
"
Provides a link between logical business objects and
service distribution
"
Allows for a design and distribution baseline that can be
evolved
"
Is a two-step process
$
Break the high-level business object services into their
layer-based, low-level services
$
Package the low-level services into components by layer
"
Results in highly cohesive but tightly coupled
components
The primary focus of the physical design rationalization is distributing and
packaging services. In the first step of this process, you break the high-level
services — those you identified and documented in the business object model —
into the lower-level services — user, business, and data.
Slide Objective
To describe the purpose
and process of creating
preliminary components.
Lead-in
Deriving a set of preliminary
components from the
business object model is the
first step during component
specification
362 Module 10: Completing Physical Design
Transforming Objects into Components
Business Services
Business Services
User Services
User Services
Data Services
Data Services
User
Component
Business
Component
Data
Component
A
B
C
D
Preliminary Components
Objects
A
B
C
D
To begin the process of distribution, identify the high-level services in the
business object model and break them down into their individual, layer-based
services.
For each business object, the resulting low-level services are then grouped into
three components: the user services component, the business services
component and the data services component.
Generally there will be three components for every business object identified.
Slide Objective
To describe the process of
transforming business
objects into preliminary
components.
Module 10: Completing Physical Design 363
Distributing Preliminary Components
User and
Business
Services
Data and
Business
Services
Business
Services
Preliminary
Component
Distribution
Validate
Validate
timesheet
timesheet
Consultant
Update
timesheet
Get
timesheet
Store
timesheet
Consultant
Archive
Archive
timesheet
timesheet
Consultant
Retrieve
Retrieve
timesheet
timesheet
Consultant
Assign job
Assign job
to client
to client
Consultant
Submit
Submit
timesheet
timesheet
Find job
Find job
number
number
Display
Display
timesheet
timesheet
Consultant
Consultant
After the services have been packaged into components, the next step is to
distribute the components across the network topology, creating a component
topology.
To start the distribution process, the team can identify categories of services —
user, business, and data — for each node in the network topology. These
categories will serve as a baseline for distribution that will be evolved as the
design is validated against the solution requirements. To help with the
distribution of layers, use the following guidelines:
Distribute data services to the data locations identified in the data topology,
including database servers or other locations where the data services will reside.
Distribute user services to the Web servers or the client machines.
Distribute the business services to application servers or Web servers.
After you have identified where service layers will reside, distribute the
preliminary components into their indicated service layers. This represents the
initial component topology that will evolve throughout the rationalization
process.
Slide Objective
To describe how to
distribute components.
364 Module 10: Completing Physical Design
Activity 10.1: Creating and Distributing Preliminary Components
In this activity, you will place your candidate components onto service layers
assigned in a previous activity.
After completing this activity, you will be able to:
"
Create a preliminary component topology by distributing preliminary
components across the network topology.
Slide Objective
To introduce this activity.
Không có nhận xét nào:
Đăng nhận xét