0% found this document useful (0 votes)
7 views

Software Engineering Notes

Uploaded by

kshitijmandan715
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Software Engineering Notes

Uploaded by

kshitijmandan715
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 72

CHAPTER - I

 Index :
 Introduction to System Concepts :
 Definition, Elements of System
 Characteristics of System
 Types of System
 System Concepts

 Introduction :
Today, we are surrounded by systems; interact with systems, even an active part
of systems. When we withdraw money from banks, buy rail tickets, theatre tickets or
even set the timer on our washing machines, we are likely to be interacting with a
system of some sort.
Modern systems design is much more than a goal based definition of the
technical specification. In order to appreciate the role of systems analysis and design in
developing modern computer systems, it is instructive to look back at the rationale for
the development of such approaches.
During the early days of computing, expertise with computers was limited to the
very few. When software was developed, the actual user, who was a skilled technical
expert, implemented it for their purpose. There was therefore very little need to do
systems analysis or design. The size, complexity and applicability of the software used
on early machines were limited and the majority of systems analysis took place in the
programmer's head. The programmer would visualize the type of application they
wanted to create and then go ahead and program it.
This situation started to change when computers moved out of the academic and
research environments in which they were developed and then started to market to
business organizations. The complexity of applications needed by these organizations
led to a software industry building large complex systems.
When the focus of development changed from small to large teams, the design of
a software system could no longer be kept in on individual head.
The idea of systems has become most practical and necessary in
conceptualizing the inter-relationships and integration of operations especially when
using computers. Thus a system is a way of thinking about organizations and their
problems. It also involves a set of techniques that helps in solving problems.

 What is a system :
1) A system is a set of elements combined together to fulfill a specific job.
2) A system is an organized, interacting, interdependent and integrated set of
components / parts.
3) A system must have an object or a set of objectives or a hierarchical set of objects.

w.e.f. 2009-10
4) A system is an assembly of procedure, process, methods, routines, techniques etc.
united by same regulated interaction to form an organized whole.
5) A system is made up of subsystems, which may be composed of further
subsystems.

Super System

System under Other system

Subsystem 1 Subsystem2 Subsystem n

Sub-Sub Sub-Sub Sub-Sub


System 1 System 2 System 3

System Structure

o Subsystem :
On consideration of one system 'whole' then it becomes very difficult to
handle. Therefore system decomposed into subsystems. These subsystems are
again divided into smaller subsystems until the smallest subsystem is in manageable
size.

 Examples of system :
 Natural Systems :
Occur naturally in the universe, such as galaxies, ant heaps and beehives.
 Designed Systems :
Man-made systems physical (Computer, Central heating system, jet engines)
as well as abstract (mathematical systems, music system)
 Social & Cultural System :
Formed by human beings coming together, naturally (in families,
communities, nations) or deliberately (in clubs, political parties)
 Human Activity System :
Systems where human beings are undertaking activities to achieve some
purpose (business, organizations) might include other types of systems (e.g. use
designed systems such as computers or have a company sports club).




w.e.f. 2009-10
 Definitions :
The term system is derived from the Greek word `systema', which means an
organized relationship among functioning units or components. A system exists because
it is designed to achieve one or more objectives.
OR
System is an orderly grouping of interdependent components linked together
according to a plan to achieve a specific objective. A system could be a part of bigger
system. (Here components may refer to physical parts)

 Elements of System :
There are three basic elements of the system input, processing and output. Other
elements are control, feedback, boundaries, environment and interface.

Boundary Environment

Input Processing Output

Control
Feedback

Elements of the System

Sub System 1 Sub System 2


Interface

 Input :
Inputs are the elements that make the system to work in order to produce
required output. The inputs may be in the form of material, data, information or
human resources taken from the environment which are used for processing.
 Output :
The system returns outputs to the environment after processing the inputs
and thus, achieves the specified objective. The output could be in the form of goods
(finished products). It could be done with expectations of intended user.
 Processors :
The processor should be designed of such type that it can accept the input in
the given form and can give output in desired format. It is the operational component
of system. Processors may modify input totally or partially depending on
specifications of output. In short processor is the element of the system, works on
the input and generates the necessary output.
w.e.f. 2009-10
 Control :
This element guides the system. The control element controls the working of
the system at all stages. It is necessary to control, input, process and output.
Continuously, in order to get desired results. In a complete system operating system
and accompanying software influence the behaviour of system.
 Feedback :
Feedback is a method that helps to compare output produced with output
expected and make necessary changes in the process or input in order to reduce the
difference between output produced and output expected.
 Environment :
Everything outside the boundary of the system is its environment. The
environments do affect working or progress of the system. The system should be
sensitive to the changes in its environment. It determines how a system must
function.
 Boundary :
The boundary indicates the limit of the system. The boundary divides the
things into the system and its environment. The things which are inside boundary are
part of the system otherwise the things which are outside the boundary are its
environment.
 Interface :
The inter-communications and interactions between the sub-systems are
called interfaces. Interfaces may be inputs and output of the system.

Que Define System and the General Process followed in any system or its basic
implications (£Ìããä¶ã¦ã ‡ãñŠËñËã ‚ã©ãÃ).
Ans A system consists of a set of elements which can be identified as belonging
together because of common purpose, goal or objective.
The general process or basic implications of system are as _
1) A system must be designed to achieve a predetermined objective.
2) Inter-relationships and interdependence must exist among the components.
3) The objectives of the organisation as a whole have a higher priority than the
objectives of its subsystems.

 Characteristics of System :
According to definition of system some characteristics that are present in all
systems. Following are some important characteristics of a system.
1) Organization (Basic Components) :
Organization implies structure and order of a system. It is the arrangement of
components that helps to achieve objectives. Viz. Computer system, Business
System, organization Structure etc.
2) Interaction : (¹ãÀÔ¹ãÀãâÌãÀ ãä‰ãоãã ‡ãŠÀ¥ãñ)

w.e.f. 2009-10
Interaction refers to the manner in which each component functions with other
components of the system. Viz. 1) in an organisation, purchasing must interact with
production, advertising with sales. 2) In Computer system, the CPU must interact
with I/P device to solve a problem.
3) Interdependence :
Interdependence means that parts of the organisation or computer system
depends on one another. They are co-ordinated and linked together according to a
plan. One subsystem depends on the input of another subsystem for proper
functioning that is the output of one subsystem is the required input for another
subsystem. This interdependence is crucial (ãä¶ã¥ããþã‡ãŠ, ½ãÖ¦ÌããÞãã) in
system work.
4) Integration :
Integration refers to the holism of system. Integration is concerned with how a
system is tied together. It means that parts of the system work together within the
system even though each part performs a unique function.
5) Central Objective :
The objective may be real or stated. Although, a stated objective may be the
real objective, it is not uncommon for an organisation to state one objective and
operate to achieve another. The important point is that the users must know the
central objective of a computer application early in the analysis for a successful
design and conversion.
6) Behavior : (Not for all system)
It is the way that system reacts with environment. behavior determined by
procedure or instructions designed to make sure that component behaves in same
manner that will allow system to achieve its goal. Procedure describes what ought to
be done and behaviour describes what is actually done.
Viz. When human skin touches something extremely hot, at that time body
immediately withdraw from hot source.. Here, heat is the input from environment.
The reaction is behaviour and how to react is procedure.
7) Life Cycle : (Not for all system)
Every system has a life cycle means every system has a birth, life and death.
The system life cycle includes revolution, wear, aging, replacement, repair and finally
end of system existence.
Que Why Automation is required ?
Ans 1) To get information which is timely, precise, accurate, concise, up-to-date,
consistent, useful, presentable, non-redundant.
2) Easy and efficient retrieval and storage of information.
3) Ensure safety of records from external and internal threats.
4) To avoid unnecessary duplication of data.
Thus, by having an automated system we can achieve the pieces
framework as
* To achieve better performance
* To improve information
w.e.f. 2009-10
* To improve control and security
* To improve efficiency of people and machine
* To improve service to customers and employees.
 Types of System :
The frame of reference within which one views a system is related to the use of
the systems approach for analysis. Systems have been classified in different ways.
Common classifications are _
1) Physical or Abstract 2) Open or Closed 3) Man-made information system

1) Physical and Abstract (Conceptual / Logical) System


 Physical System :
The components of the system, which are tangible, form the physical system.
Those could be static or dynamic in nature. Static means which don't change as far
as working or life of the system is concerned. Dynamic component of the system
may change due to processing of the system. Viz. In computer system the hardware
parts are static, but the data which changes due to processing is dynamic. These
both together form physical system along with programs controlling the data.
 Abstract System :
The non-existing, non-physical systems which are represented only
conceptually are called abstract systems. The model or diagrammatic representation
is abstract system. Those are prepared for studying the physical system. The
computer itself is a physical system otherwise its block diagram is an abstract
system. The abstract system is less costly to design and is less harmful to operate.
Therefore, abstract systems (i.e. Model), are prepared to study physical systems
before designing physical systems.

Additional Information :
A Model is a representation of real or a planned system. The use of models
makes it easier for the analyst to visualize relationships in the system under study.
Following are the types of models.
o System Model :
The analyst begins by creating a model of reality i.e. facts, relationship,
procedure etc. with which the system is concerned. The analyst begins by
modeling the reality before considering the function that system is to perform.
Various business system models are used to show the benefits of
abstracting complex system to model form. Some of them are as -
1) Schematic Models : It shows a two dimensional depicting (ãäÞã¨ã
ÀñŒãã›¶ãñ) system elements and their linkages.
2) Flow System Models : This shows the flow of material, energy and information
that hold the system together.

w.e.f. 2009-10
3) Static System Models : This type of model exhibits one pair of relationships
such as activity - time or cost - quantity. Viz. The Gantt Chart, gives the static
picture of an activity - time relationship.
4) Dynamic System Models : Business organisations are dynamic systems. It
depicts constantly an ongoing constantly changing the system.
2) Open and Closed Systems :
 Open System :
This system interacts with its environment. This type of system receives input
as well as delivers outputs to its environment. This system does not provide for its
own control or modification. Viz. If a printer used with computer did not have a switch
to sense whether paper is in the printer, then a person would have to notice when
the paper runs out and signal the system (push a button) to stop printing.
 The Characteristics of Open System :
1) Inputs from outside :
Open systems are self adjusting and self regulating. When functioning
properly an open system reaches steady state.
2) Entropy : (Decrease in available energy)
Open system resist ¹ãÆãä¦ãºãâ£ã entropy by seeking new inputs or
modifying the processes to return to a steady (firmly fixed) state.
3) Process, Output and Cycle :
Open systems produce useful output and operate in cycle, following a
continuous flow path.
4) Differentiation :
Open system have a tendency toward an increasing specialization of
functions and greater differentiation of the components. This characteristics
offers a completing reason for increasing value of concept of system in
system analyst's thinking.
5) Equi-finality : (Fact of being near to final)
This term implies that the goals are achieved through differing courses of
action and a variety of paths.

 Closed System :
This system does not have any interaction with its environment. It is isolated
from environmental influences. This system automatically controls or modifies its
own operation by responding to data generated by the system itself. In reality
completely closed system is rare. Viz. A television which controls its sharpness or
brightness automatically with the help of sensors; chemical reaction in sealed tube.

 Difference between Open System and Closed System :


Open System Closed System
1 System which exchange with the System which does not have any
environment & is influenced by it is exchange with environment & is not
w.e.f. 2009-10
called an open system influenced by any change in it is called
closed system
2 Open systems have self organising Closed systems are based on rules &
ability & sensitivity to absorb & principles.
adjust to environment changes

3 Systems like marketing, Systems like cash, stocks, attendance of


communication, forecasting etc. employees are closed system
are open system. These respond
to changes in environment.
Business organisation system are System of manufacturing are closed
open systems system.
4 Open systems are complex in Closed systems are easy to be
nature and as such difficult to be computerized as they are based on
computerized. certain rules.

3) Man-made Information System / Formal System :


This system helps to understand the things in better way. It reduces uncertainty
(‚ããäÌãÎÌããÔã) about the working of the system. With the help of information system,
we can define some standards for the working of the system. Thus, we can try to make
the system to work according to the standards defined. We can define information
system as a set of devices, procedures, operating systems designed around user
based criteria to produce information and communicate it to the user for planning,
control and performance.
Formal Information Systems are as follows

Expert Information System

EIS Top Level mgt.


Decision Support System
DSS
Middle Level Mgt.
Mgt. Info. System
MIS

Transaction Processing System Lower Level Mgt.


TPS

o Transaction Processing System (TPS) :


These are operation oriented system. It automates the business data and
transactions in an automates the business data and transactions in an organization.
The transaction data is collected, verified, accepted or rejected and valid data is
stored for generating reports. Viz. Systems like customer order processing system,
employee time-keeping system etc.

Benefits of TPS :
a) The benefits of this are speedy processing,
b) less manpower needed,
c) increases efficiency and accuracy.
w.e.f. 2009-10
d) Stores all transactions
e) Helps to trace out the problems
f) Gives current status of various organisational entities

o Management Information System (MIS) :


Managers require proper reports for decision making. MIS takes the data
available through a transaction processing system and generates meaningful reports
which help the managers in performing their responsibilities. Reports may be needed
daily, weekly, monthly etc.
Benefits of MIS :
a) it can handle inquires instantly.
b) Suitable for analysis
c) Result oriented
d) Helps to build decision procedure and rules
e) helpful for basis of Mgt. activities like planning & control

o Decision Support System (DSS) :


This provides an interactive environment, which assists managers in decision
- making. DSS consists of database (extracted from TPS & MIS), mathematical and
graphical models of business processes and user interface that provides the non-
technical personnel's (managers) to communicate and make proper decisions. Thus
DSS is software system which support decision making. It assists managerial
personnel right from problem finding upto choosing a course of action.
Benefits of DSS :
a) Increase number of alternatives examined
b) Better decisions are taken
c) Saves cost and time
d) reduces clerical work and overtime

o Executive Information System (EIS) :


This system operates continuously to keep Mgt. abreast of what is happening
in all major areas. EIS provides rapid access to timely information and direct access
to mgt. reports. EIS contains exentensive graphics capabilities. It serves the
information needs of top executives. EIS gives quick and easy access to detailed
information.

 Expert Systems :
Human beings are experts in specific areas. Their knowledge must be recorded
somewhere for the use of others. An expert system is helpful for this, which captures
human knowledge in a computer to solve problems that ordinarily requires human
expertise. Effectiveness is a major goal of these type of systems.
 Benefits of ES :
w.e.f. 2009-10
1) O/p is selected with the opinion of many experts.
2) Effective manipulation of large knowledge base
3) Increased output & productivity
4) Flexibility
 Components of Expert System :
1) Knowledge acquisition
2) Knowledge base - facts and rules
3) user interface
4) Knowledge refining system

4) Computer based Information System :


Computer based information systems are more faster, more accurate, more
neat and attractive. Once data is stored in computer, it can be retrieved at any time
and any number of times. If any corrections or modifications are required, data can be
rearranged with less effort.

5) Deterministic and Probabilistic System :


Deterministic System :
A deterministic system is a one, which operates in a predicable manner where
stepwise execution and output is known. Viz. a computer program.
Probabilistic System :
These are the systems which operates in an unpredictable manner where
outcome is not certain or sure. A degree of error is always present. Viz. Weather
forecasting.

6) Informal Information System :


This is a system, which is working to meet requirements of employees. So it is an
employee based system designed to meet personnel and vocational needs and to help
to solve work related problems. Informal Information System is related with what is
happening practically rather than what is shown on paper.

 Questions :
1) Explain system and sub-system 2) Describe the various elements of system
3) Explain the characteristics of system 4) Distinguish between Open and Closed System, TPS and
DSS, 5) Define the term - Probabilistic System, Deterministic System, 6) Write note on Computer
Based System 7) Explain the different types of systems in brief. 8) Distinguish between Interaction
and Interdependence


w.e.f. 2009-10
CHAPTER - II
INTRODUCTION TO SOFTWARE ENGINEERING
 Index :
 2.1 Definition Need for software Engineering
 2.2 Software Characteristics
 2.3 Software Qualities ( McCall‟s Quality Factors)

 Introduction :
Every Software, that is developed for specific use requires lots of efforts. A
software product may be developed by many developers, has many users and
maintainers. As numbers of persons are more, development and maintenance of
software product requires more systematic approach.
Software must be designed properly as per the user requirements. Source code
must be carefully implemented and thoroughly tested and supporting documents such
as user, manual, installation procedure, training aids, maintenance documents must be
prepared.

 Software :
A software is instructions (Computer programs Viz. Application programs or
System programs) that when executed provide desire function and performance.
Software is a data structure that enables the programmer to adequately (Sufficiently or
satisfactorily) manipulate (handle with skill) information. Software is documents that
describe the operation and use of the programs.

 Software Engineering / Generic View of S.E. : (Engineering means application of


science to the design & use of machines)
Engineering is the analysis, design, construction, verification and management of
technical (or social) entities (entity means thing's existence in it self). The work
associated with software engineering can be categorized into three generic phases,
regardless (without attention) of application, area, project size or complexity as follows.
1) Definition phase :
This phase focuses on WHAT. Means, during the definition, software
engineer attempts to identify -
o What information is to be processed?
o What function and performance are desired?
o What system behaviour can be expected?
o What interfaces (surface forming a boundary between two regions) are to be
established?
o What design constraints (Self control) exists? &
o What validation criteria are required to define a successful system?

w.e.f. 2009-10
2) Development phase :
This phase focuses on HOW. Means, during the development, a software
engineer attempts to define -
o How data are to be structured,
o How functions is to be implemented within a software architecture,
o How procedural details are to be implemented,
o How interfaces are to be characterized,
o How the design will be translated into a programming language or non-procedural
language and how testing will be performed.
3) Support phase :
This focuses on CHANGE. Associated with errors correction, adoptions
required as the software's environments evolves and changes due to enhancements
brought about by changing customer requirements.

 Definition of Software Engineering :


Software engineering is the establishment and use of sound engineering
principles in order to obtain economically software that is reliable and works efficiently
on real machines. (According to Fritz Bauer)
OR
Software engineering is the application of systematic, disciplined, quantifiable
approach to the development, operation and maintenance of the software that is the
application of engineering to the software and study of all these approach. (IEEE =
Institute of Electrical and Electronics Engineers)
OR
S.E. is a technological and managerial discipline concerned with systematic
production and maintenance of software products that are developed and modified on
time and within cost estimated.

 Software Characteristics :
The characteristics of software are as -
1) Software is developed and engineered but it is fundamentally different from
classical manufacturing process :
Software projects and manufacturing projects both are achieved a high quality
through good design. The software project and manufacturing projects are
dependent on people. The relationship between people applied & work
accomplished by these activities are different.
2) Software is deterministic because it doesn't wear out :
Software is deterministic but hardware is probabilistic because it doesn't wear
out. Hardware has high failure rates. Hardware fails because of failure modes like
poor quality of fabrication, design error, overload of the component etc.

w.e.f. 2009-10
During the maintenances phase, changes may be requested in software by
the client. The alterations done to the software during maintenance may cause some
errors till it is regularized. This process of change in requirements and alterations
goes on since the business requirements keep on changing.
3) Software is customized :
Software are designed, developed and implemented according to the
specifications of the customers. So they are customized (i.e. custom built). The
efforts and duration for software design and development can be estimated using the
information gathered for requirements of customer.
4) Versions are created :
New modifications or updations are done in existing software to form a new
version of software.
5) Different hardware requirements :
Software may use various hardware components as per the usability of
applicability.

 Software Components :
Software components has two basic forms -
1) Non Machine - executable component :
Software components are created through a series of translations that map
customer's requirements to machine-executable code.
2) Machine executable component :
Software components are built using programming language that has a limited
vocabulary.

 Software Quality :
The American Heritage Disctionary defines "Quality" as a "Characteristic or
attribute of something". As an attribute of an item, quality refers to measurable
charactristics - things we are able to compare to known standards such as length, color,
electrical properties malleability (•ãìßÌãî¶ã Üãñ¥ããÀã) and so on.
"Quality of design" refers to the characteristics that designers specify for an item
1, where as the "Quality of conformance (¦ãâ¦ããñ¦ãâ¦ã, ‚ã¶ãì¹ã)" is the degree to
which the design specifications are followed during manufacturing. It is very difficult to
define quality and more difficult to quantity it and measure it.
The definition given by ISO-8402 of quality is "the totality of features &
characteristics of a product, process or service that bears on its ability to satisfy stated
or implied needs ".
Software Quality is a complex mix of factors that will vary across different
applications and the customer request them. The above definitions emphasize (•ããñÀ
ªñ¥ãñ) 3 important points.
1) Software requirements are the foundation from which quality is measured.
w.e.f. 2009-10
2) Specified standards define a set of development criteria that guide the manner in
which software is engineered.
3) If software conforms to its explicit (Ô¹ãÓ›) requirements but falls to meet implicit
(‚ãÔ¹ãÓ›) requirements, software quality is suspect.

 McCall's Quality Factors :


The factors that affect software quality can be categorized in two broad groups-
1) Factors that can be directly measured
2) Factors that can be measured only indirectly (Vz. Usability or maintainability)
In each case measurement must occur. McCall & Walters propose a useful
categorization of factors that affect software quality. These software quality factors focus
on three important aspects (View points) of a software product - its operational
characteristics (i.e. Product Operation), its ability to undergo change (i.e. Product
Revision) and its adaptability to new environments (i.e. Product Transition).

-- Portability
-- Maintainability -- Reusability
-- Flexibility -- Inter-operability
-- Testability

Product
Product Revision Transition

Product Operation

Correctness Reliability Usability Integrity Efficiency

[Maintainability - Keep working; Flexibility - Capable of bending with breaking; Portability -


easy movable; Efficiency - minimum west of efforts]

In addition to these factors Bochm suggest that quality criteria include the
following attribute :
1) Economy 2) Documentation 3) Understandability
4) Modularity 5) Validity 6) Generality
7) Resilience 8) Clarity 9) Performance
o Product Operations :
1) Correctness :
If the software performs its required functions according to the specification then
it is functionally correct. If the software does not perform specified function
according to customer's need then there is a need to correct it the software
systematically.

w.e.f. 2009-10
2) Reliability
The software should meet all the requirements of the user and should be reliable.
It should give correct and expected outputs in a specified time. If most of the
errors are removed from the system then more reliability is achieved.
3) Usability
It is the ease (ÔãõË ‡ãŠÀ¥ãñ) of learning how to use software systems,
operating them, preparing input data, interpreting results, recovering form usage
errors.
4) Integrity
Software system must have ability to protect their various components (like
programs, data etc.) against unauthorized access and modification.
5) Efficiency
Efficiency of the software depends upon the execution speed & memory
requirements. If the algorithm (logic) used in program is proper then less
execution time is required. Efficiency of software depends upon the minimum
consumption of computing resources to fulfill its intended function.

o Product Revision :
1) Maintainability :
This relates with updation, addition of new procedures and removal of errors from
the software system. Software should be flexible to accept new changes.
2) Flexibility :
It is the case with which software products adapted to changes of specifications.
3) Testability :
After removal of errors, modified programs or updated programs and procedures
are require to test on test data for detection of failures.

o Product Transition :
1) Portability :
Portability refers to the ability of a software system to run on different hardware
platforms and software environments.
2) Reusability
It is the ability of software products to be reused, in whole or in part, for new
application.
3) Inter-operability
This refers to the ability of a system to co-exists and co-operate with other
systems. (Viz. MS-Office) Due to this quality factor, exchange of the data
between different products is possible.

w.e.f. 2009-10
 Primary Goals of Software Engineering :
The primary goals of Software Engineering are
1) To improve the quality of software product
2) To increase the productivity
3) Job satisfaction of software engineers

 Need of Software Engineering :


1) In the early days of computing the primary concern was with building the hardware.
Software was almost expected to take care of itself. Most people in the industry
carefully planned hardware development but gave considerably less forethought to
the software.
2) The cost of software amounted to such a small fraction of the cost of the hardware
that no one considered it very important to manage its development. This approach
proved satisfactory in the early days of computing, when software was simple.
3) As computing matured, programs became complex and projects grew larger,
programs began to be developed by teams of programmers to meet someone else's
expectations.
4) As programs became more complex, the early methods used were no longer
satisfactory to represent this greater complexity.
5) Without better methods of representation it became difficult for even one
programmer to keep track of what he or she is doing.
6) Due to all these reasons, in the field of software development S. E. is needed.
7) As S. E. is concerned with development and maintenance of technological products,
products, problem solving techniques common to all engineering disciplines are
utilized. Concepts of all the sciences (computer, economic, mgt etc.) are combining
within framework of engineering problem solving.

 Software Application :
1) Information content and determinancy are important factors in determining the nature
of a software application.
2) Content refers to the meaning & form of incoming and outgoing information.
3) Information determinancy refers to the predictability of the order and timing of
information.
4) The following software areas indicate potential applications
-- System Software -- Real time software
-- Business Software -- Engineering and Scientific Software
-- Embedded Software -- Personal Computer Software
-- Artificial Intelligence Software

w.e.f. 2009-10
CHAPTER 3
REQUIREMENT ANALYSIS

 Introduction :
During system analysis some activities are carried out, such as problem
definition, design, implementation etc.
Before designing the actual system, user should know,
1) What is problem?
2) How to solve it?
3) What are its features, advantages and limitations?
If a system is designed without considering above activities then the system will
not work properly to the satisfaction.
So system analysis is necessary to design perfect and accurate system which will
satisfy the user requirements.

 Requirement Analysis is a Software Engineer's task that bridges the gap between the
system level software allocation (assign or devotion) and software design.
 R.A. enables the system engineering to specify software function and performance
 R.A. indicate software's interface with other system elements
 R.A. establishes design constraints that the software must meet.
 R.A. provides the developer and the customer with the means to access quality once
the software is built.

 Determination of System requirements :


This means studying the existing system and collecting details about it to find out
what these requirements are. It is necessary to find out how the system works and
where improvements are necessary.
There are 3 activities involved in requirement determination. That are
1) Requirement Anticipation („½ãñª in advance)
2) Requirement Investigation
3) Requirement Specification
1) Requirement Anticipation :
The most important and difficult task of an system analyst is to understand
requirements. If system analyst has experience of newer system's environment then
it is easy to do system study. System Analyst may raised questions and apply
different methods in different situations based on past experience.
An inexperienced analyst may not notice some areas but an experienced
analyst may find such areas immediately from the past experience. This is beneficial
to the organization.

w.e.f. 2009-10
Though the system analyst has the experience of the system, he should avoid
taking short-cuts in conducting investigations; otherwise there will be a problem in
requirement anticipation.
2) Requirement Investigation :
This activity is related with finding and investigating more features of the
system. This activity uses fact-finding methods like interview, questionnaire,
observation and record reviews for information gathering about system features.
Requirement Investigation is very important and related with System Analysis.
Documentation and description of features are also done for future analysis.
If Requirement Investigation is not done properly, system may not be
developed as per customer's satisfaction.
Different methods like data flow analysis, decision analysis, prototyping
methods and case tools are used for documentation.
3) Requirement Specification :
Requirement Specification is an agreement between the system developer
and the end user. The data collected from the end user during fact-finding
investigation is not always correct or sufficient sometimes because of
misunderstandings between the developer and user because of different culture and
different language; there are ambiguities in the investigations.
So this data is analyzed to determine how well the system is performing and
whether it will meet the organizational demands.
These specification documents are shown to user and it may help to minimize
misunderstandings between the developer and the end user. Sometimes user can
also suggest new features which should be included in new system
The strategies that fulfill the goal of the system and meet the specifications
are selected.
These strategies that fulfill the goal of the system and meet the specifications
are selected.

 System Analysis and Design :


System development can have two major components - System Analysis and
System Design.
In System Analysis more emphasis is given to understanding the details of an
existing system or a proposed one and then deciding whether the proposed system is
desirable or not and whether the existing system needs improvements. Thus, "System
Analysis is the process of investigating a system, identifying problems and using the
information to recommend improvements to the system".
The System Design component defines the way how a system will meet the
requirements which are identified, during system analysis. The system design should be
as hardware and software environment independent as possible.

w.e.f. 2009-10
 System Analyst :
"The person who performs the system investigation and who may or may not be
related to computer programming is called as system analyst".
The programmer works with the frame work provided by system analyst. Thus a
system analyst designs information system which meet organisation objective, promote
integration of activity and provides facilities and controls which are flexible and robust.
In addition to the technical know-how of the information system development, a
system analyst should also have the following knowledge.
-- Business knowledge :
As the analyst might have to develop any kind of a business system, he should
be familiar with the general functioning of all kind of business.
-- Interpersonal Skills :
Such skills are required at various stages of development process for
interacting with the users and extracting the requirements out of them.
-- Problem Solving Skills :
A system analyst should have enough problem solving skills for defining the
alternate solutions to the system and also for the problems occurring at the various
stages of the development process.

 Questions :
1) What is system Analyst?
2) How requirements are determined?
3) Describe the necessity of requirement analysis.
4) Define - System Analysis, System design and system analyst
5) Why system analysis is required / necessary?
6) What do you mean by Requirement Analysis?

 Skills Expected in System Analyst :


An analyst must possess various skills to effectively carry out the job.
Specifically, they may be divided into two categories - Interpersonal Skills and Technical
Skills.
o Interpersonal Skills :
These deals with relationships and the interface of the analyst with people in
business. They are useful in establishing trust, resolving conflict and communicating
information. Interpersonal Skills include the following.
a) Communication :
Analyst should collect maximum information in less time. For which he / she must
take initiative in asking questions, he / she must have good communications
skills. He/She must be able to interact with managerial level peoples to workers
of organization.

w.e.f. 2009-10
Communication is not just reports, telephone conversations and interviews. It is
people talking, listening, feeling and reacting to one another, their experience and
reactions.
b) Understanding :
The analyst must be able to understand the problem for which the system is to be
developed and he must be able to give solution for achieving the goal of
organization and must show sensitivity to the system on people at work.
c) Teaching :
The analyst should train different people from software development team.
He/She must involve in giving training of the system to its users.
d) Selling :
The analyst should be able to give various alternatives on solving problem and
must be able to convince it to customer as well as software development teacm.
e) Motivation :
The Analyst must motivate software development team as well users in doing
their tasks efficiently.

o Technical Skills :
These skills focus on procedures and techniques for operations analysis,
system analysis and computer scie

 Academic and Personal Qualifications :


The analyst acquires the required skills in his education, experience and
personality. System Analyst should have a good academic qualification which is
important for system work.
1) The analyst may have knowledge in computer, engineering, economics and
business administration.
2) He / she should have background in systems theory and organization behaviour.
3) He / She should be familiar with the areas such as operation management, financial,
accounting, personnel administration, marketing and sales, model building and
production control.
4) Analyst should be competent in system tools and methodologies and a practical
knowledge of one or more programming and database languages.
5) He / She should have experience in hardware and software specification, which is
important for selection.

w.e.f. 2009-10
 Tasks / Jobs of System Analyst :
The job / tasks of the system analyst are as follows -
1) Problem identification and understanding
2) Evaluation and synthesis (find the value, combining of elements)
3) Modeling
4) Specification & (detail of design & material)
5) Reviews (general survey)
System Analyst is the interface between organization and computer system.
In computer department the work / job of analyst are -
1) Choice of programming language
2) Develop system within schedule and budget
3) Documentation policies and procedures
Hence the main objective of System Analyst is to provide right type of
information, in right time, in right quantity and at right cost to management and end user.

 Role of System Analyst :


1) System analyst must find out and understand the exact problem, with or without the
help of the system specification.
2) Software Analyst must understand customer's environments and be able to identify
the customer's needs.
3) System Analyst should be able to evaluate the system concept for feasibility.
4) System Analyst must be able to establish contact and maintain good relationship
with client organization and the development team.
5) System Analyst should be able to provide a set of solutions to the problem and
synthesize the solution.
6) System Analyst must have capability of logical reasoning to produce new feasible
and fair solutions for the user problems.
7) System Analyst must be able to find out the problems in the existing system and the
steps to overcome these problems in the new system.
8) System Analyst should create models / prototypes of the system to understand data
and control flow, functional processing, behavioural operation and information
content.
9) System Analyst has to collect the information from others and hence must have good
communication skills, pleasant personality and must be initiative, so that lots of
important information for the new system is collected.
10) System Analyst must support the designing and programming team in executing
tasks.

w.e.f. 2009-10
 The Multifaceted Role of the Analyst :
The Analyst plays his role in many characters. The various roles played by him
are as -
1) Change Agent :
System Analyst is called as change agent because the analyst does the work
in the way that it will improve over all working as well as profit of the organizations.
This change is brought by implementing new software based computer system. To
make this change successful, the analyst should give user as much participation as
possible while designing the system.
2) Investigator & Monitor :
The analyst gathers the information to determine why the present system
does not work well and what changes will correct the problem. In one respect, this
work is similar to an investigator.
The role monitor is related to the role investigator. The analyst also monitors
the activities going on while designing the system. This includes successful
completion of the program with respect to time, cost and quality.
3) Architect :
System Analyst is like architects. The analyst works with user to identify the
goals and shapes of new system. Architect first prepares a plan and according to
that plan he develops a building. System Analyst also creates several plans and
develops or builds system according to that plan.
4) Psychologist :
Analyst plays the role of psychologist. He / She goes to people, interprets
their thoughts and behaviour and draw conclusions about them. Understanding is the
important thing. Aware of people, feeling, listening is very important in evaluating
response and freedom.
5) Sales Person : (who can sell refrigerator to Eskimo)
The analyst works as a sales person by giving oral presentation of the system
at each stage of development. The analyst should be very good in communication
and in putting his ideas before the user. Also he should be able to clarify the issues
raised by the user at the time of presentation.
6) Motivator :
It is the responsibility of the Analyst to motivate the user to use the new
system. It is directly dependent upon how much user participation is given in the
project design and how much efforts are taken to train the user, that the user can be
motivated to use the new system.
7) Politician :
While designing a new system, the analyst should not only think about the
technical side but like a politician, he should keep good relations, good control and
good influences on the people with and around him.

w.e.f. 2009-10
 Feasibility Study and its types :
A feasibility study is a preliminary study undertaken before the real work of a
project starts to ascertain the project's success. A feasibility study is conducted to assist
decision-makers in determining whether or not to implement a particular project or
program. Feasibility Study permits planners to outline their ideas on paper before
implementing them. The feasibility study is useful to evaluate the cost and benefits of
the system requested.
The major aspects in Feasibility Study are as -
1) Technical Feasibility :
Technical Feasibility always focuses on the existing computer hardware,
software and personnel. This includes the need for more hardware or software and
possibility of installing such feasibility.
2) Economic Feasibility :
Economic Feasibility is most frequently used for evaluating the effectiveness
of the system. It is commonly known as cost / benefit analysis, the procedure is to
determine the benefits and savings that are expected from the requested system and
compare with cost. If benefits outweigh costs, the decision is made to implement a
system. Otherwise alternatives are suggested.
3) Operational Feasibility :
It consist acceptability of the system. It checks whether system will be used if
it is developed and implemented, are the users able to handle the system, whether
the proposed system cause any trouble etc. It also considers the special efforts
required to educate, sell and train staff for new system.
4) Legal Feasibility
It is one more aspect in the feasibility study. It includes concerning contracts,
liability, violations and legal other traps frequently unknown to the technical staff.
The feasibility study is carried out by a small group of people who are familiar
with information system technique, knowledge of business parts and are skilled in
system analysis and designed process.

 Fact Gathering Techniques :


Information gathering in large and complex organizations is not an easy task. It
has to be gathered in an organized way so that
 no system details are left out,
 right problems are identified,
 repetitive work is avoided and
 wrong or incomplete details are not collected.
The specific techniques or methods analyst used for collecting data about
requirements are called as fact gathering / finding techniques. They are -
a) Interview b) Questionnaires
c) Record Inspection (Record Review) d) Observation

w.e.f. 2009-10
a) Interview :
This technique is used to collect information from individuals or from groups.
The interview is best method for producing the qualitative information, opinions,
policies, suggestions and problems etc.
The information collected from interview is more valid, accurate and reliable
because it is face-to-face communication and interviewer has flexibility in asking
questions and he can crosscheck the information gathered.
This technique is helpful for gathering information from individuals who do not
communicate effectively in writing or who may not have time to complete
questioning. Interview allows analyst to discover areas of misunderstanding,
unrealistic expectations and indication of resistance to the proposed system.
Interviews are not always the best source for collecting the information
because it takes a lot of time.
 Points to be remembered in conducting the interviews :
a) Put yourself in other man's place and pose your questions. Cultivate the ability
to appreciate his point of view.
b) Maintain a neutral attitude. However, show genuine interest so that other
person can come out with his problems, thoughts and ideas.
c) Let him do the most talking! Listen
d) Ask specifics
e) Notice what he does not say
f) If the interviewer leaves the core subject, bring him back to the track tactfully.
g) Don‟t show you are in a hurry
h) Distinguish between fact and opinion
i) Always be polite, don't be over polite
 General Rules for conducting an interview :
a) Obtain prior permission
b) Prepare one as regards to objectives and methods
c) Put the interviewee at ease.
d) Explain in advance about the subject of the interview
e) Avoid arguments involving too many people at the same time.
f) Do not try to cover too much ground in one interview.

 Types of Interview :
Interviews can be of two types - Structured and Unstructured. Structure
Interviews are used standardized questions in either open response or close
response format. This type uses the set of prescribe answers. Unstructured
interviews allows respondent to answer in their own words.
o Advantages of Structured Interview :
1) Limited interviewer training is needed. 2) Results in shorter interviews
3) Easy to administer and evaluate 4) Ensures uniform wording of
questions for all respondent.

w.e.f. 2009-10
o Disadvantages of Structured Interview :
1) It takes less time
2) Cost of preparation is high
3) Interviewer may not accept high level structure and mechanical style of
questions.
4) High level of structure may not be suitable for all situations
o Advantages of Un-structured Interview :
1) Interviewer has greater flexibility in wording questions to suit the respondent.
2) Interviewer can visit any area that arises spontaneously during paragraph
format answers.
3) May produce information about areas that were not thought to be
important.
o Disadvantages of un-structured Interview :
1) Extra or unnecessary information may be gathered.
2) Take extra time to collect essential facts
3) Analysis of results may be lengthy.

 Difference between the Structured and Unstructured Interview :


Structured Interview Unstructured Interview
Fixed types of questions are asked Different types of questions are asked
Questions are with same wording and Questions are flexible and can ask in
asked in same order to all any order.
It requires deep study and preparation is Questions are connected with last
required, hence initial cost is high question so it does not require deep study
& preparation, hence no initial cost is less
Interview period is limited There is no limit on interview period.
Through is particular information is Unnecessary information may be
collected collected
Requires limited training and easy to Requires extensive training and
train experience for effective result

 Questions :
1) How information has to be gathered in complex organizations?
2) What are the advantages and disadvantages of structured interview?
3) What are the advantages and disadvantages of unstructured interview?
4) Enlist the general rules for conducting the interview.
5) What are the points to be remembered in conducting the interview?
6) Enlist the fact gathering / finding techniques.
7) Why information is gathered in organized way?

b) Questionnaire :
It may be used as a supplement to interviews. Questionnaires are another
way of information gathering where the potential users of the system are given
questionnaires to be filled up and returned to the analyst. This method is useful when
the analyst need to gather information from a large number of people.
w.e.f. 2009-10
If the anonymity (ãäÌãÎÌããÔããÖæãã) of the respondent is guaranteed by
the analyst the respondent answers the questionnaires very honestly and critically.
Questionnaires should be design with clarity of its objective so as to do justice
to the cost incurred on their development and distribution.
 Types of Questionnaires :
Open-response and Close response are the two types of questionnaires.
o Open response :
These types of questionnaires are used to learn about the opinions,
feelings and general experience about the problem. The objective of Open
response questionnaire is to gather information and data about the essential
and critical design features of the system.
Viz. What is your opinion regarding the 'Teachers Strike'?
o Closed Response :
These types of questionnaires contain specific questions and responses,
from which a respondent has to choose the best one. The closed questions can
be of various types and the most common ones are listed below.
1) Fill in the blanks
2) Dichotomous i.e. Yes or No type
3) Ranking Scale Questions - Ask the respondent to rank a list of items in
order of importance or preference.
Viz. Workers on this job ...
____2____ are busy all the time
____5____ have work where they do things for other people
____3____ try out their own ideas
____1____ are paid well in comparison with other workers
____4____ have opportunities for advancement
4) Multiple Choice Questions
5) Rating Scale Questions - These are an extension of the multiple choice
design. The respondent is offered a range of responses along a single
dimension. Viz. (¾ããñؾ㠄¦¦ãÀãÞ¾ãã ¶ãâºãÀËã Ìã¦ãÃß ‡ãŠã¤ã.)
Very Dissatisfied No Opinion Satisfied Very
S.N. Dissatisfied Satisfied
1 The way my job provides for
1 2 3 4 5
steady employment
2 ------ 1 2 3 4 5
3 ------ 1 2 3 4 5
4 ------ 1 2 3 4 5

 Important Points to be kept in mind in designing questionnaires (Procedure


for designing the questionnaire) :
1) Covering letter for highlighting the purpose of study.
2) Decide what data should be collected.

w.e.f. 2009-10
3) Number of questions should be kept to the minimum
3) Decide what type of questionnaire (Open, Closed) should be used?
4) Outline the topics for the questionnaire and then write the questions.
5) Questions should be simple, short and unambiguous
4) Questions of sensitive or personal nature should be avoided.
5) Answers to questions should not require calculations
6) Logical arrangements of questions
7) Cross checks and footnotes
8) Pre-test (try out) the questionnaire to see how well it works
9) Do a final editing to ensure that the questionnaire is ready for administration.

 Advantages of Questionnaires :
1) It is economical and requires less skill to administer than the interview.
2) A questionnaire can be administered to large numbers (Various subject) of
individuals simultaneously.
3) The standardized wording, order of the questions and standardized
instructions for reporting responses ensure uniformity of questions.
4) The respondents feel greater confidence in the anonymity of a questionnaire.
5) With a questionnaire, respondents give opinions without fear that the answer
will be connected to their names.
6) In Questionnaire the respondents have time to think the questions over and
give more accurate data.

 Disadvantages of Questionnaires :
1) It is very time consuming
2) It is slowest method of data collection
3) This does not allow observing the expressions and relations of respondent.

 Difference between Open response questionnaire and Close response questionnaire


Open Response Closed Response
This offers more flexibility and freedom This is more specific in nature
to the respondent
Useful when it is required to explore It is useful when factual information is
certain situation required
This types of questions require a lot of Minimum time for evaluation
time for evaluation

 Questions :
1. Write short note on Questionnaire.
2. What are the advantages of Questionnaire?
3. What are the disadvantages of Questionnaire?
4. List the points to be remembered while designing a Questionnaire.
5. Explain in short the types of Questionnaire.
w.e.f. 2009-10
6. Differentiate the Open response and Close response.

c) Record Review (Record Inspection) :


Record and reports are the collection of information and data accumulated
over the time by the users about the system and its operations.
Records may include -
a) Written Policy Manuals
b) Rules and Regulations
c) Standard Operating Procedures used in the organization
d) Forms and documents
All these are useful sources for the analyst. They describe the format and
functions of the present system
The analyst may scrutinize the records either at the beginning of his study
which may give him a fair introduction about the system and will make him familiar
with it or in the end which will provide the analyst. With comparison between what
exactly is / was desired from the system and its current working.
Following questions may be useful in analysis of forms :
1) Who uses these forms?
2) Do they include all the necessary information?
3) How readable and easy to follow is the form?
4) Is it ideal for analysis & interface?

d) Observation OR On-Site Observation :


Unlike the other fact finding techniques, in this method the analyst himself
visits the organization and observes and understand the flow of documents, working
of the existing system, the users of the system and whether specified steps are
actually followed or not.
Observation provides close view of the working of the real system. System
Analyst observes people, object, documents and occurrences of events. Observation
allows analyst to get information, which they can not obtained by any other fact-
finding technique.
The methods used in obtrusive or unobtrusive, direct or indirect & structured
or unstructured.
Following questions can serve as a guide for on site observation.
1) What kind of system is it? What does it do?
2) Who runs the system? Who are the important people in it?
3) What is the history of the system? How did it get to its present stage of
development?
4) What kind of system is it in comparison with other systems in the organisation?

w.e.f. 2009-10
 Case Study on Questionnaires :
Prepare a questionnaire format asking the people about various problems
occurred in a city expectations for the Municipal Corporation. Questionnaire must have
at least five questions and proper choices to select.
o Solution :
Problem of Citizens and expectations from Municipal Corporation :
Name of the Citizen : ________________ Area of Citizen : _______________
Questions :
Q.1 Are you satisfied with regularly water supply?
Yes  No  Sometimes 
Q.2 Are you facing any problem due to electricity and load shading?
Yes  No  Sometimes 
Q.3 Are you happy with road conditions in city?
Yes  No  Sometimes 
Q.4 Whether you get immediate response to your complaint?
Yes  No  Sometimes 
Q.5 The garbage vehicle comes daily to collect wastage?
Yes  No  Sometimes 
Q.6 Give suggestions to improve better services to citizens

Q.7 Is any problem having you face other than above? If yes list it

 Case Study on Questionnaires :


Prepare a questionnaire format to collect staff information regarding
whether they are satisfied with the work of office in establishment department
Solution :
1. Name of the Employee : _______________________________________
2. Designation : _________________ Department : ___________________
3 Number of years of service _______ years ________ months
4 Whether you get immediate service / response to your work?
Yes  No 
w.e.f. 2009-10
5 How much time is required to get some documents from the office?
Within Hour Within 1 Day 2-3 Days More than 3
days
   
6 Whether you service books are maintained regularly?
Yes  No 
7 Whether you get answers to your queries in short time?
Yes  No  Can't Say 
8 Whether the information is maintained and calculations are correct?
Yes  No  Can't Say 
9 State some difficulties encountered?

10 Which other services do you expect from office / establishment


department?

Date : Signature :

 Software Crises :
Many industries observe have characterized the problems associated with
software development as “Crisis”.
The word Crisis means „time of danger‟ or „great difficulty‟. The word „crisis‟ also
defined as “Chronic affliction”. Affliction means anything causing pain or distress and
chronic means, “long time”.
The term software crises include a set of problems that are encountered in the
development of computer software.

w.e.f. 2009-10
The problems that afflict software development can be characterized from a
number of different perspectives as _
 Schedule and cost estimates are often inaccurate.
 The productivity of software, people hasn‟t kept pace with the demand for their
services.
 The quality of software is sometimes less than adequate (sufficient).
The problems associated with the software crisis have been caused by the
character of software itself and by the failure of the people charged with software
development responsibility.

 Requirements of System Analyst :


While designing a new system, the analyst investigates the current system by in
search of answers of the variety of questions.
1) Which performance controls are used?
2) What type of data are used or produced during the process?
3) What types of problems present in existing system?
4) Which types of controls are used?
System Analyst should identify the background of basic details about the systems
as _
1) What types of steps are performed?
2) Who performs the activities?
3) What is the reason of the business activity?
It gives the understanding of the process.

 User Transaction Requirement :


Transactions are capturing & process data for a specific reason. When analyst
wants to know details about the transaction and requirement of these transactions, he
must ask following questions :
1) Which type of data is stored during transaction?
2) Which types of controls are needed on transactions?
3) How much time is required for processing transactions in existing system?
4) Which type of output are expected from the transaction after processing?
5) What types of details are needed to process the transaction?
6) What type of data is stored and which type of information is generated during the
transaction?

 User Design Requirements :


The information generated by the processed transaction in provided to
management for decision-making. Decisions are made by integrating information in
such way that managers can know what action to take. Decision system may focus on

w.e.f. 2009-10
the existing situation or future situation. So, analyst must ask questions related to
decision requirements such as _
1) Which type of information is used to make the decision?
2) What is the source of information?
3) Which type of transactions produced the data used in the decision process?
4) In which form the information should be presented?
Thus, analyst discovers the relationship between the decision system and
transaction system.

 Distinctions between System for Transaction Processing and Decision Making :


S.N. Transaction Processing System Decision Making System
1 Are well structured Structured by individual
2 Follow clear-cut routines Lack routines
3 Recur frequently Occur irregularly
4 Change infrequently Change continuously
5 Focus on current events Focus on past, present & future
6 Capture & process data Use existing & new data
7 Emphasize details Require summary of details

 System Requirement Specification (SRS) :


The specification document is a contract between client and developer. It
specifies what the product must do and the constraints on the product. It is produced
when the analysis tasks nears completion. A SRS document must satisfy two
requirements.
1) The document must be clear and intelligible to the client who is probably not a
computer expert.
2) The document must be complete & detail because it is the source of information
available to the design team from drawing up the design.

o A SRS must include two types of requirements –


a) Behavioural Requirements :
It defines what the system does i.e. how the inputs are transformed into
outputs.
b) Non-behavioural Requirements :
It defines the attributes of the system as it performs its job i.e. system‟s
required levels of efficiency, reliability, security, maintainability, portability,
visibility, capacity standards and compliance & so on.
o SRS should not include –
a) Project requirements like staffing, schedules, costs, milestones, activities,
phases, reporting procedures etc.
w.e.f. 2009-10
b) Designs
c) Project assurances plans
A review of SRS is conducted by both software developer and customer. The
review is done at 2 levels.
a) Macroscopic level : (Large scale)
It ensures whether specification is complete, consistent and accurate.
b) Microscopic level :
It is detailed level about working of specification.
When review is complete a SRS is signed off both by customer & developer.
 Characteristics of SRS :
A good SRS should be unambiguous, complete, verifiable, consistent,
modifiable, traceable, usable during the operation and maintenance phase.
a) Unambiguous : Every requirement has only one interpretation. A glossary should
be used when a term used in a particular context could have multiple meanings.
b) Complete : A Complete SRS must posses the following qualities _
1) Inclusion of all significant requirements
2) Definition of the responses of the software to all reliable classes of input.
3) Full labeling and referencing of all tables & diagrams and the definition of all
terms
c) Verifiable : Every requirement must be verifiable.
d) Consistent : No set of individual requirements described in the SRS can be in
conflict.
e) Modifiable : The structure and style of the SRS are such that any necessary
changes to the requirements can be made easily, completely & consistently.
f) Traceable : The origin of each requirement must be clear.

 SRS Outline :
The national bureau of standards IEEE and U.S. Development & Defense
proposed the following format of SRS.
I Introduction
A) System Reference
B) Overall Description
C) Software Project Constraints
II Information Description
A) Information Content Representation
B) Information Flow Representation
1. Data Flow
2. Control Flow
III Functional Description
A) Functional Partitioning
w.e.f. 2009-10
B) Functional Description
1. Processing narrative
2. Restriction / Limitations
3. Performance requirements
4. Design Constraints
5. Supporting diagrams
C) Control Description
1. Control Specification
2. Design Constraints
IV Behavioral Description
A) System States
B) Events & Actions
V Validation & Criteria
A) Performance Bounds
B) Classes of Tests
C) Expected Software Response
D) Special Considerations
VI Bibliography
VII Appendix

 Questions :
1) What is requirement determination?
2) What is feasibility study? Explain its types in brief.
3) Explain SRS.
4) Write short note on – (a) User transaction requirement, (b) User design
requirements.
5) Swami Samarth Private Tuition conducts classes of XII students. The In-
charge of the tuition wants to collect feedback from students about teachers
and facilities provided by the tuition. Prepare a questionnaire to collect
information about it. (It must have 5 questions of open ended and 5 questions
of close ended).

w.e.f. 2009-10
CHAPTER – 4
SOFTWARE DEVELOPMENT METHODOLOGIES

 Introduction :
Software Development Methodologies means different software development
methods. Methods are nothing but a process. The concept of process is the heart of
software engineering. Software development is a social learning process. The process
provides the interaction between user and designers, between the users & evolving
tools and between designers & evolving tools i.e. technology.
In other words, a software with ordering constraint among them, such that if the
activities are performed properly & in accordance with ordering constraint, the desired
result is produced.
Software development methodologies are used for computer information system
to produce information needed to take decisions.
The growth of an information system passes through variable identifiable stages
and these stages put together are referred to as SDLC.

 Software Development Life Cycle (SDLC) / Classical Model :


The term „Life Cycle‟ may call as “Implementation Cycle” or “Linear Cycle” or
“Development Cycle”. The SDLC is simply a series of orderly, interrelated activities
leading to the successful completion of set of programs. The periods of time during
which these activities take place are called phases.
System development is an interactive process & it consists of the following
identifiable stages.
1) Preliminary Investigation Preliminary Investigation
2) System Analysis
3) System Design (Specification) System Analysis
4) System Development / Coding
System Design (Specification)
5) System Testing
6) System Implementation & Evaluation
System Development / Coding
7) System Maintenance

System Testing

System Implementation & Evaluation

System Maintenance

SDLC

w.e.f. 2009-10
It is quite likely that while the system analyst is working on a particular stage, he
is also considering possible solutions related to the next phase. There is always a
possibility of coming back from an advanced stage to revise or review the decision taken
in earlier phases.
Preliminary
Investigation

System System
Maintenance Analysis

System System
Implementation Design

System System
Testing Coding

o Preliminary Investigation :
Any person related with system initiates the request, when that request is
made, preliminary investigation starts. This activity has 3 parts _ Request
Clarification, Feasibility Study and Request Approval.
a) Request Clarification :
The initiated request must be examined to determine precisely what the
originator wants, before system investigation starts.
b) Feasibility Study :
This is carried out when there is a complex problem. A feasibility study is
undertaken to determine the possibility or probability of either improving the
existing problem or developing a completely new system.
There are 3 aspects of feasibility study, which should be check _
a) Technical Feasibility :
This determines whether it is possible to develop the project with
available equipment, software technology & manpower. If there is any kind of
need in order to develop software, the cost of hardware, software & technical
equipment are considered.
b) Economic Feasibility :
This considers the benefit of the system & the cost benefit analysis is
done. The cost must include both one time cost & recurring costs.
 One time costs may include –
-- Feasibility study cost
-- The costs for converting from present system to new system
-- Construction or remodeling of computer room / facilities
-- Cost involved in software packages
w.e.f. 2009-10
 Recurring cost may include –
-- Rental or purchase of equipments
-- Salaries of personal
-- Supplies
-- equipment maintenance
c) Operational Feasibility :
After implementation of the system, the training program are arranged
for the users. The cost of training program, space requirement for the system
implementation & other assets are considered.
c) Request Approval :
After requests are approved its cost/priority, completion time & personnel
requirements are estimated & project planning is updated.
o System Analysis :
The activities involved in this phase are as _
a) Definition of the overall system
b) Separation of the system into smaller and manageable parts
c) Understanding the nature, function, interrelationship of various subsystems.
d) Determination of the requirements of a new system
The analyst uses a combination of various tools (review, observation etc.) to
analyze an existing system. This phase is very crucial & time consuming. The output
of this phase is a functional specification report, processing controls, response times
& input and output methods.

o System Design :
This phase defines the way how a system will meet the requirements which
are identified, during system analysis. This phase includes following development _
a) Screen designing,
b) Report designing
c) Output designing
d) Form designing
e) File structure
f) Program specifications / Procedures

o System Development / coding :


This includes writing new, custom designed programs. Excellent programming
skills & experience are required for this.
The activities involved in this phase are as _
1) Breaking the system modules into smaller programs & allocating these programs
to the members of the system development team.
2) Writing programming code in selected programming language.
3) Preparation of documentation for each one of the programs.
w.e.f. 2009-10
o System Testing :
The objective of testing is to find the errors. Testing gives guarantee that
software does not fail and will run according to specification.
The activities involved in this phase are _
1) Checking the individual programs and its logic
2) Checking the quality of the code
3) Checking whether system produced correct & desired results.

o System Implementation & Evaluation :


This phase includes the following activities.
a) Planning & preparing schedule for the implementation
b) Procurement of hardware
c) Installation of software
d) Recruitment of the operating personnel
e) Motivation & training to the selected personnel
f) Conversion of data files from old version
Evaluation of the system is performed to find out the strength & weakness in
the system. Impact on organizations, assessment of user attitudes & development
performance is verified.

 System Maintenance :
After implementation of system, customer may want certain changes in the
system. Therefore, there is a need to have persons to look after the system and
maintain it even during operation & production.
The system maintenance could be because of any of the following reasons _
a) Minor change in the processing logic
b) Errors detected during the processing
c) Revisions of the formats of inputs
d) Revisions of the formats of the reports

 Difference Between System Analysis & System Design :


System Analysis System Design
1 System Analysis is the It is the creator of the information system
examination of the problem which is the solution to the problem
2 It is concerned with identifying all It is concerned with co-ordination of the
the constraints & influences activities, job procedure equipment
utilization to achieve system goals
3 It deals with data collection & a It deals with general design specification,
detailed evaluation of present detail design specification, output, input files
system & procedures. It also deals with program
construction, testing & user acceptance.
4 It shows logical model of the It provides technical specification & reports
system through data flow diagrams with which the problem can be tackled.
& data dictionaries
w.e.f. 2009-10
 Water Fall Model :
This model is the first model of the software life cycle was introduced by Winston
Royce in 1970. It is also called as Classical Life Cycle / Linear Sequential Model.
In waterfall model the process is structured as a waterfall of phases where the
output of one phase is the input to the next one. Each phase is structured as a set of
activities that might be executed by different people concurrently (acting together).

Preliminary
Investigation

Requirement
Analysis

System
Design

System
Coding

System
Testing

Implementation
& Evaluation

Maintenance

Waterfall model prescribes a sequential, linear flow among phases outputs of


each phase must be produced using standards. If output of any phase is wrong it may
affect the subsequent phases. Waterfall model is also useful to measure the progress of
the project, as it is easy to check whether a certain output is delivered exactly on the
date when it was expected.
1) Preliminary investigation :
The requirements of all system elements and then allocate some subset of
those requirements to software.
2) Requirement Analysis :
The system analyst must understand the information domain for the software
as well as the required function, performance and interfacing.
3) System Design :
The design process translates requirement into a representation of the
software that can be assessed for quality before coding begins.

w.e.f. 2009-10
4) System Coding :
The design must be translated into a machine readable form
5) System Testing :
This process focus on the logical internals of the software and functional
externals
6) Implementation & System Maintenance :
Implementation includes the activities like planning and preparation of
schedule for the implementation, hardware checking, installing software etc.
System should be maintained properly because of any of the reasons. Errors
detected during the processing, revision of data input and report formats.

 Advantages / Strengths :
o The waterfall model is easily understood & easy to explain to the user
o Stages and activities are well defined
o Helps to plan and schedule the project
o Verification at each stage ensures early detection of errors
 Disadvantages / Weakness :
o The documentation is also a disadvantage because the user does not understood
and cannot contribute properly during any change.
o The waterfall model assumes that the requirements of a system can be frozen
(i.e. baseline) before the design begins. This is possible for systems designed to
automate an existing manual system. But for absolutely new system, determining
the requirements is difficult, as the user himself does not know the requirements.
o Freezing the requirements usually requires choosing the hardware. The large
project might take a few years to complete. If hardware is selected early, then
due to the speed at which hardware technology is changing, it is quite likely that
the final software will employ a hardware technology that is on the verge of
becoming obsolete.
o Waterfall model is easy to understand but difficult to follow particularly in projects,
which require fast results.

 Spiral Model :
The spiral model was originally proposed by Boehm in 1988. It is also called as
'Risk Management' or 'Process Model'. Each software process is a sequence of
activities with some backtracking from one activity to another the process is represented
as a spiral. Each stage is in the spiral represents a phase of the software process. The
spiral model is useful in the following situations.
 When development of a project starts it may be possible that work may not be
stopped due to any reason. If such situation arises what step must be taken to solve
such problem should be known.

w.e.f. 2009-10
 Which path should be followed for a particular procedure must be known in advance
to the development team. Because of this work will not be stopped in the middle.
 This model guides the risk in the project. Risks are concerned with the future. The
spiral model is useful for identifying and eliminating high risk problems in process
design.
The spiral model contains four stages and each stage is represented by one
quadrant of the Cartesian diagram. The radius of the spiral represents the cost incurred
so far in the process.
1) Planning :
It required defining resources, timelines and other project related information.
It also determines the objectives, alternatives and constraints of the portion of the
product under consideration.
2) Risk Analysis :
It required to assess both technical and management risks.
3) Engineering :
It involves developing and verifying the next level product. It includes
construction, testing, installation and providing user support.
4) Customer Evaluation :
It required obtaining customer feedback based on evaluation of the software
representation created during the engineering stage and implemented during the
installation stage.
The spiral model provides a realistic approach to the development of large-scale
systems and software. The software made as per the customer satisfaction. It provides
maximum customer satisfaction from the final product.

 Prototyping Model :
The goal of this model is to counter the limitations of the waterfall model.
Prototyping is a process that enables the developer to create a working model of an
information system application. It gives just idea of the system. It does not contain all
features or perform all the necessary functions of the final system. Customer evaluates
the prototype and then suggests what changes needed in the system.
It does not require lot of cost to build. It can prepare by pen and pencil or
computer software like screen generators, report generators and application generators.
Prototyping is a user-friendly interactive process.
Prototype is useful when _
 The requirements are difficult to specify in advance.
 The requirements may change significantly during development
 A totally manual system is proposed
 The ideas and assumptions about a new system are to be experimented quickly by
the user at less cost.

w.e.f. 2009-10
o Steps in Prototyping :
1) Identify the user's basic requirements and the features needed in the system
2) Develop a working model
3) Give it to user; user uses the prototype nothing to needed enhancement and
changes, which expands the list of system requirements.
4) Revise the prototype based on information gain through user experience
5) Repeat these steps as needed to achieve a satisfactory system, means features
meet with user's requirements.
After examine the prototype model by users one of the following alternative is
selected.
a) The prototype is selected
b) The prototype is redeveloped
c) The prototype implemented
d) The project is cancelled
e) Another prototype series is beginning.
Following is the comparison between Classic Model with Prototyping _
Requirement Design Coding Implementation Testing User Acceptance
Analysis Test

Error Detection
Conventional Method

Requirement Prototype User Design Coding Implementation


Analysis evaluation

Error Detection
With Prototyping

o Benefits of Prototyping Model :


o Missing user services and non-user friendly (difficult to use) services may be
identified.
o Misunderstanding between software developer and user may be identified as the
system functions are demonstrated.
o It saves time in system development
o Encourages the communication between developer and user
o System can be delivered within proper time and delays are minimized.
o As prototypes are developed quickly, demonstration to the management is
possible for checking feasibility and usefulness of the application.

w.e.f. 2009-10
o Tools for Prototyping : There are 3 tools _
1) Screen Generators :
Automatic input validations are prepared. It is useful to show the location
of data entry field, display fields, headings of columns, labels, messages, colors,
fonts etc.
2) Report Generators :
Some records are extracted from the existing database and show the
appearance of the output.
3) Application Generators :
There are software programs that permit the specification of an entire
application at a very high level. They provide the capability to develop
applications that accept input, validate data, perform calculations, interact with
files and produce outputs.
o Advantages of Prototyping :
 Users are actively involved in the development
 It provides a better system to users, as users have natural tendency to change
their mind in specifying requirements
 Users get a better understanding of the system being developed.
 Errors can be detected much earlier as the system is made side by side.

o Disadvantages of Prototyping :
 Practically, this methodology may increase the complexity of the system as scope
of the system may expand beyond original plans.

o Prototyping Flowchart :
Requirements Gathering
& Refinement

Develop Working
Model

Customer Evaluation

Review Prototype Yes

Is it
Is it No necessary No Abandon
Satisfactory to Process
redevelop
Yes

Implement Prototype

w.e.f. 2009-10
Q. What are the advantages of problem identification in SDLC?
A. Following are the advantages of problem identification in SDLC
 It helps in problem solving,
 Setting proper goals,
 Determines the boundaries of the project

Q. What is Software Development?


A. Software development is the interactive process. It is a set of activities
together with ordering constraint among them such that if the activities are performed
properly and in accordance with the ordering constraint the desired result if produced.

Q. Which tools are used for prototyping?


Q. What are the benefits of prototyping?
Q. With suitable diagram describe prototyping model.
Q. Explain the Spiral Model.
Q. With suitable diagram describe waterfall model
Q. What do you mean by software methodologies?
Q. What are the steps involved in SDLC? Explain in brief.

w.e.f. 2009-10
CHAPTER – 5
ANALYSIS & DESIGN TOOLS

 Entity Relationship Diagrams :


An E-R diagram is a graphical representation of entities, associations and data
elements for an organization. This is a tool used to show the data entities, their
relationship and attributes or properties in graphical form.
The E-R data model uses a few basic concepts in producing an E-R diagram.
They are 1) Entities 2) Relationships and 3) Attributes

1) Entity / Entities :
An entity is an object that exists and has distinguishing features for
identification from other entities. An entity is a thing in the real world with an
independent existence which plays a specific role in the system being developed.
Viz. person, Place, things, Documents, Student, Account etc
Student is an entity with attributes (properties) _ roll_no, name, class etc. and
it is uniquely identified.
o Entity Set :
Entity Set is a set of entities of the same type that share same properties
or attributes. Entity sets need not be disjoint.

2) Relationship :
A relationship is a meaningful association or connection between entities. An
entity is represented by rectangular box and relations are represented by diamond
box.

Teacher Advice Student

o Types of Relationship :
The relation between entities may be
1) One – One relation :
1 1
Employee is identified by Employee No.

 Other examples are


 State – Capital
 Country – Population
 College – Principal
w.e.f. 2009-10
2) One – Many Relationship :
1 M
Manager manages projects

 Other examples are


 Classroom – Students
 College – Students
 Company – Employee

3) Many – One Relationship :


M 1
Student Admitted to Class

 Other examples are


 Vice-principals – College
 Railway stations – City
 Employees – Department

4) Many – Many Relationship :


M M
Student Chooses Subjects

 Other examples are


 Students – Subjects
 Movie – Actor
 Company – Person

3) Attributes :
An attribute is any aspect, quality and characteristics of either an entity or a
relationship. An attribute tells what an entity is, entity has, entity contains or the entity
does.
Each attribute has a domain from which the values for this attribute are drawn.
Following are the types of attribute.
1) Simple & Composite Attribute :
Simple attributes can not be divided into subparts, but composite attributes
can be divided into subparts.
Example : Student_no – simple

w.e.f. 2009-10
Student_name – composite because it may further divided into fname, mname
and lname.
2) Single valued & multi valued attributes :
Single valued attribute has single value for a particular entity. Multi valued
attribute has a set of values for a specific entity.
Viz. Roll_no – Single
Account_no – Multi valued because there may be more than one accounts of a
person.
3) Null Attribute :
It is used when an entity does not have a value for an attribute.
4) Derived Attribute :
The value for this attribute can be derived from the values of other related
attributes or entities.

 Entity Dependency :
There are two types of dependency :
1) Existence Dependency :
One entity is unable to exist in a database. Unless the other is first present.
So the existence of the second entity depends on the existence of the first. For
example, orders cannot exist unless there is a customer.
Deleting records from one entity may cause deleting records from other, if
existing dependency is present. For example, if some customer records are deleted
then the orders placed by that customer will also be deleted.
2) Identification Dependency :
An entity cannot be uniquely identifies by its own attributes. Identification is
done only through an entities relationship with other entities. For example, streets
are unique within cities and cities are unique within states. So we should know both
street and city or city and state to identify the place entity.

 Components of E-R diagram / Symbols of E-R diagram :

1) Rectangles : Represent entity set

2) Ellipses : Represent attributes

3) Diamonds : Represent relationship set

4) Lines : Link attributes to entity sets & relationship


sets

5) Double ellipse : Represent multi-valued attribute


w.e.f. 2009-10
6) Dashed ellipse :: Represent derived attribute

7) Double Lines : Indicate total participation of an entity


in a relationship set

8) Double Rectangle : Represent weak entity set

 Steps to draw E-R diagram :


1) identify the entities
2) Identify the attributes of each entity
3) Identify the relationships between the entities
4) Draw a rough draft of E-R diagram
5) Map data elements to entities

 During analysis of the system it is very important to check all possible relationships
between entities. If some relationships are not considered (missed) then there is
possibility of omitting something in system. To avoid this following procedure is followed
during analysis _
1) Find out all entities (Say n)
2) Check whether first entity is related with all the (n-1) entities
3) Check whether second entity is related with other (n-1) entities
4) Continue this till all entities are considered

 Example or Case Study :


University designs various courses. Students register for these courses. These
courses are conducted at various centers. Students select appropriate center as per
their choice. After register to the center every center may form batches of the student.
Draw E-R diagram.
Solution :
 Entities : University, Course, Student, Center, Batch
 Relationship between one entity with other :
1) University to Course (one to many)
2) Student to Course (many to many)
3) Student to Center (many to many)
4) Center to Batch (one to many)
 From problem description we see that
1) Each department has exactly one supervisor
2) A supervisor is in charge of one and only one department
3) Each department is assigned at least one employee
4) Each employee works for at least one department
w.e.f. 2009-10
5) Each project has at least one employee working on it
6) An employee is assigned to 0 or more projects.

 E-R diagram
1 M
University Design Course Conducted

M M M
Student Register Center
M 1

Forms

M
Batch

 Example or Case Study :


A company has several departments. Each department has a supervisor and at
least one employee. Employees must be assigned to atleast one, but possibly more
departments. At least one employee is assigned to a project, but an employee may be
on vocation & not assigned to any projects. The important data fields are the names of
departments, projects, supervisors and employees as well as the supervisor &
employee number & a unique project number.
Solution :
Department, Employee, Supervisor & Project
Here one is tempted to make company an entity, but it is a false entity because
it has only one instance in this problem. True entities must have more than one
instance.

Relationships :
Department Employee Supervisor Project
Department Is assigned Run by
Employee Belongs to Works on
Supervisor Runs
Project uses

w.e.f. 2009-10
1 1
Department Run by Supervisor
M

is
assigned

M M M
Employee Works on Project

w.e.f. 2009-10
 Decision Tree & Decision Table :
A tool is an any device, object or operation used to accomplish a specific task.
There are 3 tools for documenting procedure.
1) Decision Tree 2) Decision Table & 3) Structure English
While designing the system there are several conditions in different topic and for
all though condition there are some action. Actions are alternatives the steps activities
or procedure that an individual may decide to take when confronted with a set of
condition, the actions can be quite simple in some case and extensive in others. Actions
can also relate to quantative conditions. Analyst must consider the combination of
conditions and actions.
In fact decision trees and decision tables are means of expressing process logic.
They may therefore, be used in conjunction with or in place of flow charts or pseudo
code.

o Decision Tree :
A decision tree is a diagram that presents condition and action sequentially
thus shows which condition is consider first, which second & so on. Decision trees
are also a method of showing the relationship of each condition and its possible
actions.

Condition action
condition
root condition action
condition action
condition
condition action
Decision Tree Strucutre

Decision Tree is a diagram that presents conditions and action sequentially


and thus shows condition to be considered first and which condition is second and
so on. It is also a method of showing the relationship of each condition and its
corresponding actions.
The root is the starting point of decision tree and progress is from left to write
along a particular branch is the result of making series of decisions. Decision tree is
suitable when number of actions and conditions are less.

o Decision Concept :
1) Conditions :
Conditions are nothing but the possibilities that may occur in a given
system.
2) Action :
w.e.f. 2009-10
After the determination of conditions the analyst decides, what should be
done when a particular condition occurs. Thus, actions are nothing but the steps,
alternatives, procedures to be taken in case a given condition occurs.

o Benefits of Decision Tree :


1) Through system study :
The decision tree forces the analyst to study thoroughly all the conditions
and actions. This ensures that the information is not interpreted wrongly and no
point is missed out.
2) Maintain Decision Sequence :
The decision tree also ensures that the sequence of decisions is properly
maintained by the analyst.
3) Easy to understand :
Since the decision tree is a pictorial representation, it is very easy to
understand. This eliminates the possibility of ambiguity.

o Problems with Decision Trees :


Decision Tree may not always be a best tools for decision analysis. The
decision trees growth for complex system in which many sequences of steps and
combinations of conditions is uncontrollable. A large number of branches with many
path always confused the analyst rather than helping.

o Problems :
A Co-operative bank xyz will grant loans under the following conditions :
1) If a Customer has an account with the bank and has no loan outstanding, loan
will be granted.
2) If a customer has an account with the bank but some amount is outstanding from
previous loans, then loan will be granted if special management approval is obtained.
3) Reject loan applications in all other cases.
Solution :
No Reject
Customer
has a/c. Cust. has no dues Sanction
Yes

Mgt. Appr. Sanction


Cust. has dues
No Mgt. App. Reject

o Problems :
Material is issued to the department by considering whether the material
requisition note (MRN) is signed or not, it contains valid items or not and it is given
within 8 hours or not. Draw a decision tree for this problem.

w.e.f. 2009-10
Given within Issue material
8 hours
Valid items
MRN is
Signed not given within Do not issue material
8 hours
Invalid items Do not issue material

MRN is Do not issue material


Not Signed

o Problems :
ABB Co. Ltd. decides to give Diwali bonus to all employees for which the
management has divided the employees into 3 categories namely Administrative
Staff (AS), Office Staff (OS), Workers (W) & considered the following rules.
1) If the employee is permanent & in the AS Category the amount is 3 months
salary.
2) If the employee is permanent and in the OS Category the bonus amount is 2
months salary.
3) If the employee is permanent and in the W category the bonus amount is one
month salary.
4) If the employees are temporary then half of the amount is given to them as per
the permanent employee's bonus amount.

Permanent 3 months salary


Admi. Staff
Temporary 1.5 months salary

Permanent 2 months salary


Off. Staff
Temporary 1 month salary

Permanent 1 month salary


Workers
Temporary 1/2 months salary

 Decision Table :
A DT is a visual means for showing how a rule or set of rules applies to
respective situations. The decision table is a tool of the programmer & the systems
analyst. It can be used either as a substitute for the flowchart or used to supplement the
flowchart.
When the solution to a problem involves substantial logical decisions, the various
conditions and possible actions involved can be represented in the form of a table. This
table is known as decision table.
The decision table is made up of 4 parts. Its general form is as _

Condition Statement Condition Entries Condition Stub

Action Statement Action Entries Action Stub

w.e.f. 2009-10
o Condition Stub :
1) Condition Statement - Refers to conditions
2) Condition Entries - Values that apply to a condition

o Action Stub :
1) Action Statement - Refers to steps that can be followed on occurrence of a
condition.
2) Action Entries - Specifies the action to be taken when a particular condition is true.

 The Physical Layout of a Decision Table :


Header (H) Rule (R) Identifiers
R1 R2 R3 ... Rn
Condition
Statements (CS) or Condition Entry Stub (CE)
Condition Stub
Action Statements Action Entry Stub (AE)
(AS) or Action Stub
Notes : (NB)

 Types of Decision Tables :


Decision tables are mainly of two types
1) Limited Entry Decision Table
2) Extended Entry Decision Table

1) Limited Entry Decision Table :


In a limited entry table, the entries give simple 'Yes' and 'No' answers to condition
and action statements. for each condition in the condition stub, if the answer is
limited to only Yes (Y) or No (N) or irrelevant (-) in the condition entry then it is
limited condition entry decision table.
Similarly,
For each action in the action stub, if the answer is limited to only x (applicable) or -
(blank) in the action entry then it is limited action entry decision table.

2) Extended Entry Decision Table :


In an extended entry decision table, the statements made in the stub portions are
incomplete. Both the stub and entry portions of any particular row in the table must
be considered together to decide if a condition or action is relevant to a given rule.
An extended condition entry is either descriptive or in quantified form.
Here Y and N are replaced by action entries. Entries contain more detailed
information.
MRN Signed Signed Signed Not Signed
Items Valid Items Valid Items Invalid Items
Valid or
Invalid Items
Duration Within 8 Hrs. Not within 8 Within or Not Within or Not
hrs within 8 hrs. within 8 hrs.
Action Issue material Do not issue Do not issue Do not issue
material material material
w.e.f. 2009-10
There are other two types of decision table :
1) Mixed Entry Decision Table
Combination of limited entry and extended entry forms mixed entry decision
table.
MRN Signed Signed Signed Not Signed
Items Valid Items Valid Items Invalid Items --
Duration Within 8 Hrs. Not within 8 hrs -- --
Issue Material X
Not Issue X X X
Material

2) Else Entry Decision Table


if for many conditions, action is same then form is used. Due to else form we
may reduce redundancies in action and hence reduce number of columns.
MRN Signed Signed
Items Valid Items Valid Items
Duration Within 8 Hrs. Not within 8 hrs
Issue Material X
Not Issue Material X

 Data Flow Diagrams (DFD) :


Data Flow Diagram is a graphical tool for defining systems inputs, process and
outputs. It represents flow of data through the system. The DFDs are used in Modern
methods of system analysis. They are simple to the extent that the types of symbols and
rules are varying few: DFDs serve two purposes
1) Provide a graphical tool, which can be used by the analyst to explain his
understanding of the system to the user.
2) They can be readily converted into a structure chart, which can be used in design.
The use of DFDs as modeling tools was popularized by De Marco (1978) and
Gane and Sarson (1979) through their structured system analysis methodologies.
o Symbols used in DFDs :
1) Process : Here flow of data is transformed. Viz. Update Item file, verify roll no etc.
Yourd on Gane & Sarson

Process No.

Process Name

2) External Entity : A source or destination of data, which is external to the system Viz.
Student, Item, Purchase order.

Entity Name

w.e.f. 2009-10
3) A Data Flow : It is a packet of data. It may be in the form of a document, letter etc.
Viz. Valid Student Number, verified purchase order etc.

4) A Data Store : Any stored data but with no reference to the physical method of
storing Viz. Student, Item
Data Store No
Data Store Name

The process represented by a circle is also known as "Bubble". Hence DFDs are
sometimes referred as Bubble Diagrams.

o Thumb Rules used Construction of DFD :


The following thumb rules may be used while constructing DFDs.
1) Processes should be named and numbered for easy reference.
2) The direction of flow is from top to bottom and from left to right data traditionally flow
from the source (upper left corner) to the destination (lower right corner) although
they may flow back to the source.
3) When process is exploded into lower level details, they are numbered.
4) The names of data stores, sources and destinations are written in capital letters.
Process and data flow names have the first letter of each world capitalized.

 Advantages of Data Flow Analysis :


1) Easy to Understand :
Since the DFD uses graphical technique to represent data flow, it is
easily understood by users and business person.
2) Participation of Users :
The users, clients are involved in the study of DFD. This helps in getting
suggestions from them. Accurate information about business activity
procedures can be received from them. This results in avoidance of mistakes
in the early stages resulting into good quality system at the end.
3) Concentration on Specific Areas :
Analyst can concentrate in specific areas where more study is needed
and get more details of that area. He examines the data flow, transformation
of data and storage in depth.
4) In-depth Study of Processes :
Each process can be studied in-depth by the analyst. He can
investigate the details of the process by developing the lower level of the
same process.

w.e.f. 2009-10
 DFD Types :
1) Logical DFD :
The DFD that show "What is going on" is a logical DFD. These shows
data, process and events those are abstractly than physical DFDs. Logical
DFDs shows an implementation - dependant view of the system. Logical
DFDs help to get a clear idea of what the system has to achieve without
getting into details.
2) Physical DFD :
The DFDs that show "How it is going on" is a physical DFD. These
DFDs shows how things happen and which are the actual physical
components involved. Physical DFDs shows the physical elements like
people, reports, documents etc. Physical models are easier to visualize,
hence analyst begins with physical DFD before converting it to logical DFD.

 Development Procedure of DFD :


In DFD's, some of the diagrams provide an overview of the major process
while other diagrams (lower level) give more details about the process i.e. which
data element, data stores are used and the processing steps of the activities.
Levels of DFDs can be compared to highway and street maps. First use a
National map, showing highways and cities, as users are near to city he needs a
more detailed map, showing the major parts of city and the access roads. When
he reaches the specific area he wants the detailed street map which shows
important landmark.

Data flow diagrams are used in same way :

0 Context Level

1 2 3 N 1st Level

1.1 1.2 1.N 2nd Level

1.1.1 1.1.2 3rd Level

 For Drawing DFDs :


1) Identify the external entities involved. These are usually logical classes or things or
people, which represent a source, or destination of transactions. Viz. students,
members, customers etc.
2) Identify the inputs and outputs of the system
3) Start drawing DFD's with external entities, then the data flows, processes with proper
sequence and data stores which required.

w.e.f. 2009-10
4) Give proper and unique numbering to the processes. To avoid mistakes in
numbering you may give numbers to process after final draft is prepared.
5) Give names to data flows, data stores, processes source and destination entities,
which are self - explanatory
6) Avoid crossing of lines, this may increase complications to read a diagram.
7) Draw a system that never started and will never stop. Processes from a system
should always be ready to function or perform a task.
8) Elaborate the processes using next level diagrams to reduce complexity.

 Difference between Physical DFD and Logical DFD :

Physical DFD Logical DFD


This is more realistic and This is more logical in format. It is more
implementation oriented. The PDFD abstract than PDFD and less dependents on
are more detailed in nature implementation steps.
Process names include the name of Process names describe the work done
the processor i.e. person, without referring to e.g. Account receivable,
department, computer system etc. Order processing etc.
Data Flow names includes the Data flow names describe the data they
implementation facts as names, contain. They do not refer to the form or
numbers, media, timing etc. document on which they reside.
Data stores identify their computer Many times the same data store may be
and manual implementation shared by many subsystems and processes

 Context Level Diagram :


The top level diagram is called a context diagram. Context diagram contains
single process, but it plays a very important role in studying the current system. Content
level DFDS are also called as 0th level DFD.
Context diagrams are constructed to show the highest level model of the system.
This is the most general or broadest picture of the current system. They are used to
represent the scope or boundaries of the system. Their purpose is to identify what is to
be included in the area under study. Context diagram gives a broad overview of the
system under study.

o Example of Context Level DFD :


Consider a system for sports club. This sports club gives facilities of various
sports and Jim to more than 15 years old students.
The students first have to fill an application form containing details like name,
address, birth date certificate and college name / office name, parents name, four
identity size photographs, medical certificate and details of sports he / she interested to
play. After getting admission he / she pay fees to sports club. Sports club then issue
I-card and sports facilities to person. Draw a Physical and Logical data flow diagram for
it.

w.e.f. 2009-10
Application form,
Birth certificate I-Card, Fee Receipt
APPLICANT MEMBER
Medical cer. 0.0 Sports faciliteis

Photograph, Fees Sports


Club
System
MANAGEMENT Fee Structure, Reports MANAGEMENT

Physical Context Level Data Flow Diagram

Application Details
Certificate Details I-Card, Fee Receipt
APPLICANT MEMBER
Fees Details 0.0 Facilities Details

Photograph, Sports
Club
System
MANAGEMENT Fee Det., Sports Reports MANAGEMENT
Det.
Logival Context Level Data Flow Diagram

o Example :
Draw a context level diagram for the following
Rajebahaddar hospital is one of the famous hospitals in the city, which gives services to
the patients. Hospital employees various doctores, nurses and other staff members.
Some doctors are also working as visiting doctors.
Patients are categorised as inpatient and outpatient. Inpatients get admitted in the
hospital in a ward like general, semi-special and special as per the choice. Inpatients get
daily treatment by the doctor, which is recorded. During patient also gets various
services offered by the hospital.
When inpatient gets discharge, the bill is prepared as per the charges given by doctor
services utilized. After paying the bill, patient gets discharge.

w.e.f. 2009-10
Admission, Bill, Patient History Services, Ward Det. Treatment,
PATIENTS 0.0 PATIENTS
Discharge Det.

Emp. Det., Services Hospital


EMPLOYEES Mgt. Payment Det. EMPLOYEES
System

V.Doc. Det., Treatment Payment, Patient Det.


VIS. DOCTORS VIS. DOCTORS

o Example :
Draw a context level diagram for Food Ordering System.

w.e.f. 2009-10
 Data Flow Analysis :
During development of the system, analyst has to study various activities
involved in the system. In these activities different types of data is used and processed.
DFA is used to show the data flow in various activities. In DFA graphical / pictorial tools
are used to show the logic of various processes. Using DFA, it becomes very easier to
understand the flow of data & logic of the system for the maintenance engineer.
DFA contains following tools :
a) DFD b) Data Dictionary
c) Data Structured diagrams d) Structure charts
The first 2 are developed during requirement analysis, while the remaining two
are useful in system design.
 Data Dictionary (DD) :
DFD's themselves not describe all details about data flows. For this an
additional tool is used to support DFDs, which is called Data Dictionary. DD provides
additional information about the system. DD is called as a catalog or central
repository.
DD is an analysis tool that primarily records the information content of data. It
stores definitions of all data mentioned in DFD & in a process specification.
o Components of Data Dictionary / Data Items :
The three levels that make up the hierarchy of data is as follows :

Smallest unit of data Data Elements

Group of data elements Data Structure

Group of data structure Data Flow Data Store

1) Data Element :
This is the smallest unit of data which can not be meaningfully
decomposed further is called a data element. Viz. date : mm/dd/yy, similarly,
customer number, quantity ordered, unit of measurement etc.

2) Data Structure :
A group of data elements handled as a bunch is a data structure. Viz. Data
structure of 'INVOICE' consists of a group of data elements such as date of
invoice, vendor, vendor address, item details etc.

3) Data Flows & Data Stores :


Data flows are data structures in motion, the process from which data flow
is coming and process to which data flow is going should be indicated.
Data stores are data structures at rest. Data stores may be files,
databases etc. In case of data stores inbound and outbound data flows need be
indicated.
w.e.f. 2009-10
o Organization of Data Dictionary / Format of Data Dictionary:
Data Dictionary is organized into 6 sections.
1) Data Element 2) Data Structure 3) Data Flow
4) Data Stores 5) Data Processes 6) External Entities

1) Data Elements :
These are the filed or the attribute associated with entities. Data Element
contains following format :
DATA ELEMENT
DESCRIPTION
TYPE
LENGTH
ALIASES
RANGE
LIST OF SPECIFIC VALUES (If Any)
DATA STORE
REMARKS

Explanation :
DATA ELEMENT To distinguish an item, a meaningful name is given
to the data parameter is called data name. Viz.
studid
DESCRIPTION Data description precisely states what the data
item represents in the system. Viz. studid means
student identification number
TYPE It identifies the type of data i.e. whether it is
numeric, character, date etc.
LENGTH It represents the amount of space required for the
data item. Viz. studid - numeric - 4 means it stores
numbers upto 9999
ALIASES Additional name given to data item are called as
Aliases. Viz. studid is also referred as stud_no
RANGE It gives the information about the lowest & highest
possible value stored in the data item. Viz. studid
stores value from 1 to 9999.
LIST OF SPECIFIC VALUES (If Any) With data item some additional prefixes are added
called as data values Viz. Item code in stores
system
FM001 : Finished Material; FM002 : Semifinished
Material
DATA STORE This is the location of data element
REMARKS It is the explanation of data element name

 Case Study Problem :


List the data elements, data stores, data flows and processes and external
entities of College Payroll System.
1. Data Elements 2. Data Stores
w.e.f. 2009-10
1) Employee Number D1 Emp_Master
2) Employee Name D2 Attendance
3) Date of Birth D3 Current Payroll
4) Sex D4 Leave Record
5) Date of Joining D5 Leave Summary
6) Department. D6 Deduction Details
7) Grade D7 Arrears Data File
8) Basic D8 Printed Pay Register
9) DA D9 Salary Summary File
10) HRA D10 Gross Earning File
11) CCA D11 Deduction File
12) GPF D12 Earnings Details
13) PPF
14) PTAX 3. Data Flows
15) LIC DF1 Leave Application
16) CTD DF2 Pay Slip
17) ITAX DF3 Bank Statement
18) GPAY DF4 Dues Details
19) TDeduction DF5 Arrears Payment Details
20) Net Pay DF6 Earnings Details
21) Bank A/c No. DF7 Deduction Details
22) Addr-1 DF8 Current Payment Details
23) Addr-2 DF9 Old Arrears Information
24) City
25) Pin
26) Tel_no.

4. Processes 5. External Entities


1.0 Prepare Attendance and Leave Statement 1. Bank
1.1 Verify Muster 2. Employee
1.2 Verify for sanction of leave 3. Accounts Department
1.3 Prepare leave record
1.4 Prepare leave summary report
2.0 Prepare Payroll Register
2.1 Calculate Current Pay
2.1.1 Calculate Earnings
2.1.2 Calculate Deductions
2.1.3 Calculate Net Pay
2.2 Print Pay Register and Payslip
2.2.1 Print Pay Register
2.2.2 Print Payslip
2.3 Prepare Salary Summary Book
2.4 Calculate Arrears
2.4.1 Calculate DA Arrears
2.4.2 Calculate Arrears due to promotion
2.4.3 Calculate Arrears due to revision of pay
3.0 Prepare Bank Statements and Deduction Report
3.1 Print Payment Sheet and Deduction Sheet
3.2 Print Arrears Payment Sheet

♣ Prepare Data Dictionary entries for the Data Elements :


w.e.f. 2009-10
i) Employee Number ii) Employee Name iii) Bank A/c No.
i) Employee Number
DATA ELEMENT : Employee Number
DESCRIPTION : A unique permanent number assigned to each
employee
TYPE : AN
LENGTH : 5
ALIASES : EN, Emp, No
RANGE : 001 to 999
LIST OF SPECIFIC VALUES (If Any) : Valid category Meaning
Prefixes
ST Sr. College Teacher
JT Jr. College Teacher
OS Office Staff Sr. College
OJ Office Staff Jr. College
DATA STORES : Employee Master, Current Payroll
REMARKS : Process 2.0, 3.0 EN includes 3 digit number &
the category prefix. Viz. ST022

ii) Employee Name


DATA ELEMENT : Employee Name
DESCRIPTION : Employee Name consists of First Name, Middle
Name & Surname
TYPE : A
LENGTH : 45
ALIASES : EName
DATA STORES : Employee Master
REMARKS : First 15 characters for Fname, next 15 for Mname
& so on. Occurs in processes 1.0, 2.0, 3.0

iii) Bank A/c No.


DATA ELEMENT : Account No.
DESCRIPTION : A unique permanent number allotted by the Bank
to employee's S.B. A/c.
TYPE : AN
LENGTH : 5
ALIASES : Saving Bank A/c No. SB A/c No.
DATA STORES : Employee Master
REMARKS : First 15 characters for Fname, next 15 for Mname
& so on. Occurs in processes 1.0, 2.0, 3.0

2) Data Structure :
Data Structure is based on sequential relationship among the data item. It will
give information about the information of the data item.
w.e.f. 2009-10
Viz. PRN = year of admission + college code + course code + sequence number + male/female

3) Data Flow :
Data flow indicates through arrow. It is actual flow of data from one process to
another. The format of Data Flow is as follows :
DATA FLOW NAME
DESCRIPTION
FROM PROCESS
TO PROCESS
COMPOSITION

Explanation :
DATA FLOW NAME Member details
DESCRIPTION Details of members of the Library
FROM PROCESS Member (Entity)
TO PROCESS Issue process member (Data Store)
COMPOSITION List of data flows

Example :
Write a sample data dictionary entry for data flow - Current Payment details.
DATA FLOW NAME Current Payment Details
DESCRIPTION Gives details about earnings, deductions and net pay for a month
FROM PROCESS 2.1
TO PROCESS 2.2
COMPOSITION Current earning details, current deduction details, Net pay

4) Data Stores :
Data stores are indicated the files of the system or the registers of the manual
system.
The format of Data Store is as follows :
DATA STORE NAME
DESCRIPTION
DATA FLOW IN
DATA FLOW OUT
PHYSICAL ORGANIZATION (ACCESS)
VOLUME OF TRANSACTION

Example :
Write a sample data dictionary entry for data store - Arrears file.
DATA STORE NAME Arrears File
DESCRIPTION Arrears details
DATA FLOW IN DA arrears (2.4.1), arrears due to
promotion (2.4.2), arrears due to revision
of pay (2.4.3)
DATA FLOW OUT Arrears payment details
VOLUME OF TRANSACTION 1 in a month

5) Data Processes :
w.e.f. 2009-10
Every process has some input and provides some output.
The format of Data Process is as follows :
PROCESS NAME
DESCRIPTION
INPUT TO THE PROCESS
OUT FROM THE PROCESS
LOGIC OF PROCESS

Example :
Write a data dictionary entry for process - Calculate Current Pay
PROCESS NAME Calculate Current Pay
DESCRIPTION This process calculates the current pay. This
handles the employee master, attendance &
leave information files and updates current
payroll file for current record.
INPUT TO THE PROCESS Attendance & leave information
OUT FROM THE PROCESS Current pay roll record, update payroll record
LOGIC OF PROCESS Using leave record and attendance record all the
earnings are calculated.

6) External Entities :
It is an outside boundary of the system which interacts with the system.
Entities contents are as follows :
NAME OF THE ENTITY
ASSOCIATED ATTRIBUTES OF THE ENTITY

Example :
Write a data dictionary entry for Entity - Bank
NAME OF THE ENTITY Bank
ASSOCIATED ATTRIBUTES OF THE ENTITY Employee Bank A/c No.
Employee Name
Employee Salary Amount

 Advantages / Uses / Importance of DD :


1) In case of a large system, handling of all the databases is difficult job. Data
dictionary is useful to manage all databases by giving all details of data.
2) To communicate a common meaning for all system element. That is, one should be
able to know different names of same data parameters so that there are no
confusions. Viz. for Employee Number the aliases are EN, Emp_no, Eno etc.
3) As all the data elements are at one location, any errors or omissions in the system
are easily located.
4) DD is very helpful in building a database
5) Data dictionary can avoid confusion among users
6) Data documents the features of an information system
7) Useful to improve the communication.

w.e.f. 2009-10
 Pseudo code :
Pseudo code is an informal and very flexible programming language that is not
intended to be executed on a machine but is used to organize a programmer's thoughts
prior to coding.
Pseudo code allows the designer to focus on the logic of the algorithm without
being distracted by details of programming language syntax. Programmers use Pseudo
code as a first step before coding the program and can usually be translated directly into
program code. It consists of English phrases used to explain specific tasks within a
program's algorithm.
Pseudo code is neither Structured English nor an actual program. It is a simple
way to communicate specifications to programmers. Pseudo code is also known as
program skeleton.
An example of Pseudo code is as follows :
BEGIN Fees Balance :
// Comment : Checking Student Fees Balance //
For each student
Retrieve Student-Registration-No, Amount paid
IF Amount paid is less than Fees Amount,
Then Send-Reminder
Next Student
END

BEGIN Send-Reminder :
// Prepare Reminder letter //
Retrieve Student data for Student-Registration-No
Print Reminder letter
END

o Need of Pseudo code :


The programming process is a complicated one. So first, It is necessary to
understand the program specifications and then need to organize the thoughts and
create the program. This is a difficult task when the program is not easy.
So user must break the main tasks that must be accomplished into smaller
ones in order to be able to eventually write fully developed code. Writing Pseudo
code saves the time later during the construction and testing phase of a program's
development.

o Steps to write Pseudo code :


 First make a list of the main tasks then try to break each main task down into very
small tasks that can each be explained with a short phrase. There may eventually
be a one to one correlation between the lines of Pseudo code.
 It is not necessary in Pseudo code to declare variables.
 You may show functions and procedures within Pseudo code but this is not
always necessary either.

o Example :
Write a program that obtains two integer numbers from the user. It will print the sum
of those numbers.
Pseudo code :
Prompt the user to enter the first integer.
Prompt the user to enter a second integer
Compute the sum of the two user inputs
Display an output with prompt that explains the answer as the sum
Display the result.
w.e.f. 2009-10
o Advantages of Pseudo code :
1) Reduced Complexity :
For complicated program development it is important that every effort is taken to
reduce complexity. Breaking a single task into two simpler tasks generally results
in a reduction in overall complexity. Writing Pseudo code and program code
separately simplifies the overall task by splitting it into two simpler tasks.
2) Increased Flexibility :
Pseudo code is written so that code based on it should be able to be written in
any language like Visual Basic, Java, C etc.
3) Ease of understanding :
It is not necessary to understand a particular programming language to
understand Pseudo code. It is written in semi-structured, some what English like
manner.

w.e.f. 2009-10
o Disadvantages of Pseudo code :
1) Not visual
2) No accepted standard, varies from company to company

o Functions of Pseudo code :


1) It helps the analyst to examine the tasks of a module designed in a structure way.
2) The programmers use it as a specification for coding.
3) It also acts as a communication tool between the analyst who knows the module /
process needs and the programmers who will actually do the coding of the module.

o Rules to write Pseudo code :


A Pseudo code consists following rules :
a) Write only one statement per line
b) Capitalize initial keyword
c) Indent to show hierarchy
d) End multi-line structures
e) Keep statements language independent

 Case Study :
Develop a Pseudo code to describe the calculation of the cost of a set of items and write
to output file. The records on input file are read sequentially. Each record consists of ITEM-NO,
QTY. The cost is calculated by referring the price for each item in the Price-File and multiplying
this price the item quantity. The record consists of ITEM-NO, UNIT-PRICE
Pseudo code :
OPEN Price-File, Input-File, Output-File
Repeat LOOK UP until end of Input-File
LOOK UP
Read Input-File
Get ITEM-NO, QTY from Input-File
Read Price-File at KEY = ITEM-NO
Get UNIT-PRICE from Price-File
COST = QTY * UNIT-PRICE
Write ITEM-NO, QTY, UNIT-PRICE, COST to Output-File.

 Input and Output Design :


A major step in design is the preparation of input and the design of output reports in a
form acceptable to the user.
o Input Design :
Input design involves capturing of data as well as inputting it to the computer. A
system analyst decides the following input design details:
a) What data to input?
b) What medium to use?
c) How the data should be arranged or coded?
d) The dialogue to guide users in providing input
e) Data items and transaction needing validation to detect errors.
f) Methods for performing input validation and steps to follow when error occurs.
Input design consists of data capturing and data validation.
 Data Capture :
It covers all the stages from the recording of basic data to the feeding of this data
into the computer for processing. The objectives of data capture are
1) The reduction in the volume of input to the extent possible.
2) Lesser manual preparation
3) Minimizing the number of steps practicable in the data
There are two types of data that must be input when processing transactions :
a) Variable data : Those data items that change for each transaction handled or
decision made.
b) Identification data : The element of data that uniquely identifies the item being processed.
w.e.f. 2009-10
 Data Validation :
The objective of data validation system is to detect errors. It is necessary that
before data is first input to the computer for processing different checks are carried out.
These checks will classify valid and invalid data.
 Validation Checks :
There are various categories of checks which can be applied to data during a
validation run
a) Field Checks : This includes the following -
1) Limit Check : May be applied to each field of a record to ensure that its
contents lie within predefined size. Viz. The amount of salary can be form
00000.00 to 15000.00 for an employee. If the amount is beyond these limits
then further correction becomes necessary.
2) Picture Check : May be applied to each field to detect entry of incorrect
characters in the field. Viz. Picture of EMP_NO is AAA9999. If user input the
data for EMP_NO field as PRD24N6 then it would be rejected as there is a
letter in the sixth position and it should be only numeric.
3) Valid code check : This validate input against predefined transaction codes.
These predefined codes may either be embedded in the programs or stored
in files. Viz. contents EMP-CATEGORY field A, B, C, D, E are only valid and
any other letter coming in that field will be rejected.
4) Check digit : It is used to detect transposition errors when recording "key"
fields. Viz. instead of typing a number 54786 it is entered as 54768 ( but when
instead of 54786 it is entered as 54789 then it is known as transcription error)
5) Arithmetic checks : These are used to ensure the validity of the results by
performing arithmetic operations in different ways.
6) Cross Checks : May be applied to verify fields appearing in different files

b) Transaction Checks : This includes the following -


1) Sequence checks : This checks are applied to detect any missing transaction
(e.g. off serially numbered vouchers)
2) Format completeness : These are used to check the presence and position of
all fields in a transaction.
3) Redundant data checks : These are employed to check the validity of codes
with reference to description.
4) Pass words : This may be exercised to check entry of data by unauthorized
persons in on line system.
5) Combination checks : May be applied on various fields of a file. Viz. To check
the amount written in figures and in words.

o Output Design :
The output refers to the result and information that are generated by the system. For
any system, the output is largely dependent on input. Before designing output the objectives
of each output must be clear because the output is very attractive or it has used the latest
computer technology. While designing outputs, system analyst must consider the following
points :
1) Determine what information is to be present.
2) Decide whether to display print information and select the output medium.
3) Arrange the presentation of information in an acceptable form
4) Decide how to distribute the output to intended users.
 Design Principles of Output :
1) Duplicate or unnecessary information in the reports should be minimized to the
extent possible.
2) Report should be simple, concise and self-explanatory
3) The end user has to accept these outputs.
4) An output in time can help to make better decisions.

w.e.f. 2009-10
 Types of Output :
These are various types of output required by most systems. The main types of
output are as -
1) External outputs :
Those intended to go outside the user's organization e.g. invoices, pay slips etc.
2) Internal Output :
Those used within the user's organization and it requires careful design because they
are user's main interface with computer
3) Operational Outputs :
The use of this is in general within the computer department. Viz. Program listing
4) Interactive Outputs :
This involves the user communicating directly with the computer (DIALOGUES)
5) Turnaround Outputs :
The data will be added to this document before (re-extracting documents) they are
returned to the computer for further processing.

 Output consideration :
While designing the outputs, system analyst must consider the following points :
a) Determine what information is to be present
b) Decide whether to display, print the information and select the output medium
c) Arrange the presentation of information in an acceptable form
d) Decide how to distribute the output to intended users.
After considering these points, the analyst and the user can define output more
clearly in terms of :
1) Types of output
2) Contents (Heading? Numeric? Alphanumeric? Totals? etc.)
3) Format (Hardcopy? Screen? Microfilm? etc)
4) Location (Local? Transmitted? Transported? etc)
5) Frequency (Daily? Weekly? Hourly? etc)
6) Response (immediate? With a period? etc)
7) Volume (Number of documents? Growth? )
8) Sequencing (Account no? Within sales area?)
9) Action required (error detection?)

 Important things for INPUT/OUTPUT Design :


While designing the input and output forms, the designer must take care of following.
1) Each form should have a title, clearly stating the purpose of the form.
2) Form color should be appropriate and mostly of light colors.
3) Headings for each data items must be given and must be self-explanatory
4) Subheading, footer should be used if necessary
5) Data items (field) space must be adequate
6) Messages should be provided wherever necessary
7) Pop-up list, pull-down menus, check boxes, radio-buttons should be used to save data
entry time.
8) Form should be designed with proper font size and color of characters to distinguish and
highlight some points.
9) For Input forms there must be validation checkpoints to control bad input.
10) In case of Output forms the sequence of fields and columns must be proper.
11) Output forms may contain sub-totals, group-totals, grouping of fields etc.
12) In a system having many forms the buttons should be sized, ordered and positioned in a
same manner.

 Example (Case Study) :


Design a suitable screen layout of Employees salaries slip with following details :
 Employee Number, name and designation
 Earnings (Basic, DA, HRA, TA) and Deductions (PF, PT and others)
 By calculating proper deductions and payment in the format of total deductions gross pay
and net pay.
w.e.f. 2009-10
Output Design (Screen)

College Logo College Name


Pay Slip

Date : / /
Employee Number :
Employee Name :
Department Name :
Designation :
Salary from Date : to Date

Earnings Deductions
Basic Provident Fund
DA Profession Tax
HRA Income Tax
TA Insurance
Housing Loan
Others

Gross Pay Total Deductions


Net Salary

w.e.f. 2009-10

You might also like