SlideShare a Scribd company logo
1 of 29
II
System Planning: Bases for planning in system analysis: Dimensions of Planning.
Initial Investigation: Determining user’s requirements and analysis, fact finding
process and techniques.
Tools of structured Analysis: Data Flow diagram, data dictionary, Gantt charts,
pseudo codes, Flow charts, decision tree, decision tables. Feasibility study: Technical,
Operational & Economic Feasibilities.
12
System planning is the first phase in the system development life cycle.
System planning is where an organization's total information needs are
identified, analyzed, prioritized and arranged. Organization creates and
assesses the original goals and expectation of a new system.
OVERVIEW OF SYSTEM PLANNING
Today, the demands for a new or enhancement of the system exceeds the ability and resources
of most organizations to conduct system development projects. System planning is the first phase
in the system development life cycle. System planning is where an organization’s total information
needs are identified, analyzed, prioritized and arranged. Organization creates and assesses the
original goals and expectation of a new system. There are reasons why the organization need to
System
Planning
System
Analysis
System
Design
System
Implementation
System
Maintenance
√ Project Identification
√ Project Planning
develop a new or improved system; for example is to add value to the organization. In this phase,
you will learn how information system projects get started and how the team evaluate a proposed
system and determine its feasibility before it will be developed. Planning phase starts with
reviewing the request towards system development. Figure 2-1 shows two major activities
involved in system planning:
i. identifying the system development project
ii. planning the system development project
IDENTIFYING THE SYSTEM DEVELOPMENT PROJECT
There are two ways on how to identify the needs for system development either by top-down
planning and bottom-up planning. Top-down planning is where the top management asks the IT
support or unit within their organization to develop a system. They will identify and assesses if
there is any possible system development projects organization can be done. Bottom-up planning
is also known as a user request planning. User’s request is when users need the system in order
to fulfill or help their daily job easily. For the following discussion, we’ll consider the second option;
the system request is from the user.
The starting point of information system project is called a system service request. A project is
identified when someone in the organization identifies that they need to build a systems for a
certain needs. System service request is a formal way of asking for IT support. A system service
request might propose enhancements for an existing system, the correction of problems or errors,
or the development of entirely new information system (Shelly et. al., 2006). Normally, system
service request form will be submitted by the user to IT department either manually or sending
through e-mail or web-based request system. Figure 2-2 shows an example of system request
form.
There are several reasons why user sends for the system service request :
 Improved services offered
This is the most basic reason why we need a new or enhanced system. A new or
enhanced system is important to improve services for customers or users within the
organization. Allowing students to register subjects online, driving license renewal via web-
based are example on how organization used a system to increase their customer
satisfaction.
 Support for new products or new services
New product developed or new services introduced require new types of IT support. For
example, changing the use of punch card to fingerprint recognition in staff attendance is an
example of installation of new products that needs a new system development project.
 Provide more information
The system might produce information which is not enough in order to support the
organization’s changing information needs. For example, lecturer can obtain students
results, but he/she can’t generate a report to analyze student performance.
Figure 2-2: System Service Request Form
PLANNING THE SYSTEM DEVELOPMENT PROJECT
Some other methodologies refer it as preliminary investigation phase, initial study phase, or
planning phase. Systems analysts always conduct a preliminary investigation to study the system
service request and recommend the specific action base on that. This activity is important to
initiate the project. After getting the approval from the management, the analysts interact with the
stakeholders involved such as system owner, project managers and system user to gather
information shown in the model in Figure 2-3. The analyst responsibility is to gathers the
information about the problems or opportunity, project scope and constraints, project benefits, and
budget for development time and costs. Then, analyst will prepare a report to the management.
Initial Investigation: Determining user’s requirements and analysis, fact finding process and techniques.
What is Requirements Analysis?
Requirements analysis or requirements engineering is a process used to determine the
needs and expectations of a new product. It involves frequent communication with
the stakeholders and end-users of the product to define expectations, resolve conflicts,
and document all the key requirements.
One of the greatest challenges faced by any organization is to share the vision of the final
product with the customers. Hence, a business requirements analysis involves a team
effort of all the key stakeholders, software developers, end-users, and customer
managers to achieve a shared understanding of what the product should do. This is
always done in the early phase of any project to ensure that the final product conforms to
all the requirements.
Requirements Analysis Process
A requirements analysis process involves the following steps:
Fact-finding
Scope and
constraints
Development time
and costs
Benefits
Problems or
opportunity
Step 1: Identify Key Stakeholders and End-Users
The first step of the requirements analysis process is to identify key stakeholders who are
the main sponsors of the project. They will have the final say on what should be included
in the scope of the project.
Next, identify the end-users of the product. Since the product is intended to satisfy their
needs, their inputs are equally important.
Step 2: Capture Requirements
Ask each of the stakeholders and end-users their requirements for the new product. Here
are some requirements analysis techniques that you can use to capture requirements:
1. Hold One-On-One Interviews
Interview each stakeholder and end-user individually. This technique will help you gather
specific requirements.
2. Use Focus Groups
Conduct group interviews or group workshops to understand the flow of information
between different stakeholders and end-users. This technique will ensure that there will
be no conflict of interest later on during the project.
3. Utilize Use Cases
Use cases provide a walkthrough of the entire product through the eyes of the end-user.
This technique will help visualize how the product will actually work.
4. Build Prototypes
A prototype provides users a sample look and feel of the final product. This technique will
help address feasibility issues and identify problems ahead of time.
Step 3: Categorize Requirements
Since requirements can be of various types, they should be grouped to avoid confusion.
Requirements are usually divided into four categories:
 Functional Requirements: Functions the product is required to perform.
 Technical Requirements: Technical issues to be considered for the successful implementation
of the product.
 Transitional Requirements: Steps required to implement a new product smoothly.
 Operational Requirements: Operations to be carried out in the backend for proper functioning
of the product.
Step 4: Interpret and Record Requirements
Once the requirements are categorized, determine which requirements are actually
achievable and document each one of them. Here are some techniques to analyze and
interpret requirements:
Define Requirements Precisely
Ensure that the requirements are clearly worded, sufficiently detailed, and related to
business needs.
Prioritize Requirements
Prioritize requirements and list them out based on which ones are the “most critical” and
which ones are just “nice-to-have”.
Carry Out an Impact Analysis
Carry out an impact analysis to make sure that you fully understand the consequences of
the requirements.
Resolve Conflicts
Arrange a meeting with key stakeholders and resolve conflicting requirements. You can
also perform a scenario analysis to explore how the requirements would work for different
possible scenarios.
Analyze Feasibility
Perform a detailed analysis of the product based on the requirements gathered to
determine its reliability and to identify any major problems.
Once all the requirements are analyzed, create a detailed written document and circulate
it among the key stakeholders, end-users and development teams.
Step 5: Sign off
Once a final decision is made on the requirements, ensure that you get a signed
agreement from the key stakeholders. This is done to ensure that there are no changes or
uncontrolled growth in the scope of the project.
Stages of Requirement Analysis
1. Drawing the Context Diagram
The purpose of drawing a context diagram is to find out how to design a new system
within an organization or how to modify it. Context diagram defines how external elements
impact the internal system of an organization. They are complex diagrams that draw the
system analysis simply yet crisply. The arrows indicate the date-flow between the external
elements and the internal system. For example, the following diagram shows how
different elements move within the hotel reservation system.
2. Developing a Prototype (Optional)
Prototype development is an important part of a product launch as this helps the
organization find out the specific requirements of customers. Based on the customers'
response, the prototype is modified until it achieves maximum customer satisfaction. The
prototype allows the client to imagine the system to be built and to understand the
customer's requirements. If the developers and end users still need to catch up on some
aspects of the system, the prototype or the replica of the product helps them to finalize
those elements.
Those products that are developed for the general masses should get a glimpse of the
prototype. Then, it should be shown to a selected section of potential buyers. This will
help to create a product more attractive than before.
The prototype is usually created faster and at an affordable cost. However, it always
comes with some limitations and is not accepted in the final analysis.
3. Modeling the Requirements
This stage involves creating requirement models that ultimately allow customers and
stakeholders to imagine the product in the making. Various functions, data tables,
external elements, and their relation to each other are represented in graphical forms. A
graphical viewing of these things assists in finding flaws in the requirements. It allows the
developers to see if there are any inconsistencies, missing, wrong, or unnecessary
elements added to the system. Such requirement models can be divided into the following
categories.
 Data Flow Diagram: A graphical preparation using symbols and notations to show how a
business operates through data movement.
 Entity-Relationship diagram: A flowchart describing how things like people, a concept, or an
object are related within a system.
 Data Dictionaries: These contain different definitions, names, and other forms of data elements
utilized within the project.
 State-transition diagrams: They represent the changes that take place within the system
4. Finalize the Requirements
Requirement models will add to the understanding of the system. All the necessary
corrections are done at this stage. All ambiguities are removed, and the data flow is
examined across various models. The elicitation process and subsequent analysis lead to
a greater understanding of the system. So finally, the requirements are approved, and the
documentation begins.
Requirement Analysis Example
Here's an example of a requirement analysis for a fictional e-commerce website:
Project Name: A Ficionnal Online E-Commerce Website
Objective: Create a user-friendly e-commerce website to allow customers to browse and purchase
products online.
Stakeholders:
1. Customers (shoppers)
2. Product vendors and sellers
3. Website administrators
4. Payment gateway providers
5. Shipping and logistics partners
Functional Requirements:
1. User Registration and Authentication:
 Customers must be able to create accounts and log in.
 User authentication should be secure.
 Provide an option for social media login.
2. Product Catalog:
 Display a catalog of products, categorized by type and brand.
 Include high-quality images, detailed descriptions, and prices for each product.
 Allow customers to search for products by keyword and filter results.
3. Shopping Cart:
 Enable customers to add and remove items from their shopping cart.
 Display the total cost of items in the cart.
 Save cart contents between sessions for registered users.
4. Checkout and Payment:
 Provide a secure checkout process with multiple payment options (credit/debit cards, PayPal, etc.).
 Collect shipping and billing information from customers during checkout.
 Apply discounts, coupons, and gift cards if available.
 Send order confirmation emails to customers.
5. Order History:
 Store order history for registered users.
 Allow users to view and track the status of their orders.
6. Product Reviews and Ratings:
 Allow registered customers to leave reviews and ratings for products.
 Display average ratings and user-generated reviews on product pages.
7. User Profiles:
 Customers can edit their profiles, including shipping addresses and contact information.
 Store multiple shipping addresses for registered users.
8. Inventory Management:
 Update product availability in real-time.
 Notify administrators when products are out of stock.
9. Admin Panel:
 Provide an admin panel for managing products, orders, and user accounts.
 Support role-based access control for administrators.
Non-Functional Requirements:
1. Performance:
 Ensure fast loading times, even with a high number of concurrent users.
 Optimize website performance for mobile devices.
2. Security:
 Implement secure encryption for user data and payment information.
 Protect against common web application vulnerabilities (e.g., SQL injection, cross-site scripting).
3. Usability:
 The website should have an intuitive and responsive design.
 Support multiple languages and accessibility features.
4. Scalability:
 Design the website to handle increased traffic during peak periods (e.g., holiday sales).
5. Data Backup and Recovery:
 Regularly backup customer data and order history.
 Implement a disaster recovery plan.
Constraints:
1. Budget:
 The project has a predefined budget for development and maintenance.
2. Legal Compliance:
 Ensure compliance with data protection regulations (e.g., GDPR, CCPA).
 Adhere to e-commerce regulations and consumer protection laws.
Assumptions:
1. Payment gateway providers will integrate seamlessly with the website for processing payments.
2. Product vendors will provide accurate and up-to-date product information.
This requirement analysis forms the basis for developing the e-commerce website,
outlining what features the website should have, how it should perform, and the
constraints and assumptions that need to be considered during its creation.
INTRODUCTION
This unit will help you to learn the process of planning the development of systems. You will also
learn various techniques used in fact finding and getting appropriate information. Based on the
information gathered, a list of requirements has been compiled. The same is sent to the customer
for his/her review and comments. The topic of feasibility study is discussed in depth in this unit.
The process of cost benefit analysis is also discussed in this unit. Lastly, we shall discuss about
the Joint Application Development (JAD).
FACT FINDING TECHNIQUES
To learn the functions of the existing system, systems analyst needs to collect data related to the
existing system. Usually, the data related to organization, staff, documents used, formats used in
the input and output processes is collected. This information is obtained through interviews, group
discussions, site visits, presentations, and questionnaires.
Need for Fact Finding
Normally, each and every business house or any organization has its own rules and procedures to
run and manage it. When a system needs to be developed, the systems analyst needs to know the
requirements of the system. Depending on these requirements, the system has to be developed.
4.2.1 Interviews
Personal interview is a recognized and most important fact finding technique, where the systems
analyst gathers information from individual through face to face interaction. Interviews are used
to find the facts, verify facts, clarify facts, get the customer involved, identify the system
requirements and know all options. The interview is usually conducted by the systems analyst. To
conduct interview, the interviewer must have personality which helps him/her to be social with
strangers or different types of people. Always and for all situations, interviews are not appropriate
fact finding methods. It has both advantages and disadvantages.
Advantages
• Interviews permit the systems analyst to get individual’s views and get the specific problem
workwise and operation wise.
• Interviews allow the systems analyst to obtain a better clarity of the problem due to
feedbackfrom the interviewees.
• In the process of interviews, the interviewer has time and scope to motivate the interviewee
torespond freely and openly.
• Interviews allow the systems analyst to understand the user requirements and to know
theproblems faced by the user with the current system.
• It is an effective technique to gather information about complex existing systems.
Disadvantages
• Interviews are very time consuming.
• Success of interviews, in most of the cases, depends on the systems
analyst’sinterpersonal relationship skills.
• Some times, interviews may be impractical due to the location of
interviewees.Types of Interviews
There are two types of interviews:
• Structured; and
• Unstructured.
In structured interviews, there is a specific set of questions to be asked to an interviewee. In the
case of unstructured interviews, there are few specific questions pertaining to an interviewee. But,
you have questions which are common to all interviewees. Unstructured interviews are conducted
with only a general goal or subject in mind.
Conducting Interview is an art. The success in interview depends on selecting the individual,
preparing for the interview, creating situation in which the answers offered are reliable and creating
a situation in which opinion can be given without any fear of being criticized by others.
Arranging Interview
The system analyst should prepare properly for the interview. S/he should select place of interview,
time of interview in such a way so that there will be minimal interruption. Always, it is important
to take appointment with the interviewee. Time to be spent during interview varies from project to
project. The higher the management level of the interviewee, the less the time to be scheduled for
the interview.
Guidelines for conducting interviews :
For a successful interview, the steps to be followed are given below:
Introduction
During introduction, the analyst should introduce himself by focusing on purpose of the interview
and the confidential nature of interview. Also, this is the phase wherein first impressions are
formed and pave way for the success of the remaining part of the interview.
70
Asking questions
Questions should be asked exactly as these are worded in case of structured interview. Rewording
may modify or bias the response. Always, questions have to asked in the same sequence as
prepared.
Recording the interview
Record of the interview must be kept mentioning the source of the data and its time of collection.
Sometimes, the analyst cannot remember the source of the data which may attribute to the invalid
sources.
Doing a final check
After the interview has been completed, the deliberations made during the interview should be put
in the form of a report. The report of the interview has to be sent to the interviewee for his/her
signature. If any discrepancies are found or any modifications are to be done, these can be done at
this point of time.
4.2.2 Group Discussions
In this method, a group of staff members are invited who are expected to be well versed in their
own wings of the organization. The analysts will have a discussion with the members for their
views and responses to various queries posed by them.
In this process, individuals from different sections gather together and will discuss the problem at
hand. Ultimately, they come to an optimum solution. In this process, the problems of all sections
are taken care of most of the cases, solutions are found which are acceptable to everyone. The
main disadvantage of this process is that it is very difficult to get all the concerned people together
at a time. But, the major advantage is that a mutually acceptable solution can be found.
4.2.3 Site Visits
The engineers of the development organization visit the sites. Usually, the systems analysts visit
sites to get first hand information of the working of the system. In this technique, systems analyst
watches the activities of different staff members to learn about the system. When there is confusion
about the validity of data collected from other sources, the systems analyst uses the method of site
visits. The main objective of site visit is to examine the existing system closely and record the
activities of the system.
Advantages
1. The process of recording facts site visits is highly reliable.
2. Sometimes, site visits take place to clear doubts and check the validity of the data.
3. Site visit is inexpensive when compared to other fact finding techniques.
71
4. In this technique, systems analyst will be able to see the processes in the organization at
firsthand.
5. The systems analyst can easily understand the complex processes in the
organization.Disadvantages
1. People usually feel uncomfortable when being watched; they may unwillingly perform
theirwork differently when being observed.
2. Due to interruptions in the task being observed, the information that is collected may
beinaccurate.
3. Site visits are done during a specific period and during that period, complexities existing in
thesystem may not be experienced.
4. There may be scheduling problems for the systems analysts when the activities take place during
odd hours.
5. Sometimes, people may be more careful to adopt the exact procedure which they do not
typicallyfollow.
Guidelines for site visit
Site visits are to be conducted where the work load is normal. After studying the work and normal
work load, systems analyst can observe the work at peak hours to see the effect caused by increased
volumes. The systems analyst should collect the input /output form, documents at the time of
his/her visit. The following guidelines need to be followed at the time of observation and site visit:
1. Keep a low profile at the time of site visit.
2. Take necessary permissions from appropriate officials to conduct site visit.
3. Inform the individuals who will be observed at the time of site visit.
4. Take notes of the study of site visit immediately.
5. Do not make any assumptions.
4.2.4 Presentations
It is another way of finding the facts and collecting data. Presentation is the way by which the
systems analyst gathers first hand knowledge of the project. The customer makes a presentation of
the existing system or about the organization. Participants in the meeting are representatives from
the IT company and key personnel of the client organization. When a company needs to develop
a software project, it may present its requirements for IOE (interest of expression) from the
interested IT Company. In that case, the client presents his/her requirements. Based on the
requirements, the IT companies make prototype and show the demo of the prototype. It is very
72
difficult to obtain information in detail from a presentation. But, information available through
73
presentation is sufficient to develop a prototype. Presentation is made by the concerned department
in consultation from other departments and senior officials.
4.2.5 Questionnaires
Questionnaires are special purpose documents that allow the analyst to collect information and
opinion from respondents. By using questionnaires, it is possible to collect responses or opinion
from a large number of people. This is the only way to get response from a large audience.
Advantages
1. It is an inexpensive means of collecting the data from a large group of individuals.
2. It requires less skill and experience to administer questionnaires.
3. Proper formulation and interaction with respondents leads to unbiased
responsefrom the customers.
4. Customers can complete it at their convenience.
5. Responses can be tabulated and analyzed
quickly.Disadvantages
1. Sometimes, the number of respondents is low.
2. There is no guarantee that the respondents will answer all the questions.
3. Sometimes, the individual may misunderstand the question. In that situation,
theanalyst may not get correct answer.
Types of questionnaires
There are two types of questionnaires:
• Free formed questionnaires are questionnaires where questions are mentioned along with
blankspaces for response.
• Fixed formed questionnaires are questionnaires which consist of multiple choices and
therespondent can select only from the choices provided.
The following are various types of Fixed format questions:
• True / False or yes/no type questions.
• Questions whose response will be one of the choices: strongly agree, agree, disagree..
• Ranking type questions (ranking items in order of importance).
• Multiple choice questions (select one response or all the relevant responses).
74
Tools of structured Analysis: Data Flow diagram, data dictionary, Gantt charts, pseudo codes, Flow
charts, decision tree, decision tables. Feasibility study: Technical, Operational & Economic Feasibilities.
What is Structured Analysis?
Structured Analysis is a development method that allows the analyst
to understand the system and its activities in a logical way.
It is a systematic approach, which uses graphical tools that analyze
and refine the objectives of an existing system and develop a new
system specification which can be easily understandable by user.
It has following attributes −
 It is graphic which specifies the presentation of application.
 It divides the processes so that it gives a clear picture of system
flow.
 It is logical rather than physical i.e., the elements of system do
not depend on vendor or hardware.
 It is an approach that works from high-level overviews to lower-
level details.
Structured Analysis Tools
During Structured Analysis, various tools and techniques are used for
system development. They are −
 Data Flow Diagrams
 Data Dictionary
 Decision Trees
 Decision Tables
 Structured English
 Pseudocode
75
Data Flow Diagrams (DFD) or Bubble Chart
It is a technique developed by Larry Constantine to express the
requirements of system in a graphical form.
 It shows the flow of data between various functions of system
and specifies how the current system is implemented.
 It is an initial stage of design phase that functionally divides the
requirement specifications down to the lowest level of detail.
 Its graphical nature makes it a good communication tool
between user and analyst or analyst and system designer.
 It gives an overview of what data a system processes, what
transformations are performed, what data are stored, what
results are produced and where they flow.
Basic Elements of DFD
DFD is easy to understand and quite effective when the required
design is not clear and the user wants a notational language for
communication. However, it requires a large number of iterations for
obtaining the most accurate and complete solution.
The following table shows the symbols used in designing a DFD and
their significance −
76
Symbol Name Symbol Meaning
Square Source or Destination of Data
Arrow Data flow
Circle Process transforming data flow
Open Rectangle Data Store
Types of DFD
DFDs are of two types: Physical DFD and Logical DFD. The following
table lists the points that differentiate a physical DFD from a logical
DFD.
Physical DFD Logical DFD
It is implementation dependent. It shows
which functions are performed.
It is implementation independent. It focuses
only on the flow of data between processes.
It provides low level details of hardware,
software, files, and people.
It explains events of systems and data required
by each event.
It depicts how the current system operates
and how a system will be implemented.
It shows how business operates; not how the
system can be implemented.
Context Diagram
A context diagram helps in understanding the entire system by one
DFD which gives the overview of a system. It starts with mentioning
major processes with little details and then goes onto giving more
details of the processes with the top-down approach.
The context diagram of mess management is shown below.
77
Data Dictionary
A data dictionary is a structured repository of data elements in the
system. It stores the descriptions of all DFD data elements that is,
details and definitions of data flows, data stores, data stored in data
stores, and the processes.
A data dictionary improves the communication between the analyst
and the user. It plays an important role in building a database. Most
DBMSs have a data dictionary as a standard feature. For example,
refer the following table −
Sr.No. Data Name Description No. of Characters
1 ISBN ISBN Number 10
2 TITLE title 60
3 SUB Book Subjects 80
4 ANAME Author Name 15
Decision Trees
Decision trees are a method for defining complex relationships by
describing decisions and avoiding the problems in communication. A
decision tree is a diagram that shows alternative actions and
conditions within horizontal tree framework. Thus, it depicts which
conditions to consider first, second, and so on.
Decision trees depict the relationship of each condition and their
permissible actions. A square node indicates an action and a circle
78
indicates a condition. It forces analysts to consider the sequence of
decisions and identifies the actual decision that must be made.
The major limitation of a decision tree is that it lacks information in
its format to describe what other combinations of conditions you can
take for testing. It is a single representation of the relationships
between conditions and actions.
For example, refer the following decision tree −
Decision Tables
Decision tables are a method of describing the complex logical
relationship in a precise manner which is easily understandable.
79
 It is useful in situations where the resulting actions depend on
the occurrence of one or several combinations of independent
conditions.
 It is a matrix containing row or columns for defining a problem
and the actions.
Components of a Decision Table
 Condition Stub − It is in the upper left quadrant which lists all the
condition to be checked.
 Action Stub − It is in the lower left quadrant which outlines all the
action to be carried out to meet such condition.
 Condition Entry − It is in upper right quadrant which provides
answers to questions asked in condition stub quadrant.
 Action Entry − It is in lower right quadrant which indicates the
appropriate action resulting from the answers to the conditions
in the condition entry quadrant.
The entries in decision table are given by Decision Rules which define
the relationships between combinations of conditions and courses of
action. In rules section,
 Y shows the existence of a condition.
 N represents the condition, which is not satisfied.
 A blank - against action states it is to be ignored.
 X (or a check mark will do) against action states it is to be
carried out.
For example, refer the following table −
CONDITIONS Rule 1 Rule 2 Rule 3 Rule 4
Advance payment made Y N N N
Purchase amount = Rs
10,000/-
- Y Y N
Regular Customer - Y N -
ACTIONS
71
0
Give 5% discount X X - -
Give no discount - - X X
Structured English
Structure English is derived from structured programming language
which gives more understandable and precise description of process.
It is based on procedural logic that uses construction and imperative
sentences designed to perform operation for action.
 It is best used when sequences and loops in a program must be
considered and the problem needs sequences of actions with
decisions.
 It does not have strict syntax rule. It expresses all logic in terms
of sequential decision structures and iterations.
For example, see the following sequence of actions −
if customer pays advance
then
Give 5% Discount
else
if purchase amount >=10,000
then
if the customer is a regular customer
then Give 5% Discount
else No Discount
end if
else No Discount
end if
end if
Pseudocode
A pseudocode does not conform to any programming language and
expresses logic in plain English.
 It may specify the physical programming logic without actual
coding during and after the physical design.
 It is used in conjunction with structured programming.
 It replaces the flowcharts of a program.
Feasibility study consists of activities which determine the existence of scope of developing an
71
1
information system to the organization. This study should be done throughout the life cycle. In a
project, at one point of time, it may seem that the project is feasible. But, after proceeding one or
two phases, it may become infeasible. So, it is necessary to evaluate the feasibility of a project at
the earliest possible time. Months or years of efforts, huge finances could be saved if an infeasible
system is recognized at earlier stage.
Feasibility studystarts from the preliminary investigation phase. At this stage, the analyst estimates
the urgency of the project and estimates the development cost.
The next check point is problem analysis. At this stage, the analyst studies current system. S/he
does it to understand the problem in the better way. It helps him/her to make better estimates of
development cost, and also to find out the benefits to be obtained from the new system. In
feasibility analysis, we have to study the following:
• Technical feasibility,
• Operational feasibility,
• Economic feasibility,
• Legal Feasibility,
 Social Feasibility,
 Management Feasibility,
 Time Feasibility, and
 Behavioural Feasibility
4.3.1 Technical Feasibility
Technical feasibility is concerned with the availability of hardware and software required for the
development of the system, to see compatibility and maturity of the technology proposed to be
used and to see the availability of the required technical manpower to develop the system. These
three issues are addressed during this study.
Is the proposed technology proven and practical? At this stage, the analyst has to see or identify
the proposed technology, its maturity, its ability or scope of solving the problem. If the technology
is mature, if it has large customer base, it will be preferable to use as large customer base already
exists and problems that stem from its usage may be less when compared to other technologies
which don’t have a significant customer base. Some companies want to use the state of art new
technology irrespective of the size of customer base.
The next question is: does the firm possess the necessary technology it needs. Here, we have to
ensure that the required technology is practical, and available. Now, does it have the required
hardware, and software? For example, we need ERP software, and hardware which can support
ERP. Now, if our answer is no for either of the questions, then the possibility of acquiring the
technology should be explored.
71
2
The last issue related to technical feasibility is the availability of technical expertise. In this case,
Software and Hardware are available. But, it may be difficult to find skilled manpower. The
company might be equipped with ERP software, but the existing manpower might not have the
expertise in it. So, the manpower should be trained in the ERP software. This may lead to slippage
in the delivery schedules.
4.3.2 Operational Feasibility
Operational feasibility is all about problems that may arise during operations. There are two
aspects related with this issue:
• What is the probability that the solution developed may not be put to use or may not work?
• What is the inclination of the management and end users towards the solution? Though,
there isvery least possibility of management being averse to the solution, there is a significant
probabilitythat the end users may not be interested in using the solution due to lack of training,
insight, etc.
Also, there are other issues related with operational feasibility.
Information
The system needs to provide adequate, timely, accurate and useful information. It should be able
to supply all the useful and required information to all levels and categories of users.
Response time
It needs to study the response time of the system in term of throughput. It should be fast enough
to give the required output to the users.
Accuracy
A software system must operate accurately. It means that it should provide value to its users.
Accuracy is the degree to which the software performs its required functions and gives desired
output correctly.
Security
There should be adequate security to information and data. It should be able to protect itself from
fraud.
Services
The system needs to be able to provide desirable and reliable services to its users.
Efficiency
The system needs to be able to use maximum of the available resources in an efficient manner so
that there are no delays in execution of jobs.
71
3
4.3.3 Economic Feasibility
71
4
It is the measure of cost effectiveness of the project. The economic feasibility is nothing
but judging whether the possible benefit of solving the problems is worthwhile or not. At the
feasibilitystudy level, it is impossible to estimate the cost because customer’s requirements
and alternative solutions have not been identified at this stage. However, when the specific
requirements and solutions have been identified, the analyst weighs the cost and benefits of
all solutions, this is called “cost benefit analysis”. This is discussed below. A project which
is expensive when compared to the savings that can be made from its usage, then this
project may be treated as economically infeasible.
4.3.4 Legal Feasibility
Legal feasibility studies issues arising out of the need to the development of the system.
The possible consideration might include copyright law, labour law, antitrust legislation,
foreign trade,regulation, etc. Contractual obligation may include the number of users who
will be able to use thesoftware. There may be multiple user’s licences, single user licences,
etc. Legal feasibility plays amajor role in formulating contracts between vendors and users.
If the ownership of the code is notgiven to the user, it will be difficult to install it without
proper permission to other systems. Anotherimportant legal aspect is that whenever an IT
company and the user company do not belong to thesame country then the tax laws, foreign
currency transfer regulations, etc., have to be taken care of.
4.3.5 Social Feasibility
It is the determination of whether a proposed project will be acceptable to the people or
not. Thisdetermination examines the probability of the project being accepted by the group
directly.
4.3.6 Management Feasibility
It is the determination of whether a proposed project will he acceptable to the management
peopleor not. If the management does not accept or gives a negligible support to it, the
analyst will tendto view the project as non-feasible.
4.3.7 Time Feasibility
It determines whether the proposed project can be implemented fully within a stipulated
time frame. It a project takes too much time it is likely to be
4.3.8 Behavioural Feasibility
It determines the reaction the user staff will have towards the development of the
computerized system.

More Related Content

Similar to SAD_UnitII.docx

Project on multiplex ticket bookingn system globsyn2014
Project on multiplex ticket bookingn system globsyn2014Project on multiplex ticket bookingn system globsyn2014
Project on multiplex ticket bookingn system globsyn2014
Md Imran
 
Online auction system srs riport
Online auction system srs  riportOnline auction system srs  riport
Online auction system srs riport
Dilip Prajapati
 
The tasks You are assumed to be one of the software consultants .docx
The tasks You are assumed to be one of the software consultants .docxThe tasks You are assumed to be one of the software consultants .docx
The tasks You are assumed to be one of the software consultants .docx
sarah98765
 
2 System development life cycle has six stages of creating a sys.docx
2 System development life cycle has six stages of creating a sys.docx2 System development life cycle has six stages of creating a sys.docx
2 System development life cycle has six stages of creating a sys.docx
tamicawaysmith
 
Systems development
Systems developmentSystems development
Systems development
Elijah Liu
 

Similar to SAD_UnitII.docx (20)

System_Planning_And_The_Initial_Investigation
System_Planning_And_The_Initial_InvestigationSystem_Planning_And_The_Initial_Investigation
System_Planning_And_The_Initial_Investigation
 
396849 developing-business-it-solutions
396849 developing-business-it-solutions396849 developing-business-it-solutions
396849 developing-business-it-solutions
 
mis ch2.pptx
mis ch2.pptxmis ch2.pptx
mis ch2.pptx
 
Development of information system chap 2
Development of information system chap 2Development of information system chap 2
Development of information system chap 2
 
System_Analysis_and_Design_Assignment_New2.ppt
System_Analysis_and_Design_Assignment_New2.pptSystem_Analysis_and_Design_Assignment_New2.ppt
System_Analysis_and_Design_Assignment_New2.ppt
 
Unit 2
Unit 2Unit 2
Unit 2
 
Presentation2
Presentation2Presentation2
Presentation2
 
Requirement Engineering Processes & Eliciting Requirement
Requirement Engineering Processes & Eliciting Requirement Requirement Engineering Processes & Eliciting Requirement
Requirement Engineering Processes & Eliciting Requirement
 
Project on multiplex ticket bookingn system globsyn2014
Project on multiplex ticket bookingn system globsyn2014Project on multiplex ticket bookingn system globsyn2014
Project on multiplex ticket bookingn system globsyn2014
 
Online auction system srs riport
Online auction system srs  riportOnline auction system srs  riport
Online auction system srs riport
 
Online auction system srs riport
Online auction system srs  riportOnline auction system srs  riport
Online auction system srs riport
 
James hall ch 13
James hall ch 13James hall ch 13
James hall ch 13
 
The tasks You are assumed to be one of the software consultants .docx
The tasks You are assumed to be one of the software consultants .docxThe tasks You are assumed to be one of the software consultants .docx
The tasks You are assumed to be one of the software consultants .docx
 
Software Development Life Cycle & Its Models
Software Development Life Cycle & Its ModelsSoftware Development Life Cycle & Its Models
Software Development Life Cycle & Its Models
 
5 job adda doc 2
5 job adda doc 25 job adda doc 2
5 job adda doc 2
 
5 job adda doc 2
5 job adda doc 25 job adda doc 2
5 job adda doc 2
 
2 System development life cycle has six stages of creating a sys.docx
2 System development life cycle has six stages of creating a sys.docx2 System development life cycle has six stages of creating a sys.docx
2 System development life cycle has six stages of creating a sys.docx
 
Systems development
Systems developmentSystems development
Systems development
 
SAD_SDLC.pptx
SAD_SDLC.pptxSAD_SDLC.pptx
SAD_SDLC.pptx
 
System analysis and design Part2
System analysis and design Part2System analysis and design Part2
System analysis and design Part2
 

More from 8759000398

More from 8759000398 (9)

COMPUTER WINDOWS AND ITS LAB ASSESSMENT.docx
COMPUTER WINDOWS AND ITS LAB ASSESSMENT.docxCOMPUTER WINDOWS AND ITS LAB ASSESSMENT.docx
COMPUTER WINDOWS AND ITS LAB ASSESSMENT.docx
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
 
JavaScript Date Objects.docx
JavaScript Date Objects.docxJavaScript Date Objects.docx
JavaScript Date Objects.docx
 
C Programming Strings.docx
C Programming Strings.docxC Programming Strings.docx
C Programming Strings.docx
 
Nursing Infromatics.pptx
Nursing Infromatics.pptxNursing Infromatics.pptx
Nursing Infromatics.pptx
 
Basics of C.ppt
Basics of C.pptBasics of C.ppt
Basics of C.ppt
 
newone2.pdf
newone2.pdfnewone2.pdf
newone2.pdf
 
College app for android device
College app for android deviceCollege app for android device
College app for android device
 
Android
AndroidAndroid
Android
 

Recently uploaded

Recently uploaded (20)

How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
dusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learningdusjagr & nano talk on open tools for agriculture research and learning
dusjagr & nano talk on open tools for agriculture research and learning
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdf
 
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdfFICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
FICTIONAL SALESMAN/SALESMAN SNSW 2024.pdf
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 

SAD_UnitII.docx

  • 1. II System Planning: Bases for planning in system analysis: Dimensions of Planning. Initial Investigation: Determining user’s requirements and analysis, fact finding process and techniques. Tools of structured Analysis: Data Flow diagram, data dictionary, Gantt charts, pseudo codes, Flow charts, decision tree, decision tables. Feasibility study: Technical, Operational & Economic Feasibilities. 12 System planning is the first phase in the system development life cycle. System planning is where an organization's total information needs are identified, analyzed, prioritized and arranged. Organization creates and assesses the original goals and expectation of a new system. OVERVIEW OF SYSTEM PLANNING Today, the demands for a new or enhancement of the system exceeds the ability and resources of most organizations to conduct system development projects. System planning is the first phase in the system development life cycle. System planning is where an organization’s total information needs are identified, analyzed, prioritized and arranged. Organization creates and assesses the original goals and expectation of a new system. There are reasons why the organization need to System Planning System Analysis System Design System Implementation System Maintenance √ Project Identification √ Project Planning
  • 2. develop a new or improved system; for example is to add value to the organization. In this phase, you will learn how information system projects get started and how the team evaluate a proposed system and determine its feasibility before it will be developed. Planning phase starts with reviewing the request towards system development. Figure 2-1 shows two major activities involved in system planning: i. identifying the system development project ii. planning the system development project IDENTIFYING THE SYSTEM DEVELOPMENT PROJECT There are two ways on how to identify the needs for system development either by top-down planning and bottom-up planning. Top-down planning is where the top management asks the IT support or unit within their organization to develop a system. They will identify and assesses if there is any possible system development projects organization can be done. Bottom-up planning is also known as a user request planning. User’s request is when users need the system in order to fulfill or help their daily job easily. For the following discussion, we’ll consider the second option; the system request is from the user. The starting point of information system project is called a system service request. A project is identified when someone in the organization identifies that they need to build a systems for a certain needs. System service request is a formal way of asking for IT support. A system service request might propose enhancements for an existing system, the correction of problems or errors, or the development of entirely new information system (Shelly et. al., 2006). Normally, system service request form will be submitted by the user to IT department either manually or sending through e-mail or web-based request system. Figure 2-2 shows an example of system request form. There are several reasons why user sends for the system service request :  Improved services offered This is the most basic reason why we need a new or enhanced system. A new or enhanced system is important to improve services for customers or users within the organization. Allowing students to register subjects online, driving license renewal via web- based are example on how organization used a system to increase their customer satisfaction.  Support for new products or new services
  • 3. New product developed or new services introduced require new types of IT support. For example, changing the use of punch card to fingerprint recognition in staff attendance is an example of installation of new products that needs a new system development project.  Provide more information The system might produce information which is not enough in order to support the organization’s changing information needs. For example, lecturer can obtain students results, but he/she can’t generate a report to analyze student performance. Figure 2-2: System Service Request Form PLANNING THE SYSTEM DEVELOPMENT PROJECT Some other methodologies refer it as preliminary investigation phase, initial study phase, or planning phase. Systems analysts always conduct a preliminary investigation to study the system service request and recommend the specific action base on that. This activity is important to initiate the project. After getting the approval from the management, the analysts interact with the
  • 4. stakeholders involved such as system owner, project managers and system user to gather information shown in the model in Figure 2-3. The analyst responsibility is to gathers the information about the problems or opportunity, project scope and constraints, project benefits, and budget for development time and costs. Then, analyst will prepare a report to the management. Initial Investigation: Determining user’s requirements and analysis, fact finding process and techniques. What is Requirements Analysis? Requirements analysis or requirements engineering is a process used to determine the needs and expectations of a new product. It involves frequent communication with the stakeholders and end-users of the product to define expectations, resolve conflicts, and document all the key requirements. One of the greatest challenges faced by any organization is to share the vision of the final product with the customers. Hence, a business requirements analysis involves a team effort of all the key stakeholders, software developers, end-users, and customer managers to achieve a shared understanding of what the product should do. This is always done in the early phase of any project to ensure that the final product conforms to all the requirements. Requirements Analysis Process A requirements analysis process involves the following steps: Fact-finding Scope and constraints Development time and costs Benefits Problems or opportunity
  • 5. Step 1: Identify Key Stakeholders and End-Users The first step of the requirements analysis process is to identify key stakeholders who are the main sponsors of the project. They will have the final say on what should be included in the scope of the project. Next, identify the end-users of the product. Since the product is intended to satisfy their needs, their inputs are equally important. Step 2: Capture Requirements Ask each of the stakeholders and end-users their requirements for the new product. Here are some requirements analysis techniques that you can use to capture requirements: 1. Hold One-On-One Interviews Interview each stakeholder and end-user individually. This technique will help you gather specific requirements. 2. Use Focus Groups Conduct group interviews or group workshops to understand the flow of information between different stakeholders and end-users. This technique will ensure that there will be no conflict of interest later on during the project. 3. Utilize Use Cases Use cases provide a walkthrough of the entire product through the eyes of the end-user. This technique will help visualize how the product will actually work. 4. Build Prototypes A prototype provides users a sample look and feel of the final product. This technique will help address feasibility issues and identify problems ahead of time. Step 3: Categorize Requirements Since requirements can be of various types, they should be grouped to avoid confusion. Requirements are usually divided into four categories:  Functional Requirements: Functions the product is required to perform.  Technical Requirements: Technical issues to be considered for the successful implementation of the product.  Transitional Requirements: Steps required to implement a new product smoothly.
  • 6.  Operational Requirements: Operations to be carried out in the backend for proper functioning of the product. Step 4: Interpret and Record Requirements Once the requirements are categorized, determine which requirements are actually achievable and document each one of them. Here are some techniques to analyze and interpret requirements: Define Requirements Precisely Ensure that the requirements are clearly worded, sufficiently detailed, and related to business needs. Prioritize Requirements Prioritize requirements and list them out based on which ones are the “most critical” and which ones are just “nice-to-have”. Carry Out an Impact Analysis Carry out an impact analysis to make sure that you fully understand the consequences of the requirements. Resolve Conflicts Arrange a meeting with key stakeholders and resolve conflicting requirements. You can also perform a scenario analysis to explore how the requirements would work for different possible scenarios. Analyze Feasibility Perform a detailed analysis of the product based on the requirements gathered to determine its reliability and to identify any major problems. Once all the requirements are analyzed, create a detailed written document and circulate it among the key stakeholders, end-users and development teams. Step 5: Sign off Once a final decision is made on the requirements, ensure that you get a signed agreement from the key stakeholders. This is done to ensure that there are no changes or uncontrolled growth in the scope of the project.
  • 7. Stages of Requirement Analysis 1. Drawing the Context Diagram The purpose of drawing a context diagram is to find out how to design a new system within an organization or how to modify it. Context diagram defines how external elements impact the internal system of an organization. They are complex diagrams that draw the system analysis simply yet crisply. The arrows indicate the date-flow between the external elements and the internal system. For example, the following diagram shows how different elements move within the hotel reservation system. 2. Developing a Prototype (Optional) Prototype development is an important part of a product launch as this helps the organization find out the specific requirements of customers. Based on the customers' response, the prototype is modified until it achieves maximum customer satisfaction. The prototype allows the client to imagine the system to be built and to understand the customer's requirements. If the developers and end users still need to catch up on some aspects of the system, the prototype or the replica of the product helps them to finalize those elements. Those products that are developed for the general masses should get a glimpse of the prototype. Then, it should be shown to a selected section of potential buyers. This will help to create a product more attractive than before. The prototype is usually created faster and at an affordable cost. However, it always comes with some limitations and is not accepted in the final analysis. 3. Modeling the Requirements This stage involves creating requirement models that ultimately allow customers and stakeholders to imagine the product in the making. Various functions, data tables, external elements, and their relation to each other are represented in graphical forms. A graphical viewing of these things assists in finding flaws in the requirements. It allows the developers to see if there are any inconsistencies, missing, wrong, or unnecessary elements added to the system. Such requirement models can be divided into the following categories.  Data Flow Diagram: A graphical preparation using symbols and notations to show how a business operates through data movement.  Entity-Relationship diagram: A flowchart describing how things like people, a concept, or an object are related within a system.  Data Dictionaries: These contain different definitions, names, and other forms of data elements utilized within the project.
  • 8.  State-transition diagrams: They represent the changes that take place within the system 4. Finalize the Requirements Requirement models will add to the understanding of the system. All the necessary corrections are done at this stage. All ambiguities are removed, and the data flow is examined across various models. The elicitation process and subsequent analysis lead to a greater understanding of the system. So finally, the requirements are approved, and the documentation begins. Requirement Analysis Example Here's an example of a requirement analysis for a fictional e-commerce website: Project Name: A Ficionnal Online E-Commerce Website Objective: Create a user-friendly e-commerce website to allow customers to browse and purchase products online. Stakeholders: 1. Customers (shoppers) 2. Product vendors and sellers 3. Website administrators 4. Payment gateway providers 5. Shipping and logistics partners Functional Requirements: 1. User Registration and Authentication:  Customers must be able to create accounts and log in.
  • 9.  User authentication should be secure.  Provide an option for social media login. 2. Product Catalog:  Display a catalog of products, categorized by type and brand.  Include high-quality images, detailed descriptions, and prices for each product.  Allow customers to search for products by keyword and filter results. 3. Shopping Cart:  Enable customers to add and remove items from their shopping cart.  Display the total cost of items in the cart.  Save cart contents between sessions for registered users. 4. Checkout and Payment:  Provide a secure checkout process with multiple payment options (credit/debit cards, PayPal, etc.).  Collect shipping and billing information from customers during checkout.  Apply discounts, coupons, and gift cards if available.  Send order confirmation emails to customers. 5. Order History:  Store order history for registered users.  Allow users to view and track the status of their orders. 6. Product Reviews and Ratings:  Allow registered customers to leave reviews and ratings for products.  Display average ratings and user-generated reviews on product pages.
  • 10. 7. User Profiles:  Customers can edit their profiles, including shipping addresses and contact information.  Store multiple shipping addresses for registered users. 8. Inventory Management:  Update product availability in real-time.  Notify administrators when products are out of stock. 9. Admin Panel:  Provide an admin panel for managing products, orders, and user accounts.  Support role-based access control for administrators. Non-Functional Requirements: 1. Performance:  Ensure fast loading times, even with a high number of concurrent users.  Optimize website performance for mobile devices. 2. Security:  Implement secure encryption for user data and payment information.  Protect against common web application vulnerabilities (e.g., SQL injection, cross-site scripting). 3. Usability:  The website should have an intuitive and responsive design.  Support multiple languages and accessibility features. 4. Scalability:  Design the website to handle increased traffic during peak periods (e.g., holiday sales).
  • 11. 5. Data Backup and Recovery:  Regularly backup customer data and order history.  Implement a disaster recovery plan. Constraints: 1. Budget:  The project has a predefined budget for development and maintenance. 2. Legal Compliance:  Ensure compliance with data protection regulations (e.g., GDPR, CCPA).  Adhere to e-commerce regulations and consumer protection laws. Assumptions: 1. Payment gateway providers will integrate seamlessly with the website for processing payments. 2. Product vendors will provide accurate and up-to-date product information. This requirement analysis forms the basis for developing the e-commerce website, outlining what features the website should have, how it should perform, and the constraints and assumptions that need to be considered during its creation. INTRODUCTION This unit will help you to learn the process of planning the development of systems. You will also learn various techniques used in fact finding and getting appropriate information. Based on the information gathered, a list of requirements has been compiled. The same is sent to the customer for his/her review and comments. The topic of feasibility study is discussed in depth in this unit. The process of cost benefit analysis is also discussed in this unit. Lastly, we shall discuss about the Joint Application Development (JAD). FACT FINDING TECHNIQUES
  • 12. To learn the functions of the existing system, systems analyst needs to collect data related to the existing system. Usually, the data related to organization, staff, documents used, formats used in the input and output processes is collected. This information is obtained through interviews, group discussions, site visits, presentations, and questionnaires. Need for Fact Finding Normally, each and every business house or any organization has its own rules and procedures to run and manage it. When a system needs to be developed, the systems analyst needs to know the requirements of the system. Depending on these requirements, the system has to be developed. 4.2.1 Interviews Personal interview is a recognized and most important fact finding technique, where the systems analyst gathers information from individual through face to face interaction. Interviews are used to find the facts, verify facts, clarify facts, get the customer involved, identify the system requirements and know all options. The interview is usually conducted by the systems analyst. To conduct interview, the interviewer must have personality which helps him/her to be social with strangers or different types of people. Always and for all situations, interviews are not appropriate fact finding methods. It has both advantages and disadvantages. Advantages • Interviews permit the systems analyst to get individual’s views and get the specific problem workwise and operation wise. • Interviews allow the systems analyst to obtain a better clarity of the problem due to feedbackfrom the interviewees. • In the process of interviews, the interviewer has time and scope to motivate the interviewee torespond freely and openly.
  • 13. • Interviews allow the systems analyst to understand the user requirements and to know theproblems faced by the user with the current system. • It is an effective technique to gather information about complex existing systems. Disadvantages • Interviews are very time consuming. • Success of interviews, in most of the cases, depends on the systems analyst’sinterpersonal relationship skills. • Some times, interviews may be impractical due to the location of interviewees.Types of Interviews There are two types of interviews: • Structured; and • Unstructured. In structured interviews, there is a specific set of questions to be asked to an interviewee. In the case of unstructured interviews, there are few specific questions pertaining to an interviewee. But, you have questions which are common to all interviewees. Unstructured interviews are conducted with only a general goal or subject in mind. Conducting Interview is an art. The success in interview depends on selecting the individual, preparing for the interview, creating situation in which the answers offered are reliable and creating a situation in which opinion can be given without any fear of being criticized by others. Arranging Interview The system analyst should prepare properly for the interview. S/he should select place of interview, time of interview in such a way so that there will be minimal interruption. Always, it is important to take appointment with the interviewee. Time to be spent during interview varies from project to project. The higher the management level of the interviewee, the less the time to be scheduled for the interview. Guidelines for conducting interviews : For a successful interview, the steps to be followed are given below: Introduction During introduction, the analyst should introduce himself by focusing on purpose of the interview
  • 14. and the confidential nature of interview. Also, this is the phase wherein first impressions are formed and pave way for the success of the remaining part of the interview.
  • 15. 70 Asking questions Questions should be asked exactly as these are worded in case of structured interview. Rewording may modify or bias the response. Always, questions have to asked in the same sequence as prepared. Recording the interview Record of the interview must be kept mentioning the source of the data and its time of collection. Sometimes, the analyst cannot remember the source of the data which may attribute to the invalid sources. Doing a final check After the interview has been completed, the deliberations made during the interview should be put in the form of a report. The report of the interview has to be sent to the interviewee for his/her signature. If any discrepancies are found or any modifications are to be done, these can be done at this point of time. 4.2.2 Group Discussions In this method, a group of staff members are invited who are expected to be well versed in their own wings of the organization. The analysts will have a discussion with the members for their views and responses to various queries posed by them. In this process, individuals from different sections gather together and will discuss the problem at hand. Ultimately, they come to an optimum solution. In this process, the problems of all sections are taken care of most of the cases, solutions are found which are acceptable to everyone. The main disadvantage of this process is that it is very difficult to get all the concerned people together at a time. But, the major advantage is that a mutually acceptable solution can be found. 4.2.3 Site Visits The engineers of the development organization visit the sites. Usually, the systems analysts visit sites to get first hand information of the working of the system. In this technique, systems analyst watches the activities of different staff members to learn about the system. When there is confusion about the validity of data collected from other sources, the systems analyst uses the method of site visits. The main objective of site visit is to examine the existing system closely and record the activities of the system. Advantages 1. The process of recording facts site visits is highly reliable. 2. Sometimes, site visits take place to clear doubts and check the validity of the data. 3. Site visit is inexpensive when compared to other fact finding techniques.
  • 16. 71 4. In this technique, systems analyst will be able to see the processes in the organization at firsthand. 5. The systems analyst can easily understand the complex processes in the organization.Disadvantages 1. People usually feel uncomfortable when being watched; they may unwillingly perform theirwork differently when being observed. 2. Due to interruptions in the task being observed, the information that is collected may beinaccurate. 3. Site visits are done during a specific period and during that period, complexities existing in thesystem may not be experienced. 4. There may be scheduling problems for the systems analysts when the activities take place during odd hours. 5. Sometimes, people may be more careful to adopt the exact procedure which they do not typicallyfollow. Guidelines for site visit Site visits are to be conducted where the work load is normal. After studying the work and normal work load, systems analyst can observe the work at peak hours to see the effect caused by increased volumes. The systems analyst should collect the input /output form, documents at the time of his/her visit. The following guidelines need to be followed at the time of observation and site visit: 1. Keep a low profile at the time of site visit. 2. Take necessary permissions from appropriate officials to conduct site visit. 3. Inform the individuals who will be observed at the time of site visit. 4. Take notes of the study of site visit immediately. 5. Do not make any assumptions. 4.2.4 Presentations It is another way of finding the facts and collecting data. Presentation is the way by which the systems analyst gathers first hand knowledge of the project. The customer makes a presentation of the existing system or about the organization. Participants in the meeting are representatives from the IT company and key personnel of the client organization. When a company needs to develop a software project, it may present its requirements for IOE (interest of expression) from the interested IT Company. In that case, the client presents his/her requirements. Based on the requirements, the IT companies make prototype and show the demo of the prototype. It is very
  • 17. 72 difficult to obtain information in detail from a presentation. But, information available through
  • 18. 73 presentation is sufficient to develop a prototype. Presentation is made by the concerned department in consultation from other departments and senior officials. 4.2.5 Questionnaires Questionnaires are special purpose documents that allow the analyst to collect information and opinion from respondents. By using questionnaires, it is possible to collect responses or opinion from a large number of people. This is the only way to get response from a large audience. Advantages 1. It is an inexpensive means of collecting the data from a large group of individuals. 2. It requires less skill and experience to administer questionnaires. 3. Proper formulation and interaction with respondents leads to unbiased responsefrom the customers. 4. Customers can complete it at their convenience. 5. Responses can be tabulated and analyzed quickly.Disadvantages 1. Sometimes, the number of respondents is low. 2. There is no guarantee that the respondents will answer all the questions. 3. Sometimes, the individual may misunderstand the question. In that situation, theanalyst may not get correct answer. Types of questionnaires There are two types of questionnaires: • Free formed questionnaires are questionnaires where questions are mentioned along with blankspaces for response. • Fixed formed questionnaires are questionnaires which consist of multiple choices and therespondent can select only from the choices provided. The following are various types of Fixed format questions: • True / False or yes/no type questions. • Questions whose response will be one of the choices: strongly agree, agree, disagree.. • Ranking type questions (ranking items in order of importance). • Multiple choice questions (select one response or all the relevant responses).
  • 19. 74 Tools of structured Analysis: Data Flow diagram, data dictionary, Gantt charts, pseudo codes, Flow charts, decision tree, decision tables. Feasibility study: Technical, Operational & Economic Feasibilities. What is Structured Analysis? Structured Analysis is a development method that allows the analyst to understand the system and its activities in a logical way. It is a systematic approach, which uses graphical tools that analyze and refine the objectives of an existing system and develop a new system specification which can be easily understandable by user. It has following attributes −  It is graphic which specifies the presentation of application.  It divides the processes so that it gives a clear picture of system flow.  It is logical rather than physical i.e., the elements of system do not depend on vendor or hardware.  It is an approach that works from high-level overviews to lower- level details. Structured Analysis Tools During Structured Analysis, various tools and techniques are used for system development. They are −  Data Flow Diagrams  Data Dictionary  Decision Trees  Decision Tables  Structured English  Pseudocode
  • 20. 75 Data Flow Diagrams (DFD) or Bubble Chart It is a technique developed by Larry Constantine to express the requirements of system in a graphical form.  It shows the flow of data between various functions of system and specifies how the current system is implemented.  It is an initial stage of design phase that functionally divides the requirement specifications down to the lowest level of detail.  Its graphical nature makes it a good communication tool between user and analyst or analyst and system designer.  It gives an overview of what data a system processes, what transformations are performed, what data are stored, what results are produced and where they flow. Basic Elements of DFD DFD is easy to understand and quite effective when the required design is not clear and the user wants a notational language for communication. However, it requires a large number of iterations for obtaining the most accurate and complete solution. The following table shows the symbols used in designing a DFD and their significance −
  • 21. 76 Symbol Name Symbol Meaning Square Source or Destination of Data Arrow Data flow Circle Process transforming data flow Open Rectangle Data Store Types of DFD DFDs are of two types: Physical DFD and Logical DFD. The following table lists the points that differentiate a physical DFD from a logical DFD. Physical DFD Logical DFD It is implementation dependent. It shows which functions are performed. It is implementation independent. It focuses only on the flow of data between processes. It provides low level details of hardware, software, files, and people. It explains events of systems and data required by each event. It depicts how the current system operates and how a system will be implemented. It shows how business operates; not how the system can be implemented. Context Diagram A context diagram helps in understanding the entire system by one DFD which gives the overview of a system. It starts with mentioning major processes with little details and then goes onto giving more details of the processes with the top-down approach. The context diagram of mess management is shown below.
  • 22. 77 Data Dictionary A data dictionary is a structured repository of data elements in the system. It stores the descriptions of all DFD data elements that is, details and definitions of data flows, data stores, data stored in data stores, and the processes. A data dictionary improves the communication between the analyst and the user. It plays an important role in building a database. Most DBMSs have a data dictionary as a standard feature. For example, refer the following table − Sr.No. Data Name Description No. of Characters 1 ISBN ISBN Number 10 2 TITLE title 60 3 SUB Book Subjects 80 4 ANAME Author Name 15 Decision Trees Decision trees are a method for defining complex relationships by describing decisions and avoiding the problems in communication. A decision tree is a diagram that shows alternative actions and conditions within horizontal tree framework. Thus, it depicts which conditions to consider first, second, and so on. Decision trees depict the relationship of each condition and their permissible actions. A square node indicates an action and a circle
  • 23. 78 indicates a condition. It forces analysts to consider the sequence of decisions and identifies the actual decision that must be made. The major limitation of a decision tree is that it lacks information in its format to describe what other combinations of conditions you can take for testing. It is a single representation of the relationships between conditions and actions. For example, refer the following decision tree − Decision Tables Decision tables are a method of describing the complex logical relationship in a precise manner which is easily understandable.
  • 24. 79  It is useful in situations where the resulting actions depend on the occurrence of one or several combinations of independent conditions.  It is a matrix containing row or columns for defining a problem and the actions. Components of a Decision Table  Condition Stub − It is in the upper left quadrant which lists all the condition to be checked.  Action Stub − It is in the lower left quadrant which outlines all the action to be carried out to meet such condition.  Condition Entry − It is in upper right quadrant which provides answers to questions asked in condition stub quadrant.  Action Entry − It is in lower right quadrant which indicates the appropriate action resulting from the answers to the conditions in the condition entry quadrant. The entries in decision table are given by Decision Rules which define the relationships between combinations of conditions and courses of action. In rules section,  Y shows the existence of a condition.  N represents the condition, which is not satisfied.  A blank - against action states it is to be ignored.  X (or a check mark will do) against action states it is to be carried out. For example, refer the following table − CONDITIONS Rule 1 Rule 2 Rule 3 Rule 4 Advance payment made Y N N N Purchase amount = Rs 10,000/- - Y Y N Regular Customer - Y N - ACTIONS
  • 25. 71 0 Give 5% discount X X - - Give no discount - - X X Structured English Structure English is derived from structured programming language which gives more understandable and precise description of process. It is based on procedural logic that uses construction and imperative sentences designed to perform operation for action.  It is best used when sequences and loops in a program must be considered and the problem needs sequences of actions with decisions.  It does not have strict syntax rule. It expresses all logic in terms of sequential decision structures and iterations. For example, see the following sequence of actions − if customer pays advance then Give 5% Discount else if purchase amount >=10,000 then if the customer is a regular customer then Give 5% Discount else No Discount end if else No Discount end if end if Pseudocode A pseudocode does not conform to any programming language and expresses logic in plain English.  It may specify the physical programming logic without actual coding during and after the physical design.  It is used in conjunction with structured programming.  It replaces the flowcharts of a program. Feasibility study consists of activities which determine the existence of scope of developing an
  • 26. 71 1 information system to the organization. This study should be done throughout the life cycle. In a project, at one point of time, it may seem that the project is feasible. But, after proceeding one or two phases, it may become infeasible. So, it is necessary to evaluate the feasibility of a project at the earliest possible time. Months or years of efforts, huge finances could be saved if an infeasible system is recognized at earlier stage. Feasibility studystarts from the preliminary investigation phase. At this stage, the analyst estimates the urgency of the project and estimates the development cost. The next check point is problem analysis. At this stage, the analyst studies current system. S/he does it to understand the problem in the better way. It helps him/her to make better estimates of development cost, and also to find out the benefits to be obtained from the new system. In feasibility analysis, we have to study the following: • Technical feasibility, • Operational feasibility, • Economic feasibility, • Legal Feasibility,  Social Feasibility,  Management Feasibility,  Time Feasibility, and  Behavioural Feasibility 4.3.1 Technical Feasibility Technical feasibility is concerned with the availability of hardware and software required for the development of the system, to see compatibility and maturity of the technology proposed to be used and to see the availability of the required technical manpower to develop the system. These three issues are addressed during this study. Is the proposed technology proven and practical? At this stage, the analyst has to see or identify the proposed technology, its maturity, its ability or scope of solving the problem. If the technology is mature, if it has large customer base, it will be preferable to use as large customer base already exists and problems that stem from its usage may be less when compared to other technologies which don’t have a significant customer base. Some companies want to use the state of art new technology irrespective of the size of customer base. The next question is: does the firm possess the necessary technology it needs. Here, we have to ensure that the required technology is practical, and available. Now, does it have the required hardware, and software? For example, we need ERP software, and hardware which can support ERP. Now, if our answer is no for either of the questions, then the possibility of acquiring the technology should be explored.
  • 27. 71 2 The last issue related to technical feasibility is the availability of technical expertise. In this case, Software and Hardware are available. But, it may be difficult to find skilled manpower. The company might be equipped with ERP software, but the existing manpower might not have the expertise in it. So, the manpower should be trained in the ERP software. This may lead to slippage in the delivery schedules. 4.3.2 Operational Feasibility Operational feasibility is all about problems that may arise during operations. There are two aspects related with this issue: • What is the probability that the solution developed may not be put to use or may not work? • What is the inclination of the management and end users towards the solution? Though, there isvery least possibility of management being averse to the solution, there is a significant probabilitythat the end users may not be interested in using the solution due to lack of training, insight, etc. Also, there are other issues related with operational feasibility. Information The system needs to provide adequate, timely, accurate and useful information. It should be able to supply all the useful and required information to all levels and categories of users. Response time It needs to study the response time of the system in term of throughput. It should be fast enough to give the required output to the users. Accuracy A software system must operate accurately. It means that it should provide value to its users. Accuracy is the degree to which the software performs its required functions and gives desired output correctly. Security There should be adequate security to information and data. It should be able to protect itself from fraud. Services The system needs to be able to provide desirable and reliable services to its users. Efficiency The system needs to be able to use maximum of the available resources in an efficient manner so that there are no delays in execution of jobs.
  • 29. 71 4 It is the measure of cost effectiveness of the project. The economic feasibility is nothing but judging whether the possible benefit of solving the problems is worthwhile or not. At the feasibilitystudy level, it is impossible to estimate the cost because customer’s requirements and alternative solutions have not been identified at this stage. However, when the specific requirements and solutions have been identified, the analyst weighs the cost and benefits of all solutions, this is called “cost benefit analysis”. This is discussed below. A project which is expensive when compared to the savings that can be made from its usage, then this project may be treated as economically infeasible. 4.3.4 Legal Feasibility Legal feasibility studies issues arising out of the need to the development of the system. The possible consideration might include copyright law, labour law, antitrust legislation, foreign trade,regulation, etc. Contractual obligation may include the number of users who will be able to use thesoftware. There may be multiple user’s licences, single user licences, etc. Legal feasibility plays amajor role in formulating contracts between vendors and users. If the ownership of the code is notgiven to the user, it will be difficult to install it without proper permission to other systems. Anotherimportant legal aspect is that whenever an IT company and the user company do not belong to thesame country then the tax laws, foreign currency transfer regulations, etc., have to be taken care of. 4.3.5 Social Feasibility It is the determination of whether a proposed project will be acceptable to the people or not. Thisdetermination examines the probability of the project being accepted by the group directly. 4.3.6 Management Feasibility It is the determination of whether a proposed project will he acceptable to the management peopleor not. If the management does not accept or gives a negligible support to it, the analyst will tendto view the project as non-feasible. 4.3.7 Time Feasibility It determines whether the proposed project can be implemented fully within a stipulated time frame. It a project takes too much time it is likely to be 4.3.8 Behavioural Feasibility It determines the reaction the user staff will have towards the development of the computerized system.