Enterprise Systems MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012.
-
Upload
primrose-austin -
Category
Documents
-
view
222 -
download
1
Transcript of Enterprise Systems MIS 181.9: Service Oriented Architecture 2 nd Semester, 2011-2012.
Learning Objectives
►At the end of this section, students should be able to:► Identify the different components of enterprise
automation.► Review history of computers, focusing on the
development of enterprise systems.► Review the different architectures used for
enterprise systems.
Scope of Enterprise Automation
► Application► Automating business functions► Application development technologies
► Infrastructure► Hardware, network technologies► System software
► Architecture► Overall plan
Early Enterprise Systems: MAINFRAMES
►Powerful computers►Able to process several transactions at a
time
►CENTRALIZED COMPUTING
Mainframe System Components
► Hardware technologies► Vacuum tubes, magnetic drums, magnetic tapes
(1950s)► Transistors (1960s)► Large-scale integrated circuits (LSI) (1970s)
► Software technologies► COBOL, FORTRAN programming languages► MVS, z/OS (operating systems)► CICS (transaction management), IMS (IBM Hierarchical
DB), RACF (security)
Where were Mainframes used?
►Used in universities, airline companies, US government agencies► Research► Department of Defense► Weather Bureau
►First computer used for business► LEO Payroll
Major Players in the Mainframe Industry
► IBM► Burroughs► UNIVAC► NCR (National Cash Register)► Honeywell► RCA (Radio Corporation of America)► GE (General Electric)
Personal Enterprise Systems?
►Personal Computers were introduced in 1970s► Smaller computers► Enough power to perform simple applications
►Further development in network technologies
Client/Server System
►Leverages on development of powerful PCs and development of Network technologies
►DISTRIBUTED COMPUTING
Client/Server Systems
► Networked computing model► Processes distributed between clients and servers► Client–Workstation (usually a PC) that requests
and uses a service► Server–Computer (PC/mini/mainframe) that
provides a service► For DBMS, server is a database server
Application Logic in C/S Systems
GUI Interface
Procedures, functions,programs
DBMS activities
Processing Logic I/O processing Business rules Data management
Storage Logic Data storage/retrieval
Presentation Logic Input–keyboard/mouse Output–monitor/printer
Client/Server Architectures
►File Server Architecture
►Database Server Architecture
►Three-tier Architecture
Client does extensive processing
Client does little processing
File Server Architecture
► All processing is done at the PC that requested the data
► Entire files are transferred from the server to the client for processing
► Problems:► Huge amount of data transfer on the network► Each client must contain full DBMS
►Heavy resource demand on clients►Client DBMSs must recognize shared locks,
integrity checks, etc.
FAT FAT CLIENTCLIENT
Two-Tier Database Server Architectures
►Client is responsible for ► I/O processing logic ►Some business rules logic
►Server performs all data storage and access processing DBMS is only on server
Advantages of Two-Tier Approach
►Clients do not have to be as powerful►Greatly reduces data traffic on the network► Improved data integrity since it is all
processed centrally►Stored procedures DBMS code that
performs some business rules done on server
Advantages of Stored Procedures
►Compiled SQL statements►Reduced network traffic►Improved security►Improved data integrity►Thinner clients
Figure 9-3 Two-tier database server architecture
ThinneThinner r clientsclients
DBMS DBMS only on only on serverserver
Three-Tier Architectures
Thin Client PC just for user interface and a little application
processing. Limited or no data storage (sometimes no hard drive)
GUI interface (I/O processing)
Browser
Business rules Web Server
Data storage DBMS
ClientClient
Application serverApplication server
Database serverDatabase server
Figure 9-4 Three-tier architecture
Thinnest Thinnest clientsclients
Business rules Business rules on separate on separate serverserver
DBMS only DBMS only on DB serveron DB server
Advantages of Three-Tier Architectures
► Scalability► Technological flexibility► Long-term cost reduction► Better match of systems to business needs► Improved customer service► Competitive advantage► Reduced risk
Application Partitioning
►Placing portions of the application code in different locations (client vs. server) AFTER it is written
►Advantages► Improved performance► Improved interoperability► Balanced workloads
Figure 9-5a Two-tier client-server environment
Figure 9-5b n-tier client-server environment
Processing logic could be at client, server, or both
Processing logic will be at application server or Web server
Common Logic Distributions
Middleware
►Software that allows an application to interoperate with other software
►No need for programmer/user to understand internal processing
►Accomplished via Application Program Interface (API)
The “glue”“glue” that holds client/server applications together
Types of Middleware► Remote Procedure Calls (RPC)
► client makes calls to procedures running on remote computers► Message-Oriented Middleware (MOM)
► Software needed to run programs written in different platforms► Publish/Subscribe
► push technology server sends information to client when available
► Object Request Broker (ORB)► object-oriented management of communications between clients
and servers► SQL-oriented Data Access
► middleware between applications and database servers
Database Middleware
► ODBC–Open Database Connectivity► Most DB vendors support this
► OLE-DB► Microsoft enhancement of ODBC
► JDBC–Java Database Connectivity► Special Java classes that allow Java
applications/applets to connect to databases
Approaches to Designing Client/Server Architectures
►Distributed Presentation►Remote Presentation►Remote Data Management►Distributed Function►Distributed Database►Distributed Processing
Distributed Presentation
Freshen up delivery of existing server-based applications, typically running on legacy mainframe computers, to distributed clients using screen scrapper technology
Remote Presentation
All data presentation functions are on the client, providing greater flexibility of presentation than the distributed presentation option.
Remote Data Management
All software except data management is on client, this is closest to the traditional client/server mode.
Distributed Function
Analysis functions are split between client and server, with all presentation on client and all data management on server. Requires coordination between analysis function on client and server, making it difficult to develop and maintain.
Distributed Database
Client has all functionality, except that data storage and management is shared between client and server. A distributed database is unstable, and it is very difficult to ensure compatibility and communication between client and server.
Distributed Processing
Combines distributed function and distributed database, maximizing flexibility of analysis and data management
Web Systems► Another form of distributed systems
► WAMP/XAMP provides one-time installation of a set of system software needed to develop web-based systems. Each software represents a tier in the distributed environment
► Apache (Web Server software – Web Server)
► MySQL (DBMS – DB Server)
► PHP (Programming Language – Application Server)
► Internet► Web Technologies► Businesses can use it internally (Intranet) or with clients
(Extranet)
Internet and Intranet Services
► Web server► Database-enabled services► Directory, security, authentication► E-mail► File Transfer Protocol (FTP)► Firewalls and proxy servers► News or discussion groups► Document search► Load balancing and caching