Design Strategy - Distributed Systems System Architectures CSIS3600 Systems Analysis and Design.

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Distributed Systems Architectures Slide 1 1 Chapter 9 Distributed Systems Architectures.
Distributed components
Technical Architectures
© Copyright 2011 John Wiley & Sons, Inc.
Middleware Fatemeh Hendijanifard 1 آزمايشگاه سيستم هاي هوشمند (
Distributed Systems Architectures
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Chapter 13 Physical Architecture Layer Design
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design Copyright 2000 © John Wiley & Sons, Inc. All rights reserved. Slide 1 Key.
12 Chapter 12 Client/Server Systems Hachim Haddouti.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Chapter 9: The Client/Server Database Environment
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Distributed Systems: Client/Server Computing
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Lecture The Client/Server Database Environment
Client-Server Processing and Distributed Databases
Client/Server Computing. Information processing is distributed among several workstations and servers on a network, with each function being assigned.
The Client/Server Database Environment
Web-based Software Development - An introduction.
Client/Server Architectures
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design Copyright 2000 © John Wiley & Sons, Inc. All rights reserved. Slide 1 Systems.
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
Systems analysis and design, 6th edition Dennis, wixom, and roth
Chapter 11: Physical Architecture Layer Design
Chapter 9 Moving to Design Part 2.
Chapter 9 Elements of Systems Design
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Introduction to distributed systems Dr. S. Indran 23 January 2004.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 13: Physical Architecture Layer Design Alan Dennis,
Fundamentals of Database Chapter 7 Database Technologies.
What is System Design? In System design, we use the requirements we developed in system analysis to create a blueprint of the future system Successful.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
Database Architectures Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Elmasri and Navathe, Fundamentals of Database Systems, Fourth Edition Copyright © 2004 Pearson Education, Inc. Slide 2-1 Data Models Data Model: A set.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Slide 1 Chapter 10 System Architecture Design Chapter 10 Alan Dennis, Barbara Wixom, and David Tegarden John Wiley & Sons, Inc. Slides by Fred Niederman.
Introduction TO Network Administration
CLIENT SERVER COMPUTING. We have 2 types of n/w architectures – client server and peer to peer. In P2P, each system has equal capabilities and responsibilities.
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved.
IT 5433 LM1. Learning Objectives Understand key terms in database Explain file processing systems List parts of a database environment Explain types of.
9 Systems Analysis and Design in a Changing World, Fifth Edition.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Lecture 9: The Client/Server Database Environment Modern Database Management 9 th Edition.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
What is System Design? In System design, we use the requirements we developed in system analysis to create a blueprint of the future system Successful.
Systems Analysis and Design
Web-based Software Development - An introduction
Business System Development
The Client/Server Database Environment
What is System Design? In System design, we use the requirements we developed in system analysis to create a blueprint of the future system Successful.
Systems Analysis and Design
Systems Analysis and Design
CSC 480 Software Engineering
Chapter 9: The Client/Server Database Environment
Systems Analysis and Design With UML 2
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Systems Analysis and Design
Chapter 12: Physical Architecture Layer Design
Presentation transcript:

Design Strategy - Distributed Systems System Architectures CSIS3600 Systems Analysis and Design

Key Ideas The purpose of the analysis phase is to figure out what the business needs. The purpose of the design phase is to figure out how to provide it. The steps in both analysis and design phases are highly interrelated and may require much “going back and forth” PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

Key Definitions The system architecture design consists of plans for the hardware, software, communications, security, and global support for the new application The designers must decide if processing will occur in the server (server-based), at the personal computer (client- based), or in some combination of these (client-server based). PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

Key Definitions The network model shows major components of the system, where they are located and how they will be connected to one another. The hardware and software specifications describe these components in detail and aid those responsible for purchase and acquisition of these products. PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

Functions of the Application System Data storage Data access logic Application logic Presentation logic PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved.

Stand Alone Common technologies employed: Microsoft Access Foxpro Excel, even Java….

Shared Resources (file server) Common technologies employed: –File server (Windows) –Novell –Microsoft Access

Server Based or Centralized Computing Common technologies employed: –Small system - Microsoft Access, Larger system – AS400 applications –Hierarchical Database systems –Mainframes

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Server-Based Computing

Typical Software Development Environment for Large Centralized Computing An editor and compiler (used to be heavily COBOL, now C, Java, etc.) Transaction monitor to manage on-line transactions (CICS or Tuxedo) File management system (VSAM) or database management system (DB2)

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Alternative Clients In client based architectures, clients do most of the work (except data storage) and present the results Terminals Microcomputer (personal computer) Special purpose terminals (ATMs, kiosks, Palm Pilots, and many others)

Client Server (two tier) Client/server is a combination of a client or front- end portion that interacts with the user and a server or back-end portion that interacts with the shared resource. Server provides database system and shared access functions and resources such as database, printers, modems, high powered processors, etc. Some business logic may reside here usually as SQL stored procedures Client provides the user interface and often the application/business logic

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Client-Based Computing

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Client-Server-Based Computing (2 Tiers)

Client/Server continued The environment is typically heterogeneous and multivendor. The hardware platform and operating system of client and server are not usually the same. Client and server processes communicate through a well-defined set of standard application program interfaces (API's) and remote procedure calls (RPC's).

Client/Server continued Common technologies employed: RDBMS (Oracle, Sybase, Informix, Microsoft SQL Server) Client – Visual Basic, Powerbuilder, C++, Delphi API – Application Programming Interface to the database server and other shared resources and applications and Remote Procedure Calls to pass messages between client and server

Typical Software Development Environment for two tier Client/Server Rapid application development for quickly building the GUI that will be replicated and executed on all of the client PCs Automatic generation of template code for the GUI and associated system events (such as mouse clicks, keystrokes, etc.). A programmer only has to add business logic code. (Delphi, Powerbuilder, Visual Basic) Programming language that is compiled for replication and execution on the client PCs (Visual Basic, C++)

C/S development environment continued Connectivity for various relational database engines and interoperability with those engines. –Interoperability is achieved by including SQL database commands that will be sent to the database engine for execution on the server or stored procedures on the database server which can be ‘called’ from the client application (appropriate driver usually an ODBC driver) Report writing environment to simplify the creation of new end-user reports off a database (Crystal Reports, Business Objects, ReportSmith, etc.)

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Client-Server Attributes Typical Pros –Compatible with web-based system design –Scaleable –Work with multiple vendors/products –No central point of failure Typical Cons/Limits –Complexity –New programming languages and techniques (stress for personnel) –More complex to update

Client Server (n tier) Typical 3 tier architecture: –Data Management –Presentation –Business logic and data analysis

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Client-Server -- Three Tiers

Client Server (n tier) Common technologies employed: –RDBMS (Oracle, Sybase, Informix, Microsoft SQL Server) –Client – Visual Basic, C++, Powerbuilder, Delphi –Business logic – C++, Java, etc. –Middleware – ODBC

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Distributed Objects Computing Connectivity allows applications to transparently communicate with other programs or processes, regardless of their location. Middleware between clients and servers Update middleware when changing client code May reduce efficiency of the application CORBA DCOM And now with.Net SOAP

Typical Software Development Environment for n-tier Client/Server Support for heterogeneous computing platforms including Windows, Macs, Unix and legacy mainframes and minicomputers Automatic generation of template code for the GUI. A programmer only has to add business logic code. (Delphi, Powerbuilder, Visual Basic) Code generation and programming for both client and server. Most tools in this genre support pure object-oriented languages such as C++ and now Java

Typical Software Development for n-tier Client/Server continued Tools to help analysts and programmers partition application components between the clients and servers. Tools to help developers deploy and manage the finished application to clients and server including security management tools Sophisticated software version control and application management software

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. N-Tiered Client-Server Attributes Typical Pros –Separates processing to better balance load –More scaleable Typical Cons/Limits –Greater load on the network –More difficult to program and test

Internet Architecture Similar to n-tier client server Employs the idea of services and service layers

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Client-Server -- Four Tiers

Internet Architecture Common technologies employed: HTTP HTML CGI ASP, JSP, Java (Java applets, Java Beans)

Typical Software Development Environment for Internet Architecture HTML language used to construct WWW pages and links. Computer Gateway Interface – standard for publishing graphical WWW components constructs and links (Perl). XML – meta language that separates data from presentation

Development environment for Internet Architecture continued Java – general purpose programming language for creating platform independent programs and applets that can execute across the WWW. Active Server Pages - Active Server Pages are a language-independent framework designed by Microsoft for efficient coding of server-side scripts that are designed to be executed by a Web server in response to a user's request for a URL. Java Server Pages are the Java equivalent of ASP.

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Realities of Infrastructure Design Most often the infrastructure will be in place Coordination of infrastructure components is very complex The application developer will need to coordinate with infrastructure specialists

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Selecting a Computing Architecture Server-BasedClient-basedClient-server Cost of infrastructureVery highMediumLow Cost of developmentMediumLowHigh Ease of developmentLowHighLow-medium Interface capabilitiesLowHighHigh Control and securityHighLowMedium ScalabilityLowMediumHigh

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. The Network Model No standard format Conveys complexity of the system and how components fit together Components are –Clients –Equipment –Connection to external systems or networks

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Top-Level Network Model

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Hardware and Software Specification Used if new hardware or software must be purchased Actual acquisition of hardware and software usually left to a purchasing department -- especially in larger firms

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Steps in Hardware and Software Specification Note hardware in low-level network model to create list of needed hardware Describe equipment in as much detail as possible Consider whether increased processing and traffic will absorb unused hardware capacity Note all software running on each hardware component

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Global Requirements Multilingual requirements –Concurrent multilingual systems –Discrete multilingual systems Local versus centralized control Unstated norms (e.g. dates, currency) 24-7 Support Communications infrastructure

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Security Identifying Threats to the System A threat is any potential adverse occurrence that can do harm to the application or its data Threats come from internal as well as external sources Categories of threats –Disruptions, destruction and disaster –Unauthorized access

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Most Common Threats

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Assessing the Risk of Each Threat

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Creating Controls A control is something that mitigates or stops a threat Controls include –redundancy –fault tolerant servers –disaster recovery plans –anti-virus software

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Additional Controls Include A security policy Passwords and encryption Firewalls

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Summary The three fundamental computing architectures are server-based, client-based, and client-server based. The network model shows technical components of the system and their geographic location throughout the organization. Hardware and software must be specified for acquisition in the project The systems analyst needs to also account for global issues and security measures.