Tải bản đầy đủ (.pdf) (46 trang)

Tài liệu Module 1: Developing Enterprise Solutions for Windows 2000 docx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (900.44 KB, 46 trang )







Contents
Overview 1
Introduction to Enterprise Development 2
Introduction to the Windows 2000 Platform 11
Tools and Technologies 21
Overview of Lab Solution 30
Lab 1: Reviewing the Lab Solution 35
Best Practices 39
Review 41

Module 1: Developing
Enterprise Solutions for
Windows 2000

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.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual
property rights covering subject matter in this document. Except as expressly provided in any
written license agreement from Microsoft, the furnishing of this document does not give you any


license to these patents, trademarks, copyrights, or other intellectual property.

 2000 Microsoft Corporation. All rights reserved.

Microsoft, BackOffice, MS-DOS, Windows, Windows NT, Active Directory, ActiveX, FrontPage,
Intellisense, Jscript, Microsoft SQL Server, PowerPoint, Visual Basic, Visual C++, Visual FoxPro,
Visual InterDev, Visual J++, Visual SourceSafe, Visual Studio, and Win32 are either registered
trademarks or trademarks of Microsoft Corporation in the U.S.A. and/or other countries.

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.

Other product and company names mentioned herein may be the trademarks of their respective
owners.


Module 1: Developing Enterprise Solutions for Windows 2000 iii


Instructor Notes
This module describes the architecture of an enterprise solution with respect to
the Microsoft
®
enterprise development strategy and Microsoft Windows
®
2000
Distributed interNet Applications (DNA). It introduces the new features in
Windows 2000 and the Microsoft tools and technologies that students can use
to develop enterprise solutions. The module also discusses the attributes of the

business problem that will be solved in this course and how Microsoft
technologies will be used to build the solution.
After completing this module, students will be able to:
!
Describe the high-level architecture of an enterprise solution that uses
Microsoft's enterprise development strategy.
!
Explain the terminology and concepts of Windows 2000 DNA.
!
Describe some of the key features of the Windows 2000 platform that relate
to enterprise development.
!
Identify Microsoft tools and technologies used in enterprise development.
!
Identify some of the best practices in building distributed, enterprise
solutions.
!
Describe the high-level design of the Purchase Order application used in the
labs for this course.

In the lab, students will explore the user interface for the Purchase Order Online
application. They will use Microsoft Visual InterDev
®
to view the HTML page
from which orders will be placed and examine the ASP code used to call the
business objects in the lab solution. They will also examine the
PurchaseOrderSystem database to become more familiar with the lab
application.
Materials and Preparation
This section provides you with the required materials and preparation tasks that

are needed to teach this module.
Required Materials
To teach this module, you need the following materials:
!
Microsoft PowerPoint
®
file 1907A_01.ppt
!
Module 1: Developing Enterprise Solutions for Windows 2000
!
Lab 1: Reviewing the Lab Solution

Preparation Tasks
!
Read all of the materials for this module.
!
Complete the lab.
!
Read the instructor notes and the margin notes for this module.

Presentation:
45 Minutes

Lab:
30 Minutes
iv Module 1: Developing Enterprise Solutions for Windows 2000


Module Strategy
Use the following strategy to present this module:

!
Introduction to Enterprise Development
Describe the three services layers and what happens at each layer. The rest
of the topics on various architectures are based on this topic. Describe the
application architectures by focusing on where each service resides. Use the
diagrams on the slides to explain the architectures.
!
Introduction to the Windows 2000 Platform
Discuss Windows 2000 in terms of its role as the latest generation of the
Windows operating system. It builds on Windows NT technology by adding
many features and enhancements. Windows 2000 has enhanced reliability
and scalability, and provides ease of use to end users, system administrators,
and developers.
Introduce some of the key features of the Windows 2000 platform that help
developers build enterprise solutions.
!
Tools and Technologies
Explain that Microsoft tools and technologies are available to build each tier
of a distributed application. Briefly describe the enterprise tools available in
Microsoft Visual Studio such as Visual Modeler, Visual Studio Analyzer,
Visual SourceSafe, and Visual Component Manager. Mention the servers
available in Microsoft BackOffice and the COM and XML technologies. All
of these technologies will be covered in more detail in later modules.
!
Overview of Lab Solution
Purchase Order Online is a sample application that is used throughout the
labs in this course. It is used to exemplify the concepts covered in the course
materials. This sample application is a distributed purchase order
application from which users can raise purchase orders for a variety of
products. The sample application is based on MS Market, an internal

procurement system used within Microsoft. Explain that this lab application
was designed as a learning scenario and would require additional design and
development to be used in production.
!
Best Practices
At the end of the module, discuss the best practices for implementing
enterprise solutions. Mention that most of these practices are covered in
greater detail in various topics throughout the module.

Module 1: Developing Enterprise Solutions for Windows 2000 1


#
##
#

Overview
!
Introduction to Enterprise Development
!
Introduction to the Windows 2000 Platform
!
Tools and Technologies
!
Overview of Lab Solution
!
Lab 1: Reviewing the Lab Solution
!
Best Practices
!

Review


This module introduces the terms and concepts related to building enterprise
solutions based on the Microsoft Windows Distributed interNet Applications
(DNA) 2000 platform. You will learn how the Windows 2000 platform
provides infrastructure services that can be used by distributed applications for
transaction management, asynchronous operations, data management, and
security. You will also learn about the Microsoft tools and technologies you can
use for enterprise development. Finally, you will be introduced to the lab
scenario used to build the labs in this course.
Objectives
After completing this module, you will be able to:
!
Describe the high-level architecture of an enterprise solution that uses
Microsoft's enterprise development strategy.
!
Explain the terminology and concepts of Windows DNA 2000.
!
Describe some key features of the Windows 2000 platform that relate to
enterprise development.
!
Identify Microsoft tools and technologies used in enterprise development.
!
Describe the high-level design of the Purchase Order application used in the
labs for this course.

Slide Objective
To provide an overview of
the sections and labs in the

module.

Lead-in
The Windows 2000 platform
provides infrastructure
services that can be used by
distributed applications for
transaction management,
asynchronous operations,
data management, and
security.
2 Module 1: Developing Enterprise Solutions for Windows 2000


#
##
#

Introduction to Enterprise Development
!
Application Services
!
Application Architectures
!
Windows Distributed interNet Applications (DNA)
Architecture


Windows DNA provides a model for building scalable distributed applications
on the Windows platform. It defines the fundamentals of building multitier

applications and the Microsoft tools and technologies used to create them.
In this section, you will learn about the kinds of services provided by enterprise
solutions and how dividing a distributed application into tiers can help make the
solution more scalable, robust, and adaptable.
This section includes the following topics:
!
Application Services
!
Application Architectures
!
Windows DNA Architecture

Module 1: Developing Enterprise Solutions for Windows 2000 3


Application Services
!
User Services
$
A means of allowing users to interact with the system
!
Business Services
$
Business logic to retrieve and manipulate data according
to specific business rules
!
Data Services
$
A data store of some type and the logic to manipulate
the data



Enterprise applications need to be used simultaneously by many users.
Although each application may be designed to operate in a specific business
environment, distributed applications typically have common design
characteristics. The enterprise architecture uses a services model with at least
three layers as defined by the Microsoft Solutions Framework (MSF)
application model:
!
User services
A means of allowing users to interact with the system
!
Business services
Business logic used to retrieve, validate, and manipulate data according to
specific business rules
!
Data services
A data store of some type and the logic to manipulate the data

User Services
User services are the units of application logic that provide an application with
its interface. The user of an application can be a person or another application.
Therefore, an application’s interface may be a graphical user interface (GUI) or
a programmatic interface.
For example, Microsoft Excel has a rich GUI that is implemented by using a
workbook/worksheet metaphor. Excel also provides a comprehensive set of
programmatic interfaces offering the same features and functionality in the
form of Automation. The two types of interfaces are semantically equivalent
and are both considered user services.
An application’s user services are responsible for managing all aspects of the

interaction between the user and the application. To manage this interaction
well, you must understand who the users are, the activities that they will need to
perform, and the interaction styles that are best suited to the different
combinations of user and activity.
4 Module 1: Developing Enterprise Solutions for Windows 2000


Business Services
Business services are the units of application logic that control the sequencing
and enforcing of business rules and the transactional integrity of the operations
that they perform. Business services transform raw data into information for the
user through the appropriate application of rules.
The goal of a properly designed business service is to isolate business rule
enforcement and data transformation logic from their 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:
!
Flexibility
Allows the developer to choose how and where to deploy the business
services: as components on an application server, as stored procedures in a
database management system (DBMS), or even on the client.
!
Multiple user scenarios
Allows the developer to place different types of user interface logic in front
of a standard set of business services. For example, a set of business
services for performing operations on a customer object is implemented as a
single component running on an application server. The services that the
component provides could be used in any of the following client scenarios:
as macros running inside Microsoft Office, from a custom application
developed with Microsoft Visual Basic

®
, or from inside HTML pages
running inside Microsoft Internet Explorer.
!
Ease of maintenance
Makes it easier to maintain business rules and logic by isolating changes
from the application’s user and data services.
!
Replacement of business rules
Provides the ability to 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.

Data Services
Data services are the units of application logic that provide the lowest visible
level of abstraction used for manipulating data. Data services maintain the
availability and integrity of both persistent and nonpersistent data. Data services
control and provide access to data in a way that does not require business
services to know where the data is located, how the service is implemented, or
how it is accessed.
While it is possible to identify discrete user and business services (such as
services that relate to a customer), services at the data service level are more
granular. For example, a system may contain service components for
customers, employees, and vendors. At the business service level, each service
component would have a unique set of attributes, services, and rules. However,
at the data service level, the services represent examples of an entity to the
organization. As a result, a data service component named Account Information
might be implemented that provides Create, Read, Update, Delete, and
Rollback services for customers, employees, and vendors.


Module 1: Developing Enterprise Solutions for Windows 2000 5


Application Architectures
!
Single-Tier Applications


Applications can be implemented as centralized processing systems (often
referred to as single-tier solutions), two-tier solutions (client/server), or n-tier
systems (three or more tiers).
Single-Tier Applications
Early systems implemented application services by centralizing all of the
processing on a large server and allowing users to access the application
through dumb terminals, remote keyboards, and display units with no
processing power. The server handled all data storage, business logic, and
presentation logic. The above illustration shows how application services are
handled in a centralized processing system.
These centralized systems provide a number of advantages to the developer.
Because all logic is centralized, deploying, maintaining, and upgrading the
application is done at the server. No software needs to be installed or
maintained at the client computer.
However, this design presents some scalability issues. As more users need to
access the system, the server needs to cope with a large amount of processing.
To a certain extent, adding RAM and improving hardware at the server can
alleviate scalability problems, but ultimately this design is not suited to the
huge number of users who need to use enterprise systems in today’s
organizations.
The key to making solutions scalable is to make them distributed. Distributed

systems share the processing load between multiple computers. The most basic
form of a distributed system is a two-tier application often called a client/server
application.
6 Module 1: Developing Enterprise Solutions for Windows 2000


Application Architectures (continued)
!
Two-Tier Applications


Two-Tier Applications
In a two-tier application, the processing is shared between the server and the
client computer. The server implements the data services and the client
performs the user services logic. The business services can be implemented by
the client software (sometimes called the "intelligent client" model) or by the
server-based database application (sometimes called the "intelligent server"
model), or they can be shared between the client and the server. The above
illustration shows how application services are handled in a typical two-tier
application.
The two-tier design is more scalable than the centralized processing model
because much of the load can be taken off the server by the client computers.
However, the two-tier model still presents problems in an enterprise
environment.
Placing the business services on the client makes them difficult to modify and
reuse. Each time a business rule changes, a new version of the client software
must be written and deployed. Centralizing the business logic on the database
server alleviates the problem of updating business rules, but adds more
processing load to the server. Additionally, database servers typically use
Structured Query Language (SQL) statements in stored procedures to perform

business logic. Using stored procedures is not as flexible or efficient as using
other languages. Each client computer requires its own database connection,
which requires server resources such as RAM, and long-running business
processes on the server will tie up these database connections and again lead to
scalability problems.

Module 1: Developing Enterprise Solutions for Windows 2000 7


Application Architectures (continued)
!
N-Tier Applications


N-Tier Applications
The Microsoft Solutions Framework (MSF) Application Architecture Model is
used to design scalable distributed solutions by spreading the processing load
over three or more tiers. This design is sometimes called the three-tier model.
However, business services can be further divided into multiple layers; for
example, business rules may be separated from the data access logic used to
access data services. As a result, the term n-tier is often used to denote a
multitiered application. The above illustration shows how services are handled
in an n-tier application.
The n-tier model allows business logic to be centrally located. As a result, it is
easily modified and reused, while not overburdening the database server.
Database connection pooling can be used to share database connections
between multiple clients, making more efficient use of the available
connections. Business logic can be written in any language and encapsulated in
components that support the Component Object Model (COM). Business logic
can be also be implemented by using the Distributed COM (DCOM) protocol or

over the Internet by using Hypertext Transfer Protocol (HTTP).
A greater degree of abstraction is obtained by using multiple tiers. Minimally,
the database server is abstracted from the client so that if the data source
changes (for example, an Oracle database is migrated to Microsoft SQL
Server

), only the middle-tier components accessing the database need to be
updated. The client application is unaffected. Further abstraction can be
obtained by dividing the business services into additional tiers. Many
applications include two tiers of components; one tier contains code to enforce
business rules, while the other tier contains code to connect to the data tier. This
increased granularity makes it easier to maintain the solution.
8 Module 1: Developing Enterprise Solutions for Windows 2000


Logical and Physical Tiers
Logical tiers are used to divide an application conceptually. For example, you
may design an application with the following logical tiers:
!
Logical tier 1: user services
!
Logical tier 2: business rules
!
Logical tier 3: data access logic
!
Logical tier 4: data services

Physical tiers describe how the application is deployed across computers. For
example, you may decide that better performance will be achieved if the data
access logic is deployed on the same computer as the business rule logic:

!
Physical tier 1: user services
!
Physical tier 2: business rules and data access logic
!
Physical tier 3: data services

Module 1: Developing Enterprise Solutions for Windows 2000 9


Windows DNA Architecture


The Windows DNA platform is based on the n-tier design and uses Microsoft
tools and services to build scalable distributed applications.
User Services
User services can be implemented in 32-bit Windows applications (often
referred to as rich clients) and developed by using Microsoft development tools
such as Microsoft Visual Basic, Microsoft Visual C++
®
, Microsoft Office, and
Microsoft Visual J++
®
. Alternatively, lighter-weight HTML front ends (often
referred to as thin clients) can be developed by using Microsoft FrontPage
®
or
Microsoft Visual InterDev and hosted on Microsoft Internet Information Server
(IIS). These HTML-based applications allow greater reach to clients in intranet
and Internet solutions and technologies such as Active Server Pages (ASP) and

DHTML. Microsoft ActiveX
®
controls can be used to provide varying degrees
of functionality.
Business Services
Business services are implemented in COM+ components. As a result, business
functionality can be encapsulated and reused. COM+ components can be
developed in any COM-aware language such as Visual Basic, Visual C++, or
Visual J++, and they can be distributed over multiple computers running
different operating systems. The COM+ services in the Microsoft Windows
2000 operating system provide declarative transaction management,
asynchronous operations, a distributed event mechanism, security, and ease of
deployment.
10 Module 1: Developing Enterprise Solutions for Windows 2000


Data Services
Data services are usually provided by relational databases stored in a database
management system such as SQL Server. These databases contain the
application data in normalized tables linked by common fields. In some
applications, data may be stored in a nonrelational form; for example, in the
Windows 2000 Directory or Exchange Server. Data services also include
components that abstract the data by using infrastructure services such as
ActiveX Data Objects (ADO).
Windows DNA 2000
Windows DNA 2000 is the natural evolution of Windows DNA and provides a
number of building blocks that allow developers to take advantage of the
Windows 2000 platform and build distributed Web applications.
Windows DNA 2000 includes the following components.
Component Description


AppCenter Server 2000 A product that simplifies the deployment and
management of Windows DNA applications within
server farms.
Host Integration Server 2000 This tool, formerly called SNA Server, provides
network, data, and application integration with
legacy hosts.
BizTalk Server 2000 An XML-based business-to-business commerce
solution. BizTalk Server 2000 provides business
process integration within the enterprise and with
trading partners across the Internet through the
exchange of XML-formatted business documents.
Commerce Server 2000 A package of business-to-consumer commerce
software.
SQL Server 2000 SQL Server 2000 has native XML support and
enhanced data-mining capabilities.

In this course, you will focus on designing and developing components for
business services by using Visual Basic 6.0 and COM+ services. For more
information about Windows DNA, go to the Microsoft Windows DNA Web
site at msdn.microsoft.com/windowsdna.
Module 1: Developing Enterprise Solutions for Windows 2000 11


#
##
#

Introduction to the Windows 2000 Platform
!

Windows 2000 Product Family
!
Component Services
!
Active Directory
!
ActiveX Data Objects 2.5
!
Web Technologies
!
Security


Windows 2000 is the latest generation of the Windows operating system. It
builds on Windows NT technology by adding many features and
enhancements.
Windows 2000 has enhanced reliability and scalability, and provides ease of
use to end users, system administrators, and developers.
In this section, you will be introduced to some of the key features of the
Windows 2000 platform that help developers build enterprise solutions.
This section includes the following topics:
!
Windows 2000 Product Family
!
Component Services
!
Active Directory


!

ActiveX Data Objects 2.5
!
Web Technologies
!
Security

12 Module 1: Developing Enterprise Solutions for Windows 2000


Windows 2000 Product Family
Large, mission-critical
OLTP and OLAP
database solutions
server
32 CPUs, 64GB RAMWindows 2000
Datacenter Server
Line of Business / E-
commerce application
server
8 CPUs, 8GB RAMWindows 2000
Advanced Server
File and print / Intranet
application server
4 CPUs, 4GB RAMWindows 2000
Server
Business Desktop or
Notebook
2 CPUs, 4GB RAMWindows 2000
Professional
Edition

DescriptionHardware SupportProduct


The Windows 2000 family consists of Windows 2000 Professional, Windows
2000 Server, Windows 2000 Advanced Server, and Windows 2000 Datacenter
Server. Each product is optimized for a specific role within the enterprise as
described in the following table.
Product Hardware
support
Description

Windows 2000
Professional
2 CPUs
4 GB RAM
Replaces Windows 95, Windows 98, and
Windows NT 4.0 Workstation in the business
environment, and provides a flexible desktop
operating system that is easy to use.
Provides greater hardware support than its
predecessors and Plug and Play technology for
simpler configuration. It also supports the latest
in Universal Serial Bus (USB) devices. Support
for dial-up networking, infrared, Virtual Private
Networks (VPNs), and offline folder
synchronization make it an ideal platform for
mobile users.
Windows 2000
Server
4 CPUs

4 GB RAM
Contains all the features of Windows 2000
Professional and provides features that simplify
network management and application
development. Windows 2000 Server includes
Internet Information Services for hosting Web-
based applications, COM+ component services
for building middle-tier business services, and
ActiveX Data Objects 2.5 for universal data
access.
Used to manage users in a Windows 2000
Domain environment by using Active Directory
services for domain management. Supports up to
four processors.
Module 1: Developing Enterprise Solutions for Windows 2000 13


Product Hardware
support
Description

Windows 2000
Advanced
Server
8 CPUs
8 GB RAM
Contains all the features in Windows 2000
Server, and provides increased scalability and
system availability through clustering
technology, enterprise memory architecture, and

increased symmetric multiprocessing (SMP)
scalability.
Designed for large enterprise networks and for
database intensive work.
Windows 2000
Datacenter
Server
32 CPUs
64 GB RAM
Contains all the features of Windows 2000
Advanced Server, and supports cascading
failover among four nodes and 32-node network
load balancing.
Designed for large data warehouses and Online
Transaction Processing (OLTP) systems.


14 Module 1: Developing Enterprise Solutions for Windows 2000


Component Services
COM+
!
Object management
!
Transactions
!
Shared properties
!
Queued components

!
Event notification
!
Role-based security


The Component Object Model (COM) has for many years been at the core of
application development on the Windows platform. COM allows developers to
create components that provide versatility and reusable business logic.
COM+ in Windows 2000
The COM+ component services in Windows 2000 build on COM and the
infrastructure services provided with the Windows NT 4.0 Option Pack, such as
Microsoft Transaction Server (MTS) and Microsoft Message Queue Server
(MSMQ). By providing these services, Windows 2000 makes it easier to build
scalable, distributed systems that use transactions and asynchronous operations;
it also and allows developers to concentrate on developing components that
implement business logic rather than writing complex infrastructure code that is
common to many applications.
For example, if you are developing a distributed purchase ordering application,
you must implement business rules that are unique to that application (such as
ensuring that orders are sent to the correct vendor or that the appropriate cost
center budget is debited). If you were developing an Internet-based banking
system, the business logic would be different (for example, money must be
transferred between the correct accounts and overdraft limits must be enforced).
While these applications involve different business logic, there is a certain
amount of infrastructure that is common to both (for example, database
connections must be managed efficiently, transactional integrity needs to be
enforced, and security must be controlled). Because the infrastructure issues are
handled by the component services in the Windows 2000 operating system,
developers do not need to rewrite the same functionality for each new

application. They need only write the specific business logic required by the
solution.

×