System Analysis and Design - Note
System Analysis and Design - Note
SYSTEM: AN OVERVIEW
1. Introduction
Information systems analysis and design is a complex, challenging, and stimulating
organizational process that a team of business and systems professionals uses to develop and
maintain computer-based information systems.
Information systems analysis and design is an organizational improvement process.
Systems analysis and design is a established methodology that helps both large and small
business gain the rewards of utilizing information to its full capacity.
The systems development life cycle (SDLC) is central to the development of and efficient
information system.
Systems Development Life Cycle (SDLC ): The process of determining how an information
system can support business needs, designing the system, building it, and then delivering it to
users.
Systems analyst is key person in the SDLC
This person analyzes the business situation, identifies opportunities for improvements, and
designs an information system to implement the improvements
Primary goal of a systems analyst is to create value for the company, which usually means
increasing profits
In short, systems analysts do things and challenge the current way the organization works
We will highlight four key SDLC steps.
Planning and selection
Project identification and selection
Initiating and planning
Analysis
Requirement determination
Requirement structuring
Design, and
Implementation and operation.
Be aware that these steps may vary in each organization depending on its goals
1
Planning:- Understanding why an IS should be built and determining how the project
team will go about building it
Project identification and selection:- A project is identified when someone in the
organization identifies a business need to build a system.
New marketing campaign, reaching out to a new type of customer, interactions with
suppliers
Initiating and planning
I. Technical feasibility (can we build it?)
ii. Economic feasibility (will it provide business value?)
iii. Organizational Feasibility (if we build it, will it be used?)
Analysis
Requirement determination
Requirement structuring
Analysis:- Who will use the system? What will the system do? When will it be used?
1. Analysis Strategy
i. Study of the current system (called the as-is system), its problems, and ways to
design a new system (to-be system)
2. Requirements Gathering
i. Discovering the requirements via interviews, group workshops, or questionnaires
which leads to a concept for a new system
ii. System concept then used as a basis to develop a set of business analysis models that
describe how the business will operate if the new system were developed
3. System Proposal
i. Presenting the system concept and models to the project sponsor and other key decision
makers who will decide whether the project should continue to move forward
Design
Decides how the system will operate in terms of the hardware, software, and network
infrastructure that will be in place
1. Design Strategy
2
i. Clarifies whether the system will be developed by the companys own programmers,
outsourced to another firm, or whether the company will buy an existing software
package
2. Architecture Design
i. What hardware, software, and network infrastructure will be used
ii. Interface Design- how will users move through the system?
3. Database and File Specifications
i. Defines exactly what data will be stored and where they will be stored
4. Program Design
i. Defines the programs that need to be written and exactly what each program will do
Implementation and operation.
Implementation
System is actually built (or purchased)
1. Construction
i. System is built and tested to ensure that it performs as designed
2. Installation
i. Old system off, new system on
3. Support
i. Formal or informal post-implementation review
In business, System Analysis and Design refers to the process of examining a business situation
with the intent of improving it through better procedures and methods.
System analysis and design relates to shaping organizations, improving performance and
achieving objectives for profitability and growth. The emphasis is on systems in action, the
relationships among subsystems and their contribution to meeting a common goal.
3
The major goal of systems analysis and design is to improve organizational systems. Often this
involves developing or acquiring application software and training employees to use it.
Application software, also called a system, is designed to support a specific organizational
function or process, such as inventory management. The goal of application software is to turn
data into information.
Organizations are complex systems that consist of interrelated and interlocking subsystems.
Changes in one part of the system have both anticipated and unanticipated consequences in other
parts of the system. Among the positive consequences are improved performance and a feeling
of achievement with quality information.
Systems development can generally be thought of as having two major components: Systems
analysis and Systems design.
System design is the process of planning a new business system or one to replace or
complement an existing system. But before this planning can be done, we must thoroughly
understand the old system and determine how computers can best be used to make its
operation more effective.
System analysis, then, is the process of gathering and interpreting facts, diagnosing
problems, and using the information to recommend improvements to the system. This is the
job of the systems analyst.
Consider, for example, the stockroom operation of a clothing store. To better control its
inventory and gain access to more up to date information about stock levels and reordering,
the store asks a system analyst, to computerize its stockroom operations. Before one can
design a system to capture data, update files, and produce reports, one needs to know more about
the store operations: what forms are being used to store information manually, such as
requisitions, purchase orders, and invoices and what reports are being produced and how they are
being used.
The systems design is like the blueprint for a building: it specifies all the features that are to be
in the finished product.
Analysis specifies what the system should do. Design states how to accomplish the objective.
Notice that each of the processes mentioned involves people. Managers and employees have
good ideas about what works and what does not, about what flows smoothly and what causes
4
problems, about where change is needed and where it is not, and especially about where change
will be accepted and where it will not. Despite technology, people are still the keys that make the
organizations work. Thus, communicating and dealing with people are very important parts of
the systems analysts job.
In a system the different components are connected with each other and they are interdependent.
For example, human body represents a complete natural system. We are also bound by many
national systems such as political system, economic system, educational system and so forth. The
objective of the system demands that some output is produced as a result of processing the
suitable inputs. A well-designed system also includes an additional element referred to as
control that provides a feedback to achieve desired objectives of the system.
System is an interrelated set of business procedures (or components) used within one business
unit, working together for some purpose. For example, a system in the payroll department keeps
track of checks, whereas an inventory system keeps track of supplies.
5
1. A system is made up of components. A component is either a complex part or an aggregate
of parts, also called a subsystem. The simple concept of a component is very powerful. Just as
with an automobile, we can repair or upgrade the system by changing individual components
without having to make changes throughout the entire system.
2. The components are interrelated; that is, the function of one is somehow tied to the
functions of the others.
3. A system has a boundary, which in which all of its components is contained and which
establish the limits of a system, separating the system from other systems.
A system should be defined by its boundaries the limits that identify its components,
processes and interrelationship when it interfaces with another system.
Each system has boundaries that determine its sphere of influence and control. Recently,
system design has been successful in allowing the automatic transfer of funds form a bank
account to pay bills and other obligations to creditors, regardless of distance or location. This
means that in systems analysis, knowledge of the boundaries of a given system is crucial in
determining the nature of its interface with other systems for successful design.
4. All of the components work together to achieve some overall purpose for the larger system:
the system's reason for existing.
5. A system exist with in an environment- everything outside the systems boundary. The
environment is the suprasystem within which an organization operates. It is the source of
external elements that enforce on the system. For example, the organizations environment,
consisting of vendors, competitors, and others, may provide constraints and, consequently,
influence the actual performance of the business. Usually the system interacts with its
environment, exchanging, in the case of an information system, data and information.
6. The points at which the system meets its environment are called interfaces, and there are also
interfaces between subsystems.
Because, an interface exists at the point where its environment, the interface has several
special, important function.
An interface provides:
Security, protecting the system from undesirable elements that may want to penetrate it.
Filtering unwanted data, both for elements leaving the system and entering it
Coding and decoding incoming and outgoing messages
Detecting and correcting errors in its interaction with the environment
6
Safeguarding, providing a layer of slack between the system and its environment, so that the
system and its environment can work on different cycles and at different speeds.
7. Constraints: - A system must face constraints in its functioning because there are limits to
what it can do and how it can achieve its purpose within its environment. Some of these
constraints are imposed inside the system (a limited number of staff available) and others are
imposed by the environment (due dates or regulation)
7
System may be referred to any set of components, which function in interrelated manner for a
common cause or objective.
The word System is derived from Greek word Systema, which means an organized relationship
between any set of components to achieve some common cause or objective.
A system is an orderly grouping of interdependent components linked together according to a
plan to achieve a specific goal.
The key term used most frequently. Understanding systems and how they work is critical to
understanding systems analysis and design.
A system exists because it is designed to achieve one or more objectives. We come into daily
contact with the transportation system, the telephone system, the accounting system, the
production system, and, for over two decades, the computer system. Similarly, we talk of the
business system and of the organization as a system consisting of interrelated departments
(subsystems) such as production, sales, personnel, and an information system. None of these
subsystems is of much use as a single, independent unit. When they are properly coordinated,
however, the firm can function effectively and profitably.
8
Support of business processes and operations.
Support of decision making by employees and managers.
Support of strategies for competitive advantage.
Lets look at a typical retail store as a good example of how these roles of IS in business can be
implemented.
Support of Business Processes and Operations: - As a consumer, you regularly encounter
information systems that support the business processes and operations at the many retail stores
where you shop. For example, most retail stores now use computer-based information systems
to help their employees record customer purchases, keep track of inventory, pay employees, buy
new merchandise, and evaluate sales trends. Store operations would grind to a halt without the
support of such information systems.
Support of Business Decision Making: - Information systems also help store managers and
other business professionals make better decisions. For example, decisions about what lines of
merchandise need to be added or discontinued and what kind of investments they require are
typically made after an analysis provided by computer-based information systems.
Support of Strategies for Competitive Advantage: - Gaining a strategic advantage over
competitors requires the innovative application of information technologies. For example, store
management might make a decision to install touch-screen kiosks in all stores, with links to the
e-commerce Web site for online shopping. This offering might attract new customers and build
customer loyalty because of the ease of shopping and buying merchandise provided by such
information systems. Thus, strategic information systems can help provide products and services
that give a business a comparative advantage over its competitors.
9
There are four types of information systems exist:
1. Transaction processing system (TPS) - are used primarily for structured operational, and to a
lesser degree, management control applications.
2. Management information system (MIS) - are used for semi--structured, management control
applications. It also overlaps into the operational and strategic planning realms as well.
3. Decisions support systems (DSS)- are used primarily for unstructured decision-making
whether that occurs at the operational, management and strategic planning levels.
4. Expert systems (ES) also known as knowledge based system is a software designed to
capture the knowledge and problem solving skills of human expert.
A typical organization is divided into operational, middle, and upper level. The information
requirements for users at each level differ. Towards that end, there are number of information
systems that support each level in an organization.
Pyramid Diagram of Organizational levels and information requirements Understanding the
various levels of an organization is essential to understand the information required by the users
who operate at their respective levels.
The following diagram illustrates the various levels of a typical organization.
10
Examples of users at this level of management include cashiers at a point of sale, bank
tellers, nurses in a hospital, customer care staff, etc.
Users at this level use make structured decisions. This means that they have defined rules that
guide them while making decisions.
For example, if a store sells items on credit and they have a credit policy that has some set
limit on the borrowing. All the sales person needs to decide whether to give credit to a
customer or not are based on the current credit information from the system.
Tactical Management Level
This organization level is dominated by middle-level managers, heads of departments,
supervisors, etc. The users at this level usually oversee the activities of the users at the
operational management level.
Tactical users make semi-structured decisions. The decisions are partly based on set
guidelines and judgmental calls.
As an example, a tactical manager can check the credit limit and payments history of a
customer and decide to make an exception to raise the credit limit for a particular customer.
The decision is partly structured in the sense that the tactical manager has to use existing
information to identify a payments history that benefits the organization and an allowed
increase percentage.
Strategic Management Level
This is the most senior level in an organization. The users at this level make unstructured
decisions. Senior level managers are concerned with the long-term planning of the
organization.
They use information from tactical managers and external data to guide them when making
unstructured decisions.
11
1. Transaction Processing System (TPS)
Transaction processing systems are used to record day to day business transactions of the
organization. They are used by users at the operational management level. The main objective of
a transaction processing system is to answer routine questions such as;
How printers were sold today?
How much inventory do we have at hand?
What is the outstanding due for John Doe?
By recording the day to day business transactions, TPS system provides answers to the above
questions in a timely manner.
The decisions made by operational managers are routine and highly structured.
The information produced from the transaction processing system is very detailed.
Examples of transaction processing systems include
Point of Sale Systems records daily sales
Payroll systems processing employees salary, loans management, etc.
Stock Control systems keeping track of inventory levels
Airline booking systems flights booking management
12
For example, input from a point of sale system can be used to analyze trends of products that are
performing well and those that are not performing well. This information can be used to make
future inventory orders i.e. increasing orders for well-performing products and reduce the orders
of products that are not performing well.
Examples of management information systems include
Sales management systems they get input from the point of sale system
Budgeting systems gives an overview of how much money is spent within the
organization for the short and long terms.
Human resource management system overall welfare of the employees, staff turnover,
etc.
Tactical managers are responsible for the semi-structured decision. MIS systems provide the
information needed to make the structured decision and based on the experience of the tactical
managers, they make judgement calls i.e. predict how much of goods or inventory should be
ordered for the second quarter based on the sales of the first quarter.
13
Bank loan management systems it is used to verify the credit of the loan applicant and
predict the likelihood of the loan being recovered.
14
Leadership
Understanding what needs to change
Lobbying others to agree that these current methods need to be changed
Business skills help the Systems Analyst understand the organizations existing technical
environment
Work ethically and honestly
15
Develop ideas and suggestions for ways that IT can support and improve business processes
Design the new IS and ensure that all IS standards are maintained
Has significant training & experience in analysis design and programming
Business Analyst
Focuses on the business issues surrounding the system
Helps identify the value the system will create, develops ideas for improving the business
processes, and helps design these new policies
Requirements Analyst
Focuses on evoking the requirements from stakeholders associated with the new system
Understand the business well, are excellent communicators, and are highly skilled in an
array of requirements and evocation techniques
Infrastructure Analyst
Focuses on technical issues surrounding the ways the system will interact with the
organizations technical infrastructure (hardware, software, networks, and databases)
Ensures that the new IS conforms to organizational standards
Significant training in networking, database admin, various hardware & software products
May eventually assume the role of software architect
Change Management Analyst
Focuses on the people and management issues surrounding the system installation
Ensures that adequate documentation and support are available to users, provides user
training on the new system, develops strategies to overcome resistance to change
Significant training in org. behavior
Project Manager
Ensures that the project is completed on time and within budget, and that the system delivers
expected value to the organization
Often a seasoned analyst who has acquired specialized project management knowledge and
skills
CHAPTER TWO
16
INFORMATION SYSTEMS DEVELOPMENT PROJECT
2.0. Introduction
Project:-is a series of related jobs usually directed toward some major output and requiring a
specified period of time to perform.
A project is a planned undertaking of a series of related activities to reach an objective that has a
beginning and end.
Project Management: It is the process of leading the work of a team to achieve goals and
meets success criteria at specified time.
Project management is the most important aspect of the systems development.
Need to know Project management skills more detail about resources management,
Project management, change management, risk management.
The focus of project management is to assure that system development projects meet
customer expectations and are delivered within budget and time constraints.
The primary challenge of project management is to achieve all of the project goals within
the given constraints.
17
In some organizations the project manager is a senior systems analyst who "has been
around the block" a time or two.
Creating and implementing successful projects require managing resources, activities, and
tasks needed to complete the information systems project.
The first question you might ask yourself is
"Where do projects come from?"
There is no standard and answer varies from organization to organization
Several projects may be submitted and need selection by filling a Systems Service
Requests
During project identification and selection the need for a new or enhanced system is
recognized.
Project identification and selection is a pre-project step in the life cycle.
Organizations vary in as to how they identify potential projects.
Project manager is an individual with a diverse set of skills who is responsible for
managing the project process when the project is accepted
Many of the skills are related to personnel or general management, not simply technical
skills.
The project manager is a systems analyst with a diverse set of skills.
Skills of project manager: They include:-
Leadership
Management (resources, materials, funding)
Customer relationship
Technical problem solving
Conflict management
Team management and risk & change management.
Skills needed by a project manager go beyond just building a systems
18
Other non-rational reason: spend existing available resources, training and enhancing
skills of employees.
Project management
Project management is the controlled process of initiating, planning, executing and closing-
down a project.
1. Project Initiation: the project manager performs several activities that assess the size, scope,
and complexity of the project & establish procedures to support latter project activities.
19
The Activities are:
1. Establishing the project initiation team.
Size: identify project team members who will work with in the project
2. Establishing a relationship with the customer.
Develop good work relationship & trust between customers or users of the project & the
IS development group ( project team) before the project
Helps customers to understand their problems they might face & propose improvement
3. Establishing the project initiation plan.
Defines the scope (objective) of the project (even objectives are unsure)
Assign objective to project team members
Defines role of each members in the project
The two core team members of the project needed to define when and how they would
communicate, define deliverables and project steps, and set deadlines.
These steps eventually led to the creation of their System Service Request (SSR) form.
4. Establishing management procedures
Successful projects require the development of effective management procedures.
In some organizations, many of the mgt procedure would be established as standard
operating procedure.
In establishing procedures, you are concerned with developing.
Team communication and reporting procedure,
Job assignments and roles, project change procedures, and
Determining how project funding and billing will be handled.
Regulators procedures
Procedures exist or need to be created
5. Establishing the project management environment and project workbook.
The focus to this activity is to collect and organize the tools that you will use while managing
the project and to construct the project workbook.
Establishing an environment that includes data related project called workbook
Performing the workbook is one important task of project manager
Workbook can be on line ( a web site as SIMNET) or a hard copy repository that contain
All project correspondence: minutes, deliverables, inputs, outputs
Deliverables and reports
20
Standard to performing audits
Management procedures
Post project review meeting (future)
Workbook are on line in order to allows different partner to access the content through
different location
21
It is also important that any unique problems, constraints, and assumptions about the
project be clearly stated.
Remark: a person could be assigning to more than one tasks his own area of expertise
22
d. Developing preliminary schedule.
Preliminary schedule = tasks + time + people within each activity of work breakdown
structure
Using the information on tasks and resource availability assign time estimates by to
creating target starting and ending dates for the project.
Target dates can be revised and modified until a schedule produced is acceptable to the
customer.
The schedule may be represented as a Gantt chart or as a Network diagram (PERT) chart.
This schedule may be using the Grant and the PERT chart
e. Developing a communication plan.
Outline the communication procedures among management, project team members, and
the customer.
The communication plan includes when and who written and oral reports will be
provided by the team,
When & how different role will communication
When & how written and oral presentation will be provided by the team
How many deliverable (official reports) and when should be written (set deadline)
Define agenda for meeting and set deadlines ( small & big meeting)
23
g. Identifying and assessing risks
It identifies sources of project risk and to estimate the consequences of those risks.
It identifies sources of project risk and their expected impact.
Source of Risk might arise:
From the use of new technology,
Users' resistance to change,
Availability of insufficient resources,
Team member inexperience
24
This baseline plan provides an estimate of the project's tasks and resource, time and
manpower (resource requirements) and is used to guide in next project phase - execution.
Is used to guide the executing phase or to update it when change happen
As new information is acquired during project executions, the baseline plan will continue
to update.
25
Measuring the time and effort expended on each activity will help you improve the
accuracy of estimations for future projects.
E.g. if one dependency activity is changed, you have o undertake the impact on the other
related activities
PERT and Gantt will help you to fast undertaking changes
c. Managing changes to the Baseline Project Plan.
Manage the change if it has to occur
Managing change requires three steps
Request a change
Accept change
Apply change order
PERT and Gantt charts can be used to undertaking changes
You will encounter pressure to make changes to the baseline plan.
You include only approved changes to the project specification, all changes must be
reflected in the baseline plan and project workbook.
A formal change request must be submitted and approved by the steering committee.
The request should explain why changes are desired and describe all possible impacts on
prior and subsequent activities, project resources, and the overall project schedule.
In addition to changes occurring through formal request, changes may also occur from
events outside your control.
26
Solving issues through oral presentation
Informing others through e-mails
Keeping permanent storage of records (of written documents)
The project manager is responsible for keeping all team abreast of the project status.
Clear communication is required to create a shared understanding of the activities and
goals of the project; such an understanding assures better coordination of activities.
Procedures for communication project activities vary from formal meeting to
informal hallway discussions.
The ease with which the project can be managed is significantly influenced by the quality
of prior phases.
If you develop a high-quality project plan, it is much more likely that the project will be
successfully executed.
27
Within the context of the SDLC, project closedown occurs after the implementation
phase.
28
You must also must agree that further work is either their responsibility or covered under
another System Service Request or contract.
A project is not complete until it is closed, and it is at closedown that projects are deemed
a success or failure.
Figure 2.1a Graphical Diagrams That Depict Project Plans A Gantt chart.
Figure 2.2b Graphical Diagrams That Depict Project Plans A Network Diagrams
29
Comparison of Gantt Charts and Network Diagrams
Gantt Charts Network Diagrams
Visually show duration of tasks Visually show dependencies between
tasks
Visually show time overlap between task Visually show which tasks can be
done in parallel
Visually show slacks time Show slack time by date in rectangles
30
Slack time refers to the amount of time that an activity can be delayed without delaying
the project duration
Network diagram is best-known scheduling methods.
ET =
Where
ET= expected time for the completion for an activity
o=optimistic completion time for an activity
r= realistic completion time for an activity
p= pessimistic completion time for an activity
Calculate an expected time for the completion of an upcoming programming assignment.
For this assignment, you estimate an optimistic time of 2 hours, a pessimistic time of 8
hours, and a most likely time of (r) 6 hours. Using PERT, how much is the expected time
for completing this assignment.
1. Determine time estimates and expected completion times for each activity.
31
Figure 2.2 Expected Time Calculations for the SPSTS Project
Figure 2.3 A Network Diagram That Illustrates the Activities (Circles) and the Sequence of
(Arrows) of Those Activities.
32
Gantt Chart and Network Diagram for GM Furniture
33
Summary
Skills of an effective project manager
Activities of project manager
Initiation
Planning
Execution
Closedown
Gantt Charts and Network Diagrams
Commercial PM Software
34
CHAPTER THREE
THE SYSTEM DEVELOPMENT LIFE CYCLE
Introduction
Organizations use a standard set of steps, called a systems development methodology to
develop and support their information systems.
The common methodology for systems development is the systems development life cycle
(SDLC).
It is series of steps used to mark the phases of development for an information system.
The project lifecycle and the various approaches to system development which can be used on IS
projects. These approaches are sometimes more formally termed lifecycle models. Various
models exist, many of which are developments or refinements of earlier ones.
It is important to define the terms system development lifecycle and project lifecycle.
Generally speaking, the system development lifecycle covers the whole life of a system.
This will cover not only feasibility study, analysis, specification, design and development but
also the operation, maintenance and enhancement aspects which take place after the system
has been accepted by the end-users.
A project can be defined as a management environment set up to ensure the delivery of a
specified business product to meet a defined business case.
In terms of systems development, this can generally be taken to mean the delivery of the
specified IS within given constraints of time, cost, resource and quality, but a project may
not cover all stages of the system lifecycle.
In other words, the project lifecycle covers the delivery of whatever has been defined as
constituting the end-product of the project.
There is another important difference. The system development lifecycle often covers only
the technical deliverables whereas the project is concerned with all aspects leading to the
delivery of the projects objectives.
35
By traditional here, we mean unstructured and somewhat non-specific and most traditional
approaches are based on variations of the waterfall model. Although the overall picture will
probably be familiar, the actual methods of developing the systems are almost as numerous as
the projects themselves.
The approach is or perhaps we should now write was? characterized by a general lack
of user involvement, the use of text-based, as opposed to diagrammatic, documentation and an
emphasis on how things are going to be achieved rather than what is going to be achieved.
Although there is a stage-by-stage approach, it is difficult to see how the stages link together or
to follow an audit trail of individual requirements. Typically, in project management terms, there
is no business case or defined acceptance criteria for the system, which makes it difficult to
gauge success or failure. The lack of user involvement is demonstrated in many ways. The users
would be involved at the initial analysis stage but the only point where they would be formally
required to review anything would be when the requirements specification has been completed.
Following this, their next contact with the computer system would probably be when the system
is delivered.
On the other hand, this method of working suited many analysts and users. It allowed the analyst
to use intuitive methods of working and made limited demands on the users time. The
documentation was relatively easy to understand, being mostly in English, and there were no
special techniques to be learned in order to understand it. Unfortunately, text tends to be
ambiguous and interpreted differently by different people and misunderstandings were common.
This lack of user involvement and ownership of the system often resulted in a poor quality
system and an abdication of responsibility by the users and blame for the developers.
1. Traditional software development models: - is regarded as the proper, structured and
disciplined approach to the analysis and design of software applications.
Generally the standard process followed in an organization consists of:
Analysis
Design
Implementation
Maintenance
Such models included the code and fix, waterfall, staged and phased development,
transformational, and spiral models.
36
i. Waterfall Model
In the waterfall model, system development is broken down into a number of sequential
sections or stages represented by boxes, with each stage being completed before work starts
on the following one. The outputs from one stage are used as inputs to the next.
Waterfall Development The original structured design methodology (still used today) is
waterfall development.
With waterfall developmentbased methodologies, the analysts and users proceed in
sequence from one phase to the next.
The key deliverables for each phase are typically very long (often hundreds of pages in
length) and are presented to the project sponsor for approval as the project moves from phase
to phase.
Once the sponsor approves the work that was conducted for a phase, the phase ends and the
next one begins. This methodology is referred to as waterfall development because it moves
forward from phase to phase in the same manner as a waterfall.
Although it is possible to go backward in the SDLC (e.g., from design back to analysis), it is
extremely difficult (imagine yourself as a salmon trying to swim upstream against a
waterfall, as shown in Figure below.
The two key advantages of the structured design waterfall approach are:-
An identifies system requirement long before programming begins and
It minimizes changes to the requirements as the project proceeds.
The two key disadvantages are:-
The design must be completely specified before programming begins and
That a long time elapses between the completion of the system proposal in the
analysis phase and the delivery of the system (usually many months or years).
In addition, the deliverables are often a poor communication mechanism, so important
requirements may be overlooked in the volumes of documentation.
If the project team misses an important requirement, expensive post-implementation
programming may be needed.
Users may forget the original purpose of the system, since so much time has elapsed between
the original idea and actual implementation.
37
Planning and Feasibility study
Analysis
Design (overall design & detailed design)
Implementation and Operation
With waterfall development- based methodologies, the analysts and users proceed
sequentially from one phase to the next.
The two key advantages of waterfall development-based methodologies are:
The system requirements are identified long before programming begins.
Changes to the requirements are minimized as the project proceeds.
38
ii. Code and Fixing
Iterative, programmers' approach, involves only two phases:
Coding: writing the program code
Fixing the code: running the program and fix errors if they appear while testing the
program with random test data
Problems:
Very poor structure,
Does not match user requirements,
Difficult to maintain
iii. Parallel Development
This methodology attempts to address the long time interval between the analysis phase
and the delivery of the system.
A general design for the entire system is performed and then the project is divided into a
series of distinct subprojects.
The parallel development methodologies evolved to address the lengthy time frame of
waterfall development.
As shown in Figure 3.2, instead of doing the design and implementation in sequence, a
general design for the whole system is performed. Then the project is divided into a series
of subprojects that can be designed and implemented in parallel.
Once all subprojects are complete, there is a final integration of the separate pieces, and
the system is delivered.
Parallel development reduces the time required to deliver a system, so changes in the
business environment are less likely to produce the need for rework.
The approach still suffers from problems caused by voluminous deliverables. It also adds
a new problem: If the subprojects are not completely independent, design decisions in
one subproject may affect another, and at the project end, integrating the subprojects may
be quite challenging.
39
iv. Stage and Phased Development
This methodology breaks the overall system into a series of versions that are developed
sequentially.
The team categorizes the requirements into a series of versions, then the most important
and fundamental requirements are bundled into the first version of the system.
The analysis phase then leads into design and implementation; however, only with the set
of requirements identified for version 1.
As each version is completed, the team begins work on a new version.
Phased Development
A phased developmentbased methodology breaks an overall system into a series of
versions, which are developed sequentially.
The analysis phase identifies the overall system concept, and the project team, users, and
system sponsor then categorize the requirements into a series of versions.
40
The most important and fundamental requirements are bundled into the first version of the
system.
The analysis phase then leads into design and implementation but only with the set of
requirements identified for version 1.
Once version 1 is implemented, work begins on version 2. Additional analysis is per- formed
based on the previously identified requirements and combined with new ideas and issues that
arose from the users experience with version 1. Version 2 then is designed and
implemented, and work immediately begins on the next version. This process continues until
the system is complete or is no longer in use.
v. Spiral Model
The spiral model differs from the waterfall model in that it introduces an evolutionary or iterative
approach to systems development.
41
The waterfall model concentrates on a stage-by-stage process with the end-products from one
stage being finalized before the next stage is begun.
The original spiral model was developed by Barry Boehm and it is shown in Figure 3.3. The
project starts at the centre of the spiral and progresses outwards.
At the centre, the requirements will be poorly understood and will be successively refined with
each rotation of the spiral. The total cost of the project will increase as the length of the spiral
increases. The model is divided into four quadrants:
The top left quadrant is where the objectives are determined and the alternatives and
constraints identified.
The top right quadrant is where the alternatives are evaluated and the various risks are
identified and resolved.
The bottom right quadrant is where the development takes place. This ineffect covers the
same area as the more conventional waterfall model.
The bottom left quadrant is where the next phase or iteration is planned.
The Boehm spiral introduces the important concepts of objective setting, risk management and
planning into the overall cycle. These are all very desirable from a project management point of
view as they apply explicitly to factors which may affect the timely delivery of the system within
its defined constraints.
Develop system incrementally in several cycles including risk assessment at each cycle.
Determine objectives, alternatives for development, and constraints for the portion or the
whole system to be developed in the current cycle
Evaluate alternatives, considering objectives and constraints; identify and resolve risks
Develop the current cycle's part of the system, using evolutionary or conventional
development methods (depending on remaining risks); perform validation at the end
Prepare plans for subsequent phases
42
3.2. The Generic System Development Model
We use generic SDLC as an example methodology in this course.
The life cycle consists of four phases:
Planning and Selection
Analysis
Design
Implementation and Operation
Phases are not necessarily sequential
Each phase has a specific outcome and deliverable
Individual companies use customized life cycle.
43
3.2. The Generic System Development Model
System
3.3. Approaches Planning
Systemto System Analysis and Design
Planning
and
and Selection
Selection
3.4. Approach to System Development
3.5. Software Engineering Process
Analysis
Analysis
Design
Design
Implementation
Implementation and
and
operation
operation
44
A feasibility study is conducted.
2. Analysis
In this phase, the analyst thoroughly studies the organization's current procedures and the
information systems used to perform organizational tasks.
Analysis has several sub phases.
The first is requirements determination.
In this sub phase, the analyst work with users to determine what the users want from a
proposed system.
This baseline project plan customizes the standardized SDLC and specifies the
time and resources needed for its execution.
This sub phase usually involves a careful study of any current systems, manual and
computerized, that might be replaced or enhanced as a part of this project.
The second sub phase is, studying the requirements and structure them according to their
interrelationships and eliminate any redundancies.
Third sub phase, you generate alternative initial designs to match the requirements.
The final sub phase, you compare these alternatives to determine which best meets the
requirements within the cost, labor and technical levels the organization is willing to
commit to the development process.
The output of the analysis phase is a description of (but not a detailed design for) the
alternative solution recommended by the analysis team.
45
During physical design, the analyst team must determine many of the physical details
necessary to build the final system.
The final product of the design phase is the physical system specifications in a form
ready to be turned over to programmers and other system builders for construction.
46
Figure 3.3 The prototyping methodology
2. Rapid application Development (RAD)
RAD methodologies emphasize gaining user acceptance of the human-system interface
and developing core capabilities as quickly as possible.
The fundamental principle of any RAD methodology is to delay producing detailed
system design documents until after user requirements are clear
Prototyping is a form of rapid application development, or RAD.
3. Joint Application Design
Users, mangers, and system developers are brought together for a series of intensive
structured meetings.
The aim of JAD is to collect information system requirements and reviewing system
designs.
The basic idea behind JAD is to bring structure to the requirements determination phase
of analysis and to the reviews that occur as part of design.
4. Participatory Design
Participatory Design (PD) represents a viable alternative approach to the SDLC.
47
PD emphasizes the role of the user much more than traditional structured analysis and
structured design do.
Each user has an equal voice in determining system requirements and in approving
system design.
an elected group of users controls the process.
3.4. Approach to System Development
The analysis and design of computer-based information systems begins in the 1950s.
In the 1950s, the focus of the development effort was on the processes the software
performed. Since computer power was a critical resource, efficiency of processing
become the main goal.
In the beginning of 1960s the first procedural or third-generation computer
programming language become available.
In this years important breakthroughs in technology that enabled the development of
smaller, faster, less-expensive computer were introduced.
During this time System development was more of an art than a science.
In 1970s system development came to be more disciplined as many people worked to
make it more like engineering.
The development of database management systems helped shift the focus of system
development from processes first to data first
48
Although the systems development has changed dramatically since its beginnings in the
1950s, some basic principles that govern the approach to systems development have
been applicable through all the different areas of computing in organization.
One principle is the distinction between data, data flows, and processing logic,
This distinction will be considered in the next sections.
Separating data and processes
Every information system consists of three key components that must be clearly
understood by anyone who analyzes and designs systems: data, data flows, and
processing logic.
Data are raw facts that describe people, objects and events in an organization.
Every information system depends on data in order to produce information, which
is processed data presented in a form suitable for human interpretation.
Data flows: - are groups of data that move and flow through a system and
include a description of the sources and destinations for each data flow.
Processing logic: Describe steps that transform data and events that trigger the
steps.
Figure 3.4 Difference among data, data flow and process logic
1. Processes Oriented approach
49
Traditionally, an information systems design was based upon what the system was
supposed to do, which billing and inventory control: the focus was on output and
processing logic.
The focus was on outputs and processing logic
The data used as inputs were seen as important also, but secondary to the application
problems with this approach are, first the existence of several files of data each locked
with different applications and programs.
Each system would contain its own files and data storage areas
Each systems was considered ( looked at) separately
The data in each system would match the specifications for that system only
The construction on the flow, use and transformation of data in an information system
typified the process-oriented approach to systems-development.
The natural structure of the data is not specified within the traditional process-oriented
approach.
Data processing managers soon realized that there were problems with analyzing and
designing systems using only a process-oriented approach.
One result was the existence of several specialized files of data, each locked within
different applications and programs.
Many of the files in these different application contained the same data elements. When a
single data element changed, it had to be changed in each of these file which normally
difficult.
2. Data Oriented Approach
Over time the approach changed to being a more data-oriented.
50
Application independence is the separation of data and the definition of data from the
application that use these data.
A data model is produced, which describes the data and relationships between the data
Databases are designed around the subjects such as customers, suppliers, parts
This approach tends to focus on how the data should be represented independently of
where and how data are used in the system
It becomes important to standardize how data elements were represented, data processing
managers gradually came to separate the application programs and the data these
programs used.
The focus on data typified the data-oriented approach to information systems
development.
The data-oriented approach depicts
The ideal organization of data, independent of where and how data are used
within a system.
Result in a data model that describes the kinds of data needed in systems and the
business relationships among the data.
A data model describe the rules and policies of a business.
It is believed a data model to be more permanent than a process model since a
data model reflects the inherent nature of a business instead of the way a business
operates which constantly changing.
Due to advancement in data storage mgt. technology, it has become possible to represent
data not in separate files for each application but in coherent and shared databases.
A database is a shared collection of logically related data organized in ways that facilitate
capture, storage, and retrieval for multiple users in an organization.
Under the data-oriented approach to system development, databases are designed around
subjects, such as customers, suppliers, and parts.
Designing data bases around subjects enables you to use and revise databases for many
different independent applications.
51
3. Object-Oriented Analysis and Design
OAD is often called the third approach to system development, after the process-oriented
and data-oriented approaches.
The object-oriented approach combines data and processes (called methods) into single
entities called objects.
52
Objects usually correspond to such as customers, suppliers, contracts and rental
agreements.
Putting data and processes together in one place
Another key idea behind object-orientation is that of inheritance.
Objects are organized into object classes, which are groups of objects sharing structural
and behavioral characteristics.
Inheritance allows the creation of new classes that share some of the characteristics of
existing classes.
3.5. Software Engineering Process
In the early years of computing, analysis and design was considered to be an art.
The techniques employed by each developer could vary substantially.
This brings lack of consistency in technique and methodology often made it difficult to
integrate system and data.
To address these problems, information system professionals concluded that software
development needs an engineering discipline.
The goal was to concentrate on developing common
technique,
standard methodology, and
automated tools
Methodologies are comprehensive multiple-step approaches to systems development that
will guide your work.
Techniques are particular processes that are followed to ensure that work is well thought-
out, complete and comprehensible to others on the project team.
Tools Computer programs to assist in application of techniques to the analysis and design
process.
CASE tools and its components
The purpose of CASE is to make it much easier to enact a single design philosophy
within an organization.
Case can support most of the system development activities; Planning and selection,
Analysis, Design, and Implementation and operation.
In general, CASE assists systems builders in managing the complexities of information
system projects.
53
Groups of case tools are
Upper CASE tools designed to support the system planning and selection (project
identification and selection, project initiation and planning), analysis, and design phases
of the SDLC.
Lower CASE tools designed to support the implementation and maintenance phases of
the systems development life cycle.
Cross life-cycle CASE tools designed to support activities that occur across multiple
phases of the SLDC.
Most CASE tools utilize a repository to store all diagrams, forms, models and report
definitions.
Types of CASE tools
Diagramming tools
Computer display and report generators
Analysis tools used to check for incomplete, inconsistent or incorrect
specifications
A central repository
Documentation generators
Code generators
Security Features
Secure your system specifications so that project teams may not access your
system requirements, design, and code.
Version Control
Allows one repository to contain the description of several versions the same
application system.
Import/Export
Automatically move data between the CASE repository and other software
development tools.
Backup and Recovery
Backup and disaster recovery facility are available as shared development
database
54
CHAPTER FOUR
SYSTEM SELECTION AND PLANNING
Chapter outline
4.1. Identifying and Selecting Projects
4.2. Initiating and Planning System Development Project
4.3. Assessing Project Feasibility
4.4. Building the Baseline Project Plan
4.5. Electronic Commerce Application
Introduction
The first phase of the systems development life cycle is systems planning and selection
that deals with:
Identifying, selecting, initiating, and planning projects.
There are two primary activities in this phase:
General method for identifying and selecting projects and
Project initiation (beginning) and planning, and present several techniques for
assessing project feasibility.
The first activity of the systems planning and selection phase of the SDLC is project
identification and selection.
During this activity, a senior manager, a business group, an IS manager, or a steering
committee identifies and assesses all possible systems development projects that a business
unit could undertake.
55
Next, those projects deemed most likely to yield significant organizational benefits, given
available resources, are selected.
Organizations vary in their approach to identifying and selecting projects. In some
organizations, project identification and selection is a formal process in which projects are
outcomes of a larger overall planning process.
For example, a large organization may follow a formal project identification process that
involves rigorously comparing all competing projects.
Alternatively, a small organization may use informal project selection processes that allow
the highest-ranking IS manager to select projects independently or allow individual business
units to decide on projects after agreeing on funding.
Requests for information systems development can come from three key sources:-
1. Managers and business units who want to replace or extend an existing system in order to
gain needed information or to provide a new service to customers
2. Information systems managers who want to make a system more efficient, less costly to
operate, or want to move a system to a new operating environment
3. Formal planning groups that want to improve an existing system in order to help the
organization meet its corporate objectives, such as providing better customer service.
56
Regardless of how an organization executes the project identification and selection process, a
common sequence of activities occurs. In the following sections, we describe a general process
for identifying and selecting projects, and producing the deliverables and outcomes of this
process.
57
Have a narrow, tactical focus.
These descriptions are evaluated in selecting which projects will be approved to move into the
project initiation and planning activities.
In sum, projects are identified by both top-down and bottom-up initiatives. The formality of
identifying and selecting projects can vary substantially across organizations. Because limited
resources preclude the development of all proposed systems, most organizations have some
process of classifying and ranking each projects merit.
58
Technical Level of technical difficulty to complete the project successfully within given
difficulty/risks time and resource constraints
Table 4-1: Possible Evaluation Criteria When Classifying and Ranking Projects
Numerous factors must be considered when selecting a project, as illustrated in Figure 4-3.
These factors include:
Perceived needs of the organization
Existing systems and ongoing projects
Resource availability
Evaluation criteria
Current business conditions
Perspectives of the decision makers
This decision-making process can lead to numerous outcomes. Of course, projects can be
accepted or rejected.
Acceptance of a project usually means that funding to conduct the next SDLC activity has
been approved.
Rejection means that the project will no longer be considered for development.
However, projects may also be conditionally accepted; projects may be accepted pending
the approval or availability of needed resources or the demonstration that a particularly
difficult aspect of the system can be developed.
Projects may also be returned to the original requesters who are told to develop or purchase
the requested system themselves.
Finally, the requesters of a project may be asked to modify and resubmit their request after
making suggested changes or clarifications.
59
Figure 4-2:- Numerous factors must be considered when selecting a project. Decisions can result
in one of seven outcomes.
60
Figure 4-3- Information systems development projects come from both top-down and
bottom-up initiatives.
61
Most organizations assign an experienced systems analyst, or team of analysts for large
projects, to perform project initiation and planning.
The analyst will work with the proposed customersmanagers and users in a business
unitof the system and other technical development staff in preparing the final plan.
Experienced analysts working with customers who well understand their information services
needs should be able to perform a detailed analysis with relatively little effort.
Less experienced analysts with customers who only vaguely understand their needs will
likely expend more effort in order to be certain that the project scope and work plan are
feasible.
The objective of project initiation and planning is to transform a vague system request
document into a tangible project description, as illustrated in Figure 4-5.
Effective communication among the systems analysts, users, and management is crucial to
the creation of a meaningful project plan. Getting all parties to agree on the direction of a
project may be difficult for cross-department projects when different parties have different
business objectives. Projects at large, complex organizations require systems analysts to take
more time to analyze both the current and proposed systems.
62
Figure 4-4:- The systems analyst transforms a vague systems request into a tangible project
description during project initiation and planning.
63
The BPP becomes the foundation for the remainder of the development project. It is an
internal document used by the development team but not shared with customers.
Baseline project plan (BPP):- One of the major outcomes and deliverables from the
project initiation and planning phase. It contains the best estimate of the projects scope,
benefits, costs, risks, and resource requirements.
The PSS, produced by the project team, clearly outlines the objectives of the project
for the customer. As with the project initiation process, the size, scope, and complexity
of a project dictate the comprehensiveness of the project planning process and the
resulting documents.
Further, numerous assumptions about resource availability and potential problems will
have to be made. Analysis of these assumptions and system costs and benefits forms a
business case. Table 4-3 lists the activities performed during project planning.
64
Establishing the project management environment and project workbook
Developing the project charter
To help you better understand the feasibility assessment process, we examine a project at Pine
Valley Furniture. Jackie Judson, Pine Valley Furnitures (PVF) vice president of marketing,
65
prepares a system service request (SSR), illustrated in Figure 4-5, to develop a customer
tracking system. Jackie feels that this system would allow PVFs marketing group to better
track customer purchase activity and sales trends. She also feels that, if implemented, the
Customer Tracking System (CTS) would help improve revenue, a tangible benefit, and improve
employee morale, an intangible benefit. PVFs Systems Priority Board selected this project for
an initiation and planning study. The board assigned senior systems analyst Jim Woo to work
with Jackie to initiate and plan the project. At this point in the project, all project initiation
activities have been completed: Jackie prepared an SSR, the selection board reviewed the SSR,
and Jim Woo was assigned to work on the project. Jackie and Jim can now focus on project
planning activities, which will lead to the baseline project plan.
66
FIGURE 4-5 System service request (SSR) for the Customer Tracking System at Pine Valley
Furniture. The SSR includes contact information, a problem statement, service request statement,
and liaison contact information.
67
1. Assessing Economic Feasibility
A study of economic feasibility is required for the baseline project plan. The purpose for
assessing economic feasibility is to identify the financial benefits and costs associated with the
development project.
Economic feasibility is often referred to as cost-benefit analysis. During project initiation
and planning, it will be impossible for you to define precisely all benefits and costs related to
a particular project. Yet, it is important that you identify and quantify benefits and costs, or it
will be impossible for you to conduct a sound economic analysis and determine whether one
project is more feasible than another.
Next, we review worksheets you can use to record costs and benefits, and techniques for
making cost-benefit calculations. These worksheets and techniques are used after each
SDLC phase to decide whether to continue, redirect, or kill a project.
68
Jim and Jackie identified several tangible benefits of the Customer Tracking System at PVF and
summarized them in a worksheet, shown in Figure 4-6. Jackie and Jim collected information
from users of the current customer tracking system in order to create the worksheet. They first
interviewed the person responsible for collecting, entering, and analyzing the correctness of the
current customer tracking data. This person estimated that he spent 10 percent of his time
correcting data-entry errors. This persons salary is $25,000, so Jackie and Jim estimated an
error reduction benefit of $2,500 (10 percent of $25,000). Jackie and Jim also interviewed
managers who used the current customer tracking reports to estimate other tangible benefits.
They learned that cost reduction or avoidance benefits could be gained with better inventory
management.
FIGURE 4-6 Tangible benefits worksheet for the Customer Tracking System at Pine Valley
Furniture.
Also, increased flexibility would likely occur from a reduction in the time normally taken to
reorganize data manually for different purposes. Further, improvements in management planning
or control should result from a broader range of analyses in the new system. This analysis
forecasts that benefits from the system would be approximately $50,000 per year. Jim and Jackie
also identified several intangible benefits of the system. Although they could not quantify these
benefits, they will still be described in the final BPP. Intangible benefits refer to items that
cannot be easily measured in dollars or with certainty. Intangible benefits may have direct
organizational benefits, such as the improvement of employee morale, or they may have broader
69
societal implications, such as the reduction of waste creation or resource consumption. Potential
tangible benefits may have to be considered intangible during project initiation and planning
because you may not be able to quantify them in dollars or with certainty at this stage in the life
cycle. During later stages, such intangibles can become tangible benefits as you better
understand the ramifications of the system you are designing. Intangible benefits include:
Competitive necessity
Increased organizational flexibility
Increased employee morale
Promotion of organizational learning and understanding
More timely information
After determining project benefits, project costs must be identified.
Determining Project Costs An information system can have both tangible and intangible costs.
A tangible cost refers to an item that you can easily measure in dollars and with certainty.
From a systems development perspective, tangible costs include items such as hardware
costs, labor costs, and operational costs from employee training and building renovations.
Alternatively, an intangible cost refers to an item that you cannot easily measure in terms of
dollars or with certainty. Intangible costs can include loss of customer goodwill, employee
morale, or operational inefficiency.
Besides tangible and intangible costs, you can distinguish system-related development costs as
either one-time or recurring. A one-time cost refers to a cost associated with project initiation
and development and the start-up of the system. These costs typically encompass the following
activities:
System development
New hardware and software purchases
User training
Site preparation
Data or system conversion
When conducting an economic cost-benefit analysis, you should create a worksheet for
capturing these expenses. This worksheet can be a two-column document or a multicolumn
spreadsheet. For large projects, one-time costs may be staged over one or more years. In these
70
cases, a separate one-time cost worksheet should be created for each year. This separation would
make it easier to perform present-value calculations (see the following section Time Value of
Money).
A recurring cost refers to a cost resulting from the ongoing evolution and use of the system.
Examples of these costs typically include:
Application software maintenance
Incremental data storage expense
Incremental communications
New software and hardware leases
Consumable supplies and other expenses (e.g., paper, forms, datacenter personnel)
Both one-time and recurring costs can consist of items that are fixed or variable in nature.
Fixed costs refer to costs that are billed or incurred at a regular interval and usually at a
fixed rate. A facility lease payment is an example of a fixed cost.
Variable costs refer to items that vary in relation to usage. Long distance phone charges
are variable costs.
FIGURE 4-7 One-time costs worksheet for the Customer Tracking System at Pine Valley
Furniture.
FIGURE 4-8 Recurring costs worksheet for the Customer Tracking System at Pine Valley
Furniture.
71
2. Technical Feasibility
3. Operational Feasibility
You may need to consider other feasibility studies when formulating the business case for a
system during project planning. Operational feasibility is the process of examining the
72
likelihood that the project will attain its desired objectives. The goal of this study is to
understand the degree to which the proposed system will likely solve the business problems or
take advantage of the opportunities outlined in the system service request or project
identification study. In other words, assessing operational feasibility requires that you gain a
clear understanding of how an IS will fit into the current day-to-day operations of the
organization.
4. Schedule Feasibility
Schedule feasibility considers the likelihood that all potential time frames and completion date
schedules can be met and that meeting these dates will be sufficient for dealing with the needs o
the organization. For example, a system may have to be operational by a government-imposed
deadline by a particular point in the business cycle (such as the beginning of the season when
new products are introduced), or at least by the time a competitor is expected to introduce a
similar system.
Assessing legal and contractual feasibility requires that you gain an understanding of any
potential legal and contractual ramifications due to the construction of the system.
Considerations might include copyright or nondisclosure infringements, labor laws, antitrust
legislation (which might limit the creation of systems to share data with other organizations),
foreign trade regulations (e.g., some countries limit access to employee data by foreign
corporations), and financial reporting standards as well as current or pending contractual
obligations. Typically, legal and contractual feasibility is a greater consideration if your
organization has historically used an outside organization for specific systems or services that
you now are considering handling yourself.
Assessing political feasibility involves understanding how key stakeholders within the
organization view the proposed system.
Because an information system may affect the distribution of information within the
organization, and thus the distribution of power, the construction of an IS can have political
ramifications.
73
Those stakeholders not supporting the project may take steps to block, disrupt, or change the
projects intended focus.
All the information collected during project initiation and planning is collected and organized
into a document called the baseline project plan. Once the BPP is completed, a formal review of
the project can be conducted with customers.
This presentation, a walkthrough, is discussed later in the chapter. The focus of the
walkthrough is to verify all information and assumptions in the baseline plan before moving
ahead with the project. An outline of a baseline project plan, shown in Figure 4-9, contains four
major sections:
1. Introduction
2. System description
3. Feasibility assessment
4. Management issues
The purpose of the introduction is to provide a brief overview of the entire document and outline
a recommended course of action for the project. The introduction is often limited to only a few
pages. Although it is sequenced as the first section of the BPP, it is often the final section to be
written. It is only after performing most of the project planning activities that a clear overview
and recommendation can be created. One initial activity that should be performed is the
definition of the project scope, its range, which is an important part of the BPPs introduction
section.
When defining the scope for the Customer Tracking System within PVF, Jim Woo first needed
to gain a clear understanding of the projects objectives. Jim interviewed Jackie Judson and
several of her colleagues to gain a good idea of their needs. He also reviewed the existing
systems functionality, processes, and data-use requirements for performing customer tracking
activities. These activities provided him with the information needed to define the project scope
and to identify possible alternative solutions. Alternative system solutions can relate to different
system scopes, platforms for deployment, or approaches to acquiring the system. We elaborate
on the idea of alternative solutions, called design strategies. During project initiation and
74
planning, the most crucial element of the design strategy is the systems scope. Scope depends
on the answers to these questions:
Which organizational units (business functions and divisions) might be affected by or use the
proposed system or system change?
With which current systems might the proposed system need to interact or be consistent, or
which current systems might be changed because of a replacement system?
Who inside and outside the requesting organization (or the organization as a whole) might
care about the proposed system?
What range of potential system capabilities is to be considered?
75
FIGURE 4-9 An outline of a baseline project plan contains four major sections: introduction,
system description, feasibility assessment, and management issues.
The statement of project scope for the Customer Tracking System project at PVF is shown in
Figure 4-10. A project scope statement is a short document prepared primarily for the customer
to clearly describe what the project will deliver and outline generally at a high level all the work
required for completing the project. It is therefore a useful communication tool. The project
scope statement ensures that both you and your customer gain a common understanding of the
project size, duration, and outcomes. The project scope statement is an easy document to create
because it typically consists of a high-level summary of the baseline project plan (BPP)
information.
76
FIGURE 4-10 Project scope statement for the Customer Tracking System at Pine Valley
Furniture.
Depending upon your relationship with your customer, the role of the project scope statement
may vary. At one extreme, the project scope statement can be used as the basis of a formal
contractual agreement outlining firm deadlines, costs, and specifications. At the other extreme,
the project scope statement can simply be used as a communication vehicle to outline the current
best estimates of what the project will deliver, when it will be completed, and the resources it
may consume. A contract programming or consulting firm, for example, may establish a formal
relationship with a customer and use a project charter that is more extensive and formal.
Alternatively, an internal development group may develop a project scope statement that is
shorter and less formal, as it will be intended to inform customers rather than to set contractual
obligations and deadlines.
The second section of the BPP is the system description, in which you outline possible
alternative solutions to the one deemed most appropriate for the given situation. Note that this
description is at a high level, mostly narrative in form. Alternatives may be stated as simply as
this:
1. Web-based online system
2. Mainframe with central database
3. Local area network with decentralized databases
4. Batch data input with online retrieval
5. Purchasing of a prewritten package
If the project is approved for construction or purchase, you will need to collect and structure
information in a more detailed and rigorous manner during the systems analysis phase and
evaluate in greater depth these and other alternatives for the system.
When Jim and Jackie were considering system alternatives for the CTS, they focused on two
primary issues.
First, they discussed how the system would be acquired and considered three options:
(1) purchase the system if one could be found that met PVFs needs,
(2) outsource the development of the system to an outside organization, or
77
(3) build the system within PVF.
Next, Jim and Jackie defined the comprehensiveness of the systems functionality. To complete
this task, Jackie wrote a series of statements listing the types of tasks that she thought marketing
personnel would be able to accomplish when using the CTS.
This list became the basis of the system description and was instrumental in helping them make
the acquisition decision. After considering the unique needs of the marketing group, they decided
that the best decision was to build the system within PVF.
FIGURE 4-11 Context-level data-flow diagram showing project scope for the purchasing
fulfillment system at Pine Valley Furniture.
In the third section of the BPP, feasibility assessment, the systems analyst outlines project costs
and benefits and technical difficulties. This section is where high-level project schedules are
specified using Network diagrams and Gantt charts. Recall from Chapter 3 that this process is
referred to as a work breakdown structure. During project initiation and planning, task and
activity estimates are generally not detailed. An accurate work breakdown can be done only for
the next one or two life-cycle activitiessystems analysis and systems design. After defining the
primary tasks for the project, an estimate of the resource requirements can be made. As with
defining tasks and activities, this activity involves obtaining estimates of the human resource
requirements, because people are typically the most expensive resource element of a project.
78
Once you define the major tasks and resource requirements, a preliminary schedule can be
developed. Defining an acceptable schedule may require that you find additional or different
resources or that the scope of the project be changed. The greatest amount of project planning
effort is typically expended on feasibility assessment activities.
The final section of the BPP, management issues, outlines the concerns that management has
about the project. It will be a short section if the proposed project is going to be conducted
exactly as prescribed by the organizations standard systems development methodology. Most
projects, however, have some unique characteristics that require minor to major deviation from
the standard methodology.
In the team configuration and management portion, you identify the types of people to work on
the project, who will be responsible for which tasks, and how work will be supervised and
reviewed.
79
FIGURE 4-13 The Project Communication Matrix provides a high-level summary of the
communication plan.
In the communication plan portion, you explain how the user will be kept informed about project
progress, such as periodic review meetings or even a newsletter, and which mechanisms will be
used to foster sharing of ideas among team members, such as a computer-based conference
facility (see Figure 4-13). An example of the type of information contained in the project
standards and procedures portion would be procedures for submitting and approving project
change requests and any other issues deemed important for the projects success.
You should now have a feel for how a BPP is constructed and the types of information it
contains. Its creation is not meant to be a project in and of itself but rather a step in the overall
80
systems development process. Developing the BPP has two primary objectives. First, it helps to
assure that the customer and development group share a common understanding of the project.
Second, it helps to provide the sponsoring organization with a clear idea of the scope, benefits,
and duration of the project. Meeting these objectives creates the foundation for a successful
project.
Although walkthroughs are not rigidly formal or exceedingly long in duration, they have a
specific agenda that highlights what is to be covered and the expected completion time.
Individuals attending the meeting have specific roles.
These roles can include the following:
Coordinator: This person plans the meeting and facilitates discussions. This person may be
the project leader or a lead analyst responsible for the current life-cycle step.
Presenter: This person describes the work product to the group. The presenter is usually an
analyst who has done all or some of the work being presented.
User: This person (or group) makes sure that the work product meets the needs of the
projects customers. This user would usually be someone not on the project team.
Secretary: This person takes notes and records decisions or recommendations made by the
group. This may be a clerk assigned to the project team or one of the analysts on the team.
81
Standards bearer: This person ensures that the work product adheres to organizational
technical standards. Many larger organizations have staff groups within the unit responsible
for establishing standard procedures, methods, and documentation formats. For example,
within Microsoft, user interface standards are developed and rigorously enforced on all
development projects. As a result, all systems have the same look and feel to users. These
standards bearer validate the work so that it can be used by others in the development
organization.
Maintenance oracle: This person reviews the work product in terms of future maintenance
activities. The goal is to make the system and its documentation easy to maintain.
After Jim and Jackie completed their BPP for the Customer Tracking System, Jim approached
his boss and requested that a walkthrough meeting be scheduled and a walkthrough coordinator
be assigned to the project. PVF provides the coordinator with a Walkthrough Review Form,
shown in Figure 4-14. Using this form, the coordinator can easily make sure that a qualified
individual is assigned to each walkthrough role; that each member has been given a copy of the
review materials; and that each member knows the agenda, date, time, and location of the
meeting. At the meeting, Jim presented the BPP, and Jackie
82
83
FIGURE 4-14 Walkthrough Review Form for the Customer Tracking System at Pine Valley
Furniture.
added comments from a user perspective. Once the walkthrough presentation was completed, the
coordinator polled each representative for his or her recommendation concerning the work
product. The results of this voting may result in validation of the work product, validation
pending changes suggested during the meeting, or a suggestion that the work product requires
major revision before being presented for approval. In the last case, substantial changes to the
work product are usually requested, after which another walkthrough must be scheduled before
the project can be proposed to the Systems Priority Board (steering committee). In the case of the
Customer Tracking System, the BPP was supported by the walkthrough panel pending some
minor changes to the duration estimates of the schedule. These suggested changes were recorded
by the secretary on a Walkthrough Action List, shown in Figure 4-15, and given to Jim to
incorporate into the next version of the baseline plan presented to the steering committee.
84
System specifications
Logical and physical designs
Code or program segments
Test procedures and results
Manuals and documentation
One of the key advantages to using a structured review process is to ensure that formal review
points occur during the project. At each subsequent phase of the project, a formal review should
be conducted (and shown on the project schedule) to make sure that all aspects of the project are
satisfactorily accomplished before assigning additional resources to the project. This
conservative approach of reviewing each major project activity with continuation contingent on
successful completion of the prior phase is called incremental commitment.
It is much easier to stop or redirect a project at any point when using this approach.
Walkthroughs are used throughout the duration of the project for briefing team members and
external stakeholders. These presentations can provide many benefits to the team but,
unfortunately, are often not well done. With the proliferation of computer technology and the
availability of powerful software to assist in designing and delivering presentations, making an
effective presentation has never been easier. Microsofts PowerPoint has emerged as the de
facto standard for creating computer-based presentations. Although this program is relatively
easy to use, it can also be misused such that the bells and whistles added to a computer-based
presentation actually detract from the presentation. Like any project, to make an effective
presentation it must be planned, designed, and delivered. Planning and designing your
presentation is equally important as delivering it. If your slides are poorly laid out, hard to read,
or inconsistent, it wont matter how good your delivery is; your audience will think more about
the poor quality of the slides, than about what you are saying. Fortunately, with a little work it is
easy to design a high-quality presentation if you follow a few simple steps that are outlined in
Table 4-6.
85
Internet-based electronic commerce application fits the goals of the company and, if so, how that
application should be implemented.
The systems planning and selection process for an Internet-based electronic commerce
application is no different than the process followed for other applications.
Nonetheless, you should take into account special issues when developing an Internet-based
application. In this section, we highlight those issues.
86
Internet-based EC is transactions between individuals and businesses. Internet:-
Worldwide network of networks used for electronic commerce
Intranet refers to the use of the Internet within the same business. And also,
Intranet:- Internet-based communication to support business activities within a
single organization
Extranet refers to Internet-based communication to support business- to-business
activities.
FIGURE 4-16 Three possible modes of electronic commerce.
Intranets and extranets are examples of two ways organizations communicate via
technology.
Having an intranet is a lot like having a global local area network. A company may create
an intranet to house commonly used forms, up-to-date information on sales, and human
resource information so that employees can access them easily and at any time.
Organizations that have intranets dictate:
(1) what applications will run over the intranetsuch as electronic mail or an
inventory control system, and
(2) the speed and quality of the hardware connected to the intranet. Intranets are a
new way of using information systems to support business activities within a single
organization.
Extranets are another new way of using an established computing model, electronic data
interchange (EDI). EDI refers to the use of telecommunication technologies to transfer
business documents directly between organizations.
Electronic Data Interchange (EDI)
The use of telecommunications technologies to transfer business documents
directly between organizations
Using EDI, trading partnerssuppliers, manufacturers, and customers establish computer-
to-computer links that allow them to exchange data electronically.
87
For example, a car manufacturer using EDI may send an electronic purchase order to a steel
or tire supplier instead of a paper request. The paper order may take several days to arrive at
the supplier, whereas an EDI purchase order will take only a few seconds. EDI is fast
becoming the standard by which organizations will communicate with each other in the
world of electronic commerce.
Internet vs. Intranet/Extranet Applications
o Intranet/Extranet Developer knows
What application will be run and used.
The speed of network connection.
The type of communication device.
When developing either an intranet or an extranet, developers know who the users are,
What applications will be used,
The speed of the network connection, and
The type of communication devices (e.g., Web browsers such as Firefox, Chrome, or
Internet Explorer, smart phones such as an iPhone).
On the other hand, when developing an Internet EC application, developers have to discern
countless unknowns in order to build a useful system.
Table 4-7 lists several unknowns you and your project team may deal with when designing
and building an EC.
Internet Developer faces various unknowns.
These unknowns may result in making trade-offs based on a careful analysis of:-
Who the users are likely to be,
Where is the user located? What is their expertise, education, or experience.
How they are likely to be connected to the Internet.
Even with all these difficulties to contend with, you will find no shortage of Internet
ECs springing up all across the world.
One company that has decided to get onto the Web with its own EC site is Pine
Valley Furniture.
Connection speed
Access methods
Web browser, personal digital assistant, web enable cellular phone.
88
Pine Valley Furniture WebStore
TABLE 4-5: Unknowns That Must Be Dealt with When Designing and Building Internet
Applications
The PVF board of directors has requested that a project team be created to explore the
opportunity to develop an EC system. Specifically, market research has found a good
opportunity for online furniture purchases, especially in the areas of:
Corporate furniture buying
Home-office furniture purchasing
Student furniture purchasing
The board wants to incorporate all three target markets into its long-term EC plan but wants to
focus initially on the corporate furniture buying system. The board feels that this segment has the
greatest potential to provide an adequate return on investment and would be a good building
block for moving into the customer-based markets. Because the corporate furniture buying
system will be specifically targeted to the business furniture market, it will be easier to define the
systems operational requirements. Additionally, this EC system should integrate nicely with
two currently existing systems, Purchasing Fulfillment and Customer Tracking. Together, these
attributes make it an ideal candidate for initiating PVFs Web strategy.
Initiating and Planning PVFs E-Commerce System Given the high priority of this project,
Jackie Judson, vice president of marketing, and senior systems analyst Jim Woo were assigned to
work on this project. As for the Customer Tracking System described earlier in the chapter, their
first activity was to begin the projects initiation and planning activity. Over the next few days,
Jim and Jackie met several times to initiate and plan the proposed system.
89
At the first meeting, they agreed that WebStore would be the proposed system project name.
Next, they worked on identifying potential benefits, costs, and feasibility concerns. Jim
developed a list of potential costs the company would incur to develop Web-based systems that
he shared with Jackie and the other project team members (see Table 4-8).
WebStore Project Walkthrough After meeting with the project team, Jim and Jackie established
an initial list of benefits and costs (see Table 4-9) as well as several feasibility concerns (see
Table 4-10). Next, Jim worked with several of PVFs technical specialists to develop an initial
project schedule. Figure 4-20 shows the Gantt chart for this 84-day schedule. Finally, Jim and
Jackie presented their initial project plans in a walkthrough to PVFs board of directors and
senior management. All were excited about the project plan and approval was given to move the
WebStore project on to the analysis phase.
90
TABLE 4-8: PVF WebStore Feasibility Concerns
FIGURE 4-17 Gantt chart showing the schedule for the WebStore project.
91
92
CHAPTER FIVE
CHAPTER 5: SYSTEM ANALYSIS
Introduction
Analysis is the heart of the process. It is the key component of the first two phases of the cycle.
In analysis the present system, the analyst collects a great deal of relatively unstructured data
through interviews, questionnaires, on site observations, procedures manuals, and the like. The
traditional approach is to organize and convert the data though system flowcharts, which
support future developments of the system and simplify communication with the user. But the
system flowchart represents a physical rather than a logical system. It makes it difficult to
distinguish between what happens and how it happens in the system.
System analysis determine how the current information system functions and assess what
users would like to see in new system.
There are three sub phases in analysis:
Requirements determination
Requirements structuring, and
Alternative generation and choice.
We will first study the more traditional requirements determination then
Discuss modern methods for collecting system requirement (JAD).
Structuring system requirement is modeling
a system process,
logic and
conceptual data that provides a way for analysts to see how various process action
diagrams (data flow, entity relationship)
Process modeling show the flow of data between manual or automated systems.
Logic modeling show the decision logic of processing data finally
Data modeling depicts the characteristics and natural structure of data independent of
how it is stored in side the computer.
93
planning phase deliverables are the key inputs into the analysis phase. In the analysis phase,
the systems analyst works extensively with the business users of the new system to understand
their needs from the new system.
Sometimes the first step (i.e., understanding the as-is system) is skipped or done in a limited
manner. This happens when no current system exists, if the existing system and processes are
irrelevant to the future system, or if the project team is using a RAD or agile development
methodology in which the as-is system is not emphasized.
Traditional methods such as waterfall and parallel development typically allot significant
time to understanding the as-is system and identifying improvements before moving to
capture requirements for the to-be system.
Modern RAD and agile methodologies, such as iterative development, system prototyping,
throwaway prototyping, and extreme programming, focus almost exclusively on
improvements and the to-be system requirements, and they devote little time for
investigating the current as-is system. Experience shows that it is useful to study the current
situation whenever possible. The insights gained from reviewing the existing system can be
quite valuable to the project team.
To move the users from here to there, an analyst needs strong critical thinking skills. Critical
thinking is the ability to recognize strengths and weaknesses and recast an idea in an improved
form.
94
process models, and building a data model. We first explain what a requirement is and discuss
the process of creating a requirements definition statement.
What Is a Requirement?
A requirement is simply a statement of what the system must do or what characteristics it needs
to have.
During a systems development project, requirements will be created that describe:-
What the business needs (business requirements);
What the users need to do (user requirements);
What the software should do (functional requirements);
Characteristics the system should have (nonfunctional requirements); and
How the system should be built (system requirements).
Although this list of requirement categories may seem intimidating at first, the categories
merely reflect the purpose of the requirements and the stage in the SDLC in which they are
defined.
We have already discussed the creation of the systems request in the planning phase of the
SDLC.
In the system request, there are statements that describe the reasons for proposing the
systems development project.
These statements reflect the business requirements that this system, if built, will fulfill.
These business requirements help define the overall goals of the system and help clarify the
contributions it will make to the organizations success.
Examples of business requirements include: Increase market share; Shorten order
processing time; Reduce customer service costs; Lower inventory spoilage;
Improve responsiveness to customer service requests; and Provide account access to
mobile customers.
During the analysis phase, requirements are written from the perspective of the business, and
they focus on what the system needs to do in order to satisfy business user needs.
A good starting place is to concentrate on what the user actually needs to accomplish with the
system in order to fulfill a needed job or task.
95
These user requirements describe tasks that the users perform as an integral part of the
business operations, such as: Schedule a client appointment; Place a new customer
order; Re-order inventory; Determine available credit; and Look up account
balances.
Determining ways in which the new system can support user needs leads to statements of
the systems functional requirements.
Types of Requirements
Requirements are partitioned into functional requirements and non-functional
requirements.
Functional requirements are associated with specific functions, tasks or behaviors the
system must support.
Non-functional requirements are constraints on various attributes of these functions or
tasks.
Functional requirements
A functional requirement relates directly to a process the system has to perform as a part of
supporting a user task and/or information it needs to provide as the user is performing a task.
The International Institute of Business Analysis (IIBA) defines functional requirements as
the product capabilities, or things that a product must do for its users.
Functional requirements begin to define how the system will support the user in
completing a task.
For example, assume the user requirement is Schedule a client appointment.
The functional requirements associated with that task include:
Determine client availability,
Find available openings matching client availability,
Select desired appointment,
Record appointment, and Confirm appointment.
Notice how these functional requirements expand upon the users task to describe
capabilities and functions that the system will need to include, allowing the user to complete
the task.
96
FIGURE 5-1 Functional Requirements
Process models are used to explain the relationship of functions/ processes to the system
users, how the functions/processes relate to each other, how data is entered and produced by
functions/processes, and how functions/processes create and use stored data.
Process models help clarify the software components that will be needed to accomplish the
functional requirements.
In addition, the functional requirements begin to define the data that must be kept track of in
order to accomplish the user tasks. The data component of the system is defined in the data
model.
User requirements and functional requirements defined in the analysis phase will flow
into the design phase, where they evolve to become more technical, describing how the
system will be implemented.
Requirements in the design phase reflect the developers perspective, and they usually
are called system requirements. These requirements focus on describing how to create the
software product that will be produced from the project.
Before we continue, we want to stress that it can be difficult to draw a black and- white
dividing line between these categories of requirement and, confusingly, some companies use
the terms interchangeably.
The important thing to remember is that a requirement is a statement of what the system
must do, and the focus of requirements will change over time as the project moves from
planning to analysis to design to implementation.
97
Transaction corrections, adjustments, cancellations
Administrative functions
Authentication
Authorization functions user is delegated to perform
Audit Tracking
External Interfaces
Certification Requirements
Reporting Requirements
Historical Data
Legal or Regulatory Requirements
Nonfunctional requirements
The final category of requirements is nonfunctional requirements.
The International Institute of Business Analysis IIBA defines this group of requirements as
the quality attributes, design, and implementation constraints, and external interfaces which
a product must have.
Although the term nonfunctional is not very descriptive, this requirement category
includes important behavioral properties that the system must have, such as performance
and usability.
The ability to access the system through a mobile device would be considered a
nonfunctional requirement.
Nonfunctional requirements are primarily used in the design phase when decisions are
made about the user interface, the hardware and software, and the systems underlying
architecture.
Many of these requirements will be discovered during conversations with users in the
analysis phase, however, and should be recorded as they are discovered.
Figure 3-2 lists different kinds of nonfunctional requirements and examples of each kind.
Notice that the nonfunctional requirements describe a variety of system characteristics:
Operational,
Performance,
Security, and
98
Cultural and political.
These characteristics do not describe business processes or information, but they are very
important in understanding what the final system should be like.
For example, the project team needs to know whether a system must be highly secure,
requires sub second response time, or has to reach a multilingual customer base.
These requirements will affect design decisions that will be made in the design phase,
particularly architecture design.
99
Maintainability
Serviceability
Security (log in, system audit, etc..)
Regulatory
Manageability
Environmental
Data Integrity
Usability
Interoperability
100
Functional Requirements
1. New Vehicle Management
1.1 The system will allow managers to view the current new vehicle inventory.
1.2 Theformat.
outline systemFigure
will allow
3-3 the newavehicle
shows samplemanager to place
requirements orders for
definition for new vehicles.
Holiday Travel Vehicles,
1.3 The system will record the addition of new vehicles to inventory when they are received
afrom
fictitious recreational vehicle dealership.
the manufacturers.
2. Vehicle Sales Management
2.1 The system will enable salespersons to create a customer offer.
2.2 The system will allow salespeople to know whether an offer is pending on a specific
vehicle.
2.3 The system will enable managers to record approval of a customer offer.
2.4 The system will prepare a sales contract.
2.5 The system will prepare a shop work order based on customer requested dealer options.
2.6 The system will record a customer deposit.
2.7 The system will record a customer payment.
2.8 The system will create a record of the customer's vehicle purchase.
3. Used Vehicle Management
3.1 The system will record information on a customer trade-in vehicle ... etc.
Nonfunctional Requirements
1. Operational
1.1 The system should run on tablet PCs to be used by salespeople.
1.2 The system should interface with the shop management system.
1.3 The system should connect to printers wirelessly.
2. Performance
2.1 The system should support a sales staff of 15 salespeople.
2.2 The system should be updated with pending offers on vehicles every 15 minutes.
3. Security
3.1 No salesperson can access any other salesperson's customer contacts.
3.2 Only the owner and sales manager may approve customer offers.
3.3 Use of each tablet PC should be restricted to the salesperson to whom it is assigned.
4. Cultural and Political
4.1 Company policy says that all computer equipment is purchased from Dell.
4.2 Customer personal information is protected in compliance with the Data Protection Act.
4.3 The system will conform to the state's "lemon law."
101
Sometimes, requirements are prioritized on the requirements definition statement. They can be
ranked as having high, medium, or low importance in the new system, or they can be
labeled with the version of the system that will address the requirement (e.g., release 1, release 2,
release3). This practice is particularly important with RAD methodologies that deliver
requirements in batches by developing incremental versions of the system.
Although, as we will see, interviewing is the most commonly used technique, other indirect
methods may help the analyst develop a basic understanding of the business domain so that
the direct techniques are more productive.
In general, a useful strategy for the analyst to employ is to begin requirements gathering by
interviewing senior managers to gain an understanding of the project and get the big
picture.
These preliminary interviews can then be followed by document analysis and, possibly,
observation of business processes to learn more about the business domain, the vocabulary,
and the as-is system.
102
In our experience, identifying improvements is most commonly done through JAD sessions
because these sessions enable the users and key stakeholders to work together and create a
shared understanding of the possibilities for the to-be system.
Occasionally, these JAD sessions are followed by questionnaires sent to a much larger
group of users or potential users to get a broad range of opinions. The concept for the to-be
system is frequently developed through interviews with senior managers, followed by JAD
sessions with users of all levels, to make sure that the key requirements of the new system
are well understood.
A. Interviews
The interview is the most commonly used requirements-gathering technique.
After all, it is natural if you need to know something, you usually ask someone.
In general, interviews are conducted one-on-one (one interviewer and one interviewee), but
sometimes, due to time constraints, several people are interviewed at the same time.
There are five basic steps to the interview process:
Selecting interviewees, designing interview questions, preparing for the interview,
conducting the interview, and post interview follow-up.
1. Selecting Interviewees:
The first step in interviewing is to create an interview schedule listing all the people who will
be interviewed, when, and for what purpose. The people who appear on the interview
schedule are selected based on the analysts information needs.
103
The project sponsor, key business users, and other members of the project team can help the
analyst determine who in the organization can best provide important information about
requirements. These people are listed on the interview schedule in the order in which they
should be interviewed.
104
The interviewer should have a general interview plan listing the questions to be asked in the
appropriate order; should anticipate possible answers and provide follow-up with them; and
should identify segues between related topics.
The interviewer should confirm the areas in which the interviewee has knowledge in order
not to ask questions that he or she cannot answer.
Review the topic areas, the questions, and the interview plan, and clearly decide which have
the greatest priority in case time runs short.
4. Conducting the Interview
In starting the interview, the first goal is to build rapport with the interviewee, so that he or
she trusts the interviewer and is willing to tell the whole truth, not just give the answers that
he or she thinks are wanted. The interviewer should appear to be professional and an
unbiased, independent seeker of information.
The interview should start with an explanation of why the interviewer is there and why he or
she has chosen to interview the person; then the interviewer should move into the planned
interview questions.
5. Post interview Follow-up
After the interview is over, the analyst needs to prepare an interview report that describes
the information from the interview.
The report contains interview notes, information that was collected over the course of the
interview and is summarized in a useful format. In general, the interview report should be
written within forty-eight hours of the interview, because the longer the interviewer waits,
the more likely he or she is to forget information.
1. Selecting Participants Selecting JAD participants:- is done in the same basic way as
selecting interview participants. Participants are selected based on the information they can
contribute, to provide a broad mix of organizational levels, and to build political support for the
new system. The need for all JAD participants to be away from their office at the same time can
be a major problem. The office may need to be closed or operate with a skeleton staff until the
JAD sessions are complete.
2. Designing a JAD Session JAD sessions:- can run from as little as half a day to several weeks,
depending upon the size and scope of the project. In our experience, most JAD sessions tend to
last five to ten days, spread over a three-week period. Most e-JAD sessions tend to last one to
four days in a one-week period. JAD and e-JAD sessions usually go beyond the collection of
information and move into analysis. For example, the users and the analysts collectively can
create analysis deliverables, such as the functional models, structural models, or the requirements
definition.
3. Preparing for a JAD Session:- As with interviewing, it is important to prepare the analysts
and participants for a JAD session. Because the sessions can go beyond the depth of a typical
interview and are usually conducted off-site, participants can be more concerned about how to
prepare. It is important that the participants understand what is expected of them. If the goal of
the JAD session, for example, is to develop an understanding of the current system, then
participants can bring procedure manuals and documents with them. If the goal is to identify
improvements for a system, then they can think about how they would improve the system prior
to the JAD session.
4. Conducting a JAD Session:- Most JAD sessions try to follow a formal agenda, and most
have formal ground rules that define appropriate behavior. Common ground rules include
106
following the schedule, respecting others opinions, accepting disagreement, and ensuring that
only one person talks at once.
5. Post-JAD Follow-up: As with interviews, a JAD post session report is prepared and
circulated among session attendees. The post session report is essentially the same as the
interview report. Because the JAD sessions are longer and provide more information, it usually
takes a week or two after the JAD session before the report is complete.
C. Questionnaires
A questionnaire is a set of written questions used to obtain information from individuals.
Questionnaires are often used when there is a large number of people from whom
information and opinions are needed.
In our experience, questionnaires are a common technique with systems intended for use
outside the organization (e.g., by customers or vendors) or for systems with business users
spread across many geographic locations.
Most people automatically think of paper when they think of questionnaires, but today more
questionnaires are being distributed in electronic form, either via e-mail or on the Web.
Electronic distribution can save a significant amount of money as compared to distributing
paper questionnaires.
Good Questionnaire Design
Participants
As with interviews and JAD sessions, the first step is to identify the individuals to whom the
questionnaire will be sent.
107
However, it is not usual to select every person who could provide useful information. The
standard approach is to select a sample, or subset, of people who are representative of an
entire group.
The important point in selecting a sample, however, is to realize that not everyone who
receives a questionnaire will actually complete it. On average, only 30 to 50 percent of paper
and e-mail questionnaires are returned. Response rates for Web-based questionnaires tend to
be significantly lower (often only 5 to 30 percent).
Designing a Questionnaire:
Developing good questions is critical for questionnaires because the information on a
questionnaire cannot be immediately clarified for a confused respondent.
Questions on questionnaires must be very clearly written and leave little room for
misunderstanding, so closed-ended questions tend to be most commonly used.
Questions must clearly enable the analyst to separate facts from opinions.
Opinion questions often ask the respondent the extent to which they agree or disagree (e.g.,
Are network problems common?), whereas factual questions seek more precise values (e.g.,
How often does a network problem occur: once an hour, once a day, once a week?). For
guidelines on questionnaire design.
108
Questionnaire Follow-up
It is helpful to process the returned questionnaires and develop a questionnaire report soon
after the questionnaire deadline. This ensures that the analysis process proceeds in a timely
fashion and that respondent who requested copies of the results receive them promptly.
D. Document Analysis
Project teams often use document analysis to understand the as-is system.
Under ideal circumstances, the project team that developed the existing system will have
produced documentation, which was then updated by all subsequent projects.
In this case, the project team can start by reviewing the documentation and examining the
system itself.
Unfortunately, most systems are not well documented, because project teams fail to
document their projects along the way, and when the projects are over, there is no time to go
back and document. Therefore, there may not be much technical documentation about the
current system available, or it may not contain updated information about recent system
changes.
However, there are many helpful documents that do exist in the organization: paper reports,
memorandums, policy manuals, user training manuals, organization charts, and forms.
Problem reports filed by the system users can be another rich source of information about
issues with the existing system.
But these documents (forms, reports, policy manuals, organization charts) only tell part of the
story. They represent the formal system that the organization uses.
Quite often, the real or informal system differs from the formal one, and these differences,
particularly large ones, give strong indications of what needs to be changed. For example,
forms or reports that are never used likely should be eliminated.
Likewise, boxes or questions on forms that are never filled in (or are used for other purposes)
should be rethought.
The most powerful indication that the system needs to be changed is when users create their
own forms or add additional information to existing ones. Such changes clearly demonstrate
the need for improvements to existing systems. Thus, it is useful to review both blank and
completed forms to identify these deviations.
Likewise, when users access multiple reports to satisfy their information needs, it is a clear
sign that new information or new information formats are needed.
109
FIGURE 5-5 Performing a Document Analysis
E. Observation
Observation, the act of watching processes being performed, is a powerful tool for gathering
information about the as-is system because it enables the analyst to see the reality of a
situation, rather than listening to others describe it in interviews or JAD.
Observation is a good way to check the validity of information gathered from other sources
such as interviews and questionnaires.
110
In many ways, the analyst becomes an anthropologist as he or she walks through the
organization and observes the business system as it functions.
The goal is to keep a low profile, to not interrupt those working, and to not influence those
being observed. Nonetheless, it is important to understand that what analysts observe may
not be the normal day-to-day routine because people tend to be extremely careful in their
behavior when they are being watched.
Observation is often used to supplement interview information. The location of a persons
office and its furnishings gives clues as to their power and influence in the organization, and
such clues can be used to support or refute information given in an interview.
For example, an analyst might become skeptical of someone who claims to use the existing
computer system extensively if the computer is never turned on while the analyst visits. In
most cases, observation will support the information that users provide in interviews. When it
does not, it is an important signal that extra care must be taken in analyzing the business
system.
111
Practical work analysis
The first step in planning a workflow application is to analyze the business process you
want to define.
The steps involves in purchase order task of the Sales Supervisor at a fictitious distributor
firm are:
1. Receive a request for an estimate
2. Verify the stock balance
3. Issue the estimate
4. Place order
5. Receive materials ordered
6. Checking and Inspection
7. Send material to SOP
Workflow Diagram
112
Practical work analysis
It is important to focus on the main job when you list steps, because if surrounding
business factors, such as financial considerations or stock management, also are listed,
then the story is blurred.
It is important to focus on the main job when you list steps, because if surrounding
business factors, such as financial considerations or stock management, also are listed,
then the story is blurred.
workflow includes the communication among the people involved in the business
process.
113
The people involved in the earlier example are:
Sales supervisors
Customer
Stock keeper
Delivery person
Each step has a pool of information. For example, if you order a product, then
information, such as the product name, quantity, and price, is involved.
The information pools have a relationship to each other.
If you draw a picture of how the information goes around these steps with such
relationships considered, you will understand the relationship in each process more.
Practical work analysis
The information relation of each process
115
Organizational level WFD
Collapse all internal entities in combined user-level WFD, into a single internal entity
External entities and the flow of information between the organization and external
entities
Equivalent to Context level DFD
116
Selecting the Best design Strategy
Each of the requirements elicitation techniques just discussed has strengths and weaknesses. No
one technique is always better than the others, and in practice most projects benefit from a
combination of techniques. Thus, it is important to understand the strengths and weaknesses of
each technique and when to use each. One issue not discussed is that of the analysts
experience. In general, document analysis and observation require the least amount of training,
while JAD sessions are the most challenging.
Type of Information
The first characteristic is type of information.
Some techniques are more suited for use at different stages of the analysis process,
whether understanding the as-is system,
identifying improvements, or
developing the to-be system.
Interviews and JAD are commonly used in all three stages.
In contrast, document analysis and observation usually are most helpful for understanding the
as-is system, although they occasionally provide information about improvements.
Questionnaires are often used to gather information about the as-is system, as well as general
information about improvements.
Depth of Information
The depth of information refers to how rich and detailed the information is that the technique
usually produces and the extent to which the technique is useful at obtaining not only facts
and opinions, but also an understanding of why those facts and opinions exist.
117
Interviews and JAD sessions are very useful at providing a good depth of rich and detailed
information and helping the analyst to understand the reasons behind them.
At the other extreme, document analysis and observation are useful for obtaining facts, but
little beyond that.
Questionnaires can provide a medium depth of information, soliciting both facts and opinions
with little understanding of why.
Breadth of Information
Breadth of information refers to the range of information and information sources that can be
easily collected by that technique.
Questionnaires and document analysis both are easily capable of soliciting a wide range of
information from a large number of information sources.
In contrast, interviews and observation require the analyst to visit each information source
individually and, therefore, take more time.
JAD sessions are in the middle because many information sources are brought together at the
same time.
Integration of Information
One of the most challenging aspects of requirements gathering is the integration of
information from different sources. Simply put, different people can provide conflicting
information. Combining this information and attempting to resolve differences in opinions or
facts is usually very time consuming because it means contacting each information source in
turn, explaining the discrepancy, and attempting to refine the information.
All techniques suffer integration problems to some degree, but JAD sessions are designed to
improve integration because all information is integrated when it is collected, not afterward.
If two users provide conflicting information, the conflict becomes immediately obvious, as
does the source of the conflict. The immediate integration of information is the single most
important benefit of JAD that distinguishes it from other techniques, and this is why most
organizations use JAD for important projects.
User Involvement
User involvement refers to the amount of time and energy the intended users of the new
system must devote to the analysis process.
118
It is generally agreed that, as users become more involved in the analysis process, the chance
of success increases. However, user involvement can have a significant cost, and not all users
are willing to contribute valuable time and energy.
Questionnaires, document analysis, and observation place the least burden on users, while
JAD sessions require the greatest effort.
Cost
Cost is always an important consideration.
In general, questionnaires, document analysis, and observation are low-cost techniques
(although observation can be quite time consuming). The low cost does not imply that they
are more or less effective than the other techniques.
We regard interviews and JAD sessions as having moderate costs. In general, JAD sessions
are much more expensive initially, because they require many users to be absent from their
offices for significant periods, and they often involve highly paid consultants.
However, JAD sessions significantly reduce the time spent in information integration and
thus cost less in the long term.
119
CHAPTER SIX
SYSTEM DESIGN
7.0. INTRODUCTION
This section deals with the design phase of the system development lifecycle.
During the system design phase, we design an information system that satisfies the
requirements.
We must design all aspects of the system from input and output screens to reports,
databases, and computer processes.
Database design methodology has 2 main phases:
Logical database design;
Physical database design.
Systems design is really a bridge process. The objective of systems analysis is to thoroughly
understand the organizations informational needs or requirements and to document those
requirements in a set of specifications. The objective of software construction is to build a
system that satisfies those requirements.
Systems design, then, is the bridge that takes us from requirements to solution. The objective of
systems design is to define, organize, and structure the components of the final solution system
that will serve as the blueprint for construction.
Another way to think about systems design is that whereas analysis tells us what the solution
needs to do, design describes how the system will be configured and constructed.
System Design is defined as those tasks that focus on the specification of a detailed computer-
based solution. It is also known as physical design. System design methods focus on technical or
implementation concerns of the system. System designers play a vital role. System Analyst helps
as a facilitator in system design.
120
Systems design is the Bridge from requirements to implementation
First step in structured design where focus is on the solution. It defines:
What system will do (from the requirements)
Design is an abstract concept that has different meanings depending on the context. Design
also can include many different activities. Depending on the size and scope of the project and
the product being designed, the design activities may be simple, one-person activities or the
design activities may be complex involving many people, models, and resources.
What is DBMS?
DBMS File System
DBMS is a collection of data. In DBMS, the File system is a collection of data. In this
user is not required to write the procedures. system, the user has to write the procedures for
managing the database.
Searching data is easy in DBMS Searching is difficult in File System
DBMS is structured data Files are unstructured data
No data redundancy in DBMS Data redundancy is there in file system
Memory utilization well in DBMS Memory utilization poor in file system
A DBMS is software that allows creation, definition and manipulation of database, allowing
users to store, process and analyses data easily.
121
DBMS provides us with an interface or a tool, to perform various operations like creating
database, storing data in it, updating data, creating tables in the database and a lot more.
DBMS also provides protection and security to the databases.
It also maintains data consistency in case of multiple users.
Characteristics of DBMS
Data stored into Tables: Data is never directly stored into the database. Data is stored into
tables, created inside the database.
Reduced Redundancy: In the modern world hard drives are very cheap, but earlier when
hard drives were too expensive, unnecessary repetition of data in database was a big problem.
But DBMS follows Normalization which divides the data in such a way that repetition is
minimum.
Data Consistency: On Live data, i.e. data that is being continuously updated and added,
maintaining the consistency of data can become a challenge. But DBMS handles it all by
itself.
122
Support Multiple user and Concurrent Access: DBMS allows multiple users to work on
it(update, insert, delete data) at the same time and still manages to maintain the data
consistency.
Query Language: DBMS provides users with a simple Query language, using which data
can be easily fetched, inserted, deleted and updated in a database.
Advantages of DBMS
Controls database redundancy: It can control data redundancy because it stores all the data
in one single database file and that recorded data is placed in the database.
Data sharing: In DBMS, the authorized users of an organization can share the data among
multiple users.
Easily Maintenance: It can be easily maintainable due to the centralized nature of the
database system.
Reduce time: It reduces development time and maintenance need.
Backup: It provides backup and recovery subsystems which create automatic backup of data
from hardware and software failures and restores the data if required.
multiple user interface: It provides different types of user interfaces like graphical user
interfaces, application program interfaces
Disadvantages of DBMS
Cost of Hardware and Software: It requires a high speed of data processor and large
memory size to run DBMS software.
Size: It occupies a large space of disks and large memory to run them efficiently.
Complexity: Database system creates additional complexity and requirements.
Higher impact of failure: Failure is highly impacted the database because in most of the
organization, all the data stored in a single database and if the database is damaged due to
electric failure or database corruption then the data may be lost forever.
123
Design methodology: A structured approach that uses procedures, techniques, tools, and
documentation aids to support and facilitate the process of design.
124
We have three levels of abstraction:
1. Conceptual (view) Level:
The process of constructing a model of the information used in an enterprise, independent of
all physical considerations.
The conceptual database design phase begins with the creation of a conceptual data model of
the enterprise, which is entirely independent of implementation details such as the target
DBMS, application programs, programming languages, hardware platform, performance issues,
or any other physical considerations.
View level: Highest level of data abstraction. This level describes the user interaction with
database system.
This is a lowest level, which describes entire database.
Example: All application programs.
2. Logical Level:
The logical database design phase maps the conceptual model on to a logical model, which is
influenced by the data model for the target database (for example, the relational model). The
logical data model is a source of information for the physical design phase.
125
The output of this process is a global logical data model consisting of an Entity- Relationship
diagram, relational schema, and supporting documentation that describes this model, such as a
data dictionary. Together, these represent the sources of information for the physical design
process, and they provide the physical database designer with a vehicle for making tradeoffs that
are so important to an efficient database design.
Logical level: This is the middle level of 3-level data abstraction architecture. It describes
what data is stored in database.
This is next higher level that describes what data and what relationships in the database.
Example:
Each record
type customer = record cust_name: sting;
cust_city: string; cust_street: string;
end;
Logical data formatThe way in which a human being views data.
Logical designA stage in the design phase that matches the conceptual design to the
requirements of the selected DBMS an is, therefore, software-dependent. It is used to
translate the conceptual design into the internal model for a selected database management
system, such as DB2, SQL Server, Oracle, IMS, Informix, Access, and Ingress.
The logical view is what the data look like, regardless of how they are stored.
The physical view is the way data exist in physical storage. It deals with how data are stored,
accessed, or related to other data in storage. Four views of data exist: three logical and one
physical. The logical views are the users view, the programmers view and the overall
logical view, called a schema.
3. Physical Level:
Physical level: This is the lowest level of data abstraction. It describes how data is actually
stored in database. You can get the complex data structure details at this level.
Physical data format—The way in which the computer ―sees the data.
This is a lowest level, which describes how the data is actually stores.
Example: Customer account database can be described.
126
It is a description of the implementation of the database on secondary storage; it describes
the base relations, file organizations, and indexes used to achieve efficient access to the data,
and any associated integrity constraints and security measures.
Whereas logical database design is concerned with the what, physical database design is
concerned with the how. The physical database design phase allows the designer to make
decisions on how the database is to be implemented. Therefore, physical design is tailored to a
specific DBMS. There is feedback between physical and logical design, because decisions taken
during physical design for improving performance may affect the logical data model.
For example, decisions taken during physical for improving performance, such as merging
relations together, might affect the structure of the logical data model, which will have an
associated effect on the application design.
Definition of instance: The data stored in database at a particular moment of time is called
instance of database. Database schema defines the variable declarations in tables that belong to a
particular database; the value of these variables at a moment of time is called the instance of that
database.
DBMS ARCHITECTURE:
127
Database management systems architecture will help us understand the components of
database system and the relation among them.
The architecture of DBMS depends on the computer system on which it runs.
the basic client/server architecture is used to deal with a large number of PCs, web servers,
database servers and other components that are connected with networks.
The client/server architecture consists of many PCs and a workstation which are connected
via the network.
DBMS architecture depends upon how users are connected to the database to get their
request done.
128
3-Tier Architecture
In three-tier architecture, another layer is present between the client machine and server
machine.
In this architecture, the client application doesnt communicate directly with the database
systems present at the server machine, rather the client application communicates with server
application and the server application internally communicates with the database system
present at the server.
DATA MODELS:
Data Model is the modeling of the data description, data semantics, and consistency
constraints of the data.
129
It provides the conceptual tools for describing the design of a database at each level of data
abstraction.
Therefore, there are following four data models used for understanding the structure of the
database:
Four Types of DBMS systems are:
Hierarchical database
Network database
Relational database
ER model database
Hierarchical DBMS
In a Hierarchical database, model data is organized in a tree-like structure. Data is Stored
Hierarchically (top down or bottom up) format. Data is represented using a parent-child
relationship. In Hierarchical DBMS parent may have many children, but children have only one
parent.
Network Model
The network database model allows each child to have multiple parents. It helps you to address
the need to model more complex relationships like as the orders/parts many-to-many
relationship. In this model, entities are organized in a graph which can be accessed through
several paths.
130
Relational model
Relational DBMS is the most widely used DBMS model because it is one of the easiest. This
model is based on normalizing data in the rows and columns of the tables. Relational model
stored in fixed structures and manipulated using SQL.
Relational Model (RM) represents the database as a collection of relations. A relation is nothing
but a table of values. Every row in the table represents a collection of related data values. These
rows in the table denote a real-world entity or relationship.
The table name and column names are helpful to interpret the meaning of values in each row.
The data are represented as a set of relations. In the relational model, data are stored as tables.
However, the physical storage of the data is independent of the way the data are logically
organized.
131
10. Attribute domain Every attribute has some pre-defined value and scope which is known as
attribute domain
Entity-Relationship Model
Entity-Relationship (ER) Model is based on the notion of real-world entities and relationships
among them. While formulating real-world scenario into the database model, the ER Model
creates entity set, relationship set, general attributes and constraints.
ER model
ER model stands for an Entity-Relationship model. It is a high-level data model. This model
is used to define the data elements and relationship for a specified system.
It develops a conceptual design for the database. It also develops a very simple and easy to
design view of data.
In ER modeling, the database structure is portrayed as a diagram called an entity-relationship
diagram.
For example, suppose we design a school database. In this database, the student will be an entity
with attributes like address, name, id, age, etc. The address can be another entity with attributes
like city, street name, pin code, etc and there will be a relationship between them.
132
Component of ER Diagram
133
7.5. Process of Database Design
a. Requirements Collection and Analysis:
This is the first step in designing any database application.
This is an informal process that involves discussions and studies and analyzing the
expectations of the users & the intended uses of the database.
Under this, we have to understand the following.
1. What data is to be stored n a database?
2. What applications must be built?
3. What operations can be used? Example: For customer database, data is cust-name,
cust-city, and cust-no.
134
Under this, we must choose a DBMS to implement our database design and convert the
conceptual database design into a database schema.
The choice of DBMS is governed by number of factors as below.
1. Economic Factors.
2. Organizational Factors.
Explanation is as below.
1. Economic Factors: These factors consist of the financial status of the applications.
a. Software Acquisition Cost: This consists buying the software including language options such
as forms, menu, recovery/backup options, web based graphic user interface (GUI) tools and
documentation.
b. Maintenance Cost: This is the cost of receiving standard maintenance service from the vendor
and for keeping the DBMS version up to date.
c. Hardware Acquisition Cost: This is the cost of additional memory, disk drives, controllers and
a specialized DBMS storage.
d. Database Creation and Conversion Cost: This is the cost of creating the database system from
scratch and converting an existing system to the new DBMS software.
e. Personal Cost: This is the cost of re-organization of the data processing department.
f. Training Cost: This is the cost of training for Programming, Application Development and
Database Administration.
g. Operating Cost: The cost of continued operation of the database system.
2. Organizational Factors: These factors support the organization of the vendor, can be
listed as below.
a. Data Complexity: Need of a DBMS.
b. Sharing among applications: The greater the sharing among applications, the more the
redundancy among files and hence the greater the need for a DBMS.
c. Dynamically evolving or growing data: If the data changes constantly, it is easier to cope with
these changes using a DBMS than using a file system.
d. Frequency of ad hoc requests for data: File systems are not suitable for ad hoc retrieval of
data.
e. Data Volume and Need for Control: These 2 factors needs for a DBMS.
135
Example: Customer database can be represented in the form of tables or diagrams.
3. Schema Refinement:
Under this, we have to analyze the collection of relations in our relational database schema to
identify the potential problems.
137
3. Testing and usability assessment: measuring test/usability results (consistency, sufficiency,
accuracy, etc.)
138
General Formatting Guidelines for Forms and Reports
Displaying Text
Display text in mixed upper- and lowercase and use conventional punctuation
Use double spacing if space permits. If not, place a blank line between
paragraphs
Left-justify text and leave a ragged right margin
Do not hyphenate words between lines
Use abbreviations and acronyms only when they are widely understood by users
and are significantly shorter than the full text
Displaying tables and lists
Labels
All columns and rows should have meaningful labels
Labels should be separated from other information by using highlighting
Redisplay labels when the data extend beyond a single screen or page
139
Formatting columns, rows and text
Sort in a meaningful order
Place a blank line between every 5 rows in long columns
Similar information displayed in multiple columns should be sorted
vertically
Columns should have at least two spaces between them
Allow white space on printed reports for user to write notes
Use a single typeface, except for emphasis
Use same family of typefaces within and across displays and reports
Avoid overly fancy fonts
Formatting numeric, textual and alphanumeric data
Right-justify numeric data and align columns by decimal points or other
delimiter
Left-justify textual data. Use short line length, usually 30 to 40 characters
per line
Break long sequences of alphanumeric data into small groups of three to
four characters each
140
141
142
Designing Interfaces and Dialogues
Focus on how information is provided to and captured from users
Dialogues are analogous to a conversation between two people
A good human-computer interface provides a unifying structure for finding, viewing and
invoking the different components of a system
The Process of Designing Interfaces and Dialogues
User-focused activity
Parallels form and report design process
Employs prototyping methodology
Collect information
Construct prototype
Assess usability
Make refinements
Deliverables
143
Design Specifications
Narrative
Sample Design
Testing and usability assessment
Designing Interfaces
Designing Layouts
Standard formats similar to paper-based forms and reports should be used
Screen navigation on data entry screens should be left-to-right, top-to-bottom as
on paper forms
Designing Layouts
Flexibility and consistency are primary design goals
Users should be able to move freely between fields
Data should not be permanently saved until the user explicitly requests this
Each key and command should be assigned to one function
Structuring Data Entry
144
Controlling Data Input
One objective of interface design is to reduce data entry errors
Role of systems analyst is to anticipate user errors and design features into the systems
interfaces to avoid, detect, and correct data entry mistakes
Table 8-9 describes types of data entry errors
Table 8-10 lists techniques used by system designers to detect errors
145
7.7. Providing Feedback
1. Status Information
Keeps users informed of what is going on in system
Displaying status information is especially important if the operation takes longer
than a second or two
2. Prompting Cues
Best to keep as specific as possible
3. Error and Warning Messages
Messages should be specific and free of error codes and jargon
User should be guided toward a result rather than scolded
Use terms familiar to user
Be consistent in format and placement of messages
Providing Help
Place yourself in users place when designing help
146
Guidelines
Simplicity
Help messages should be short and to the point
Organization
Information in help messages should be easily absorbed by users
Demonstrate
It is useful to explicitly show users how to perform an operation
Context-Sensitive Help
Enables user to get field-specific help
Users should always be returned to where they were when requesting help
Designing Dialogues
Dialogue
Sequence in which information is displayed to and obtained from a user
Primary design guideline is consistency in sequence of actions, keystrokes, and
terminology
Three-step process
1. Design dialogue sequence
2. Build a prototype
3. Assess usability
147
3. Bottom: Contains display reference numbers that can be accessed from
the current display
148
7.9. Electronic Commerce Application:
Designing the Human Interface at Pine Valley Furniture
Design Guidelines
Navigation via cookie crumbs
A technique that uses a series of tabs on a Web page to show users where
they are and where they have been in the site
Tabs are hyperlinks to allow users to move backward easily within the site
Two important purposes
Allows users to navigate to a point previously visited
Shows users where they have been and how far they have gone
from point of entry into site
149
Electronic Commerce Application: Design Guidelines
Lightweight Graphics
The use of small images to allow a Web page to be displayed more quickly
Forms and Data Integrity
All forms that record information should be clearly labeled and provide room for
input
Clear examples of input should be provided to reduce data errors
Site must clearly designate which fields are required, which are optional and
which have a range of values
Template-based HTML
Templates to display and process common attributes of higher-level, more
abstract items
Creates an interface that is very easy to maintain
Summary
Designing Forms and Reports
General guidelines for designing forms and reports
Formatting text, tables and lists
Design guidelines for interfaces
Layout design
Structuring data entry fields
Providing feedback
Designing help
Human-Computer dialogue design
Interface design guidelines unique to the Internet
150