You are on page 1of 48

ITEC 2010 Systems Analysis and Design, I

LECTURE 8-2: Elements of Systems Design

[Prof. Peter Khaiter]

Topics

Elements of Design Inputs for System Design Design and Integrate the Network Design the Application Architecture Design the User Interfaces Design the System Interfaces Prototype for Design Details Deployment Environment Software Application Functions Internet and Web-Based Application Architecture Middleware

Elements of Design

Design is process of describing, organizing, and structuring system components at architectural design level and detailed design level
Focused on preparing for construction Like developing blueprints

Three questions
What components require systems design? What are inputs to and outputs of design process? How is systems design done?
3

Components Requiring Systems Design

Inputs for System Design

Design
Converts functional models from analysis into models that represent the solution Focused on technical issues Requires less user involvement than analysis

Design may use structured or OO approaches


Database can be relational, OO, or hybrid
User interface issues
5

Analysis versus Design

Traditional Structured and ObjectOriented Models

SDLC Phases with Design Phase Activities

Design Phase Activities and Key Questions

Design and Integrate the Network

Network specialists establish network based on strategic plan


Project team typically integrates system into existing network Technical requirements have to do with communication via networks

Technical issues handled by network specialists


Reliability, security, throughput, synchronization
10

Design the Application Architecture and Software

Specify how system use cases are carried out


Described during system analysis as logical models of system activities After design alternative is selected, detailed computer processing is designed as physical models Approach varies depending on development and deployment environments
11

Design the User Interfaces


User interface quality is critical aspect of system


Design of user interface defines how user interacts with system
GUI windows, dialog boxes, mouse interaction Sound, video, voice commands

To user of system, user interface is the system User interface specialists interface designers, usability consultants, human factors engineers
12

Design the System Interfaces

System interfaces enable systems to share and exchange information


Internal organization systems Interfaces with systems outside organization New system interfaces with package application that organization has purchased and installed

System interfaces can be complex Organization needs very specialized technical skills to work on these interfaces
13

Design and Integrate the Database


System analysis data model used to create physical database model Collection of traditional computer files, relational databases, and/or object-oriented databases Technical requirements, such as response times, determine database performance needs Design work might involve
Performance tuning Integration between new and existing databases

14

Prototype for Design Details


Continue to create and evaluate prototypes during design phase Prototypes confirm design choices
Database Network architecture Controls Programming environment

Rapid application development (RAD) design prototypes evolve into finished system
15

Design and Integrate the System Controls

Final design activity to ensure system has adequate safeguards (system controls) to protect organizational assets Controls are needed for all other design activities
User interface limit access to authorized users System interface protect from other systems Application architecture record transactions Database protect from software/hardware failure Network design protect communications
16

Network Design

Integrate network needs of new system into existing network infrastructure Describe processing activity and network connectivity at each system location Describe communications protocols and middleware that connects layers Ensure that network capacity is sufficient
Data size per access type and average Peak number of access per minute or hour
17

Computer Networks

Set of transmission lines, specialized hardware, and communication protocols Enables communication among different users and computer systems Local area network (LAN) less than one kilometer long connects computers within single building Wide area network (WAN) over one kilometer long implies much greater, global, distances Router directs information within network
18

A Possible Network Configuration for RMO

19

The Internet, Intranets, and Extranets

Internet global collection of networks that use TCP/IP networking protocols Intranets

Private networks using same TCP/IP protocols as the Internet Limited to internal users

Extranets
Intranets that have been extended outside the organization
20

Network Diagram for RMO Customer Support System

21

Deployment Environment

Deployment environment definition bridges analysis and design


Hardware System software Networking

Common deployment environments in which system will operate Related design patterns and architectures for application software 22

Application Architecture

Complex hardware/networks require more complex software architectures


There are commonly used approaches (patterns) for application architecture
Client/server architecture Three-layer client/server architecture Web services architecture Internet and Web-based application architecture

23

Software Application Functions


Presentation logic (i.e. HCI) Application logic (i.e. the processing of business rules processing) Data access logic (i.e. the processing required to access data database queries in SQL) Data storage (i.e. data files)
There are several alternatives for the processing environment:
Centralized systems Distributed computing
24

Centralized systems
Prior to the early 1970s there was only one technological environment the mainframe computer system at a central location The only options focused around kinds of input/output (e.g., keypunch, key-to-tape, or interactive input using video display terminal) and whether input/output devices would be placed in remote locations Although they are no longer the preferred platform for deploying ISs, they are still widely used as a subsystem of a larger, sometimes distributed information system or for large-scale batch processing applications (e.g., banking, insurance, government, etc.) where: Some input transactions dont need to be processed in real time On-line data-entry personnel can be centrally located Large numbers of periodic outputs are produced by the system There are three types of centralized systems: single, clustered and multicomputer architectures
25

Single Computer Architecture


Places all information system resources on a single computer system and its directly attached peripheral devices Users interact with the system via simple input/output devices directly connected to the computer Requires all users be located near the computer All 4 software application functions are realized on a mainframe computer (server host) server-based architecture Advantage: Simplicity of maintenance: relatively easy to design, build and operate Disadvantage: The capacity limits make single computer impractical or unusable for large ISs: cannot provide all the required processing, data storage, and data retrieval tasks. However, many systems require more computing power than one single machine can provide (a clustered or multicomputer architecture is required)
26

Single-Computer, Clustered, and Multicomputer Architectures

27

Server-based Architecture

28

Clustered Architecture
Clustered architecture is a group (or cluster) of computers of the same type that have the same operating environment and share resources Computers from the same manufacturer and model family are networked together Application programs may be executed on any machine in the cluster without modification due to similar hardware and operating systems Cluster acts like a single large computer system (program movement and access to resources on other machines occur quickly and efficiently due to rapid and direct communication at the operating system level) Often one computer may act as entry point and the others function as slave computers
29

Multicomputer Architecture
Multicomputer architecture is a group of dissimilar computers that are linked together but the hardware and operating systems are not required to be a similar as in the clustered architecture Hardware and software differences do not allow movement of application programs between computers (instead, resources are exclusively assigned to each computer system) System still functions like one single large computer Can have central computer and slave computers Main computer may execute programs and hold database The front-end computer may handle all communication lines with other computers or simple terminals Notes on Centralized Systems Clustered architectures may be cost efficient and provide greater total capacity if similar operating system and hardware are used Multicomputer architectures are good when the centralized system can be decomposed into relatively independent subsystems (each possibly with its own operating system and/or hardware platform) 30

Distributed Architecture

Distributes system across several computers and locations distributed computing


Relies on communication networks for geographic connectivity Client/server architecture dominant model for distributed computing
31

Client/Server Architecture
The dominant architectural model for distributing information resources Two-tire architecture divides the information system processes into two classes: Server: manages system resources and provides access to those resources and services to other computers on the network Client computer: uses communication interface to requests services from other computers on the network Computer software that implements communication protocols on the network is called middleware

Advantage deployment flexibility


Location, scalability, maintainability

Disadvantage complexity
Performance, security, and reliability
32

Interaction Among Multiple Clients and a Single Server

33

Client/Server Architecture: shared printer

34

Fat Client Architecture

35

Fat Server Architecture

36

Three-Layer Client/Server Architecture


The data layer is a layer on a client-server configuration that manages stored data implemented as one or more databases The business logic layer contains the programs that implement the rules and procedures of business processing (or program logic of the application) The view layer contains the user interface and other components to access the system (accepts user input, and formats and displays processing results) This approach is called tree-layer architecture The IS divided into three layer is relatively easy to distribute and replicate across a network (interactions among the layers are always have a form of either request or response) It makes the layer relatively independent of one another, thus they can be placed on different computer systems with network connections and middleware serving
37

Three-Layer Architecture

38

Three-Layer Architecture Software Application Functions

39

N-Layer Client/Server Architecture


When processing requirements or data resources are complex, threelayer architecture can be expanded into a larger number of layers (nlayer or n-tiered architecture) Next slide shows an example in which the data layer is split into two separate layers: the combined database server and servers that control the individual databases (marketing, production, accounting). The business logic layer interacts with a combined database server that provides a unified view of the data stored in several different databases. The responses from the individual database servers are then combined to create a single response to send to the business logic layer.

40

N-Layer Architecture

41

Four-Tier Architecture

42

Internet and Web-Based Application Architecture

Web is complex example of client/server architecture Can use Web protocols and browsers as application interfaces Benefits

Accessibility Low-cost communication Widely implemented standards


43

Negative Aspects of Internet Application Delivery

Breaches of security
Fluctuating reliability of network throughput Throughput can be limited

Volatile, changing standards


44

Web Services Architecture

A client/server architecture Packages software functionality into server processes (services) Makes services available to applications via Web protocols Web services are available to internal and external applications

Developers can assemble an application using existing Web services 45

Web Services Architecture (continued)

46

Middleware

Aspect of distributed computing


Connects parts of an application and enables requests and data to pass between them

Transaction process monitors, object request brokers (ORBs), Web services directories
Designers reply on standard frameworks and protocols incorporated into middleware
47

Readings

Todays lecture: Chapter 9 Elements of Systems Design For next lecture: Chapter 11 ObjectOriented Design

48

You might also like