1. Trang chủ
  2. » Công Nghệ Thông Tin

Module 3: Services-Based Approach to Solution Design

22 322 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Module 3: Services-Based Approach to Solution Design
Thể loại Module
Định dạng
Số trang 22
Dung lượng 447,46 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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 1

Solution Design

Trang 2

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 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

Services-BasedApproach

Activity 3.1:Identifying Services

Value of a based Approach

Services-Review

Module 3: A Services-Based Approach to Solution Design

Trang 3

! Overview

In this module

In addition to the Microsoft® Solutions Framework (MSF) Process Model for Application Development, the MSF Application Model is used when designing business solutions As you will learn in this module, the application model provides for a layered, services-based approach to designing applications After completing this module, you will be able to:

" Describe the principles of the MSF Application Model

" Identify the service layers of the MSF Application Model

" Explain the value of the MSF Application Model in designing solutions

Slide Objective

To provide an overview of

the module topics and

objectives

Trang 4

There are several ways to approach application design Microsoft advocates an approach that considers the layers of an application as the key to successful design The MSF Application Model identifies the services layers that enable you to design modular, distributed applications

In this section, you will learn about the MSF Application Model, including the differences between user, business, and data services

In this section, you will learn

about the concepts behind

the MSF Application Model

Trang 5

Definition of an Application Model

the organization

application development efforts

An application model is a conceptual view of an application that establishes the definitions, rules, and relationships that will structure the application It serves

as a basis for exchanging ideas during the logical design of an application An application model is simple and intuitive to enhance communication The emphasis is logical, not physical The application model shows how the application is structured, not how it will be implemented or deployed

A simple analogy helps to understand the concept of a model When someone mentions a house, we assume, without knowing any particulars, that the house has an entrance, bedrooms, bathrooms, a kitchen, and so on Even if a particular house differs from this model (for instance, it may have a sleeping loft rather than bedrooms), the model serves as a starting point for discussing form and function

Similarly, an application model describes in general terms what an application

is

Slide Objective

To generally define an

application model before

discussing the specifics of

the MSF Application Model

Lead-in

Before we look at the MSF

Application Model and its

composition, let us first look

at what an application model

is

Trang 6

MSF Application Model

cooperative, distributable, and reusable services

The MSF Application Model:

" Promotes a consistent approach to the design and development of client/server applications

" Provides a standard set of definitions for the application logic in a distributed, n-tier application

" Makes it easier to use component technology to implement distributed, tier applications that have the flexibility, scalability, and maintainability needed to address the needs of mission-critical, enterprise-wide

n-applications

" Shifts from the traditional view of monolithic applications supporting specific business processes to the concept of systems of interoperable applications built upon a common set of components

" Describes a way of consistently applying the skills and resources of an application development organization across multiple projects

" Defines a framework for organizing teams, introducing parallelism into the development process, and identifying required skills

Slide Objective

To introduce the MSF

Application Model as the

basis for understanding the

services-based approach

Lead-in

The design for the MSF

Application Model was

based on the experiences

gained from working on

enterprise applications

Delivery Tip

Do not focus too much on

the graphic, because it will

be presented in greater

detail in the next several

slides

Trang 7

Definition of a Service

$ Can be bought, built, or reused

$ Is accessed through a published interface

$ Is valued by the consumer, not the supplier

retrieving, viewing, or modifying information

The MSF Application Model is a paradigm for structuring applications In the model, an application is constructed from a logical network of consumers and suppliers of services These services can be distributed across both functional and physical boundaries to support the needs of many different applications

Slide Objective

To define a service and to

provide a lead-in to the

more detailed content on the

different types of services

Lead-in

The MSF Application Model

defines an application as a

logical network of services

To better understand what

that means, let us take a

look at what a service is

Trang 8

User Services

User Services

behind the user interface

$ Provide the navigation functionality to

a user interface

$ Facilitate communication between the user interface and the business services

$ Control user interface elements

The user of an application can be a person or another application Therefore an application’s interface may be a graphical user interface and/or a programmatic interface Consider the graphical user interface of an application as form, while the user services provide the function behind that form The user services also provide the interface for other systems

An application’s user services manage the interaction between the user and the application To achieve this requires an understanding of the user, the activities they will need to perform, and the interaction styles best suited to the different combinations of user and activity

Slide Objective

To establish what a user

service is and distinguish it

from other types of services

Lead-in

The first of the three service

categories is the user

service

Trang 9

Business Services

Business Services

the sequencing and enforcing of business rules

$ Ensure transactional integrity

$ Facilitate communication between user services and data services

$ Transform data into information by applying business rules

Business services transform data into information through the appropriate application of rules

A well-designed business service isolates business-rule enforcement and transformation logic from the service consumers — user and other business services — and from the underlying data services Isolating the business-services logic from the user and data services yields the following advantages:

data-" Flexibility in deciding how and where to deploy the business services Possible choices include components on an application server and stored procedures located in the database management system (DBMS) or even on the client

" Improved maintainability of business rules and logic by isolating changes from the application’s user and data services This isolation allows the developer to make changes in how business decisions are made, while not having to worry about updating or changing the underlying data stores or the client front-end

" The ability to transparently replace implementations of business services For example, the set of business rules embodied within a set of business services may vary from country to country; however, the interfaces to those services remain constant throughout their application

Slide Objective

To establish what a

business service is and

distinguish it from other

types of services

Lead-in

The second of the three

service categories is the

business service

Trang 10

Data Services

Data Services

maintain the integrity of the application data

$ Maintain availability of persistent application data

$ Facilitate communication between the business services and the data store

$ Provide the low-level ability to define, create, read, update, and delete data

Data services are the units of application logic that provide the lowest visible level of abstraction used for the manipulation of data Data services maintain the availability and integrity of both persistent and nonpersistent data Data services control and provide access to data in such a way that business services need not know where the data is located, how the service is implemented, or how it is accessed

Data services implement the data storage and representation of relationships that relate the business schema onto the target data store These services are not restricted to permanent, nonvolatile, or structured data Data services can be designed to access and manipulate any data store

The third of the three

service categories is the

data service

Trang 11

Examples of Services

$ Display Timesheet (user service)

$ Fill Timesheet (user service)

$ Retrieve Timesheet Information (business service called

services that are based on

the need of the users You

then break those services

down into their specific

service categories to

highlight the different types

of services

Trang 12

Services-Based Application

Data Store

User Interface

Service Layers

Data Layer

Business Layer

Presentation Layer User

Services

Business Services

Data Services

The application model provides a logical, three-tier, services-based approach for designing and developing software applications and business solutions In this definition, an application is a logical (not physical) network of cooperating services that must function and work together to achieve a common goal These services can be distributed across both functional and physical boundaries to support the needs of the business solution The possible breadth

of application of each service allows for parallel development, better use of technology, easier maintenance, and increased flexibility in the distribution and deployment of each logical service in the solution

Slide Objective

To illustrate the relationship

between the services of the

application model and the

user interface and date

store

Lead-in

The MSF Application Model

service layers are

sandwiched between the

user interface and the data

store

Trang 13

Activity 3.1: Identifying Services

Now that you have learned about the MSF services-based approach to design, you can apply the services-based approach to everyday activities

In this activity, you will identify the layers in a provided scenario

After completing this lab, you will be able to:

" Demonstrate your understanding of the concepts of user interface, user services, business services, data services, and data store

Slide Objective

To introduce the activity

Trang 14

! Value of a Services-Based Approach

Trang 15

Reusability

Customer Database

Customer Database

Customer Database

Customer Database

Customer Database

Customer Database

Orders Database Orders

Database

Orders Database Orders

Database

Product Customers

Customers

Product

Orders

Customers Product

Traditional View Services View

Network of Cooperating Services

Application 1 Application 2 Application 3

Monolithic Services

Traditionally, applications have been developed independently, each project focusing exclusively on its own needs This approach produces applications that have an extremely narrow focus In these independently developed applications, features and informational views that should be consistent across multiple business applications are unlikely to be similar in function or appearance In this case, when a business rule or information view changes, each application that works with it will also have to be modified

By using a services-based, modular approach, developers can design and implement systems whose applications operate not only through shared data, but also through shared business logic, by running on components located both

on application servers and on shared pieces of user interface running on a client

Slide Objective

To highlight how the

modularity of design allows

for service reuse

Lead-in

Traditionally, multiple

solutions meant multiple

implementations of similar

logic With the

services-based approach, application

logic can be shared, thus

ensuring logic consistency

and saving development

time

Delivery Tip

Point out the area of overlap

between the two

applications These services

have to be designed and

developed only once They

can then provide consistent

service to all applications

that use them

Trang 16

Flexibility of Distribution

Business Services

User Services User

Services

User Services User

Services

User Services User

Services

User Services User

Services

User Services User

Services

Business Services

Business Services

Data Services Data

Services

Data Services Data

Services

Data Services Data

Services

Business Services Data Services Data

Services

Data Services Data

Business Services

Business Services

DBMS

Browser

Multitier, Internet/Intranet

DBMS

GUI Multitier

DBMS

GUI

Thin Client, Fat Server

DBMS

GUI Fat Client

Slide Objective

To show some of the many

ways that the services could

be distributed

Lead-in

The MSF Application Model

provides maximum flexibility

for distributing services

where it makes the most

sense for those services to

reside

Trang 17

Parallelism in the Development Effort

User interfaceUser servicesBusiness servicesData servicesDatabase

Milestone

1 Milestone 2

One of the major advantages that the application model for solution design offers is the ability to do more than one development task at a time Because the application model defines an application structure as having five distinct parts, each of these parts can be worked on in parallel In the past, with monolithic implementations, all development had to be done sequentially, because there were no distinctions between the different types of functionality

If applications are designed

by using the services-based

approach, then they can be

segmented into five distinct

parts that can be worked on

in parallel

Trang 18

Other Benefits

The MSF Application Model:

applications

distributed application design

and tools required

By using a consistent approach to application design, applications can be designed, developed, and implemented more uniformly This provides increased opportunities for reuse

The three categories of service defined by the MSF Application Model map closely to three skill sets for client/server application development The traditional approach to client/server architectures has always separated data from user interface and business rules By using this approach, you can divide the complexity of a distributed application design into smaller, more

manageable pieces

A distributed, component-based implementation makes it easier to incorporate new client and server technologies For example, a new set of user services could be developed to incorporate new interaction techniques, such as voice recognition or handwriting, without having to reengineer the application’s core business services

In addition to the three

benefits just mentioned, this

approach is beneficial in a

few other key areas

Ngày đăng: 16/10/2013, 13:15

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN