Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 71

Systems Analysis and Design

LECTURE 4

9-1
Types of System Design

Logical Design

Logical design pertains to an abstract representation of


the data flow, inputs, and outputs of the system. It
describes the inputs (sources), outputs (destinations),
databases (data stores), procedures (data flows) all in a
format that meets the user requirements.
While preparing the logical design of a system, the
system analyst specifies the user needs at level of detail
that virtually determines the information flow into and out
of the system and the required data sources. Data flow
diagram, E-R diagram modeling are used.
Conceptual Data Modeling

It is the representation of organizational data which


includes all the major entities and relationship.
System analysts develop a conceptual data model for
the current system that supports the scope and
requirement for the proposed system.
The main aim of conceptual data modeling is to
capture as much meaning of data as possible. Most
organization today use conceptual data modeling
using E-R model which uses special notation to
represent as much meaning about data as possible.
What is an ER diagram?

 An Entity Relationship (ER) Diagram is a type of flowchart


that illustrates how “entities” such as people, objects or
concepts relate to each other within a system. ER Diagrams
are most often used to design or debug relational
databases in the fields of software engineering, business
information systems, education and research. Also known
as ERDs or ER Models, they use a defined set of symbols
such as rectangles, diamonds, ovals and connecting lines to
depict the interconnectedness of entities, relationships and
their attributes. They mirror grammatical structure, with
entities as nouns and relationships as verbs.
 ER diagrams are related to data structure
diagrams (DSDs), which focus on the relationships
of elements within entities instead of
relationships between entities themselves. ER
diagrams also are often used in conjunction with
data flow diagrams (DFDs), which map out the
flow of information for processes or systems.
The components and features of an
ER diagram

ER Diagrams are composed of


entities, relationships and attributes.
They also depict cardinality, which
defines relationships in terms of
numbers. Here’s a glossary:
 Entity- this represents the name of an object, person, thing, event, or place
where data is stored. This is usually represented by rectangles.

 Weak Entity- unlike a strong entity that is defined by its attributes, a weak
entity solely depends on the existence of another entity.

 Attribute- refers to the unique characteristic or property of an entity.

 Derived Attribute- refers to an attribute derived or based on another


attribute.

 Multivalued Attribute- a type of attribute that can have multiple values.

 Relationship- defines the interaction between two entities.

 Cardinality- this refers to the occurrences of a relationship. In particular, it


specifies the maximum number of relationships between two entities.
Difference between a Strong or
Weak Entity
 A weak entity is one that can only exist when owned by
another one. For example: a ROOM can only exist in a
BUILDING. On the other hand, a TIRE might be
considered as a strong entity because it also can exist
without being attached to a CAR.
9-12
Factors Affecting System Complexity
 To develop good quality of system software, it is
necessary to develop a good design. Therefore, the
main focus on while developing the design of the
system is the quality of the software design. A good
quality software design is the one, which minimizes
the complexity and cost expenditure in software
development.

 The two important concepts related to the system


development that help in determining the complexity
of a system are coupling and cohesion.
Coupling
 Coupling is the measure of the independence of components.
It defines the degree of dependency of each module of system
development on the other. In practice, this means the stronger
the coupling between the modules in a system, the more
difficult it is to implement and maintain the system.
 Each module should have simple, clean interface with other
modules, and that the minimum number of data elements
should be shared between modules.
 It simply means that one object requires another object
to complete its assigned task.

High Coupling
 These type of systems have interconnections with program
units dependent on each other. Changes to one subsystem
leads to high impact on the other subsystem.
Low Coupling

These type of systems are made up of components which


are independent or almost independent. A change in one
subsystem does not affect any other subsystem.
Types of Coupling
•Content Coupling − When one component
actually modifies another, then the modified
component is completely dependent on modifying
one.
•Common Coupling − Two modules are common
coupled if they share information through some
global data items.
•Control Coupling − When one component passes
parameters to control the activity of another
component.
Cohesion
 Cohesion is the measure of closeness of the relationship
between its components. It defines the amount of
dependency of the components of a module on one
another. In practice, this means the systems designer
must ensure that −
• They do not split essential processes into fragmented
modules.
• They do not gather together unrelated processes
represented as processes on the DFD into meaningless
modules.
 The best modules are those that are functionally
cohesive. The worst modules are those that are
coincidentally cohesive.
Types of Cohesion:

Coincidental cohesion is found in a component whose parts are unrelated to


another.
Communicational Cohesion: Two elements operate on the same input data or
contribute towards the same output data. For example, the user tries to update
the data into the database and after that they need to send that data to the
printer.
•Logical Cohesion − It is where several logically related functions or data elements
are placed in same component.
•Temporal Cohesion − It is when a component that is used to initialize a system or
set variables performs several functions in sequence, but the functions are related
by timing involved.
•Procedurally Cohesion − It is when functions are grouped together in a
component just to ensure this order. Ex- calculate student GPA, print student
record, calculate cumulative GPA, print cumulative GPA.
•Sequential Cohesion − The data which is the output of one activity is used an
input data for the next activity, the involvement of elements is as such.
 Both coupling and cohesion are
important factors in determining the
maintainability, scalability, and reliability
of a software system. High coupling and
low cohesion can make a system difficult
to change and test, while low coupling
and high cohesion make a system easier
to maintain and improve.
9-20
System Design

User Interface Design

9-21
INTRODUCTION
 Interface design is the process of
defining how the system will interact
with external entities.
 Here, we focus on the design of user
interfaces – how the system will interact
with the users.
 The design of system interfaces defines
how the systems exchange information
with other systems. 9-22
(cont’d)
 The user interface includes three fundamental parts:
- The Navigation mechanism - the way in which the
user tells the system what to do.
- The input mechanism – the way in which the system
captures information.
- The output mechanism - the way in which the system
provides information to the user or to other systems.
 Graphical user interfaces (GUI) use windows, menus,
icons, etc., and are the most common type of user
interfaces.

9-23
PRINCIPLES FOR USER INTERFACE DESIGN

User interface design is an art.


The goal is to make the interface
pleasing to the eye and simple to
use, while minimizing the user’s
effort.

9-24
(cont’d)

9-25
Layout
 Layout refers to organizing areas of the screen and
document for different purposes and using these
areas consistently throughout the user interface.
 The screen is often divided into three areas:
– The top area provides the user with ways to
navigate through the system;
– The middle and the largest area is for display of
user’s work; and
– The bottom area contains status information
about that the user is doing.
9-26
(cont’d)
 The areas and information within areas should
have a natural intuitive flow to minimize user’s
movement from one area to the next.
 Ideally, the areas will remain consistent in
– size,
– shape,
– placement for the forms, and
– reports used to present it.
9-27
(cont’d)
 Web page layout with multiple
navigation areas

9-28
(cont’d)
The flow between sections should also be consistent.

9-29
Content Awareness
 Content awareness refers to the ability of an
interface to make the user aware of the
information it contains.
 All interfaces should have titles.
 Menus should show where the user are and
where the user came from to get there.
 All area should be clear and well defined.
 Content awareness also applies to the fields and
field labels within each area, and the information
that a form or report contains.
9-30
Aesthetics
 Aesthetics refers to designing interfaces that
pleasing to the eye.
 Interfaces need to be functional and inviting
to use.
 In general, all forms and reports need a
certain amount of white space.
 The design of text is also important.
– Fonts and font sizes
– Colors and patterns
9-31
(cont’d)
An example of form with high density

9-32
User Experience
 User experience refers to designing the user
interface with the users’ level of computer
experience in mind.
 Novice users are concerned with easy of
learning.
 Expert users are concerned with easy of use.
 Often, the two objectives are complementary
and lead to similar design decisions, but
sometimes there are trade-offs.
9-33
Consistency
 Consistency usually refers to the interface within one
computer system, so that all parts of the same system
work in the same way. Ideally, however, the system
also should be consistent with other computer systems
in the organization.
 Consistency enables users to predict what will happen,
and to reduce the amount of learning.
 Consistency occurs at many different levels.
– Navigation controls;
– Terminology;
– Report and form design.
9-34
Minimize User Effort
 Minimizing user effort means using the
fewest possible mouse clicks or keystrokes
to move from one part of the system to
another.
 Three-clicks rule
– Users should be able to go from the start or main
menu of a system to the information or action
they want in no more than three mouse clicks or
three keystrokes.
9-35
USER INTERFACE DESIGN PROCESS

 User interface design is a five-step process


that is iterative.

© Copyright 2011 John Wiley & Sons, Inc. 9-36


Use Scenario Development

A use scenario is an outline of steps


that user s perform to accomplish
some part of their work.
Use scenarios are presented in a
simple narrative description that is
tied to the DFD.
9-37
(cont’d)
Examples of use scenarios

9-38
Interface Structure Design
 The interface structure design defines the basic
components of the interface and how they work
together to provide functionality to users.
 An interface structure diagram (ISD) is used to show
how all screens, forms, and reports are related and
how the user moves from one to another.
 An ISD is similar to a DFD in that it uses boxes and lines
to show the structure. However, unlike DFDs, there are
no commonly used rules or standards for ISDs.
 The basic structure of the interface follows the basic
structure of the business process itself as defined in the
process model. 9-39
(cont’d)
Interface Structure Diagram Example

9-40
Interface Standards Design
 The interface standards are the basic design
elements that are common across the individual
screens, forms, and reports within the system.
 An interface metaphor is a concept from the real
world that is used as a model for the computer
system.
– E.g., Quicken uses a checkbook metaphor.
 The interface template defines the general
appearance of all screens and the paper-based forms
and reports.
9-41
(cont’d)
 The template specifies the names that the
interface will use for the major interface
objects, the fundamental building blocks of
the system.
 The template gives names to the most
commonly used interface actions.
 The interface objects and actions, and also
their status, may be represented by interface
icons.
9-42
Interface Design Prototyping
 An interface design prototype is a mock-
up or a simulation of a computer screen,
form, or report.
 Common approaches to interface design
prototyping:
– Storyboards
– HTML prototypes
– Language prototypes.

9-43
Storyboard
 The storyboard shows hand-drawn pictures of
screens.

© Copyright 2011 John Wiley & Sons, Inc. 9-44


HTML Prototype

An HTML prototype is built with the


use of Web pages created in HTML
(hypertext mark-up language).
 The designer uses HTML to create a
series of Web pages that show the
fundamental parts of the system.

9-45
Language Prototype
A language prototype is an interface
design prototype built in the actual
language or by the actual language that
will be used to build the system.
 An example of language prototype.

9-46
9-47
Interface Evaluation
 The objective of interface evaluation is to understand
how to improve the interface design.
 There are four common approaches to interface
evaluation.
1. Heuristic evaluation - Compare the interface to a
checklist of design principles.
2. Walk-through evaluation - It is a meeting conducted
with the users to walk through the interface.
3. Interactive evaluation - Users try out the interface.
4. Formal usability testing - It is a formal testing
process to understand how usable the interface is.
9-48
NAVIGATION DESIGN
 Basic Principles
- Analysts usually must assume that users
have not read the manual, have not
attended training, and do not have
external help readily at hand.
- All controls should be clear and
understandable and placed in an intuitive
location on the screen.
9-49
(cont’d)
 Prevent Mistakes - The first of principle of designing
navigation control is to prevent users from making
mistakes.
– Labeling commands appropriately and limiting
choices.
– Confirming with the user that the actions are difficult
or impossible to undo.
 Simplify Recovery from Mistakes – making “undo”
buttons whenever possible.
 Use Consistent Grammar Order – Windows
application uses an object-action grammar order.
9-50
Types of Navigation Control
 There are three basic software approaches for
defining user commands:
- Languages: command language and natural
language.
- Menus: A menu presents the user with a list of
choices.
- Direct Manipulation: With direct manipulation,
the user enters commands by working directly
with interface objects.
9-51
Types of Menus

9-52
Cont’d

9-53
Messages
 Messages are the way in which the system
responds to a user and informs the user of
the status of the interaction.
 Messages should be clear, concise, and
complete.
 All messages should be grammatically
correct and free of jargon and abbreviations
(unless they are the users’ ones).
 Avoid negatives and humor.
9-54
(cont’d)

 Types of messages

9-55
INPUT DESIGN

Input mechanisms facilitate the entry


of data into the computer system.
Input design means designing the
screen used to enter information and
forms on which the users write and
type information.

9-56
Basic Principles

The goal of input design is to capture


accurate information for the system
simply and easily.

9-57
Use Online and Batch Processing
Appropriately
 There are two general formats for entering inputs
into a computer system: online processing and
batch processing.
 Online processing: each input item is entered
into the system immediately.
 Batch processing: all the inputs collected over
some period are gathered together and entered
into the system at one time in a batch.
 Batch processing simplifies data communications
and cuts communications costs.
9-58
Capture Data at the Source

The most important principle of


input design is to capture the data in
an electronic format at the original
source.
It reduces duplication work, reduces,
processing time, decreases the cost,
decreases the probability of error.
9-59
(cont’d)
 Source data automation refers to using special
hardware devices to automatically capture data
without requiring anyone to type it.
 Source data automation technologies:
– bar code readers
– optical character recognition
– magnetic stripe readers
– smart cards
– RFID (radio frequency identification) tags
– the Web.
9-60
Minimize Keystrokes
 Keystrokes cost time and money.
 The system should never ask for information
that can be obtained in another way (e.g., by
retrieving it from a database).
 The system should not require a user to type
information that can be selected from a list.
 The frequent values should be used as the
default value for the data.
9-61
Types of Inputs
 There are many different types of inputs, in the same way that
there are many different types of fields .

9-62
(cont’d)
 There are many types of selection boxes

9-63
Input Validation

All data entered into the system


must be validated in order to ensure
accuracy.
Input validation (also called edit
checks) can take many forms

9-64
(cont’d)

There are six different types of


validation checks:

9-65
OUTPUT DESIGN

Outputs are the reports that the


system produces, whether on the
screen, on paper, or in other media,
such as the Web.
Outputs are the most visible part of
any system.

9-66
Basic Principles
 The goal of the output mechanism is to present
information to users so that they can accurately
understand it with the least effort.
 Understand report usage – the first principle in
designing reports is to understand how they are
used.
 Manage information load – the goal of a well-
designed report is to provide all needed information
without information overload.
 Minimize bias – no analyst sets out to design a
biased report.
9-67
Types of Outputs

9-68
Media
 The two dominant media of reports are
paper and electronic.
 Paper is the more traditional medium and is
relatively permanent, easy to use, highly
portable, and accessible in most situations.
 However, paper reports are expensive.
 Many organizations are moving to
electronic production of reports.
9-69
SUMMARY

User interface design principles


- Layout, content awareness, aesthetics, user
experience, consistency, minimize user effort.
The user interface design process
- Use scenario development, interface structure
design, interface standards design, interface
design prototyping, and interface evaluation.

9-70
(cont’d)
 Navigation design
- The fundamental goal of navigation design is to make
the system as simple to use as possible.
 Input design
- The goal of input design is to simply and easily
capture accurate information for the system.
 Output design
- The goal of the output design is to present
information to users so that they can accurately
understand it with the least effort.
9-71

You might also like