Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Systems Analysis and DesignSystems Analysis and Design
5th Edition5th Edition
Chapter 8. Architecture DesignChapter 8. Architecture Design
Alan Dennis, Barbara Haley Wixom, and Roberta Roth
8-1© Copyright 2011 John Wiley & Sons, Inc.
Chapter 8 Outline
Elements of an architecture
design.
Creating an architecture design.
Hardware and software
specification.
© Copyright 2011 John Wiley & Sons, Inc. 8-2
INTRODUCTION
 Architecture design
– Plans for how the system will be distributed across
multiple computers and what hardware, operating
system software, and application software will be
used for each computer.
 Key factors in architecture design
– Nonfunctional requirements developed early in the
analysis phase play a key role in architecture design.
 Hardware and software specification
– Defines what hardware and software are needed for
the new system.
© Copyright 2011 John Wiley & Sons, Inc. 8-3
ELEMENTS OF AN ARCHITECTURE
DESIGN
 The objective of architecture design
is to determine how the software
components of the information
system will be assigned to the
hardware devices of the system.
© Copyright 2011 John Wiley & Sons, Inc. 8-4
Architectural Components
 The major architectural components of any system
are the software and the hardware.
 All software systems can be divided into four basic
functions:
- Data storage.
- Data access logic: the processing required to access
stored data.
- Application logic: the logic documented in the DFDs,
use cases, and functional requirements.
- Presentation logic: the display of information to the
user and the acceptance of the user’s commands.
© Copyright 2011 John Wiley & Sons, Inc. 8-5
(cont’d)
The three primary hardware
components:
- Client computers: Input-output devices
employed by users (e.g., PCs, laptops,
handheld devices, smart phones)
- Servers: Larger multi-user computers
used to store software and data.
- The network: Connects the computers.
© Copyright 2011 John Wiley & Sons, Inc. 8-6
Client-Server Architectures
© Copyright 2011 John Wiley & Sons, Inc. 8-7
Client-server architectures balance the
processing between client devices and one or
more server devices.
The client is responsible for the presentation
logic, whereas the server is responsible for the
data access logic and data storage.
A thick or fat client contains all or most of
application logic; whereas a thin client
contains a small portion of the application
logic.
(cont’d)
© Copyright 2011 John Wiley & Sons, Inc. 8-8
(cont’d)
 Client-server architectures have four important
benefits.
- Scalable
- Can support different types of clients and servers
through middleware.
- The presentation logic, the application logic, and the
data processing logic can be independent.
- If a server fails, only the applications requiring that
sever are affected.
 The major limitation of client-server architectures is
their complexity.
© Copyright 2011 John Wiley & Sons, Inc. 8-9
Client-Server Tiers
 There are many ways in which the
application logic can be partitioned
between the client and the server.
The arrangement in Figure 8-1 is
called two-tiered architecture.
© Copyright 2011 John Wiley & Sons, Inc. 8-10
(cont’d)
Three-tiered architecture
© Copyright 2011 John Wiley & Sons, Inc. 8-11
(cont’d)
n-tiered architecture
© Copyright 2011 John Wiley & Sons, Inc. 8-12
Less Common Architectures
Server-Based Architectures
© Copyright 2011 John Wiley & Sons, Inc. 8-13
Client-Based Architectures
© Copyright 2011 John Wiley & Sons, Inc. 8-14
Advances in Architecture
Configurations
Advances in hardware, software, and
networking have given rise to a
number of new architecture options.
- Virtualization.
- Cloud computing.
© Copyright 2011 John Wiley & Sons, Inc. 8-15
Virtualization
 Virtualization refers to a creation of a virtual
device or resource, such as a server or storage
device.
 Server virtualization involves partitioning a
physical server into smaller virtual servers.
 Storage virtualization involves combining
multiple network storage devices into what
appears to be single storage unit.
© Copyright 2011 John Wiley & Sons, Inc. 8-16
Cloud Computing
 Cloud computing – everything from
computing power to computing
infrastructure, applications, business
processes to personal collaboration can be
delivered as a service wherever and whenever
needed.
The “cloud” can be defined as the set of
hardware, networks, storages, devices, and
interfaces that combine to deliver aspects of
computing as a service.© Copyright 2011 John Wiley & Sons, Inc. 8-17
(cont’d)
 Cloud computing can be
implemented in three ways:
- private cloud,
- public cloud, and
- hybrid cloud.
 At this time, cloud computing is in
its early stage of development.
© Copyright 2011 John Wiley & Sons, Inc. 8-18
(cont’d)
 Advantages of cloud computing
1. The resources allocated can be increased or
deceased based on demand.
2. Cloud customers can obtain cloud resources
in a straightforward fashion.
3. Cloud services typically have standardized
APIs (application program interfaces).
4. The cloud computing model enables
customers to be billed for resources as they
are used. © Copyright 2011 John Wiley & Sons, Inc. 8-19
Comparing Architecture Options
Most systems are built to use the existing
infrastructure in the organization, so often
the current infrastructure restricts the
choice of architecture.
Each of the architectures discussed has its
strengths and weaknesses.
Client-server architectures are strongly
favored on the basis of the cost of
infrastructure.
© Copyright 2011 John Wiley & Sons, Inc. 8-20
CREATING AN ARCHITECTURE DESIGN
 Creating an architecture design begins with
the nonfunctional requirements.
Refine the nonfunctional requirements into
more detailed requirements for the
selection of architecture.
The nonfunctional requirements and the
architecture design are used to develop the
hardware and software specification.
© Copyright 2011 John Wiley & Sons, Inc. 8-21
Operational Requirements
© Copyright 2011 John Wiley & Sons, Inc. 8-22
Performance Requirements
© Copyright 2011 John Wiley & Sons, Inc. 8-23
Security Requirements
© Copyright 2011 John Wiley & Sons, Inc. 8-24
Cultural and Political Requirements
© Copyright 2011 John Wiley & Sons, Inc. 8-25
Designing the Architecture
In many cases, the technical environment
requirements as driven by the business
requirements define the application
architecture.
If the technical environment requirements do
not require the choice of a specific
architecture, then other nonfunctional
requirements become important for designing
the architecture.
© Copyright 2011 John Wiley & Sons, Inc. 8-26
(cont’d)
© Copyright 2011 John Wiley & Sons, Inc. 8-27
Nonfunctional Requirements and
Their Implications for Architecture
Design
HARDWARE AND SOFTWARE
SPECIFICATION
The design phase is also the time to
begin selecting and acquiring the
hardware and software that will be
needed for the future system.
The hardware and software
specification is a document that
describes what hardware and software
are needed to support the application.
© Copyright 2011 John Wiley & Sons, Inc. 8-28
(cont’d)
 Sample hardware and software specification
© Copyright 2011 John Wiley & Sons, Inc. 8-29
(cont’d)
 First, you define software
– Define the operating system and any special purpose
software
– Consider additional costs such as training, warranty,
maintenance, licensing agreements.
 Next, you create a list of the hardware needed
– Database servers, network servers, peripheral devices,
clients, backup devices, storage components, and
others.
 Finally, you describe the minimum requirements for
each piece of hardware.
© Copyright 2011 John Wiley & Sons, Inc. 8-30
(cont’d)
Factors in hardware and software selection
© Copyright 2011 John Wiley & Sons, Inc. 8-31
SUMMARY
Application architecture.
- Client-server architecture.
- Advances in architecture configurations:
virtualization and cloud computing.
Architecture Design.
- Nonfunctional requirements.
Hardware and software
specification.
- A document that describes what hardware and
software are needed to support the application.
© Copyright 2011 John Wiley & Sons, Inc. 8-32
Copyright 2011 John Wiley & Sons, Inc.
All rights reserved. Reproduction or translation of this work
beyond that permitted in Section 117 of the 1976 United States
Copyright Act without the express written permission of the
copyright owner is unlawful. Request for further information
should be addressed to the Permissions Department, John Wiley
& Sons, Inc. The purchaser may make back-up copies for his/her
own use only and not for redistribution or resale. The Publisher
assumes no responsibility for errors, omissions, or damages,
caused by the use of these programs or from the use of the
information contained herein.
© Copyright 2011 John Wiley & Sons, Inc. 8-33

More Related Content

Ch08-Architecture Design

  • 1. Systems Analysis and DesignSystems Analysis and Design 5th Edition5th Edition Chapter 8. Architecture DesignChapter 8. Architecture Design Alan Dennis, Barbara Haley Wixom, and Roberta Roth 8-1© Copyright 2011 John Wiley & Sons, Inc.
  • 2. Chapter 8 Outline Elements of an architecture design. Creating an architecture design. Hardware and software specification. © Copyright 2011 John Wiley & Sons, Inc. 8-2
  • 3. INTRODUCTION  Architecture design – Plans for how the system will be distributed across multiple computers and what hardware, operating system software, and application software will be used for each computer.  Key factors in architecture design – Nonfunctional requirements developed early in the analysis phase play a key role in architecture design.  Hardware and software specification – Defines what hardware and software are needed for the new system. © Copyright 2011 John Wiley & Sons, Inc. 8-3
  • 4. ELEMENTS OF AN ARCHITECTURE DESIGN  The objective of architecture design is to determine how the software components of the information system will be assigned to the hardware devices of the system. © Copyright 2011 John Wiley & Sons, Inc. 8-4
  • 5. Architectural Components  The major architectural components of any system are the software and the hardware.  All software systems can be divided into four basic functions: - Data storage. - Data access logic: the processing required to access stored data. - Application logic: the logic documented in the DFDs, use cases, and functional requirements. - Presentation logic: the display of information to the user and the acceptance of the user’s commands. © Copyright 2011 John Wiley & Sons, Inc. 8-5
  • 6. (cont’d) The three primary hardware components: - Client computers: Input-output devices employed by users (e.g., PCs, laptops, handheld devices, smart phones) - Servers: Larger multi-user computers used to store software and data. - The network: Connects the computers. © Copyright 2011 John Wiley & Sons, Inc. 8-6
  • 7. Client-Server Architectures © Copyright 2011 John Wiley & Sons, Inc. 8-7 Client-server architectures balance the processing between client devices and one or more server devices. The client is responsible for the presentation logic, whereas the server is responsible for the data access logic and data storage. A thick or fat client contains all or most of application logic; whereas a thin client contains a small portion of the application logic.
  • 8. (cont’d) © Copyright 2011 John Wiley & Sons, Inc. 8-8
  • 9. (cont’d)  Client-server architectures have four important benefits. - Scalable - Can support different types of clients and servers through middleware. - The presentation logic, the application logic, and the data processing logic can be independent. - If a server fails, only the applications requiring that sever are affected.  The major limitation of client-server architectures is their complexity. © Copyright 2011 John Wiley & Sons, Inc. 8-9
  • 10. Client-Server Tiers  There are many ways in which the application logic can be partitioned between the client and the server. The arrangement in Figure 8-1 is called two-tiered architecture. © Copyright 2011 John Wiley & Sons, Inc. 8-10
  • 12. (cont’d) n-tiered architecture © Copyright 2011 John Wiley & Sons, Inc. 8-12
  • 13. Less Common Architectures Server-Based Architectures © Copyright 2011 John Wiley & Sons, Inc. 8-13
  • 14. Client-Based Architectures © Copyright 2011 John Wiley & Sons, Inc. 8-14
  • 15. Advances in Architecture Configurations Advances in hardware, software, and networking have given rise to a number of new architecture options. - Virtualization. - Cloud computing. © Copyright 2011 John Wiley & Sons, Inc. 8-15
  • 16. Virtualization  Virtualization refers to a creation of a virtual device or resource, such as a server or storage device.  Server virtualization involves partitioning a physical server into smaller virtual servers.  Storage virtualization involves combining multiple network storage devices into what appears to be single storage unit. © Copyright 2011 John Wiley & Sons, Inc. 8-16
  • 17. Cloud Computing  Cloud computing – everything from computing power to computing infrastructure, applications, business processes to personal collaboration can be delivered as a service wherever and whenever needed. The “cloud” can be defined as the set of hardware, networks, storages, devices, and interfaces that combine to deliver aspects of computing as a service.© Copyright 2011 John Wiley & Sons, Inc. 8-17
  • 18. (cont’d)  Cloud computing can be implemented in three ways: - private cloud, - public cloud, and - hybrid cloud.  At this time, cloud computing is in its early stage of development. © Copyright 2011 John Wiley & Sons, Inc. 8-18
  • 19. (cont’d)  Advantages of cloud computing 1. The resources allocated can be increased or deceased based on demand. 2. Cloud customers can obtain cloud resources in a straightforward fashion. 3. Cloud services typically have standardized APIs (application program interfaces). 4. The cloud computing model enables customers to be billed for resources as they are used. © Copyright 2011 John Wiley & Sons, Inc. 8-19
  • 20. Comparing Architecture Options Most systems are built to use the existing infrastructure in the organization, so often the current infrastructure restricts the choice of architecture. Each of the architectures discussed has its strengths and weaknesses. Client-server architectures are strongly favored on the basis of the cost of infrastructure. © Copyright 2011 John Wiley & Sons, Inc. 8-20
  • 21. CREATING AN ARCHITECTURE DESIGN  Creating an architecture design begins with the nonfunctional requirements. Refine the nonfunctional requirements into more detailed requirements for the selection of architecture. The nonfunctional requirements and the architecture design are used to develop the hardware and software specification. © Copyright 2011 John Wiley & Sons, Inc. 8-21
  • 22. Operational Requirements © Copyright 2011 John Wiley & Sons, Inc. 8-22
  • 23. Performance Requirements © Copyright 2011 John Wiley & Sons, Inc. 8-23
  • 24. Security Requirements © Copyright 2011 John Wiley & Sons, Inc. 8-24
  • 25. Cultural and Political Requirements © Copyright 2011 John Wiley & Sons, Inc. 8-25
  • 26. Designing the Architecture In many cases, the technical environment requirements as driven by the business requirements define the application architecture. If the technical environment requirements do not require the choice of a specific architecture, then other nonfunctional requirements become important for designing the architecture. © Copyright 2011 John Wiley & Sons, Inc. 8-26
  • 27. (cont’d) © Copyright 2011 John Wiley & Sons, Inc. 8-27 Nonfunctional Requirements and Their Implications for Architecture Design
  • 28. HARDWARE AND SOFTWARE SPECIFICATION The design phase is also the time to begin selecting and acquiring the hardware and software that will be needed for the future system. The hardware and software specification is a document that describes what hardware and software are needed to support the application. © Copyright 2011 John Wiley & Sons, Inc. 8-28
  • 29. (cont’d)  Sample hardware and software specification © Copyright 2011 John Wiley & Sons, Inc. 8-29
  • 30. (cont’d)  First, you define software – Define the operating system and any special purpose software – Consider additional costs such as training, warranty, maintenance, licensing agreements.  Next, you create a list of the hardware needed – Database servers, network servers, peripheral devices, clients, backup devices, storage components, and others.  Finally, you describe the minimum requirements for each piece of hardware. © Copyright 2011 John Wiley & Sons, Inc. 8-30
  • 31. (cont’d) Factors in hardware and software selection © Copyright 2011 John Wiley & Sons, Inc. 8-31
  • 32. SUMMARY Application architecture. - Client-server architecture. - Advances in architecture configurations: virtualization and cloud computing. Architecture Design. - Nonfunctional requirements. Hardware and software specification. - A document that describes what hardware and software are needed to support the application. © Copyright 2011 John Wiley & Sons, Inc. 8-32
  • 33. Copyright 2011 John Wiley & Sons, Inc. All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without the express written permission of the copyright owner is unlawful. Request for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc. The purchaser may make back-up copies for his/her own use only and not for redistribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages, caused by the use of these programs or from the use of the information contained herein. © Copyright 2011 John Wiley & Sons, Inc. 8-33