Title: ITEC 3010 Systems Analysis and Design, I
1ITEC 3010 Systems Analysis and Design,
I LECTURE 8-2 Elements of Systems Design
Prof. Peter Khaiter
2Topics
- 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
3Elements 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?
4Components Requiring Systems Design
5Inputs 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
6Analysis versus Design
7Traditional Structured and Object-Oriented Models
8SDLC Phases with Design Phase Activities
9Design Phase Activities and Key Questions
10Design 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
11Design 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
12Design 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
13Design 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
14Design 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
15Prototype 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
16Design 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
17Network 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
18Computer 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
19A Possible Network Configuration for RMO
20The 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
21Network Diagram for RMO Customer Support System
22Deployment 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
23Application 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
24Software 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
25Centralized 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
26Single 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)
27Single-Computer, Clustered, and Multicomputer
Architectures
28Server-based Architecture
29Clustered 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
30Multicomputer 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)
31Distributed 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
32Client/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
33Interaction Among Multiple Clients and a Single
Server
34 Client/Server Architecture shared printer
35Fat Client Architecture
36Fat Server Architecture
37Three-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
38Three-Layer Architecture
39Three-Layer Architecture Software Application
Functions
40N-Layer Client/Server Architecture
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.
41N-Layer Architecture
42Four-Tier Architecture
43Internet 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
44Negative Aspects of Internet Application Delivery
- Breaches of security
- Fluctuating reliability of network throughput
- Throughput can be limited
- Volatile, changing standards
45Web 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
46Web Services Architecture (continued)
47Middleware
- 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
48Readings
Todays lecture Chapter 9 Elements of Systems
Design For next lecture Chapter 11
Object-Oriented Design
Thank you !!!