Elements of systems design

47
1 “Systems Analysis and Design” Elements of Systems Design Elements of Systems Design

description

 

Transcript of Elements of systems design

Page 1: Elements of systems design

1

“Systems Analysis and Design”

Elements of Systems DesignElements of Systems Design

Page 2: Elements of systems design

2

TopicsTopics

nn Elements of DesignElements of Designnn Inputs for System DesignInputs for System Designnn Design and Integrate the NetworkDesign and Integrate the Networknn Design the Application ArchitectureDesign the Application Architecturenn Design the User InterfacesDesign the User Interfacesnn Design the System InterfacesDesign the System Interfacesnn Prototype for Design DetailsPrototype for Design Detailsnn Deployment EnvironmentDeployment Environmentnn Software Application FunctionsSoftware Application Functionsnn Internet and WebInternet and Web--Based Application Based Application

ArchitectureArchitecturenn MiddlewareMiddleware

Page 3: Elements of systems design

3

Elements of DesignElements of Design

n Design is process of describing, organizing, and structuring system components at architectural design level and detailed design level

Focused on preparing for constructionLike developing blueprints

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

Page 4: Elements of systems design

4

Components Requiring Systems Components Requiring Systems DesignDesign

Page 5: Elements of systems design

5

Inputs for System DesignInputs for System Design

n Design

Converts functional models from analysis into models that represent the solution

Focused on technical issues

Requires less user involvement than analysis

n Design may use structured or OO approaches

Database can be relational, OO, or hybrid

User interface issues

Page 6: Elements of systems design

6

Analysis versus DesignAnalysis versus Design

Page 7: Elements of systems design

7

Traditional Traditional Structured Structured and Objectand Object--Oriented Oriented ModelsModels

Page 8: Elements of systems design

8

SDLC Phases with Design Phase SDLC Phases with Design Phase ActivitiesActivities

Page 9: Elements of systems design

9

Design Phase Activities and Key Design Phase Activities and Key QuestionsQuestions

Page 10: Elements of systems design

10

Design and Integrate the NetworkDesign and Integrate the Network

n Network specialists establish network based on strategic plan

n Project team typically integrates system into existing network

n Technical requirements have to do with communication via networks

n Technical issues handled by network specialists

Reliability, security, throughput, synchronization

Page 11: Elements of systems design

11

Design the Application Architecture Design the Application Architecture and Softwareand Software

n Specify how system use cases are carried out

n Described during system analysis as logical models of system activities

n After design alternative is selected, detailed computer processing is designed as physical models

n Approach varies depending on development and deployment environments

Page 12: Elements of systems design

12

Design the User InterfacesDesign the User Interfaces

n User interface quality is critical aspect of system

n Design of user interface defines how user interacts with system

GUI – windows, dialog boxes, mouse interaction

Sound, video, voice commands

n To user of system, user interface is the system

n User interface specialists – interface designers, usability consultants, human factors engineers

Page 13: Elements of systems design

13

Design the System InterfacesDesign the System Interfaces

n System interfaces enable systems to share and exchange information

Internal organization systemsInterfaces with systems outside organizationNew system interfaces with package application that organization has purchased and installed

n System interfaces can be complexn Organization needs very specialized

technical skills to work on these interfaces

Page 14: Elements of systems design

14

Design and Integrate the DatabaseDesign and Integrate the Database

n System analysis data model used to create physical database model

n Collection of traditional computer files, relational databases, and/or object-oriented databases

n Technical requirements, such as response times, determine database performance needs

n Design work might involvePerformance tuningIntegration between new and existing databases

Page 15: Elements of systems design

15

Prototype for Design DetailsPrototype for Design Details

n Continue to create and evaluate prototypes during design phase

n Prototypes confirm design choicesDatabaseNetwork architectureControls Programming environment

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

Page 16: Elements of systems design

16

Design and Integrate the System Design and Integrate the System ControlsControls

n Final design activity to ensure system has adequate safeguards (system controls) to protect organizational assets

n Controls are needed for all other design activities

User interface – limit access to authorized usersSystem interface – protect from other systemsApplication architecture – record transactionsDatabase – protect from software/hardware failureNetwork design – protect communications

Page 17: Elements of systems design

17

Network DesignNetwork Design

n Integrate network needs of new system into existing network infrastructure

n Describe processing activity and network connectivity at each system location

n Describe communications protocols and middleware that connects layers

n Ensure that network capacity is sufficient Data size per access type and average Peak number of access per minute or hour

Page 18: Elements of systems design

18

Computer NetworksComputer Networks

n Set of transmission lines, specialized hardware, and communication protocols

n Enables communication among different users and computer systems

n Local area network (LAN) less than one kilometer long – connects computers within single building

n Wide area network (WAN) over one kilometer long – implies much greater, global, distances

n Router – directs information within network

Page 19: Elements of systems design

19

A Possible Network Configuration A Possible Network Configuration for RMOfor RMO

Page 20: Elements of systems design

20

The Internet, Intranets, and The Internet, Intranets, and ExtranetsExtranets

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

n IntranetsPrivate networks using same TCP/IP protocols as the InternetLimited to internal users

n ExtranetsIntranets that have been extended outside the organization

Page 21: Elements of systems design

21

Network Diagram for RMO Network Diagram for RMO Customer Support SystemCustomer Support System

Page 22: Elements of systems design

22

Deployment EnvironmentDeployment Environment

n Deployment environment definition bridges analysis and design

HardwareSystem softwareNetworking

n Common deployment environments in which system will operate

n Related design patterns and architectures for application software

Page 23: Elements of systems design

23

Application ArchitectureApplication Architecture

n Complex hardware/networks require more complex software architectures

n 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

Page 24: Elements of systems design

24

Software Application FunctionsSoftware Application Functions

n Presentation logic (i.e. HCI)n Application logic (i.e. the processing of business

rules processing) n Data access logic (i.e. the processing required

to access data – database queries in SQL)n Data storage (i.e. data files)

n There are several alternatives for the processing environment:

Centralized systems

Distributed computing

Page 25: Elements of systems design

25

Centralized systemsCentralized systems• Prior to the early 1970’s 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 don’t 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

Page 26: Elements of systems design

26

• 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)

Single Computer ArchitectureSingle Computer Architecture

Page 27: Elements of systems design

27

SingleSingle--Computer, Clustered, and Computer, Clustered, and Multicomputer ArchitecturesMulticomputer Architectures

Page 28: Elements of systems design

28

ServerServer--based Architecturebased Architecture

Page 29: Elements of systems design

29

Clustered ArchitectureClustered 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

Page 30: Elements of systems design

30

• 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)

Multicomputer ArchitectureMulticomputer Architecture

Page 31: Elements of systems design

31

Distributed ArchitectureDistributed Architecture

n Distributes system across several computers and locations – distributed computing

n Relies on communication networks for geographic connectivity

n Client/server architecture dominant model for distributed computing

Page 32: Elements of systems design

32

Client/Server ArchitectureClient/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

n Advantage – deployment flexibilityLocation, scalability, maintainability

n Disadvantage – complexity Performance, security, and reliability

Page 33: Elements of systems design

33

Interaction Among Multiple Interaction Among Multiple Clients and a Single ServerClients and a Single Server

Page 34: Elements of systems design

34

Client/Server Architecture: shared Client/Server Architecture: shared printerprinter

Page 35: Elements of systems design

35

“Fat” Client Architecture“Fat” Client Architecture

Page 36: Elements of systems design

36

“Fat” Server Architecture“Fat” Server Architecture

Page 37: Elements of systems design

37

• 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 architecturen 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)

n It makes the layer relatively independent of one another, thus they can be placed on different computer systems with network connections and middleware serving

ThreeThree--Layer Client/Server Layer Client/Server ArchitectureArchitecture

Page 38: Elements of systems design

38

ThreeThree--Layer ArchitectureLayer Architecture

Page 39: Elements of systems design

39

ThreeThree--Layer Architecture Software Layer Architecture Software Application FunctionsApplication Functions

Page 40: Elements of systems design

40

• When processing requirements or data resources are complex, three-layer architecture can be expanded into a larger number of layers (n-layer 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.

NN--Layer Client/Server ArchitectureLayer Client/Server Architecture

Page 41: Elements of systems design

41

NN--Layer ArchitectureLayer Architecture

Page 42: Elements of systems design

42

FourFour--Tier ArchitectureTier Architecture

Page 43: Elements of systems design

43

Internet and WebInternet and Web--Based Based Application ArchitectureApplication Architecture

n Web is complex example of client/server architecture

n Can use Web protocols and browsers as application interfaces

n BenefitsAccessibilityLow-cost communicationWidely implemented standards

Page 44: Elements of systems design

44

Negative Aspects of Negative Aspects of Internet Application DeliveryInternet Application Delivery

n Breaches of security

n Fluctuating reliability of network throughput

n Throughput can be limited

n Volatile, changing standards

Page 45: Elements of systems design

45

Web Services ArchitectureWeb Services Architecture

n A client/server architecturen Packages software functionality into

server processes (“services”) n Makes services available to

applications via Web protocolsn Web services are available to internal

and external applications Developers can assemble an application using existing Web services

Page 46: Elements of systems design

46

Web Services Architecture Web Services Architecture (continued)(continued)

Page 47: Elements of systems design

47

MiddlewareMiddleware

n Aspect of distributed computing

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

n Transaction process monitors, object request brokers (ORBs), Web services directories

n Designers reply on standard frameworks and protocols incorporated into middleware