Tài liệu Module 2: Architecture and Structural Design Patterns - Pdf 84



Contents
Overview 1
Introduction to Architecture Templates 2
Design Patterns Used in Architecture 6
The Enterprise Template 11
Other Architecture Templates 17
MSF Enterprise Architecture 20
Best Practices 23
Lab 2: Architecture and Structural
Design Patterns 24
Review 28

Module 2: Architecture
and Structural Design
Patterns

Information in this document is subject to change without notice. The names of companies,
products, people, characters, and/or data mentioned herein are fictitious and are in no way intended
to represent any real individual, company, product, or event, unless otherwise noted. Complying
with all applicable copyright laws is the responsibility of the user. No part of this document may
be reproduced or transmitted in any form or by any means, electronic or mechanical, for any
purpose, without the express written permission of Microsoft Corporation. If, however, your only
means of access is electronic, permission to print one copy is hereby granted.

Lead Product Manager, System Services and Infrastructure: Edward Dudenhoefer
Manufacturing Manager: Rick Terek
Operations Coordinator: John Williams
Manufacturing Support: Laura King; Kathy Hershey
Lead Product Manager, Release Management: Bo Galford
Group Manager, Courseware Infrastructure: David Bramble
General Manager: Robert Stewart

Module 2: Architecture and Structural Design Patterns iii Instructor Notes
This module provides students with a detailed presentation about architecture
templates, which describe the building blocks of an application. To use a
building—or architecture—analogy, consider the structure of a building: a
foundation, pillars, walls, and an exterior shell. In this module, you will be
introduced to the structure of an application.
After completing this module, students will be able to:
!
Describe architecture templates.
!
Describe the creational design patterns.
!
Describe the structural design patterns.
!
Describe the Enterprise template.
!
Describe Enterprise Architecture and how it relates to an Enterprise
template.



Module Strategy
Use the following strategy to present this module:
!
Introduction to Architecture Templates
The purpose of this topic is to introduce students to the need for a model of
the “real world” in the logical design. The architecture template represents
the structure of the logical design model. This is only an introduction. Avoid
providing the details that will be provided in subsequent sections.
In the topic “Transition from Conceptual to Logical Design,” focus on the
first step in the transition from conceptual design to logical design, which is
to identify the creational and structural design patterns that can be used in
the architecture of the desired solution.
In the topic “What Are Architecture Templates?” emphasize that the
architecture template defines how to create a Microsoft Windows
®
2000
solution.
!
Design Patterns Used in Architecture
The purpose of this section is to introduce students to creational and
structural design patterns that can be used to create a logical architecture.
In the topic “Creational,” focus on the sample of the Abstract Factory and
its implementation as a Remote Data Service (RDS) in the Microsoft Data
Access Components (MDAC). Mention that creational design patterns are
now implemented as Windows 2000 capabilities and emphasize the need to
continue to create additional creational patterns that might evolve into
additional operating system services.
In the topic “Structural,” focus on the sample of the Composite design
pattern and its implementation as a Component Object Model (COM)

an information technology (IT) landscape, and focus on the applications that
have fallen into the abyss.
!
Best Practices
Use the village analogy to emphasize that you can’t build a village without a
building code. You also want the code to reflect good practices. Finally, you
want the code to incorporate enough flexibility to allow people to be
creative in designing their homes.

Lab Strategy
!
Lab 2: Architecture and Structural Design Patterns
The purpose of this lab is to help students become more familiar with
structural design patterns and architecture templates. Consider discussing
the scenario and problem statement from the lab before letting students
work on the lab. Make sure all students understand the scenario. Don’t
embellish the scenario; keep it simple. Discuss with students their answers
to Lab 2.


Module 2: Architecture and Structural Design Patterns 1 #
##
#

Overview
!
Introduction to Architecture Templates

Topic Objective
To provide an overview of
the module topics and
objectives.
Lead-in
In this module, you will learn
about architecture and
Enterprise templates and
about design patterns that
are used in the architecture
template.
2 Module 2: Architecture and Structural Design Patterns #
##
#

Introduction to Architecture Templates
!
The Problem
!
Transition from Conceptual to Logical Design
!
What Are Architecture Templates?Architecture templates describe the structure of an application. They tell you
the layers that an application should have, and the type of objects (logical
design) and components (physical design) that should be included in each layer.

The model is built from pieces that interact that are called components. The
interactions between the components and the behavior of each of the
components define the salient features of the real world as they are represented
in the model.
Another way of phrasing this is to say that the model imposes structure on the
real world in order to be able to represent it.
The first question that comes up is “What shape should this structure be?” That
is the issue that the architecture template addresses.
The representation of the real world in a computer-based application model is
an art rather than a science. Having said that, there are techniques that improve
the quality of the design of the model. In particular, object oriented design
methodology offers a systematic approach for designing computer applications
that successfully model the real world.
Topic Objective
To provide a background
about the business problem.
Lead-in
In this topic, you will learn
about the business problem
facing application designers
that leads to the need for a
system services layer.
4 Module 2: Architecture and Structural Design Patterns Transition from Conceptual to Logical Design
Requestor
Enter New Requisition
Vendor
Requestor VendorRequisition

about the logical design.
Lead-in
In this topic, you will learn
about the transition from
conceptual design to logical
design and the use of
creational and structural
design patterns in this
process.
Module 2: Architecture and Structural Design Patterns 5 What Are Architecture Templates?
!
Microsoft Enterprise Strategy
!
Architecture TemplateBased on the creational and structural pattern choices that are made in the
logical design, an architecture template can be derived. An architecture
template is a layered model of the “real world” that segregates functionality into
the various layers.
Microsoft Enterprise Strategy
The Microsoft
®
Enterprise strategy for building applications is to separate the
application into three types of services: user, business logic, and data. This
strategy, however, does not define how objects should be aggregated into these
three services.

As has been noted, creational and structural design patterns can be used to
define an architectural template.
This section discusses creational and structural design patterns and their uses.
Topic Objective
To provide an overview of
the section topics and
objectives.
Lead-in
In this section, you will learn
how design patterns are
used in defining an
architecture template.
Module 2: Architecture and Structural Design Patterns 7 Creational
DataSpace
Client
Server
RDS
Custom
ObjectAs has been noted, creational design patterns generally define how an instance
of a class is created. “Factory” is the term used for the facility to create objects.
Abstract Factory is an interesting creational design pattern that allows a client
to choose the class to instantiate, depending on the requirements specified at
run time.
The preceding slide shows an illustration of an implementation of an Abstract

Lead-in
In this topic, you will learn
about the creational design
patterns.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status