Module Overview Module 3: A Services-based Approach to Solution Design Module 4: Business Solution Conceptual Design Module 5: Business Solution Logical Design Module 6: Beginning Physic
Trang 1Module 5: Business Solution Logical Design
Trang 2Module Overview
Module 3: A Services-based Approach to Solution Design Module 4: Business Solution Conceptual Design Module 5: Business Solution Logical Design Module 6: Beginning Physical Design
Module 1: Course Overview Module 2: Solution Design Using the MSF
Module 7: Selecting Solution
Technologies
Module 8: Solution Design and the
Component Object Model
Module 9: Designing Solutions with
Logical DesignBasics
Activity 5.2: Identifying Business Objects and Services
Logical Design Analysis:
Attributes and Relationships
Logical DesignProcess
Logical Design Analysis:
Services and Objects
Activity 5.3: Identifying
Attributes and Relationships
Logical Design Analysis:
Rationalization
Activity 5.4: Logical
Design Verification
Module 5: Business Solution Logical Design
Trang 3! Overview
In this module
" Logical Design Basics
" Activity 5.1: Risks of Skipping Logical Design
" Logical Design Process
" Analysis: Business Objects and Services
" Activity 5.2: Identifying Business Objects and Services
" Analysis: Attributes and Relationships
" Activity 5.3: Identifying Attributes and Relationships
" Logical Design Rationalization
" Activity 5.4: Logical Design Verification
" Review
The second phase of the MSF Design Process is logical design Logical design begins after conceptual design has started, when the project team agrees that there is sufficient information to begin the logical design A good logical design depends greatly on a good conceptual design
Because the MSF Design Process is an evolutionary, as well as iterative, process, logical design will greatly impact your physical design and provide feedback into the conceptual design
In this module, you will learn about the logical design phase of the MSF Process Model First, you will learn the basics of logical design — where it fits into the MSF Process Model, its steps, and the tasks and outputs of the logical design phase Then you will learn about logical design in greater detail through the use of examples and activities based on the Ferguson and Bardell case study
After completing this module, you will be able to:
" Explain the need for logical design in the process of designing a business solution
" Describe the role of logical design in the MSF Design Process
" Describe the steps of logical design
" Identify the principles of modular design
" Assess the impact of implementation consideration on the logical design
" Design the objects and services of a business solution
" Derive a logical design for a business solution from a conceptual design
Slide Objective
To provide an overview of
the module topics and
objectives
Trang 4! Logical Design Basics
In this section
" Logical Design in the Design Process
" Logical Design: The Search for Organization
" Goals of Logical Design
" Perspective of Logical Design
" Perspective Captured in Business Object Models
" Clarifying Logical Design
" Value of Logical Design
Logical design is arguably the most difficult concept of the design process to grasp Both conceptual and physical design can often be understood intuitively; however, the transition between them — logical design — is often confusing
To mitigate that confusion, you will learn about the basics of logical design before learning about the process
In this section, you will learn how logical design can be considered a search for organization You will learn what logical design is and what it is not, as well as the value that logical design brings to the overall design
Slide Objective
To provide an overview of
this section
Trang 5Logical Design in the Design Process
Conceptual Design
Scenarios
Logical Design
Physical Design Components, User Interface, and Physical Database
Services and Objects, User Interface, and Logical Database
Logical design is the second phase of the MSF Design Process Model Logical design involves clearly defining the solution in terms that everyone on the project team can understand The inputs to logical design are the scenarios of conceptual design The output of logical design is the business object model, which serves as the basis for physical design
Slide Objective
To position the logical
design phase in relation to
the design process
Lead-in
As you learned in Module 2,
logical design is the second
phase in the MSF Design
Process
Trang 6Logical Design: The Search for Organization
" Definition
The process of describing the solution interms of the organization, structure, syntax,and interaction of its parts
" Purpose
To apply services-based organizingprinciples to lay out the structure of thesolution and define the relationships amongits parts
" Output
A set of business objects withcorresponding services, attributes, andrelationships; a high-level user interfacedesign; and a logical data model
Logical Design
Services and Objects, User Interface, and Logical Database
Logical design defines the constituent parts of a system and provides the organizing framework that holds all of those detailed parts together It illustrates how the system is put together and how the system interfaces with the outside world (users and other systems)
Logical design can be likened to the second stage in designing a house In the first stage, the customer and the architect collaborated on a rough sketch and a short list of needs and requirements, similar to the scenarios in conceptual design Now, in the second stage, the architect concentrates on creating the floor plan by organizing architectural elements such as doors and windows, roofs and patios, and rooms and their spatial relationships into a harmonious whole
This module deals only with the first output — a set of objects with corresponding services, attributes, and relationships The high-level user
interface design is covered in Module 11: Designing the Presentation Layer,
Slide Objective
To give an overall
description of logical design
Lead-in
Logical design is considered
“the search for organization”
because it takes the
scenarios provided by the
conceptual design and
attempts to organize the
requirements into a solution
Note
Trang 7Goals of Logical Design
" Transform the conceptual design into a coherent view of the entire solution
" Describe the solution in terms of the organization, structure, syntax, and interaction of its parts
" Provide the basis for physical design efforts
Logical design plays a pivotal role in systems development and provides a strong link between the technical and nontechnical team members It provides a structure that allows independent team members to work effectively in parallel while coordinating with external projects and architects The logical design describes the system and the solution in broad terms This description includes details about the organization, structure, syntax, and interaction of the elements
of the solution Logical design defines the system elements, their boundaries, the services they provide, and their interactions and dependencies
Any project team member should be able to look at the logical design and identify the important structures of the solution, the objects in the system, and how the objects interact to solve the problem
The team might also uncover additional user or business process requirements
If so, the team must update and iterate through the scenarios and conceptual design, identifying how those changes affect system behavior over the life of the project
Slide Objective
To describe the overall
goals of the logical design
phase
Trang 8Perspective of Logical Design
Conceptual
The logical design perspective is from the point of view of the project team
Logical
Physical
Business Solution
When the project team moves from conceptual to logical design, a fundamental shift in perspective occurs During conceptual design, the team defines the business problem by communicating with the user and business communities During logical design, team members work together to define the organization, structure, and syntax of the resulting solution They derive logical design from the scenarios of conceptual design, thus providing structure while preserving the semantics of the problem captured in conceptual design
Slide Objective
To highlight that the logical
design of the solution is
based on the project team’s
perspective of the solution
Lead-in
While conceptual design
viewed the problem from the
perspective of the user,
logical design views the
problem from the
perspective of project team
Trang 9Perspective Captured in Business Object Models
" Defines the parts of the system
" Describes the organization of the parts
" Describes the relationship of the parts — how they coordinate and cooperate
" Provides
The business object model is a major deliverable of logical design It defines the parts of the system, such as the object, services, and attributes
The business object model also describes the organization of the parts within the system and the relationships among the parts
Overall, the business object model provides several benefits, including improvements to how the parts of the system operate, a common view of the solution among team members, and a baseline to evaluate physical
opportunities
Slide Objective
To introduce the business
object model and its use
during logical design
Lead-in
Logical design is about the
business object model It is
used to define the parts of
the system, their
organization, and their
relationship to each other
Trang 10Clarifying Logical Design
Logical design is not
The technology solution
Optimized for a selected physicalmodel
But it enables you to
Specify the business needs thattechnology must supportReveal technology constraints andopportunities
Identify appropriate technologiesthat you can implement
Identify possible adjustments in thelogical design due to infrastructureand deployment issues
Logical design should be independent of technology and physical implementation The primary focus is on what the system needs to do, which is explained by an organized structure of cooperating elements It is important that the system be completely understood by all stakeholders before making the commitment to technology
In reality, certain physical constraints or opportunities should be considered in logical design in order to validate whether the design can be implemented (or whether it is flexible across multiple required environments) In effect, logical design is as independent of technology as is prudent
Decisions regarding technology are made during physical design It is important
to distinguish between logical and physical design to separate system-behavior issues from system-implementation issues Implementation constraints should
be considered only after the project team verifies that the essential requirements
of the business and users have been incorporated into the logical design This approach does not establish a technical direction until the solution is well understood and documented
Slide Objective
To clarify what logical
design really is and to
dismiss some possible
assumptions
Lead-in
The following table should
help clarify what logical
design is and what it is not
Trang 11Value of Logical Design
" Creates a common view of the solution among project team members
" Manages complexity
" Provides organizing structure, allowing parallel effort
" Uncovers any errors and inconsistencies in conceptual design
" Eliminates redundancy and identifies potential reuse
" Improves the operation of the parts of the system
" Provides a foundation for physical design
The inability to deal successfully with complexity has resulted in many project failures Complexity leads to incomplete understanding, which leads to confusion, which leads to poorly specified and inadequate designs Many business processes that are being supported through information technology are inherently complex, and it is a mistake to attempt to ignore the inherent
complexity of a given problem The preferred path is to manage the complexity The key to managing complexity is organizing the solution and suppressing unnecessary details
Logical design plays a pivotal role in systems development It provides a strong link between the technical and nontechnical members of the team Logical design provides the organization and structural rules required for independent team members to work effectively in parallel, and it provides the basis for effective coordination with external projects and architects
Any solution is only as good as its constituent components By setting boundaries and interfaces, the design takes on more identifiable characteristics and gives the design group a basis for communication
By the time a representative logical design is complete, any errors in judgment
or logic in the conceptual design should be clear These discrepancies can be corrected before the design becomes a production solution
By looking at the solution as a series of components and services, it is easier to identify portions of the design that act similarly By taking this view, the project team can identify which components and services may be reused, which will ultimately help make the design more efficient and maintainable
The foundation that the logical design provides can be used as the fundamental building block for the physical design By looking at the design as a modular system of components, the project team can determine the location and attributes of the components’ physical representations
Slide Objective
To explain the benefits of a
good logical design and how
it helps the overall success
of the project
Lead-in
A good logical design is
important to the success of
the project The following
are some of the benefits
gained by having a good
logical design
Trang 12Activity 5.1: Risks of Skipping Logical Design
In this activity, you will take part in a class discussion to identify the possible risks of not doing logical design
After completing this lab, you will be able to:
" Articulate the value of doing logical design and the risks of not doing logical design
Slide Objective
To introduce the activity
Trang 13! Logical Design Process
In this section
" Logical Design and the MSF Process Model
" Logical Design Steps
" Deliverables of Logical Design
In this section, you will learn about when the logical design stage takes place in the MSF Design Process Model You will also learn of the separate steps that make up the logical design stage and the deliverables of those steps
Slide Objective
To provide an overview of
this section
Trang 14Logical Design and the MSF Process Model
Vision Approved
Vision Approved
Project Plan Approved
Project Plan Approved
Although logical design is dependent on the products of conceptual design, logical and conceptual (and physical) design can be carried out concurrently Logical design can begin any time after the conceptual design has begun As the scenarios become available, logical design can continue on an incremental basis
The results of logical design, as with conceptual and physical designs, become part of the functional specification
The logical design may go through several iterations while details continue to
be added to the functional specification through elements in physical design or changes in the conceptual design As new elements are introduced or needed that were not included in the logical design, the design should be revisited Iteration occurs until there is consensus that the logical design is sufficiently developed to be baselined The baseline is an interim milestone and serves as a reference point for change management
Slide Objective
To show where conceptual
design fits into the project
life cycle
Lead-in
Logical design begins after
conceptual design has
begun and ends before the
team reaches the Project
Plan Approved Milestone
Trang 15Logical Design Steps
Analysis Baseline
Logical Design Baseline
Rationalization
Analysis
Rationalization Baseline
Although portrayedsequentially, thesesteps are iterative andoverlapping
Logical Design
The logical design phase has two steps and associated baselines:
" Analysis
• Identifying objects and services
• Identifying attributes and relationships
To introduce the three
activities that make up
conceptual design
Lead-in
The logical design stage is
composed of two separate
steps: analysis and
rationalization
Trang 16Deliverables of Logical Design
" Business object model
Slide Objective
To identify the outputs of
logical design
Lead-in
At the logical design
baseline, the project team
will have a business object
model
Delivery Tip
Each of these components
of the business object model
will be discussed in detail
later in the module
Trang 17! Analysis: Business Objects and Services
In this section
" Deliverables of the Analysis Baseline: Part 1
" Business Objects
" Identifying Business Objects from Scenarios
" Examples of Business Objects
In this section, you will learn about some of the building blocks of logical design: modules, services, and objects You will practice using these concepts through examples and activities
Slide Objective
To provide an overview of
this section
Trang 18Deliverables of the Analysis Baseline: Part 1
Analysis Baseline Analysis
Task
Identify business objectsIdentify services
Identify attributesIdentify relationshipsModel business objects
Deliverable
List of business objectsList of services
List of attributesList of relationshipsBusiness object model
At this point in logical design, the set of objects and services has been through several iterations of discovery, but it may still need refining This will be
discussed in the next module, Module 6: Logical Design Rationalization
Slide Objective
To explain the content and
context of the analysis
baseline
Lead-in
The analysis baseline
signifies the end of the
analysis step of the logical
design phase
Trang 19Business Objects
An encapsulation of services and attributes that is used to organize the solution and reduce its complexity
Services
Business Object
Trang 20Identifying Business Objects from Scenarios
Business Objects are
" People or things that the scenarios describe
" The basis for identifying attributes and
$ Consultant bills time to the client number
objects
People or things
A variety of methods can be used to identify the relevant objects necessary for the solution The most straightforward technique is to grammatically inspect the scenario models described in the conceptual design In each of the models, look for nouns in the scenario descriptions to help identify objects (nouns may be hidden by the use of passive voice)
Grammatical inspection, or noun-verb analysis, of the scenarios creates a direct map to candidate objects and services A sentence with a subject, verb, and direct object reveals two potential business objects: the subject and the direct object Generally, if the noun or direct object represents something in which the system or the business has an interest in or acts upon, it is a likely candidate object
A noun could also identify an attribute of an object rather than the object itself For example, the noun "name" is most likely an attribute of some other object, such as a person or a guest True objects usually contain more than one attribute In addition, these attributes should not all be derived attributes Some objects may not be specifically stated in any of the models of the scenarios, even though these objects may be necessary to complete the business activities that the scenarios describe Examples of these types of objects are structures, other systems, devices, things or events remembered but not
Slide Objective
To present the student with
a method for determining
objects within a system
Lead-in
Objects are derived from the
scenarios developed in
conceptual design
Trang 21Examples of Business Objects
Sample scenario text
Business object
Business
Consultant Performs actions within the system Can be representedabstractly.Performs actions within the system Can be representedabstractly.
Client Receives the result of actions performed by a consultant Canalso be represented abstractly.Receives the result of actions performed by a consultant Canalso be represented abstractly.
" In the process of designing a solution for the Ferguson and Bardell case study, a business object model will be created
Objects in this design are defined as people, places, systems, or things When looking at the task sequence, try to derive what is acted upon rather than what is being done
" In the slide, the task sequences focus primarily on two people: consultant and client
" The consultant is a business object because a consultant performs actions within the system
" The client is the recipient of actions performed by the consultant Thus, in this context, the client is a business object as well
Slide Objective
To provide the student with
examples of objects
Trang 22Services
A unit of application logic that includes methods for implementing an operation, function, or transformation
Services
A service is a fundamental unit that provides a discrete capability A service is a specific behavior that a business object is responsible to perform — an
operation, a function, or a transformation that can be applied to or implemented
by an object Services define a business object’s behavior They can enforce business rules, perform calculations or manipulations on data, and store or retrieve information In brief, a service can perform any activity that can be described by a set of rules
Slide Objective
To define a logical design
service
Trang 23Identifying Services from Scenarios
Services are actions that objects perform
$ Consultant bills time to the client number
Scenarios
Services Actions
Verbs in the usage scenarios are the best indicators of services, although not every verb in the scenario will be identified as a service
Some of the verbs in the sentences will represent associations between objects rather than a service of a single object This information is also important and
will be discussed in the next section, Analysis: Attributes and Relationships
Consider the object’s responsibility What knowledge does the object maintain, and what actions can it perform? Keep behavior with related information; if an object keeps information, it also has to perform the operations upon this information
The services that are identified must be assigned to an object, which is the recipient of the action or is responsible for carrying it out; this will usually be the grammatical subject or direct object in the sentence containing the service verb If it is difficult to decide to which object a service belongs, the different possibilities can be examined by walking through the scenario This often reveals the most natural or most efficient association of a service to an object State the capabilities and responsibilities of a service as generally as possible Preferably use only active verbs A service should be identified by a clear, unambiguous name Trouble identifying a service and creating a name often indicates that the functionality or purpose of the service isn’t clear and may require additional investigation in the conceptual design
Slide Objective
To show the process of
deriving services from
scenarios
Lead-in
Scenarios provide the
groundwork for identifying
services
Trang 24Examples of Services
Candidate services
prior billings to client
to the client number
The slide shows some examples that describe the concept of a service through the use of the Ferguson and Bardell case study
Consultant looks up client name corresponds to a candidate service of find client
System retrieves client number according to name requested corresponds to a
candidate service of retrieve client number
Consultant reviews prior billings to client corresponds to a candidate service of view billing history
Consultant bills time to the client number corresponds to a candidate service of assign hours
services that correspond to
actions performed in the
scenarios
Trang 25Activity 5.2: Identifying Business Objects and Services
In this activity, you will identify the business objects and services contained in the scenario that the instructor provides
First, you will analyze the usage scenario for potential business objects These candidate business objects are the logical constructs that help identify the services, attributes, and relationships of the future solution
Next, you will analyze the usage scenario for potential services
Finally, you will extend the analysis to identify hidden objects and services After completing this activity, you will be able to:
" Analyze a usage scenario and determine candidate business objects and services for use in the solution design
Slide Objective
To introduce the activity
Trang 26! Analysis: Attributes and Relationships
" Identification Process Summary
Now that you have identified the objects and services of the solution, it is time
to complete the business object model by identifying attributes and relationships
In this section, you will learn how to identify attributes and relationships through the use of examples and activities
Slide Objective
To provide an overview of
this section