Uploaded by joseph mbugua

Systems analysis and design (1)

advertisement
SYSTEMS ANALYSIS AND DESIGN
What is a System?
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.”
Constraints of a System
A system must have three basic constraints −

A system must have some structure and behavior which is designed to achieve a
predefined objective.

Interconnectivity and interdependence must exist among the system components.

The objectives of the organization have a higher priority than the objectives of its
subsystems.
For example, traffic management system, payroll system, automatic library system, human
resources information system.
Properties of a System
A system has the following properties −
Organization
Organization implies structure and order. It is the arrangement of components that helps to
achieve predetermined objectives.
Interaction
It is defined by the manner in which the components operate with each other.
For example, in an organization, purchasing department must interact with production
department and payroll with personnel department.
Interdependence
Interdependence means how the components of a system depend on one another. For proper
functioning, the components are coordinated and linked together according to a specified
plan. The output of one subsystem is the required by other subsystem as input.
Integration
Integration is concerned with how a system components are connected together. It means that
the parts of the system work together within the system even if each part performs a unique
function.
Central Objective
The objective of system must be central. It may be real or stated. It is not uncommon for an
organization to state an objective and operate to achieve another.
C
1
The users must know the main objective of a computer application early in the analysis for a
successful design and conversion.
10.1 Elements of information systems
Information systems are interrelated components working together to collect, process, store,
and disseminate information to support decision making, coordination, control, analysis, and
viualization in an organization. The components that make up an information system and
the role that those components play in an organization are:
TECHNOLOGY
Technology can be thought of as the application of scientific knowledge for practical
purposes. From the invention of the wheel to the harnessing of electricity for artificial
lighting, technology is a part of our lives in so many ways that we tend to take it for granted.
As discussed before, the first three components of information systems – hardware, software,
and data – all fall under the category of technology.
Hardware
Information systems hardware is the part of an information system you can touch – the
physical components of the technology. Computers, keyboards, disk drives, iPads, and flash
drives are all examples of information systems hardware.
Software
Software is a set of instructions that tells the hardware what to do. Software is not tangible –
it cannot be touched. When programmers create software programs, what they are really
doing is simply typing out lists of instructions that tell the hardware what to do. There are
several categories of software, with the two main categories being operating-system software,
which makes the hardware usable, and application software, which does something useful.
Examples of operating systems include Microsoft Windows on a personal computer and
Google’s Android on a mobile phone.
C
2
Data
The third component is data. You can think of data as a collection of facts. For example, your
street address, the city you live in, and your phone number are all pieces of data. Like
software, data is also intangible. By themselves, pieces of data are not really very useful. But
aggregated, indexed, and organized together into a database, data can become a powerful tool
for businesses. In fact, all of the definitions presented at the beginning of this chapter focused
on how information systems manage data. Organizations collect all kinds of data and use it to
make decisions. These decisions can then be analyzed as to their effectiveness and the
organization can be improved.
Networking Communication: A Fourth Technology Piece?
Besides the components of hardware, software, and data, which have long been considered
the core technology of information systems, it has been suggested that one other component
should be added: communication. An information system can exist without the ability to
communicate – the first personal computers were stand-alone machines that did not access
the Internet. However, in today’s hyper-connected world, it is an extremely rare computer
that does not connect to another device or to a network. Technically, the networking
communication component is made up of hardware and software, but it is such a core feature
of today’s information systems that it has become its own category.
PEOPLE
When thinking about information systems, it is easy to get focused on the technology
components and forget that we must look beyond these tools to fully understand how they
integrate into an organization. A focus on the people involved in information systems is the
next step. From the front-line help-desk workers, to systems analysts, to programmers, all the
way up to the chief information officer (CIO), the people involved with information systems
are an essential element that must not be overlooked.
PROCESS
The last component of information systems is process. A process is a series of steps
undertaken to achieve a desired outcome or goal. Information systems are becoming more
and more integrated with organizational processes, bringing more productivity and better
control to those processes. But simply automating activities using technology is not enough –
businesses looking to effectively utilize information systems do more. Using technology to
manage and improve processes, both within a company and externally with suppliers and
customers, is the ultimate goal. Technology buzzwords such as “business process
reengineering,” “business process management,” and “enterprise resource planning” all have
to do with the continued improvement of these business procedures and the integration of
technology with them. Businesses hoping to gain an advantage over their competitors are
highly focused on this component of information systems.
10.2 Systems theory
The view of organizations as open social systems that must interact with their environments
in order to survive is known as the systems theory approach. Organizations depend on their
C
3
environments for several essential resources: customers who purchase the product or service,
suppliers who provide materials, employees who provide labor or management, shareholders
who invest, and governments that regulate. The open-systems approach was first applied by
Katz and Kahn, who adapted General Systems Theory to organizational behavior. This
approach identifies organizational behavior by mapping the repeated cycles of input,
throughput, output, and feedback between an organization and its external environment.
Systems receive input from the environment either as information or in the form of resources.
The systems then process the input internally, which is called throughput, and release outputs
into the environment in an attempt to restore equilibrium to the environment. The system then
seeks feedback to determine if the output was effective in restoring equilibrium. As can be
seen, the systems approach focuses on the means used to maintain organizational survival and
emphasize long-term goals rather than the short-term goals of the goal-attainment approach.
Theoretically, systems can be considered either open or closed. Open organizations exchange
information, energy, or resources with their environments, whereas closed systems do not. In
reality, because no social systems can be completely closed or open, they are usually
identified as relatively closed or relatively open. The distinction between closed and open
systems is determined by the level of sensitivity to the external environment. Closed
systems are insensitive to environmental deviations, whereas open systems are responsive to
changes in the environment. The systems approach is an external standard that measures
effectiveness based on long-term growth or sustainability.
10.3 Types of information systems
Major Types of Information Systems
A typical organization has six information systems with each supporting a specific
organizational level. These systems include transaction processing systems (TPS) at the
operational level, office automation systems (OAS) and knowledge work systems (KWS) at
the knowledge level, management information systems (MIS) and decision support
Systems (DSS) at the management level and the executive support systems (ESS)at the
strategic level.
1. Transaction Processing Systems
Every firm needs to process transactions in order to perform its daily business operations. A
transaction refers to any event or activity that affects the organization. Depending on the
organization’s business, transactions may differ from one organization to another. In a
manufacturing unit, for example, transactions include order entry, receipt of goods, shipping,
etc., while in a bank, transactions include deposits and withdrawals, cashing of cheques, etc.
However, some transactions, including placing orders, billing customers, hiring employees,
employee record keeping, etc., are common to all organizations. To support the processing of
business transactions, transaction processing systems (TPS) are used in organizations.
2. Office Automation Systems
An office automation system (OAS) is a collection of communication technology, computers,
and persons to perform official tasks. It executes office transactions and supports official
activities at every organizational level. These activities can be divided into clerical and
managerial activities.
C
4
Clerical activities performed with the help of an office automation system include preparing
written communication, typesetting, printing, mailing, scheduling meetings, calendar
keeping. etc. Under managerial activities, an office automation system helps in conferencing,
creating reports and messages, and controlling the performance of the organization. Many
applications like word processing, electronic filing, and e-mail are integrated into office
automation systems.
Word Processing
Word processing is used for the preparation of documents like letters, reports, memos, or any
type of printable material by electronic means. The text is entered by the keyboard and
displayed on the computer’s display unit.
This text can be edited, stored, and reproduced with the help of commands present in the
word processor. Word processors have facilities for spell checking, grammar checking,
counting (character, lines, pages, etc.), automatic page numbering, index creation, header,
and footer, etc.
Email
E-mail or electronic mail facilitates the transfer of messages or documents with the help of
computers and communication lines. This helps in the speedy delivery of mails and also
reduces the time and cost of sending paper mail. E-mail supports not only the transfer of text
messages but also has options for sending images, audio, video, and many other types of data.
Voice Mail
Voice mail, an important call service, allows the recording and storing of telephone messages
into the computer’s memory. The intended person can retrieve these messages at any time.
3. Knowledge Work Systems
A knowledge work system (KWS) is a specialized system built to promote the creation of
knowledge and to make sure that knowledge and technical skills are proper integrated into the
business. It helps the knowledge workers in creating and propagating new information and
knowledge by providing them the graphics, analytical, communications, and document
management tools.
The knowledge workers also need to search for knowledge outside the organization. Thus,
the knowledge work system must give easy access to external databases. In addition,
knowledge work systems should have a user-friendly interface to help users to get the
required information quickly and easily.
Some examples of knowledge work systems are computer-aided design (CAD)systems,
virtual reality systems, and financial workstations.
Computer-aided design (CAD) systems: These systems are used for automating the
creation and revision of designs using computers and graphics software. The CAD software
has the capability to provide design specifications for the tooling and manufacturing process.
This saves much time and money while making a manufacturing process.
Virtual Reality System: These systems have more capabilities than CAD systems for
visualization, rendering, and simulation. They make use of interactive graphics software to
build computer-generated simulations which almost look real. They can be used in
educational, scientific, and business work.
C
5
Financial Workstations: They are used to combine a wide range of data from internal as
well as external sources. This data includes contact management data, market data, and
research reports. Financial workstations help in analyzing trading situations and large
amounts of financial data within no time. It is also used for portfolio management.
4. Management Information Systems
Management information systems are specially developed to support the planning,
controlling, and decision-making functions of middle managers. A management information
system (MIS) extracts transaction data from underlying TPSs, compiles them, and produces
information products in the form of reports, displays, or responses.
These information products provide information that conforms to the decision-making needs
of managers and supervisors. Management information systems use simple routines like
summaries and comparisons which enable managers to take decisions for which the
procedure of reaching a solution has been specified in advance.
Generally, the format of reports produced by MIS is pre-specified. A typical MIS report is a
summary report, such as a report on the quarterly sales made by each sales representative of
the organization. Another type of management information system report is an; for example,
exception report that specifies the exception conditions the sales made by some sales
representative is far below than expected.
Usually, management information systems are used to produce reports on a monthly,
quarterly, or yearly basis. However, if managers want to view the daily or hourly data, MIS
enables them to do so. In addition, they provide managers online access to the current
performance as well as past records of the organization.
5. Decision Support Systems
A decision support system (DSS) is an interactive computer-based information system that,
like MIS, also serves at the management level of an organization. However, in contrast to
MIS, it processes information to support the decision-making process of managers.
It provides middle managers with the information that enables them to make intelligent
decisions. A decision support system in a bank, for example, enables a manager to analyze
the changing trends in deposits and loans in order to ascertain the yearly targets
Decision support systems are designed for every manager to execute a specific managerial
task or problem. Generally, they help managers to make semi-structured decisions, the
solution to which can be arrived at logically. However, sometimes, they can also help in
making complex decisions. To support such decisions, they use the information generated by
OASs and TPSs.
Decision support systems have more analytical power as compared to other information
systems. They employ a wide variety of decision models to analyze data or summarize a vast
amount of data into a form (usually the form of tables or charts) that makes the comparison
and analysis of data easier for managers.
They provide an interactive environment so that the users could work with them directly, add
or change data as per their requirements, and ask new questions.
6. Executive Support Systems
An executive support system (ESS) – an extension of MIS – is a computer-based information
system that helps in decision-making at the top level of an organization. The decisions taken
C
6
with the help of an executive support system are non-routine decisions that affect the entire
organization and, thus, require judgment and sight.
As compared to DSSs, ESSs offer more general computing capabilities, better
telecommunications, and efficient display options. They use advanced graphics software to
display critical information in the form of charts or graphs that help senior executives to solve
a wide range of problems.
To make effective decisions, they use summarized internal data from MIS and DSS as well as
data from external sources about events like new tax laws, new competitors, etc. They filter,
compress, and track data of high importance and make it available to the strategic-level
managers.
Executive support systems help to monitor performance, track activities of competitors,
identify opportunities, and forecast trends. They also assist senior managers in answering the
following question:
• What business should we do?
• How are our competitors doing the business?
• Which units can be sold and which new units are to be bought?
10.4 Personnel involved in systems analysis and design
People are involved in information systems in just about every way you can think
of: people imagine information systems, people develop information systems, people support
information systems, and, perhaps most importantly, people use information systems.
The Creators of Information Systems: The first group of people we are going to look at
play a role in designing, developing, and building information systems. These people are
generally very technical and have a background in programming.
Identification of the personnel at each stage and brief description of their roles: client,
systems analyst, project manager, programmer and independent test group
The client awards the contract to a software house, they are involved in the analysis stage to
answer questions and help create the software specification. The may be used at the testing
stage to perform testing on the final product. Their involvent is not required at the other
stages as the software specification should give the software hues all the info they need.
Systems analysist works with the client to produce the software specificatio, they are also
involved with the design team to help clarify any points in the specification.
The project manager is responsible for the project being delivered on time and in budget, they
do not need to have programming experience although this helps. They are involved at all
stages of the process.
Programers are involved at the design, implementation, testing, documentation & maintance
stages and are responsible for producing a working and correct program.
Independant test groups are used to test the program, this is sometimes classed beta testing.
Not being part of the programming teams gives them a more objective view of the program.
Often these testing groups are made up of members of it he public as well as specialists.
C
7
Role of System Analyst
The system analyst is a person who is thoroughly aware of the system and guides the system
development project by giving proper directions. He is an expert having technical and
interpersonal skills to carry out development tasks required at each phase. He pursues to
match the objectives of information system with the organization goal.
Main Roles

Defining and understanding the requirement of user through various Fact finding
techniques.

Prioritizing the requirements by obtaining user consensus.

Gathering the facts or information and acquires the opinions of users.

Maintains analysis and evaluation to arrive at appropriate system which is more user
friendly.

Suggests many flexible alternative solutions, pick the best solution, and quantify cost
and benefits.

Draw certain specifications which are easily understood by users and programmer in
precise and detailed form.

Implemented the logical design of system which must be modular.

Plan the periodicity for evaluation after it has been used for some time, and modify
the system as needed
10.5 Systems analysis and design concepts
Systems development is systematic process which includes phases such as planning, analysis,
design, deployment, and maintenance. Here, we will primarily focus on −

Systems analysis

Systems design
Systems Analysis
It is a process of collecting and interpreting facts, identifying the problems, and
decomposition of a system into its components. System analysis is conducted for the
purpose of studying a system or its parts in order to identify its objectives. It is a problem
solving technique that improves the system and ensures that all the components of the
system work efficiently to accomplish their purpose. Analysis specifies what the system
should do.
Systems Design
It is a process of planning a new business system or replacing an existing system by defining
its components or modules to satisfy the specific requirements. Before planning, you need to
understand the old system thoroughly and determine how computers can best be used in
order to operate efficiently. System Design focuses on how to accomplish the objective of
the system. System Analysis and Design (SAD) mainly focuses on – Systems, Processes
and Technology
C
8
10.6 Systems a development life cycle
System Development Life Cycle
An effective System Development Life Cycle (SDLC) should result in a high quality system
that meets customer expectations, reaches completion within time and cost evaluations, and
works effectively and efficiently in the current and planned Information Technology
infrastructure.
System Development Life Cycle (SDLC) is a conceptual model which includes policies and
procedures for developing or altering systems throughout their life cycles.
SDLC is used by analysts to develop an information system. SDLC includes the following
activities −

requirements

design

implementation

testing

deployment

operations

maintenance
What is Requirements Determination?
A requirement is a vital feature of a new system which may include processing or capturing
of data, controlling the activities of business, producing information and supporting the
management.
Requirements determination involves studying the existing system and gathering details to
find out what are the requirements, how it works, and where improvements should be made.
Major Activities in requirement Determination
Requirements Anticipation

It predicts the characteristics of system based on previous experience which include
certain problems or features and requirements for a new system.

It can lead to analysis of areas that would otherwise go unnoticed by inexperienced
analyst. But if shortcuts are taken and bias is introduced in conducting the
investigation, then requirement Anticipation can be half-baked.
Requirements Investigation

It is studying the current system and documenting its features for further analysis.

It is at the heart of system analysis where analyst documenting and describing system
features using fact-finding techniques, prototyping, and computer assisted tools.
Requirements Specifications
C
9

It includes the analysis of data which determine the requirement specification,
description of features for new system, and specifying what information requirements
will be provided.

It includes analysis of factual data, identification of essential requirements, and
selection of Requirement-fulfillment strategies.
Information Gathering Techniques
The main aim of fact finding techniques is to determine the information requirements of an
organization used by analysts to prepare a precise SRS understood by user.
Ideal SRS Document should −

be complete, Unambiguous, and Jargon-free.

specify operational, tactical, and strategic information requirements.

solve possible disputes between users and analyst.

use graphical aids which simplify understanding and design.
There are various information gathering techniques −
Interviewing
Systems analyst collects information from individuals or groups by interviewing. The analyst
can be formal, legalistic, play politics, or be informal; as the success of an interview depends
on the skill of analyst as interviewer.
It can be done in two ways −

Unstructured Interview − The system analyst conducts question-answer session to
acquire basic information of the system.

Structured Interview − It has standard questions which user need to respond in
either close (objective) or open (descriptive) format.
Advantages of Interviewing

This method is frequently the best source of gathering qualitative information.

It is useful for them, who do not communicate effectively in writing or who may not
have the time to complete questionnaire.

Information can easily be validated and cross checked immediately.

It can handle the complex subjects.

It is easy to discover key problem by seeking opinions.

It bridges the gaps in the areas of misunderstandings and minimizes future problems.
Questionnaires
This method is used by analyst to gather information about various issues of system from
large number of persons.
There are two types of questionnaires −
C
10

Open-ended Questionnaires − It consists of questions that can be easily and
correctly interpreted. They can explore a problem and lead to a specific direction of
answer.

Closed-ended Questionnaires − It consists of questions that are used when the
systems analyst effectively lists all possible responses, which are mutually exclusive.
Advantages of questionnaires

It is very effective in surveying interests, attitudes, feelings, and beliefs of users which
are not co-located.

It is useful in situation to know what proportion of a given group approves or
disapproves of a particular feature of the proposed system.

It is useful to determine the overall opinion before giving any specific direction to the
system project.

It is more reliable and provides high confidentiality of honest responses.

It is appropriate for electing factual information and for statistical data collection
which can be emailed and sent by post.
Review of Records, Procedures, and Forms
Review of existing records, procedures, and forms helps to seek insight into a system which
describes the current system capabilities, its operations, or activities.
Advantages

It helps user to gain some knowledge about the organization or operations by
themselves before they impose upon others.

It helps in documenting current operations within short span of time as the procedure
manuals and forms describe the format and functions of present system.

It can provide a clear understanding about the transactions that are handled in the
organization, identifying input for processing, and evaluating performance.

It can help an analyst to understand the system in terms of the operations that must be
supported.

It describes the problem, its affected parts, and the proposed solution.
Observation
This is a method of gathering information by noticing and observing the people, events, and
objects. The analyst visits the organization to observe the working of current system and
understands the requirements of the system.
Advantages
C

It is a direct method for gleaning information.

It is useful in situation where authenticity of data collected is in question or when
complexity of certain aspects of system prevents clear explanation by end-users.

It produces more accurate and reliable data.
11

It produces all the aspect of documentation that are incomplete and outdated.
Joint Application Development (JAD)
It is a new technique developed by IBM which brings owners, users, analysts, designers, and
builders to define and design the system using organized and intensive workshops. JAD
trained analyst act as facilitator for workshop who has some specialized skills.
Advantages of JAD

It saves time and cost by replacing months of traditional interviews and follow-up
meetings.

It is useful in organizational culture which supports joint problem solving.

Fosters formal relationships among multiple levels of employees.

It can lead to development of design creatively.

It Allows rapid development and improves ownership of information system.
Secondary Research or Background Reading
This method is widely used for information gathering by accessing the gleaned information.
It includes any previously gathered information used by the marketer from any internal or
external source.
Advantages

It is more openly accessed with the availability of internet.

It provides valuable information with low cost and time.

It act as forerunner to primary research and aligns the focus of primary research.

It is used by the researcher to conclude if the research is worth it as it is available with
procedures used and issues in collecting them.
Feasibility Study
Feasibility Study can be considered as preliminary investigation that helps the management to
take decision about whether study of system should be feasible for development or not.

It identifies the possibility of improving an existing system, developing a new system,
and produce refined estimates for further development of system.

It is used to obtain the outline of the problem and decide whether feasible or
appropriate solution exists or not.

The main objective of a feasibility study is to acquire problem scope instead of
solving the problem.

The output of a feasibility study is a formal system proposal act as decision document
which includes the complete nature and scope of the proposed system.
Steps Involved in Feasibility Analysis
The following steps are to be followed while performing feasibility analysis −

C
Form a project team and appoint a project leader.
12

Develop system flowcharts.

Identify the deficiencies of current system and set goals.

Enumerate the alternative solution or potential candidate system to meet goals.

Determine the feasibility of each alternative such as technical feasibility, operational
feasibility, etc.

Weight the performance and cost effectiveness of each candidate system.

Rank the other alternatives and select the best candidate system.

Prepare a system proposal of final project directive to management for approval.
Types of Feasibilities
Economic Feasibility

It is evaluating the effectiveness of candidate system by using cost/benefit analysis
method.

It demonstrates the net benefit from the candidate system in terms of benefits and
costs to the organization.

The main aim of Economic Feasibility Analysis (EFS) is to estimate the economic
requirements of candidate system before investments funds are committed to
proposal.

It prefers the alternative which will maximize the net worth of organization by earliest
and highest return of funds along with lowest level of risk involved in developing the
candidate system.
Technical Feasibility

It investigates the technical feasibility of each implementation alternative.

It analyzes and determines whether the solution can be supported by existing
technology or not.

The analyst determines whether current technical resources be upgraded or added it
that fulfill the new requirements.

It ensures that the candidate system provides appropriate responses to what extent it
can support the technical enhancement.
Operational Feasibility
C

It determines whether the system is operating effectively once it is developed and
implemented.

It ensures that the management should support the proposed system and its working
feasible in the current organizational environment.

It analyzes whether the users will be affected and they accept the modified or new
business methods that affect the possible system benefits.

It also ensures that the computer resources and network architecture of candidate
system are workable.
13
Behavioral Feasibility

It evaluates and estimates the user attitude or behavior towards the development of
new system.

It helps in determining if the system requires special effort to educate, retrain,
transfer, and changes in employee’s job status on new ways of conducting business.
Schedule Feasibility

It ensures that the project should be completed within given time constraint or
schedule.

It also verifies and validates whether the deadlines of project are reasonable or not.
10.6.1 Definition of systems development life cycle
An effective System Development Life Cycle (SDLC) should result in a high quality system
that meets customer expectations, reaches completion within time and cost evaluations, and
works effectively and efficiently in the current and planned Information Technology
infrastructure.
System Development Life Cycle (SDLC) is a conceptual model which includes policies and
procedures for developing or altering systems throughout their life cycles.
10.6.2 Phases of SDLC
Phases of SDLC
Systems Development Life Cycle is a systematic approach which explicitly breaks down the
work into phases that are required to implement either new or modified Information System.
C
14
Feasibility Study or Planning

Define the problem and scope of existing system.

Overview the new system and determine its objectives.

Confirm project feasibility and produce the project Schedule.

During this phase, threats, constraints, integration and security of system are also
considered.

A feasibility report for the entire project is created at the end of this phase.
Analysis and Specification

Gather, analyze, and validate the information.

Define the requirements and prototypes for new system.

Evaluate the alternatives and prioritize the requirements.

Examine the information needs of end-user and enhances the system goal.

A Software Requirement Specification (SRS) document, which specifies the software,
hardware, functional, and network requirements of the system is prepared at the end
of this phase.
System Design

Includes the design of application, network, databases, user interfaces, and system
interfaces.

Transform the SRS document into logical structure, which contains detailed and
complete set of specifications that can be implemented in a programming language.

Create a contingency, training, maintenance, and operation plan.

Review the proposed design. Ensure that the final design must meet the requirements
stated in SRS document.

Finally, prepare a design document which will be used during next phases.
Implementation

Implement the design into source code through coding.

Combine all the modules together into training environment that detects errors and
defects.

A test report which contains errors is prepared through test plan that includes test
related tasks such as test case generation, testing criteria, and resource allocation for
testing.

Integrate the information system into its environment and install the new system.
Maintenance/Support

C
Include all the activities such as phone support or physical on-site support for users
that is required once the system is installing.
15

Implement the changes that software might undergo over a period of time, or
implement any new requirements after the software is deployed at the customer
location.

It also includes handling the residual errors and resolve any issues that may exist in
the system even after the testing phase.

Maintenance and support may be needed for a longer time for large systems and for a
short time for smaller systems.
10.6.3 Advantages and disadvantages of SDLC
Starting with the advantages
1. Formal review is created at the end of each stage allowing maximum management control.
2. This approach creates considerable system documentation.
3. This documentation ensures that system requirements can be traced back to stated business
requirements.
4. It produces many intermediate products that can be reviewed to see whether they meet the
user’s needs and conform to standards. These can be further worked on if they require tweaks
to be made, ensuring that the business gets exactly what it needs.
There are always disadvantages with everything…
1. What may be seen as a major problem for some, end-user does not see the solution until
the system is almost complete.
2. Users get a system that meets the need as understood by the developers; this may not be
what was really needed for them. There may be a loss in translation.
3. Documentation is expensive and time-consuming to create. It is also difficult to keep
current. What may be current this month may not be the same this time next year!
4. Users cannot easily review intermediate products and evaluate whether a particular product
(e.g., data flow diagram) meets their business requirements.
5. Another disadvantage of a program or software that follows the SDLC program is it
encourages stiff implementation instead of creativity. There are requirements that must be
met and that is all that developers complete.
Although both sides have been weighed up here, it is clear that the advantages are far greater
than the disadvantages
10.7 Requirements elicitation
10.7.1 Stakeholder analysis
Stakeholder analysis is an effective three-step process for identifying, prioritizing and
understanding your stakeholders. Stakeholder Analysis is the first step in Stakeholder
Management, an important process that successful people use to win support from others.
C
16
Managing stakeholders can help you, too, to ensure that your information systems projects
succeed where others might fail.
Why Use Stakeholder Analysis?
A stakeholder-based approach gives you four key benefits:
1. Getting Your Projects Into Shape
You can use the opinions of your most powerful stakeholders to help define your projects at
an early stage. These stakeholders will then more likely support you, and their input can also
improve the quality of your project.
2. Winning Resources
Gaining support from powerful stakeholders can help you to win more resources, such as
people, time or money. This makes it more likely that your projects will be successful.
3. Building Understanding
By communicating with your stakeholders early and often, you can ensure that they fully
grasp what you’re doing and understand the benefits of your project. This means that they can
more actively support you when necessary.
4. Getting Ahead of the Game
Understanding your stakeholders means that you can anticipate and predict their reactions to
your project as it develops. This allows you to plan actions that will more likely win their
support.
How to Conduct a Stakeholder Analysis
There are three steps to follow in Stakeholder Analysis. First, identify who your stakeholders
are. Next, work out their power, influence and interest, so that you know who you should
focus on. Finally, develop a good understanding of the most important stakeholders, so that
you know how they are likely to respond, and how you can win their support.
When you’ve completed your analysis, you can move on to use stakeholder management to
work out how you’ll communicate with each stakeholder.
Let’s explore the three steps of Stakeholder Analysis in more detail:
1. Identify Your Stakeholders
Start by brainstorming who your stakeholders are. As part of this, think of all the people
who are affected by your work, who have influence or power over it, or have an interest in its
successful or unsuccessful conclusion.
The table below identifies some of the people who might be stakeholders in your job or in
your projects:
Your boss
Shareholders
Senior executives
Alliance partners Trades associations
Your co-workers
Suppliers
C
Government
The press
17
Your team
Lenders
Interest groups
Customers
Analysts
The public
Prospective customers Future recruits
Your family
The community
Key contributors Key advisors
Note:
Stakeholders can be both organizations and people, but ultimately you must communicate
with people. So, be sure to identify the correct individual stakeholders within a stakeholder
organization.
2. Prioritize Your Stakeholders
You may now have a list of people and organizations that are affected by your work. Some of
these may have the power either to block that work or to advance it. Some may be interested
in what you are doing, while others may not care, so you need to work out who you need
to prioritize .
You can map out your stakeholders, and classify them according to their power over your
work and their interest in it, on a Power/Interest Grid. The position that you allocate to a
stakeholder on the grid shows you the actions you need to take with them:

High power, highly interested people (Manage Closely): you must fully engage
these people, and make the greatest efforts to satisfy them.

High power, less interested people (Keep Satisfied): put enough work in with these
people to keep them satisfied, but not so much that they become bored with your
message.

Low power, highly interested people (Keep Informed): adequately inform these
people, and talk to them to ensure that no major issues are arising. People in this
category can often be very helpful with the detail of your project.

Low power, less interested people (Monitor): again, monitor these people, but don’t
bore them with excessive communication.
Your boss, for example, likely has high power and influence over your projects and high
interest in them. Your family, however, may have high interest in them, but won’t have
power over them.
Finding This Article Useful?
You can learn another 65 project management skills, like this, by joining the Mind Tools
Club.
3. Understand Your Key Stakeholders
You now need to discover how your key stakeholders feel about your project. You also need
to work out how best to engage them, and how to communicate with them.
Questions that can help you understand your stakeholders include:

C
What financial or emotional interest do they have in the outcome of your work? Is it
positive or negative?
18

What motivates them most of all?

What information do they want from you, and what is the best way of communicating
with them?

What is their current opinion of your work? Is it based on good information?

Who influences their opinions generally, and who influences their opinion of you? Do
some of these influencers therefore become important stakeholders in their own right?

If they aren’t likely to be positive, what will win them around to support your project?

If you don't think that you’ll be able to win them around, how will you manage their
opposition?

Who else might be influenced by their opinions? Do these people become
stakeholders in their own right?
You can ask your stakeholders these questions directly. People are often quite open about
their views, and asking for their opinions is often the first step in building a successful
relationship with them.
A simple way to summarize the level of backing you have from your stakeholders is to colorcode them. For example, show advocates and supporters in green, blockers and critics in red,
and those who are neutral in orange. See the diagram, below.
In figure 2, you can see that a lot of effort needs to be put into persuading Piers and Maureen
of the benefits of the project, while Janet and Amanda also need to be managed effectively as
powerful supporters.
Example of a Stakeholder Analysis
You can create your own example of Stakeholder Analysis at work – whether for your
current role, a job you want to do, or a new project.
Conduct a full stakeholder analysis. Ask yourself whether you are communicating as
effectively as you should be with your stakeholders. What actions can you take to get more
from your supporters or win over your critics?
Key Points
As the work you do and the projects you run become more important, you will affect more
and more people. Some of these people have the power to undermine your projects and your
position. Others may be strong supporters of your work.
Stakeholder Management is the process by which you identify your key stakeholders and win
their support. Stakeholder Analysis is the first stage of this, where you identify and start to
understand your most important stakeholders.
The first stage of this is to brainstorm who your stakeholders are. The next step is to prioritize
them by power and interest, and to plot this on a Power/Interest grid. The final stage is to get
an understanding of what motivates your stakeholders and how you need to win them around.
10.7.2 Need for requirements gathering
A requirement is a vital feature of a new system which may include processing or capturing
of data, controlling the activities of business, producing information and supporting the
management.
C
19
Requirements determination involves studying the existing system and gathering details to
find out what are the requirements, how it works, and where improvements should be made.
Major Activities in requirement Determination
Requirements Anticipation

It predicts the characteristics of system based on previous experience which include
certain problems or features and requirements for a new system.

It can lead to analysis of areas that would otherwise go unnoticed by inexperienced
analyst. But if shortcuts are taken and bias is introduced in conducting the
investigation, then requirement Anticipation can be half-baked.
Requirements Investigation

It is studying the current system and documenting its features for further analysis.

It is at the heart of system analysis where analyst documenting and describing system
features using fact-finding techniques, prototyping, and computer assisted tools.
Requirements Specifications

It includes the analysis of data which determine the requirement specification,
description of features for new system, and specifying what information
requirements will be provided.

It includes analysis of factual data, identification of essential requirements, and
selection of Requirement-fulfillment strategies.
10.7.3 Process for requirements gathering
It is a four step process, which includes –

Feasibility Study

Requirement Gathering

Software Requirement Specification

Software Requirement Validation
10.7.4 Requirement gathering tools and techniques
Techniques describe how tasks are performed under specific circumstances. A task may have
none or one or more related techniques. A technique should be related to at least one task.
The following are some of the well-known requirements gathering techniques −
Brainstorming
C
20
Brainstorming is used in requirement gathering to get as many ideas as possible from group
of people. Generally used to identify possible solutions to problems, and clarify details of
opportunities.
Document Analysis
Reviewing the documentation of an existing system can help when creating AS–IS process
document, as well as driving gap analysis for scoping of migration projects. In an ideal world,
we would even be reviewing the requirements that drove creation of the existing system – a
starting point for documenting current requirements. Nuggets of information are often buried
in existing documents that help us ask questions as part of validating requirement
completeness.
Focus Group
A focus group is a gathering of people who are representative of the users or customers of a
product to get feedback. The feedback can be gathered about needs/opportunities/ problems
to identify requirements, or can be gathered to validate and refine already elicited
requirements. This form of market research is distinct from brainstorming in that it is a
managed process with specific participants.
Interface analysis
Interfaces for a software product can be human or machine. Integration with external systems
and devices is just another interface. User centric design approaches are very effective at
making sure that we create usable software. Interface analysis – reviewing the touch points
with other external systems is important to make sure we don’t overlook requirements that
aren’t immediately visible to users.
Interview
Interviews of stakeholders and users are critical to creating the great software. Without
understanding the goals and expectations of the users and stakeholders, we are very unlikely
to satisfy them. We also have to recognize the perspective of each interviewee, so that, we
can properly weigh and address their inputs. Listening is the skill that helps a great analyst to
get more value from an interview than an average analyst.
Observation
By observing users, an analyst can identify a process flow, steps, pain points and
opportunities for improvement. Observations can be passive or active (asking questions while
observing). Passive observation is better for getting feedback on a prototype (to refine
requirements), where active observation is more effective at getting an understanding of an
existing business process. Either approach can be used.
Prototyping
Prototyping is a relatively modern technique for gathering requirements. In this approach,
you gather preliminary requirements that you use to build an initial version of the solution - a
prototype. You show this to the client, who then gives you additional requirements. You
change the application and cycle around with the client again. This repetitive process
continues until the product meets the critical mass of business needs or for an agreed number
of iterations.
Requirement Workshops
C
21
Workshops can be very effective for gathering requirements. More structured than a
brainstorming session, involved parties collaborate to document requirements. One way to
capture the collaboration is with creation of domain-model artifacts (like static diagrams,
activity diagrams). A workshop will be more effective with two analysts than with one.
Reverse Engineering
When a migration project does not have access to sufficient documentation of the existing
system, reverse engineering will identify what the system does. It will not identify what the
system should do, and will not identify when the system does the wrong thing.
Survey/Questionnaire
When collecting information from many people – too many to interview with budget and
time constraints – a survey or questionnaire can be used. The survey can force users to select
from choices, rate something (“Agree Strongly, agree…”), or have open ended questions
allowing free-form responses. Survey design is hard – questions can bias the respondents.
10.7.5 Gap analysis
Gap analysis work should be based on a clear understanding of what needs correction, as well
as identification of those issues that hinder improvement, and use of a direct process that
addresses those improvements. Gap analysis can be seen as a process that measures the
distance (i.e., the gap) between where a particular item currently stands and where it should
be, to better meet the organization’s needs.
The steps required to make the process work include:





identification of the gap analysis goals
analysis of the current process hurdles that preclude reaching the desired goal
development of a plan to close the gap between the process’s current status and
attainment of the desired goal
a review of the proposed gap analysis plan by members of the IT department and the
business units responsible for the processes to be analyzed, in order to secure
agreement and commitment to the plan
an audit at the completion of the process; the audit should determine if the goals have
been met, and if those who used the process now understand it, making its future use
more productive
After defining the business needs, the current state (e.g. current business processes,
business functions, features of a current system and services/products offered and events
that the system must respond to) must be identified to understand how people, processes
and technology, structure and architecture are supporting the business by seeking input
from IT staff and other related stakeholders including business owners.
10.7.6 Prioritization of requirements
Requirements prioritization goals at eliciting which requirements of software need to be
covered in a particular release. The key point is which requirement will be selected in the
next iteration and which one will be delayed to other iterations for minimizing risk during
development and meeting stakeholders' needs. There are many existing techniques for
C
22
requirement prioritization, but most of these techniques do not cover continuous growth and
change of requirements or cover requirements dependencies. So, most of these prioritization
techniques need to be more continuous, scalable, implemented merely and integrated with
software development life cycle and not work separately. There is a framework to prioritize
requirements in agile software development. This framework tries to find solutions for the
challenges facing this prioritization process such as how to make this prioritization
continuous and scalable and how to deal with rapidly requirement changes and its
dependencies.
The release planning process consists of the sub processes:
1. Prioritize requirements
2. Select requirements
3. Define release requirements
4. Validate release requirements
5. Prepare launch
C
23
Download