Download OOSAD Chapter 12

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Distributed operating system wikipedia , lookup

Service-oriented architecture implementation framework wikipedia , lookup

Transcript
Chapter 12:
Modern System Architectures
Object-Oriented Systems
Analysis and Design
Joey F. George, Dinesh Batra,
Joseph S. Valacich, Jeffrey A.
Hoffer
© Prentice Hall, 2004
12-1
System Architecture

An overall blueprint of the design of a
system. Global design, bird’s view.
Goals of design architecture – ability
to scale and evolve over time.
Modern systems are distributed
Chapter 12
© Prentice Hall, 2004
12-2
Distributed or Tiered
Architecture

- The partitioning of a system into layers such
that each layer performs a specific type of
functionality and communicates with the
layers that adjoin it.
- Single-tier (older architecture; mainframe servicing
many dumb terminals)
– Two-tier (Client-Server)
– Three-tier (Client-Middleware-Server)
– N-tier (4+ layers)
Chapter 12
© Prentice Hall, 2004
12-3
Limitations of Client-Server
Architectures

Heavy burden placed on each client machine
(exception: thin clients)

Application changes need to be distributed to
many clients

Typically use proprietary technologies,
hindering application integration
Chapter 12
© Prentice Hall, 2004
12-4
Three-Tier Architectures

Layers:
– Presentation – front tier, providing user
interface, perhaps with formatting and
constraint-checking rules
– Data – back tier, addressing data storage
and access, with some rules regarding data
integrity
– Business rules – middle tier (middleware),
addressing logic and decisions for the
system.
Chapter 12
© Prentice Hall, 2004
12-5
Middleware

Software that provides one set of interfaces
for connection to a client and another set of
interfaces for connection to a server, thereby
providing the possibility of connections
between one of several clients with one of
several servers.
Chapter 12
© Prentice Hall, 2004
12-6
Note: presentation, business logic, and or data
can be spread across multiple layers, creating
N-tier architecture.
Chapter 12
© Prentice Hall, 2004
12-7
Characteristics of Components
– Executable code, modules with defined functionality (ex:
spell checker, search engines, shopping cart); Plug-and-play
– Used as elements in system design (middleware, server,
client)
– Collection of classes and interfaces
– Speed up & reduce costs of development
– Hidden implementation details
– Third-party developed, tested
– Reusable
Chapter 12
© Prentice Hall, 2004
12-8
Component Standards
– Microsoft COM+
– OMG’s CORBA
– Sun Microsystems's Enterprise Java Beans (EJB)
– Database Middleware Standards (ODBC, ADO,
JDBC)
– XML/SOAP
Chapter 12
© Prentice Hall, 2004
12-9
COM+

Component Object Model (COM) from
Microsoft

Run-time environment for middle-tier
components

Supports transactions, identity, and security
services, and allows components to call each
other locally or remotely through a messaging
service
Chapter 12
© Prentice Hall, 2004
12-10
CORBA
– Common Object Request Broker Architecture by
Object Management Group (OMG)
– Component standard for distributed and
heterogeneous network
– Objects written in different languages communicate
through Interface Definition Language
– Interface is managed by Object Request Brokers
Chapter 12
© Prentice Hall, 2004
12-11
EJB

Enterprise Java Beans

Component-based distributed computing
architecture

EJB is a server-side component model for
managing objects in a distributed environment

EJB requires CORBA for communications
Chapter 12
© Prentice Hall, 2004
12-12
Database Middleware Standards

Microsoft’s ODBC – Open Database
Connectivity
Microsoft’s
Sun’s
Chapter 12
ADO – ActiveX Data Objects
JDBC – Java Database Connectivity
© Prentice Hall, 2004
12-13
Comparison of OMG, Microsoft, and Sun
Limitations:
1. Tightly coupled
2. Binary
3. Proprietary
Chapter 12
© Prentice Hall, 2004
12-14
XML and SOAP

Text-based, loosely coupled, non-proprietary
Internet-oriented standard for inter-layer
communication

eXtensible Markup Language (XML) –
method for putting structured data into text
format, similar to HTML

Simple Object Access Protocol (SOAP) –
XML-based protocol for exchanging messages
between applications operating in different
layers
Chapter 12
© Prentice Hall, 2004
12-15
Framework
A collection of components, consisting of code
and interfaces written in a specific language,
that solves or helps build applications.
Two main competitors:
• Microsoft .NET
• Sun Java 2 Enterprise Edition (J2EE)
Chapter 12
© Prentice Hall, 2004
12-16
Microsoft .NET

Development framework that integrates
software tools based on COM+ and Active
Server Pages (ASP) technologies for B2C
applications, with support for XML/SOAP Web
services for B2B applications

- ActiveX – OLE/COM based component
- ADO, ADO .NET – database middleware
- ASP, ASP.NET – dynamic HTML generation


Chapter 12
© Prentice Hall, 2004
12-17
Sun J2EE

Java 2 Enterprise Edition development framework
provides a specification of architectural components
designed to work together to define a complete
enterprise architecture, with support for XML/SOAP and
Web services

- EJB – Java-based component standard

- JDBC – database middleware

- Java Server Pages, Servlets – dynamic HTML

generation
Chapter 12
© Prentice Hall, 2004
12-18
Summary
Modern systems are split into tiers (or distributed)
that are more loosely coupled.
Tiered architecture allows higher scalability: changes
in one tier do not affect directly other tiers.
Components and packages are much used –
reusability, software time increase, development cost
Decrease.
Middleware important – linking disparate clients and severs.
Proprietary and open standards.
Chapter 12
© Prentice Hall, 2004
12-19