MCA Notes
MCA Notes
MCA Notes
M.C.A./P.G.D.C.A. - I YEAR
SYLLABUS
I.INIT I
System Concepts and Information System Environment - Business System Concepts - Information -
System Development life cycle - Introduction to CASE tools - Role of system Analysis - Communication
skills.
TINIT II
Requirement Analysis and Methodologies - Sampling -Interviews - Questionnaires - Observing the
Office Environment - Prototyping - Structured System Analysis Techniques and Practices - Cost Benefit
Analysis.
I.INIT III
System Design - The Process and Stages of System Design - Input/Output and Forms Design - File
Organisation - Database Design.
I.INIT IV
System Implementation - Software Maintenance - Review Plan - Hardware, Software Selection and the
Computer Contract - Project Scheduling.
UNIT V
System Testing - Quality Assurance - Test Plan - Quality Assurance Goals - Audit Trail - Security,
Disaster/Recovery and Ethics in System Development.
UNITI
LESSON
t.3.L Subsystems
A system is a set of interrelated elements that collectively work together to achieve some goal. For
instance, accounting is a system with elements, viz., journals, ledgers, people, etc. and its basic goal is
to maintain book of accounts alongwith preparation of financial and MIS sraremenrs. Computer is also
a system with elements such as CPU (Central Processing Unit). input device, output device and users;
and its basrc goal is to process the data and provide information. There are hundreds of definitions of
the word 'System', but here we define it as foliows:
A system is a set of interrelated elements that form an activiry or a processing procedure in order to
achieve a comrnon goal or gcals by operaring on data to yield information.
1.3.1 Subsystems
Most systems are part of a larqer system. For instance, Financial Accounting System, Marketing
System, and HRD (Human Resource Development) System are parts of a larger system, MIS
(Management Information System) and are called subsystems. A system can be made up of many
subsystems. A subsystem is defined as follows:
A subsystem is that part of a system that carries one part of the sysrem function.
For instance, an invoicing system, an inventory control system and a financial accounting system can
be designed independently. However, the net results of the operations of an integrated whole sysrem
are more than that of independenr subsystems.
2. Interaction: Interaction refers to the procedure in which each component functions with other
components of the system. The various elements of a system are interacted with others to achieve
a common goal. For instance, the ledger, journals and people are interacted in a financial
accounting system for preparing the final financial statements (e.g., Profit and Loss A/c, Balance
Sheet, etc.) of an organisation.
be because the existing forms are not properly designed. If the informarion is vital ro rhe system,
we should make all possible efforts to make it availatle. The essential elements of inp,rts are,
(r) Data should be accurate. If data is not accurare, the ourputs will be wrong.
(b) Data should be obtained in time. lf data is not obtained in time, the entire sysrem falls into
arrears.
Feedback may be positive or negative, routine or informational. Positive feedback reinforces the
perf_ormance of the system. It is routine in nature. Negative feedback generally provides the controller
with information for action. In systems analysis, feedback is important in iifferenr ways. During
analysis, the user may be told about the problems in a given applicarion after receivirg prop.i
feedback. The user informs the analyst about the performani" of th. new installation. This f..aUr.t
could be pointed or srored in an electronic format.
1. Phisical and. Abstract Sgstems: Physical systems are made of physical enriries, viz., people,
-poti.i.r,
materials, machines, energy, etc. and intangible things viz.,- informarion, ideas,
procedures, etc. Physical systems are also called Empirical Systems. Some of the .rr-p|", oi
physical sysrems are
2. Open and Closed SStsterus: An open system interacts with its environment by receiving inputs
from and sending outputs to outside the system. Almost all systems are open because they are
affected by the environmental influences. A closed system does not interact with its environment.
As it is isolated from environmental influences, it is not affected by changes occurred outside the
system. In real life, closed systems are rare because almost all systems are affected by
environmental changes. However, a laboratory system devised by scientists for research works
can be considered a closed system, if it is isolated from its environment.
3. Social, Machine and People-Machine Sltstem.r.' Systems composed only of people are called social
systems. In reality, social systelns are difficult to find because no system can achieve its goal
without utilising some machines or equipments. However, a political parr!, a social club or a
market association are generally considered as social systems though they may utilise some
equipments. Contrary to social systems, machine systems are composed only of machines. Again
in reality, machine systems are rare because machines obtain their inputs (data and instructions)
from people and so depend on them. The computer-controlled, self-sufficient machines and
Robots can be considered as machine systems. Systems composed both of people and machines
are called People-Machine Systems.
4. Manual and Computer-based Information Systems: Before distinguishing between manual and
computer-based information systems, let us first define an information system -
An informdtion rysten7 is a people-macbine subsystem of tbe business system tbat supports tbe
operational, managerial and decision-making inforrnation needs of an organisation.
4;h
Systen:s Analys
Frograrnmers Hardrqare
Eata Prcc*dures lnfr:rnration
Daiabase
u*a ather
Adnriristrat*rs Appii cati* n Sofirnra re \
\Tiy
J
Users and
olher oeopie
Levels in
(]rgani$aticlr'l
xecuttve
Support
tems
lv!nnagenrent
lnfornratran Svstems ldanage*:ent
Deei*ion Suppor-t Systerns
2. Management Inforrnation System (MIS): This system is designed to serve the functions of planning,
controlling and decision-making at the management level of an organization. The system at
management level support monitoring, controlling and decision-making activities of middle level
managers.
3. Decision Supporx Sgstem (DSS): This system also serves the information needs at management level
of an organization. DSS differ from MIS in mainly having rnore analytical power and mcre user-
friendly capabilities. DSS combine data and analyical/modeling tools to support semi-
structured/unstructured decision- making.
4. Offiee Auton'ration Sgstem (OAS): This system serves the knowledge level of an organization for
supporting knowledge 'rn orkers like production managers, EDP managers, etc. OAS use computer
system to increase the productivity of technical managers in the office.
7. Adaptiae and Non-adaptiue System: Adaptive System tend to adapt to a changing environment
while non-adaptive systems do not adapt. For example, an organizational system is an adaptive
system and a Iv{lS system is a non-adaptive system. Stationary system is alv.ays non-adaptive while
non-stationary systems are adaptive systems.
14 System Analysis & Design M.S. University - D.D.C.E.
1. Inputs: Inputs are the basic components that enrer the sysrem for processing. Data in the form of
documents, manual or computer-based files, human voice, pictures and other media are the major
inputs of a system. Information and software are other ior-, of inputs for a computer-based
information sysrem.
2. outputs: After processing the inputs, the system produces the desired ourpurs in the form of
documents, reports, things, materials and ideas.
3- Processors: Processor is the operational component of a system that processes the inputs to
produce the desired outputs. People and computers are the examples of processors for manual and
computer-based information system, respecrively.
4. Contrcl and Feedback Measures: A system must have adequate control and feedback measures to
monitor the outputs of the system and to compare with the system goals. Control is a subsystem
that controls the activities of inputs, outputs and processors. Feedbaik measures help rhe ,yr,.-
in achieving control. \7e will further discuss the control and feedback measures of .o-prr.r-
based information systems on System Control and Reliability.
5. System Boundary and Enaircnmcnt: .Lll systems have boundaries that identify their components and
with other systems. For instance, the compon.rr, ..,i subsystems
subsystems during their interface
of a computerized MIS are identified by its boundary as illustrated in Figure 1.3 showing
components of a system. Anything outside the system boundary is called the system environmenr.
I -II_-T
Cor*ol and Feedback
Financral Iavenfory
Accountitrg {'oofrol
{Subrlsttm} (Stbsystenr)
&{arkrtrag
{Subsystem}
E*vironurnt
A business organization can also be viewed as a system. The obvious advantage of applying sysrems'
principles on a business is that then all the established and tested means and ways of a system can be
applied on a business just as on any system.
The components of a typical business system are:
. Marketing
. Manufacturing
. Sales
All these components work together to create profit that benefits the employees and shareholders of
the firm. Each of these components in itself can be viewed as systems themselves - called subsystems -
of the higherJevel system - the business organization. For example, the accounts system may consist of
accounts payable, accounts receivable, billing, auditing, and so on.
t-
I
Intert'ace
Sirlrs I.--i
S hipping
rnd
Logistic:
In other words "an organized production or sale of goods undertaken with the objective of earning
profits through the satisfaction of human wanrs, is known as business."
Organizations consist of rnany business systems, which have similarities across different tlpes of
organizations. Their purpose is to produce goods or producrs that fulfill a demand in the market.
To achievethis objective, the systems interacr with their environments to acquire rhe necessary
materials, workers, and knowledge to manufacture the goods. The manufacturing systems also
produce outputs, such as finished produos, wasre, and production technology.
To keep functioning, manufacturing systems must meer performance standards. In reality,
manufacturing systems are self-regulating and self-adjusting, i.e., they indicate when:
. Personnel musr be replaced
. New equipments must be purchased
. Procedures must be modified, etc.
If internal controls are not satisfaoory, qualitv goes dov,n darrgerously or prices ger unreasonably high.
Manufacturing svstems are themselves subsl stems v,ithin large organizations and are in turn made up
of other subsystems such as:
. Ivlaterialsrnanagement
. Maintenancemanagement
. Training and development
M.S. University - D.D.C.E. System Concepts and Information System Environment 12
The general features of all systems are identical. Any system can be examined with this framework in
mind and specific details can be added as necessary. It is this flexibility that makes systems concept so
useful to business in general and ro information sysrems in particular.
---l
;:*
r
V\-,
l,-.--,.-,.,,,i"\^.
''"1*-i
i-r
1
-"".*"...""",'-**;
Sqrlc fjsx Si*Sr*;rl* 1
Gr--"t--rr- -, **-*t"l
^rt
r.! %h*"- I
rl + rli$*]. i
SY$fHe,!$ qh*r* F it li,rg prew*i wiua I
effi&Ers F l* ri!-g i\ildrf, ?.*lri13 I
r.ig ljlp r!:!q s:;i ri".Jar*.i :rrli I
q i; ibr] rr:r s:'f r*:!rr
'I I
*n;* fu1
{-qls}lslB
* $s1!s !a1, t fi.i{&
-;
Mbr*rdfury &tg.ri*Jx
(r) Abstract systems are concerned with theoretical structures that may or may nor
exist in real life.
(b) Almost all systems are open.
A systqm has a number of characteristics like organization, inreraction, interdependence, Integration and
central objective. It also has four basic elements like outpurs and inputs, files, processor(s) and Ieedback.
System can be classified into various types as physical or ab$rac sysrem, open or closed system, social
machine or people-machine system, manual or computer-based system, stationary or non-stationary
system and adaptive or non-adaprive system.
M.S. University - D.D.C.E. System Concepts and Information System Environment 19
1.14 KEY\T/ORDS
sistem: A Coherent set_ of interdependent component which exists for some purpose,
has some
stability and can be usefully viewed as a whole, generally ponrayed in rerms of ,r,
irrp.r,-process-
output model existing within a given environmenr.
Enuironment of a Sjtstem: Anything outside a system which has an effect on the way the system
oPerates.
A part of the sysrem that carries one part of the system function.
sub-s7tsteru:
!!st"m studi: A study of the operations of a set of connected elements and of the inter-connections
between these elements.
sistem Analitsis: Process of gathering and. interpreter facts, diagnosing problems and
using the
information ro recomment improvemenr ro the rysi.*.
system Design: The process of planning a new system or replace or complement
an existing system.
sistem Approach:A set of procedure for solving a particular problem, ro oprimize the net results of the
operations of an organizarion.
Phitsieal system: Systems that are made of physical entities, viz., people materials,
machines, €n€rg/r
etc. and inrangible things viz., information, ideas, policies, pro..d.rr.r,it..
Abstract STtstene.'Systems composed of only ideas, policies and theories and not of. any physical entity.
open and closed system: An open system is that which inreracts with its environment
by receiving
inputs from and sending outputs to outside the system. A close sysrem is that which
does .rot irrt"rr.i
with its environmenr.
Information system: A people-machine sub-system of the business sysrem that suppons
the operational,
managerial and decision-making informarion needs of an organization.
Executiae Support Systern: System designed to address unstnrcrured decision making at rhe strategic
level of an oiganization.
G) Systems Design
8. \7hat is an informarion system? Explain the different types of information systems.
g. \flhat is a system model? Discuss the importance of various types of models.
(d) Sub-system
(e) Narrative
2. (a) True
(b) True
(c) False
(d)True
(e) False
Ludwig von Bertalanffy, General System Tlteory : Foundations, Development, Applicatiozs, New York : George
Brazillier, 1969 .
LESSON
2.3.L FeasibilityAnalysis
2.3.2 System Analysis and Project Planning
2.3.6 Implementation
2.3.7 Mairltenance
2.4 Let us Sum up
2.5 Keyword
2.6 Questions for Discussion
2.7 Suggested Readings
2.1 INTRODUCTION
The System Development Life Cycle (SDLC) is the traditional system development method used by
most organizations today. The SDLC is a stnictured frame that consists of sequential processes by
which information systems are developed. These include investigation, system analysis, system design,
programming testing, implementation, operation and maintenance. These processes, in turn, consist of
well-defined tasks. Some of these tasks are present in most projects, whereas others are present in only
certain types of projects. That is, large projects typically require all the tasks, whereas, smaller
development projects may require only a subset of the tasks.
22 System Analysis & Design M.S. University - D.D.C.E.
In the past, developers used the 'Waterfall approach' ro rhe SDLC in which tasks in one stage were
comPleted before the work proceeded to the next stage Today, sysrem developers go back and forth
among the stages as necessary.
This lesson Presents the concept of the Systems Development Life Cycle (SDLC), which provides the
framework for all activities in the developmenr process.
_u^-l, '';";:;''
--
Sirriy ,;-_-
r'r'- "-'/
ra.,ser -\_**
_---*f
{"" ,."-".iE.sr. 1.. ,--s,,*,\\
|
\ ^-i!1c, a.r,rr.* J
"
i-t -\
lir r_
r raLC I r
-.r__
lrpir. \.
I
..__a,,
r
\ '*,,r"''.-,, r'
tseo" vi ,rn - .,
p** o I )*1,nr \,
t:::;
\ l^
\
>-
*\ D',q ! Phote
,r----v'
l!
""**. *-o'1:"*:T- 1
' Ifnew
an information.system
demands of
is already computerised, it may become slow and inefficient for meeting
the users.
As the information technology is evolving uery rapidly, the application
' years back in one operating environmeni (,ry DoS ;; UNIX)
software developed few
may becom" orrtd.r.6 d,r. to
popularity of graphical operating environmenrs such as rwindows.
Due to the Y2K problem, systems developed during the nineteenth
' or may provide unexpected and incorrect information.
century either may not work
There.may be many more reasons due to which users either want to develop
new system or improve
the existing system. Some of the reasons for needing sysrem change recognized
by diff.r"rt gro;p" oi
people wirhin and outside the organisation are summarized in Table
2.1.
Table 2.1: Reasons for Needing System Change
Management Unable to get MIS reports required for decision-making and planning.
Administrative Staff Unable to handle the u,orkload due to manual or ourdated
o information system.
d
Sales & Marketing Sraff (a) Unable to achieve sales rargets due to inefficient marketing sysrem.
(b) Unable to process orders and handle despatch on time due to
6
inefficient invoicing/order processing ryit"rrr.
d Production Staff _ -
Unable ro manufacrure items on sched.rle and u.,ith required quality
60
due to lack of computerised production planning ,.rd .ontrol ,yrt#.
Purchase Depanment Unable ro control inventory of items dre to ineifi.ient inventorv
control s),stem.
Accountant Unable to maintain account books and prepare financial
statements on time.
o
Customer Slow, inefficient and unsatisfactory public dealings and consumer
services provided by the organisation.
d Government Implementation of new or revised rules and regulations imposed
o on the organisation.
Other Organizations Competing in the market for best products and services.
Union Settlemenr of disputes regarding piovident funds, revision of
salaries and increments, etc.
After recogntzing need for system change, the user submits a formal request
to the Information
Systems (IS) depanmenl the organisation or an outside sofrware d"rr"lop-.rrr company either for
9f a
nev/ system or for modifying the current system. After receiving
the ,"q.r"rr, th" orr"rril incharge of
software development team, System Anaiyst, begins the prelini.rrry
irrrr.rrigrtiors to derermine
24 System Analysis & Design M.S. University - D.D.C.E.
whether the system requested is feasible to develop or not. During preliminary investigations, the
analyst understands the major requirements of the sysrem by meeting with the users. He asks a
number of questions to the user regarding the current working of the system, problems of the current
system and their present needs. All these activities are a part of feasibility analysis phase. At the end of
feasibility analysis, a business proposal or a feasibility study report is put forth by outsider sofrware
comPany or in-house IS department. On acceptance of the proposal, the SDLC enrers into the phase of
system analysis and project planning.
After completion of SRS document, the analyst makes a plan to manage the software project. System
planning is the most essential part of analysis phase. During sysrem planning, the total cost of
developing the software is estimated along with the total duration of the project. A project ream is
organized with a detailed staff requirement for each phase. How a software project is planned? \7hat
are the major activities of systems planning? Ve will discuss about all rhese concepts later in this book.
'When
the design (properly documented) is accepted by the requesred department, the analyst begins
developing the software using a programming language. This is the phase when the programmers play
their role in development of the system. They start designing data strucrures and writing of programs
as per the documents prepared during design phase. They test their individual programs and integrate
them into a single system. The development phase can be categorized into two sub-phases - Database
design and Program design. Database design is the most important aspecr of developing a new system.
Program design is mainly concerned with writing of programs (coding), editing of programs using a
text editor or word processor, debugging and finally testing them. During this phase, a team of
Programmers work under guidance of their project leader (systems analyst) and do all the coding.
2.3.6lmplementation
After testing, the system is installed at the user's place and implemented. Implementation is the most
crucial phase of SDLC. During implementation process, the manual or old computerised system is
converted to newly developed computerised system. Many different activities are performed in
conversion process on Systems Implementation and Maintenance. After conversion, the users are
trained for operating and maintaining the system.
Implementation is generally considered the last phase of SDLC. However, the systems development
work continues until the users of the requested department accepr the candidate system.
2.3.7 Maintenance
After implementation, the systems need to be maintained in order to adapt to the changing business
needs. Maintenance is sometimes not considered as a phase of SDLC, but it is an essenrial part of a
software project that never ends. Generally more than 50 percenr of total sysrem development time is
spent in maintaining the system. This is because if the system is not properly maintained, it may fail.
Maintenance includes the activities that ensure to keep the system operational even if it is required to
be modified later. The activities of maintenance phase can be divided into two broad categories -
Corrective maintenance and Adaptive maintenance. If there are bugs (errors) in the sysrem, they are
corrected by the activities of corrective maintenance. If certain modifications are required in the
system, they can be incorporated into the system by the activities of adaptive mainrenance.
Maintenance phase is also considered as rhe mosr expensive phase of SDLC.
Although, a system is developed very systematically with all precaurions, rhere is always a possibility
that the candidate system fails due to any major mistake made in any of the development phaie. In that
case, any or all of the phases are needed to be reviewed again, so that the system is completely accepted
by the requested depanment. This is the reason, why 'life cycle' term is used in sysrem development
phases. \7e will discuss about each phase in detail in subsequent units.
26 System Analysis & Design M.S. University - D.D.C.E.
'$7hat
L. is Feasibility Analysis?
2.4LET US SUM UP
System development revolves around a-life cycle that begins with the recognition of users needs and
understanding their problems. Such a life cycle comprising various phases is called System Development
Life Cycle (SDLC). System development process is divided into several phases such as feasibility
Analysis, System Analysis, System Design, System Coding, Testing, Implementation and Mainrenance.
2.5 KEY\UTORD
Sistem Deaclopment L{" Cltcle: Vhether a system is small or large, sysrem developmenr revolves
around a life cycle that begins with recognition of users' needs.
3
CASE TOOLS AND SYSTEM ANALYSIS
CONTENTS
3.0 Aims and Objectives
3.I Introduction
J.2 CASE: Definition
3.3 Building Blocks for CASE
3.4 A Taxonomy of CASE Tools
3.5 Integrated CASE Environment
3.5.1 ThelntegrationArchitecture
3.6 The CASE Repository
3.6.L Features and Contents
3.7 Vho is a Systems Analyst?
3.8 Roles of a Systems Analyst
3.9 Qualities of Systems Analyst
3.10 Let us Sum up
3.lL Keywords
3.L2 Questions for Discqssion
3.t3 SuggestedReadings
3.1 INTRODUCTION
Computer Aided Software Engineering (CASE) tools assist the software engineering managers and
practitioners in every activity that is apafi of the software process. They automate project management
activities, manage all work products produced throughout the process and assist engineers in their
analysis, design, coding and testing. CASE tools can be integrated within a sophisticated environment.
The system analyst is overall responsible for the development of a software. He is the crucial interface
between users, programmers and MIS managers. He conducts a system's study, identifies activities and
objectives and determines a procedure to achieve the objective. He has a yery important role in the
development of a system. The concerned person should also have some special qualities which we are
going to discuss in this lesson.
The environment architecture comprises of hardware platform and system support and acts as the
ground work of the CASE. But this environment in turn is composed of building blocks. A set of
portability services provides a bridge between CASE tools and their integration framework and the
environment architecture. The integration framework is a collection of specialized programs that
enables individual CASE tools to communicate with one another to create a project database, and to
exhibit the same look and feel to the end-users. Ponability services allow the CASE tools and their
integration framework to migrate across different hardware platforms and operating systems without
significant adaptive measures.
M.S. University - D.D.C.E. Case Tools and System Analysis 29
CASE tools
Integration framework
Ponabilitv services
Operating system
Hardware platform
Environment architecture
F-"'"*.;l ffi
Figure 3.2: Integration Options
30 System Analysis & Design
M.S. University - D.D.C.E.
At the high ind of thespecrrum is the Integrated Project Suppon Environment (IPSE). CASE tools
vendors use IPSE standards to build tools that will be compatible with the IPSE
and therefore
compatible with one anorher.
2' Ptpeess modcling and management tools; It is must for an organization to understand the business
Process in order to improve on it. Process modeling tools oip.ocess technology tools, are used to
rePresent the key elements of a process so that ii can b" t"tte, ,rrrd.rrto#.
These tools also
provide link to Process descriptions to those who are involved in the process ro undersrand
the
work tasks that are required to perform it. They provide links to other iools that provide
supporr
to defined process activities.
3' Prcject planning tools:'lools belonging to this category focus on two primary
areas: software
project effort and cost estimation and project scheduling. Estimation tools calcuiate
the estimated
effort, duration and recommended number of people fof a project. Project scheduling
tools enable
the manger to define all project tasks, create , irrk ,r"t*o.k, ,.pr.r.rrt irrk inter
depJndencies and
model rhe amounr of parallelism possible for the project.
4' R,sk ana[tsis tools: Identifying potential risks and developing a plan ro lessen, monitor
and
manage them is.of utmost_ importance in large projects. nirfr ."rtysis
tools enable a project
manager to build a risk table by providing detailed guidance in the idlntification
and an*iyri, of
risks.
5' Prcieet tools: The project schedule and project plan must be tracked and monitored
'nalagement
on a continuous basis. Also, a manager should use looh to collect merrics that will
ultimately
provide an indication of software product quality. Tools in the category are
ofren exrensions ro
.project planning tools.
6' Rcquirement tracing tools:Lt times it happens that when a large system is developed and delivered
it doesnot meet the customer requirements. The aim of tf,. i.qrrir.menrs tracing tools is to
provide a systematic approach to the isolation of requirementr, t"girning with
rhe cusromer
request for proposal or specification. The typical ,"qrrire-"rrr, ,rr.1rrg to"ol
combines human
interactive text evaluation with a database
-*rg"*"rt system that sto"res and categorizes each
system requirement that is parsed from the original RFp.
M.S. University - D.D.C.E. Case Tools and System Analysis 31
7. Metic and ,nanagement tools: Software metrics improve a manager's ability to control and
coordinate the software engineering process and a practirioner's ability to improve the quality of
the software being produced. Management-oriented tools capture project specific meirics like
LOC/person-month, defects per function point, etc thar pr""i& an overall indication of
productivity or quality. Technically oriented tools determine technical metrics that provide
greater insight into the quality of design or code.
8. Doeumentation tools: These types of tools support each aspect of software engineering.
Documentation tools provide an important opportunity to improve productivity of the software
practitioners as 20 to 30 percent of the software development time is spent on documenration.
9. System sofiware rook CASE is a workstation technology, thus, it must include high quality
network systems software, object management services, distributed component support, e-mail,
bulletin boards and other communication capabilities.
10. puality assurance ,ools.' These tools are nothing but metric tools that audit source code to
determine compliance with language standards. Other tools draw technical merrics in order to
project the quality of the software being built.
11. Database management tools: Database management software serves as a foundation of the CASE
repository called the project database. CASE tools for database management have evolved from
relational database management systems to object oriented database management systems.
t2. Sofiware corufiguration mdnagelnent tools: Software configuration management lies at the core of
every CASE environment. These tools can help in all the SCM related tasks: identification,
version control, change control, auditing and status accounting.
13. Analysis and design toolr These tools enable a software engineer ro creare models of the sysrem ro
be built. The model contains a representation data, function and behavior and characteristics of
data, architectgral, component-level and interface design. These tools help the software engineer
to have a better insight into the analysis representarion, rhrough consistency and validity
checking, to help eliminate errors before they propagate into the design or build.
t4. Ptogramming tools: This category comprises of compilers, editors, debuggers thar are available to
suPport most conventional programming tools. In addition to these, it includes the object-oriented
programming tools, fourth generation languages, graphical programming environments, erc.
15. Prototgping tools: A variety of prototyping tools can be used. Screen painrers enable a software
engineer to define screen layout rapidly for interactive applications. More sophisticated CASE
prototyping tools enable the creation of a data design, coupled with both screen and report
layouts. Many analysis and design tools have an extension in the form of a prototyping tool.
PRO/SIM tools generate skeleton Ada and C source code for developing real-time applications.
16. Integration and testing tools:The SQE defines the following testing tools categories in its directory
of testing tools:
(r) Data acquisition: tools that acquire data to be used during tesring.
(b) Static nteasurenTent: tools that analyze the source code without executing test cases.
G) Test managenTent: tools that assist in the planning, development and control of testing.
(0 Cross-functional tools: tools that cross the bounds of the preceding categories.
Many testing tools have features spanning across two or more categories.
To define integration in the context of software engineering process, it is necessary to establish a set of
requirements for I-CASE. An integrated CASE environment should possess the following as per
Pressman:
1. Provide a mechanism for sharing software engineering information among all tools contained in
the environment.
2. Enable a change to one item of information to be tracked to other related information items.
3. Provide version control and overall configuration management for all software engineering
information.
4. Allow direct, non-sequential access to any tool contained in the environment.
5. Establish automated support for the software process model that has been chosen, integrating
CASE tools and Software Configuration Items (SCI) into a standard work breakdown srrucrure.
6. Enable the users of each tool to experience a consistent look and feel at the human/computer
interface.
6. Docurnent standard.iqation is the definition of objects in the database that leads directly to a
standard approach for the creation of software engineering documents.
To achieve these functions, the repository is defined in terms of a meta-model The meta-model
determines how information is stored in the repository, how data can be accessed by tools and viewed
by software engineers, how nicely data security and integrity can be maintained and how easily the
existing model can be extended to accommodate new needs.
information systems. He is the crucial interface among users, programmers and MIS managers. A
Systems analysr can be defined as follows:
A Systems analyst is a computer specialist who translares business problems and requiremenrs inro
information systems and acts as liaison between IS (Information Systems) departmenr and rest of the
organisation.
The analyst conducts a systems study, identifies activities and objectives and determines a procedure ro
achieve the objectives. He is the key member of both MIS organisation and the software project team.
He is a Person with unique skills, experience, personality and common sense. His role has been
emerging with advances in technology.
G) Sistems Designer: The analyst creates a detailed physical (currenr) and logical (proposed) design of
the system' The practical role of a systems analyst as a designer is discussed inlubsequ.rrt ,rri"t, of
the book.
(d) MotiuatoriThe analyst motivates users to participate in developmenr and implementation of the
proposed system. This helps to understands user's feelings about the proposed system. The analyst
interprets the thoughts of users and hence, draws conclusions. He appeals managemerrt ,rrd .rr"r,
for getting the support in development and implementation of the proposed system.
(.) Project Manager: The analyst monitors the developmenr and implementation of software in
relation to quality, cost and time. He works with the project lerJer for rnanaging the project
properly' For development of small systems, the Systems analyst is generally the pioject leader.
35 System Analrrsis & Design M.S. Universitv - D.D.C.E.
Preri*ci-*riani*d rireqlur*
iy*l*tr:r
ild*t;!,*r
| '' I*'t"
I -au.-lpr
k) Good Communicator: The analyst must have a good communication and presentation skills. He
must have an excellent command on the language which the user can understand. There should
not be any communication gap between the systems analyst and users.
(d) Expeience* The analyst should be experienced in both information and management
technologies. He should be associated with all types of business concerns (viz., Manufacturing,
Trading, Financial, etc.). The present day systems analysts are expected to possess a good
experience in development of software using 4GLS (such as Oracle, Sybase, etc.) and object-
oriented languages (such as C+ +).
G) Creator: The analyst should possess excellent creativity skills that help to convert ideas of the
users into concrete plans. He/she should be capable of creating plans and designing systems by
drawing diagrams, charts and other illustrations.
(0 Trainer: The analyst should be a good teacher for educating and training users in computer-based
information systems.
Your
l. Fill in the blanks:
(r) The ................... performs the configuration managernent functions and the tools
integration mechanism.
(b) . occurs when a single CASE tools vendor integrates multiple different
tools and sells them as a package.
G) Systems analyst is the key member of both MIS organisation and the software project
team.
3.11 KEY\T/ORDS
OML' Object Managemen t Lay er
TMJ.' Tools Management Services
Sjstem Analyst: A computer specialist who translates business problems and requirements into
information system.
Sjtstem Designer: A computer specialist who creates a detailed physical and logical design of the system.
Project Manager: A computer specialist who monitors the development ad implementation of software
in relation to quality, cost and time.
8. Success in system analysis requires interpersonal and technical skills of the analyst. Discuss why.
9. lWhat are the qualities expected in a system analyst?
k) Information System
(d) System N{anager
G) Function-oriented
(0 System analyst
k) False
(d) True
G) False
(b) True
40 System Analysis & Design M.S. University - D.D.C.E.
CASE: The Potential and tbe Pitfalk, QED Information Sciences, 19g9.
Nicholas K.M., Perfo r man ce To o I s, IEEE Softwa r e, May 19 9 O.
UNITII
LESSON
4.1 INTRODUCTION
The very first step in a system development project is to understand the requirements, the framework
of the organization's objectives and the environment ifl which that system is going to be installed.
Consideration is given to the userrs resources as well as to finances.
44 System Analysis & Design M.S. Universitv - D"D.C.E.
Failure to specify system requirement before the final selection almost always results in a faulty
execution of the development project. The specifications should delineate the user's requirements.
They must reflect the actual applications to be handled by the system and include system objectives,
flow charts, input-output requirements, file stnrcture and cost. The specifications must also describe
each aspect of the system clearly, consistently and completely.
System analysis is the first phase of system development. The focus here is to characterize the system
that is supposed to evolve through the subsequent development phases. The problem space is identified
and modeled using various tools and the same is captured in a document.
Anaiysis is a detailed study of the various operations performed by a system and their relationships
within and outside the system. A key question is: 'What must be done to solve the problem? One
aspect of analysis is defining the boundaries of the system and determining, whether or not a candidate
system should consider other related systems. During analysis, data are collected on the available files,
decision points and transactions handled by the present system. Tools are used and logical models of
the system developed.
Once analysis is completed, the analyst has a firm understanding of what has to be done. The next step
is to decide, how the problem might be solved. Thus, in system design, we morre from logical to the
physical aspect of the life cycle.
In structured analysis and design methodology, analysis phase is subdivided into a number of sub-
phases accomplishing sub-tasks of the analysis. The various tasks in analysis phase are discussed below.
flow diagrams. The system specification also describes the informarion that is to inpur and ro ourpur
from the system.
There are many occasions for fact-finding during the system development life cycle. However,
fact-finding is most crucial to the system planning and system analysis phases. It is during these phases
that the analysis learns about the vocabulary, problems, opportunities constraints, requirements, and
priorities of a business and a system. Fact-finding is also used during the system design and support
phases, but to a lesser extent. During system design, fact-finding becomes technical, as the analyst
attemPts to learn more about the technology selected for the new system. During the system supporr
phase, fact-finding is important in determining that a sysrem has decayed to a point, where the system
needs to be re-developed.
4.4 FACT.FINDING
For fact-finding, the system analyst does the following:
1. Sampling of written (existing) documenrs
2. On-siteobservations
3. Interview
4. Questionnaires
5. Research and site visits
6. Rapid Applications Development (RAD)
7. Joint Application Development (|AD)
8. Observes the current system
9. Gather forms and documents currently in use
i0. Determines the flow of data through the sysrem, and
ll. Clearly defines the system requirements.
4.4.1 F act-finding Techniques
No two projects are ever the same. This means that, the analyst must decide on the information
gathering tool and how it mu$ be used. Although, there are no standard rules for specifying their use,
an important rule is that information must be acquired accurarely, methodicalh, under the right
conditions and with minimum interruption to user personnel. For example, if the analyst needs only
information available in existing manuals. then interviewing is unnecessary. Interviewing is necessary
46 System Analysis & Design M.S. University - D.D.C.E.
where the manual is not up-to-date. If additional information is needed, onsite observation or
questionnaire may be considered. Therefore, we need to be familiar with various information
gathering tools. Each tool has a special function, depending on the information needs.
Very few system problems are unique. The increasing number of software packages suggesrs rhar,
problem solutions are becoming standardized. Therefore, as a first step, a search of the literature
through professional reference and procedures manuals, textbooks, company studies, government
publications, or consultant studies may prove invaluable. The primary drawback of the search is time.
Often it is difficult to get certain reports, publications may be expensive and the information might be
outdated due to a time lag in publication.
Procedure manuals and forms are useful sources for the analyst. They describe the format and
functions of the present system. Included in most manuals are system requirements that help
determine, how well various objectives are met. Up-to-date manuals save hours of information
gathering time. Unfonunately, manuals are usually outdated or do not exist.
Included in the study of procedures and forms is the study of existing forms. Printed forms are widely
used for capturing and providing information. The objective is to understand how forms are to be
used. The following questions may be useful:
. 'Who uses the forms? How important are they to the user?
. Do the forms include all the necessary information? \7hat item should be added or deleted?
. How do departments receive the existing forms? \7hy?
. How readable and easy to follow is the form?
. How does the information in the form help other users make better decisions? lVhat other uses
does the form offer to the user?
Onsite Obseruation
Another information gathering tool used in system studies is on-site observation. It is the process of
recognizing and noting people, objects and occurrences to obtain information. The analyst's role is
that of an information seeker who is expected to be detached (therefore, unbiased) for the system being
observed. This role permits participation with the user staff openly and freely.
The major objective of. any onsite observation is to get as close as possible to the real system being
studied. For this reason it is important that the analyst be knowledgeable about the general make-up
and activities of the system. The following questions can serve as a guide for onsite observations:
o W'hat kind of system is it? \ilhat does it do?
. '\tr7hat
is the history of the system? How did it get to its present stage of development?
. Apart from its formal function, what kind of system is it in comparison with other sysrems in the
organization? Is it a primary or a secondary contributor to the organrzation? Is it fast paced or is
it a leisurely system that responds slowly to exrernal crisis?
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 47
As an observer, the analyst follows a set of rules. \7hi1e making observations, helshe is more likely to
listen than talk and to listen with a sympathetic and genuine interest when information is conveyed.
The emphasis is not on giving advice or passing moral judgment on what is observed. Furthermore,
care is taken not to argue with persons being observed or to show hostility towards one person and
undue friendliness towards another.
\(hen human observers are used, four alternative observation methods are considered:
l. Natural or Contriaed: A natural observation occurs in a setting, such as the employees, place of
work; a contrived observation is set up by the observer in a place like a laboratory.
2. Obtrusiue or An obtrusive observation takes place, when the respondent knows
[Jnobtrusiue:
he/she is being observed; an unobtrusive observation takes place in a contrived way, such as
behind a one-way mirror.
3. Directorlndirect: A direct observation takes place, when the analyst actually observes the subject
or the system at work. In an indirect observation, the analyst uses mechanical devices such as
cameras and videotapes to capture information.
4. Structured or Unstructured In a structured observation, the observer looks for and records a
specific action, such as the number of soups a shopper can pick up before choosing one.
lJnstructured methods place the observer in a situation to observe whatever might be pertinent at
that time.
Any of these methods may be used in information gathering. Natural, direct, obtrusive and
unstructured observations are frequently used to get an overview of the operation. The degree of
structure increases, when the observation has a specific purpose. The obtrusiveness may decrease,
when one wants to observe the tasks that make up a given job. Indirect observation could be used in a
similar manner. Finally, contrived situations are used to test or debug a candidate system.
Electronic observation and monitoring methods are widely being used in information gathering tools
because of their speed, efficiency and low cost. For example, some truck fleets use an electronic
recorder system that records, analyses and repons information online about the hours and minutes a
vehicle was driven faster than 50 miles/hour. Onsite observations are not without problems:
. Intruding into user's area often results in adverse reactions by the staff, therefore, adequate
preparation and training are imponant.
. Attitudes and motivations of subjects cannot be readily observed - only the actions that result
from them.
. Observations are subject to error due to the observer's misinterpretation and subjective selection
of what to observe, as well as the subjects' altered work pattern during observation.
. Unproductive long hours are often spent in an attempt to obserre specific one-time activities or
events.
. N(hat assurance can be given that the observation process is not seriously affecting the system or
the behaviour being observedl
o \7hat interpretation needs to be made about observarion data to avoid being misled by the
obvious?
. How much skills are required and available for actual observation?
Onsite observation to be done properly in a complex situation can be very rime consuming. Proper
sarnpling procedures must be used to ascertain the stability. Inference drawn from small samples of
behaviour can be inaccurare.
Interaiews
The interview is a face-to-face, interpersonal role situation in which a person called the intervien er
asks a person being interviewed, questions designed to get information about a problem area. The
interview is the oldest and most often used device for gathering information in systems work. It has
qualities that behavioral and onsite observations do not possess. It can be used for two main purposes:
. As an exploratory device to identify relations or verify information, and
o To capture information as it exists.
Validity is no small problem. Special pains are taken to eliminate interview bias. \7e assume thar,
information is more valid, the more freely it is given. Such an assumprion stresses the voluntary
character of the interview as a relationship freely and willingly entered into by the respondent. If the
interview is considered a requirement, the interviewer might gain the respondents' time and affention
but cannot be certain of the information gathered during the interview.
In an interview, since the analyst (interviewer) and the person inten'iewed meet face ro face, there is an
opportunity for flexibility in eliciting information. The analyst is also in a position to observe the
subiect. In contrast, the information obtained through a questionnaire is limited to rhe subjects'
written responses to predefined questions.
There are four primary advantages of an interview:
. Its flexibility makes interview a superior technique for exploring areas, where nor much is known
about what questions to ask or how to formulate questions.
o It offers a better opportunity than the questionnaire to evaluare rhe validity of the information
gathered. The interviewer can observe not only what subjects say but also, how they say it.
o It is an effective technique for eliciting information about complex subjects and for probing the
sentiments underlying expressed opinions.
. Many people enioy being interviewed regardless of the subject. They usually cooperare in a study,
when all they have to do is talk. In contrast, the percentage of returns to a questionnaire is relatively
low, often less than 20 per cent. Attractively designed qu"estionnaires that are simple ,o ,"rrrn, .rry
to follow and presented in a context that inspires cooperation improve the return rate.
The major drawback of interviews is the long preparation time. Interviews aiso take time to conducr,
which means more time and money. So, whenever a more economic alternative captures the same
information, the interview is generally not used.
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 49
4. Record the Rcsponse: Obtain the response in detail and note it down correctly.
5. Data Rccording and Notebook: Care mu$ be taken to record the data, their source, and time of
collection. If there is no recording of conversation, the analyst runs the risk of not remembering
enough details, attributing them to the wrong source, or orherwise distorting the data.
Buestionnaires
In contrast to the interview is the questionnaire, which is a term used for almost any tool that has
questions to which individuals respond. It is usually associated with self-administered tools with items
of the closed or fixed alternative type. By its nature, a questionnaire offers the following advantages:
o It is economical and requires less skill to administer than the interview.
o Unlike the interviews, which generally question one subject ar a time, a questionnaire can be
administered to a large number of individuals simultaneously.
. The standardized wording and order of the questions and the standardized instructions for
reporting responses ensure uniformity of questions. In contrast, the interview situation is rarely
uniform from one interview to the nexr.
50 System Analysis 8r Design M.S. University - D.D.C.E.
. The respondents feel greater confidence in the anonymity of a questionnaire than in that of an
interview. In an interview, the analyst usually knows the user staff by name, job function, or
other identification. \7ith a questionnaire, respondents give opinion without fear that the answer
will be connected to their names.
. The questionnaire places less pressure on subjects for immediate responses. Respondents have
time to think the questions over and do calculations to provide more accurat e data.
The advantages of self-administered questionnaire outweigh the disadvantages, especially when cost is a
consideration. The principal disadvantage is a low percentage of return. Another disadvantage is that,
many people have difficulty in expressing themselves in writing. Because of these disadvantages,
interview is probably superior to questionnaire.
Tjtpes of Intenieus and Questionnaires
Interviews and questionnaires vary widely in format and structure. Interviews range from the highly
unstnrctured, where neither the questions nor the respective responses are specified in advance, to the
highly structured alternative in which the questions and responses are fixed. Some variation within
this range is possible.
Structured interviews and questionnaires may differ in amounr of structuring of questions. Questions
may be either'closed or open-ended. An open-ended question requires ,ro ,"rp-onr" direction oi specific
response. In a questionnaire, it is written with space provided for the response. Such questions are
often used in interviews than in questionnaires because scoring takes time.
a Now that vou have had the new installation for six months, how would you evaluate the benefits?
a l$flhat is your opinion regarding the "no smoking" policy in the DP centre?
a If you had a choice, how would you have designed the present information center?
Closed puestions
Closed questions are those in which the responses are presenred as a ser of alternatives. There are {ive
maior varieties of closed questions.
l. Fill in the blank questions request specific information. These responses then can be statistically
analyzed.
Example
.:. \fhat is the name of MIS directory in your firm?
n 'What is the average number of calls you receive from clients?
2. Dichotomous (Yes/No) typ. questions that offer two answers have advanrages similar to those of
the multiple choice type (explained later). The problem is making certain thar, a reliable response
can be answered by yes or no; otherwise, an additional choice (e.g., yes, no, don't know) should
be included. The question sequence and content is also important.
Example
* Are you personally using a microcomputer in your business? (Please circle one)
, Yes No
* If not, do you plan to be using one in the next 12 months? (Please circle one)
* Yes No
.i. In the performance of your work, are you personally involved in the compurer
hardware/software purchase decisions? (Please circle one)
Yes No
3. Ranking scale questiorx trk the respondents to rank a list of items in order of importance or
performance. In the following example, the first question asks the respondent to rank five
statements on the basis of, how they describe his/her presenr job.
Example
Please rank the five statements in each group on the basis of, how well they describe the job
' mentioned on the front page. \7rite "1." for the statement that best describes the job, write "2" for
the next best and so on to "5" for the least well that describes the job.
lVorkers on this job.
4. Multiple choice questions offer respondents specific answer choices. This offers the advantage of
faster tabulation and less analyst bias due to the order in which rhe answers are given.
52 System Analysis & Design M.S. Universitv - D.D.C.E.
Respondents have a forward bias towards the first alternative item. Alternating the order in which
answer choices are listed may reduce bias but at the expense of additional time to respond to the
questionnaire. In any case, it is important to be aware of these types of biases when constructing
multiple choice questions.
Example
Example
How satisfied are you with the following aspects of your present job? (Please circle one for each
. question)
V.ry No Yrry
Dissadsfied Dissatisfied Opinion Satisfied Satisfied
1. Thewaymy | 2 3 4 5
job provides
for steady
employment
2. Thechance 1 2 3 4 5
to be respon-
sible for the
work of others
3. Thepleasa- I 2 3 4 5
ntness of the
working conditions
Figure 4.2
Advantages and drawbacks of the structured and unstructured interview and questionnaire
technigues are listed below.
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 53
Interview
Drawbacks
Structured 1. Easy to administer and 1. High initial preparation cost
evaluate due to standardization
Requires limited training 2. Standardization of questions
tends to reduce spontaneity
3. Easy to train new staff 3. Mechanizesinterviewing,
which makes it impractical
for all interview sett
Figure 4.3
puestionnaire C onstruction
If prototyping is to be successful, then it is essential that the prororype is created quickly to give timely
feedback to the development life cycle.
Do io Flow I O","r,"*O
So urce
.l Desiin otion
Process l
Doto Flow 2
Dolo Store
Process 2
o An arrow identifies data flow - data in motion. It is a pipeline through which information flows.
o A circle or a bubble (some people use an oval bubble) represents process that transforms incoming
data flow(s) into outgoing data flow(s).
. An open rectangle is'a data store - data at rest - or atemporary repository of data.
Note that, a DFD describes data flow rather than how they are processed, so it does not depend on
hardware, software data structure or file organization. The key question that we are trying to answer
is: what major transformations must occur for input to be correctly transformed into output?
Several different notations or symbols have been suggested by different people. The most important
are the notations suggested by Yourdon and by Gane and Sarson. The symbols used are:
56 System Analysis & Design M.S. University - D.D.C.E.
2. Process
t/
3. Source or Destination
-
4.
tt
II
Data Store
tr
Naming Conuentions in DFD
Each component in a data flow diagram is labelled with a descriptive name. Process names are further
identified with a number that will be used for identification p.rrpor.r. The number assigned to a
specific Process does not rePresent the sequence of processes. Ii is srrictly for identification" and will
take on added value when we study the compon.nt, ihrt make up a specific process.
The name of data stores, sources and destination are written in capital lefiers. process and data flow
first letter of each work capitalized.
names have the
The names of the Processes must clearly explain the actual task being performed in the process.
Deueloping a DFD
To be useful and informative, DFD must be drawn properly. This section shows, how to draw them:
where to start, how to add details to description, how to be consisrenr in naming items included
in the
diagrams. The discussion also points out common mistakes that should be avoide"d.
Deaelopment Prccess
System analysts must first study the current systems, that is, the actual activities and processes that
occur. In the terminology of structured analysis, this is the study of physical system. The physical
system is translated into logical descriptions that focus on data pio..rres. Ii is ,drrrrt"g"o.r, to
emphasize data and Processes in order to focus on actual activities "r,d
that occur and the resources needed
to perform them, rather than on who performs the work.
These are examples of physical system details
Department Copy room or building location
Person Step number
Frt. Procedure
M'S' university - D'D'C'E' Requirement Analysis and Methodologies 52
During data flow analysis, these details are evaluated in terms of the logical componenrs of data {lows,
processes, data stores, origins and destinations.
During the design stages that follow, system requirements are translated into logical design details.
Actual construction, such as the programming of computer software, rranslates logical sp""cificrtior,s
into physical features and a working information system.
This overview of the sequence of activities for analysis and design of information systems will be a
backdrop for this discussion of data flow analysis.
Context Diagram
The context diagram is the top level DFD. It represents a sysrem as a single process with only major
inputs and outputs to the system represented as data flows. The source and destination of the data as
external entities are also represented. Figure 4.5 represenrs a conrext diagram. This is a level O DFD
for an accounts payable system. Note that, only a single process is shown. The vendor is both the
source and the destination of data.
Accou nts
poyoble
Bolonce
Vendor
invoice
Vendor
Do to
The rules stated above are not very hard and fast. However, it is a good practice to follow them.
Accounis J Accounts
record /
poyobie bolonce
Vend o r data
Rcpresentation ofData
Digits (0-9)
Rccord.
Record is a collection of related data e.g., in file EMPLOYEE record for any employee is S.No.
Employee Code, Employee Name, Date of Birth, Address, Basic, HRA, DA and Total ddary, These
date items are also known as data fields.
Data Itern
Data item or field is a set of characters, used together for representing a particular data element. In our
example name of an employee is represented by the data item, Employ.. ,r-..
FieldName
The name of each data item is known as the field name, e.g., Employee Code, Basic, HRA etc.
File
File is a collection of related records. File is of three rypes:
. File containing text is a text file.
. File containing program is a program file, and
. File containing data is a data file.
Here our consideration is data file so we are more focused on a data file concepts.
In our example, EMPLOYEE file might consists of the employee records for MANAV computers pw.
Ltd.
Data and b{ormation
\Thereas data is some meaningful fact or figure, information is the processed data on which decisions
and actions are based. Information can also be defined as rhe orgrrrir.d and classified data to provide
the meaningful values to rhe receiver.
lnformotion
Figure 4.7
60 System Analysis 8c Design M.S. Universitv - D.D.C.E.
The ERD is graphical data modeling tool. It is based on a perception of a real worker that consists of a
collection of basic objects, called entities, and of relationships among these objects. \7hile DFD
caprures the process through which data gets transformed, ERD captures the data and its relationship.
Account num
Customer nome
Cuslomer ci
The entity-relationship model for data uses three features to describe data. These are:
l. Entities, which specify distinct real-world items in an application.
2. Relationships, which connect entities and represent meaningful dependencies between them.
3. Attributes, which specify properties of entities and relationships.
Ve illustrate rhese terms with an example. A vendor supplying items to a company, for example, is an
enriry. The item he supplies is another entity. A vendor supplying items are related in the sense that a
vendor supplies an item. The act of supplying defines a relationship between a vendor and an item. An
enrity ser is a collection of similar entities. lVe can thus define a vendor set and an item set' Each
member of an entity set is described by some attributes. For example, a vendor may be described by
the attributes:
(vendor code, vendor name, address)
EKD Notations
Symbol Meoning
Entiiy Type
Weok
Entity Type
Relotionship
Type
ldentifying
Relotionsh ip
Tvpe
ru Attribute
Key Attribute
Multivqlued Atrribute
Composite
Afiribute
Derived Atrribute
Totol Porticipotion o{
E2inR
Cordinoliiy Relotion
l:N for El:E2 in R
Figure 4.9
Relationship behteen Entitlt Sets
The relationship between entity sets may be many-to-many (M: N), one-ro-many (1:M), many-to-one
O1, 1) or one-to-one (1:1). The 1:1 relationship between entity sets E1 and E2 indicates that for each
entity in either set there is at most one entity in the second ser rhat is associated with it. The 1:M
relationship from entity set El to E, indicates that for an occurrence of rhe enriry from the ser E1, rhere
could be zero, anq or more entities from the entity set E2 associated with it. Each entity in E, is
associated with at most one entity in the entity set E1. In the M: N relationship between enriry sets E1
andB2, there is no restriction to the number of entities in one set associated with an enrity in the other
52 System Analysis & Design M.S. University - D.D.C.E.
set. The data structure, employing the ERD model is usually shown pictorially using entity-
relationship E-R diagrarn
To illustrate these different types of relationships consider the following entity sets: Depanmenr,
Manager, Employee, and Project.
The relationship between a Department and a Manager is usually one-to-one; there is only one
manager per department and a manager manages only one department. This relationship between
entities is shown in Figure 4.10. Each entity is represented by a rectangle and the relationship between
them is indicated by a direct line. The relationship for Manager to Department and from Department
to Manager is both 1:1. Note that a one-to-one relationship between two entity sers does not imply
that for an occurrence of an entity from one set at any time there must be an occurrence of an entity
in the other set. In the case of an organization, there could be times when a depaftment is without a
manager or when an employee who is classified as a manager may be without a department to manage.
[EI]l-r'*
Figure 4.14 M:N Relationship
I
Figure 4.16: E-R Diagram for Vendor; Item and Their Relationship
EMP MASTER
GET
EMP-DET
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 65
Data:
Do while.not.eof EMP_MASTER
open EMP_MASTER
go toP
get EMP_DET
If analysts want to know, how many characters are in a data item, and by what orher
names it is
referenced in the system, they should be able to find rhe answers in a properly
developed data
dictionary. Data dictionary is developed during data flow analysis and assists^ the analysts involved
in
determining sysrem requirements.
Analyst uses data dictionary for five imponant reasons:
l. To manage the details in large sysrems.
2. To communicate a common meaning for all system elements.
3. To documenr rhe features of the sysrem.
4. To facilitate analysis of the details in order to evaluare characterisrics and determine where sysrem
changes should be made.
The dictionary contains two types of descriptions for the data flowing through the system:
data
.r. gro.rped together to make ip , drtl strucrure.
elements and data structures. Data element,
Data Element
The most fundamental data level is the data element. No smaller unit has meaning ro rhe sysrem
analyst or the user. For example, invoice number, invoice dare, erc. Data elements arjuilding
blocks
for other data in a system. The data element entry consists of the following irems:
. Data Name
. Data Description: Brief description of what the data elemenr represents
. Aliases or additional names for the data element
. Length or size of the element
. Data values: It is the list of possible values for rhe data element
65 System Analysis Er Design M.S. University - D.D.C.E.
Example
Data Name: Part-Color
Data Description: This is the color of the paft of the machinery and is ordered
time to time from local vendor
Aliases: P-Colour, Color
Length: Text of Length 15
Data Values: May take one of the following values. Red, Orange, Yellow,
Blue, Purple, Pink
Data Structure
A data stnrcture is a ser of data items that are related to one another and that collectively describe a
component in a system. Both data flows and data stores are data stnrctures.
Data structures are built on four relationships of components which may be data elements, or other
data structures (see Firyre 4.17).
(") Sequence Rctationship.. Defines the components that are always included in a particular data
structufe; a concatenation of two or more data items.
(b) Selection (Either/Or) Relationship..Defines alternative data items included in a data structure.
G) lterational (Repetitiue) Rclationship.' Defines the repetition of a comPonent, zero or more times.
(d) Optional Relationship: A special case of iteration; data elements may or may not be treated zero or
one time.
The description of the above relations can be found in Figure 4.l7.Figore 4.18 shows an example of
defining structure using these sets of relationships.
always included in a
particular data structure
structure
data structure
Symbols: : Is equivalent to
+ and
[ ] either,/or
{ } iterations of
0 optional
* encloses annotation
Data dictionary is an important tool for structured analysis as it offers the following advanrages:
It is a valuable reference_ for designing the system. It is used to build the database and write
' programs during design phase.
It assistsin communicating meanings of different elemenrs, terms and procedures.
'
. It facilitates analysis in determining additions and changes in the system.
It helps the analyst to record the details of each element and data srrucrure.
'
. It is used to locate errors in the sysrem descriptions.
. It is also a useful reference document during implementation of the system.
68 System Analysis Ec Design M.S. University - D.D.C.E.
Four Rules
Four rules govern the construction of data dictionary entries:
1. \fords should be defined to stand for what they mean and not the variable names by which they
may be described in the program; use CLIENT-NAME not ABCPQ or CODE06. Capitalizarion
of words help them to stand out and may be of assistance.
2. Each word mu$ be unique; we cannot have two definitions of the same client name.
3. or synonyms, are allowed when two or more entries show the same meaning. A vendor
Aliases,
,rr*b.i may also be called a customer number. However, aliases should be used only when
absolutely necessary.
'W'e
4. Self-defining words should nor be decomposed. can even decompose a dictionary definition.
For instance, we might write
Vendor name Company name, Individual's name
which we might further decompose to
Company name (Contact) + Business name
Individual's name Last name + First name + (Nliddle initial)
There are two kinds of data dictionaries:
(, integrated and
(i0 stand-alone
The integrated dictionary is related to one database management system. To the extent the
org nir tlondata is under this DBMS it is global or organization wide. However, very few enterprises
hai. all their data eggs in one basker, so the dictionary documentation (metadata) can be considered as
local and fragmented.
The stand-alone dictionary is not tied to any one DBMS, although it may have special advantages for
one DBMS, such as the IBM DB-DC Data Dictionary, which has special features related to the IBM
IMS DBMS, but is still a stand-alone variety of dictionary.
Both these types of dictionaries can be identified by functions as either passive, active, or inline.
Viewed .ith.i *ry, bI rype or function, the differences are striking. Passive, active, and in-line
dictionaries differ functionally as follows:
o passiue Data Dirtionarizs: The functionally passive dictionary performs documentation only. This
variety of dictionary could be maintained as a manual rather than an automated database. For more
than iimited documentarion use, the automated passive dictionary has clear advantages. From the
organizational view, the documentation function is the most important dictionary service_with the
151Jr, por..rrial benefits, so the passive dictionary should not be thought of negatively. It has more
lmitei functionality but may perform its critical function of global documentation best of all.
. Aaiae Data Dietionaies: Besides supporting documentation to one degree or another, the active
data dictionary supporrs program and operations development by exPorting database definitions
and program d.tr-rto."g. definitions {or languages such as COBOL and Job Control Language
gCL) for execution-ri*" performance. The IBM DB/DC Data Dictionary already mentioned is
such a srand-alone, active data dictionary. A dictionary, such as this is not an in-line data
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 59
dictionary as delivered, which is not to say that it could not be put inJine by a determined effort
of major proportions.
. InJine Data Diaionaries: An inJine data dictionary is active during program execution,
performing such feats as transaction validation and editing. Such a dictionary would always have
some documentation value, but documentation across the organization about the organization's
functions and activities and all the organization's information data stores is not likely. In-line
dictionaries are associated with DBMS products, such as Cullinet Software Corporation's IDMS-R
or Cincom System's TOTAL, to name just two.
The root of the tree, on the left of the diagram is the starting point of the decision sequence. The
particular branch to be followed depends on the conditions that exist and the decision to be made.
Progression from left to right along a particular branch is the result of making a series of decisions.
Following each decision point is the next set of decisions to be considered. The nodes of the tree, thus,
represent conditions and indicate that a determination must be made about which condition exists
before the next path can be chosen. The right side of the tree lists the actions to be taken, depending
on the sequence of conditions that is followed.
icroa
//
r'-r' Lord"13n \
-jt/--"-' \ .tcian
Cardiiiq,'n ,--
\ ---- -r .dclisn
-'\\
condt'rao {
\ rdnn
/ Jr ,rcrlo']
t'\ ',f\
\ nflo.t
-"a-
i
LoFdr'fiotr \a-
-."- .r' .AClOq
\(
C'o"rditron
\ \ Acfien
Developing a decision tree is beneficial to an analyst in two ways. First of all, the need to describe
conditions and actions forces the analyst to formally identify the actual decisions thar must be made. It
becomes difficult for them to overlook an integral step in tLe decision process, whether ir depends on
quantitative or non-quantitative variables.
Itis possible, for instance, to show what discounr action ro rake, depending on the number of dollars
sPent by customers. \7hen an organization opens accounts with dealers and suppliers, it formalizes an
agreement for taking discount from the full invoice price. Two conditions- are specified in this
agreement: first, the invoices must be payed within 10 days of receipt, and second, theiize of discount
will depend on the value of the invoice. It is agreed that under some condirions, the organization can
take the action of deducting 3 per cent, under other conditions a 2 per cent discount and under all
other conditions, no discount is offered.
Decision tree also forces analysts to consider the sequence of decisions. Consider the sequence of
decisions in the example (Figure 4.20). You can quickly determine that one condition the amount of .
-
the invoice - does not matter until the condition of payment duration is met. Therefore, the decision
tree identifies the time condition first and shows the two values (within 10 days and more than 10
days). The discount condition is described next, bur only for the branch of the tree 'within ren days,.
The more than 10 days' has no other relevant condition and so it shows the relevant action
(unconditionally). The tree shows that action "Pay full invoice amounr" applies under two different
conditions. It also shows that, there is no reason to pay invoice of less th; < 5000 within 10 days,
since there is no discount available for these amounrs.
The sequence of decisions is easy to see in the example. The condition of having a valid purchase order
does not matter unless the invoice has been signed. The signature is important blcause the condition of
having a signed invoice mu$ be met before processing can continu". tt analyst can consider the
authorization condition. "
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 71
Decision trees may not always be the best tool for decision analysis. A decision tree for a complex
system with many sequences of steps and combinations of conditions may be unwieldy. A large
number of branches, with many paths through them, will cloud rather than aid analysis. The analyst
may not be able to determine, which business policies or practices guide the formulation of specific
decisions.'Where these problems arise, decision tables should be considered.
/ n*sco*cpr*y
pM
-/
f
t\/ ordcrpaporui \
trcxcr *ot peprAl E ,lra
("* lrcir P:g*ly FneJ -
tn*,a \ Pa1+m* Aulhcd:r*
,i.Jr'€d
- \ / Pwls*
oulhaam
\ -/
ffiiisbd.
\ { lnBoic€ fllts FoperY
Vauoa*crus: \
ffi:H \*
p'flr€s
-E€i€6r
' l& r{sdr
wlherinelipn eai-d
law;*prcprlp $xd-
or&wirrJ pogmst
YaAl prrclran andr
pnpand
{:
DechionTabhs
A decision table is a matrix of rows and columns, rather than a tree, that shows conditions and actions.
Decision rules, included in a decision table, state what procedures to follow when certain conditions
exist. This method has been used in analysis of business functions, such as inventory control, sales
analysis, credit analysis and transportation control and routing.
The decision table is made up of four sections: condition statement, condition entries, action
statements and action entries (Figure a.22).The condition statements identify the relevant conditions.
Condition entries tell which value, if any, applies for a particular condition. Action statements list the
set of all steps that can be taken when a certain condition occurs. Action entries show, what specific
action in the set to take when selected conditions or group of conditions are true. Sometimes notes are
added below the table to indicate when to use the table or to distinguish it from the other decision
tables.
72 System Analysis & Design M.S. University - D.D.C.E.
I 2 3 4
Cl. Fatient has basic health IY
insurance
Actions
A?. Pay*othing xx
A3. Fayfull amount of service X
The discount on invoice problem discussed and solved through decision rree in Figure 4.20 is
represented as decision table in Figure 4.24. T_he Y/N format (V a"a N) is used in the .oridirio,
section but actual values for each of the conditions are shown in the condition sratemenr section."rrrry
The
format does not change the usefulness of decision table.
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 73
The other method deals with one condition at a time and does not add duplicate combinations of
conditions and actions, as discussed below.
l. State the first condition and permissible acions.
.t. Add the second condition by duplicating the first half of the matrix and filling in different Y
and N values from the new condition in both halves of the expanded marrix.
234
Actions
T : 345 6
Figure 4.25: Decision Table for above Problem using Yes/No Format
C he c king D ecision T a b le s
After constructing a table, analysrc verify it for correctness and completeness to ensure that, the table
includes all the conditions, along with decision rules that relate them with actions. Redundancy and
contradictions must also be removed.
Eliminate Redundancjt' Decision tables can become large and unwieldy, if allowed to grow in an
uncontrolled fashion. Removing redundancy can help reduce the size of the table. Redundancy occurs
when both of the following are true.
. Two decision rules are identical except for one condition row, and
. The actions for the two rules are identical.
Remoue Contradiaioas.'Decision rules contradict each other when two or more des have the same set
of conditions and the actions are different. (Remember, if they are the same, then the decision rules are
redundant).
Contradictions either mean that the analyst's information is incorrect or that, there has been an error
in the construction of the table.
IJnnecessary rules can be avoided. For example, in the case of invoice discount, look at Figare 4.26,
the first three columns have first condition as N and the result always comes to be "pay full amount"
because when the payment period is not within 10 days, we do not need to ask any further questions.
The first three columns may be converted into one column. Similarly, we can reduce the rules, by not
asking unnecessary conditions. An example of reducing the size is given in Figure 4.26.
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 25
29$ dhcount X
Fullan'rount X X
Figure 4.26
Types ofTable Entries
. Limited Entry Form: The basic table structure used in the previous examples, consisting only of
Y, N, and blank entries is a limited entry form. It is one of the mosr cornmorrly ,rr.Jformats.
Two other forms are also widely used.
o Extended Entry Form: This replaces Y and N with action enrries, telling the reader how to decide.
In this format, the condition and action statements themselves are not complete, which is why the
entries contain more details than Y and N.
Mixed Entry Form: Analysts may prefer to combine features of both the limited and extended
' entry forms, in the same table. Gbnerally, only one form should be used in one secrion of the
table but between the condition and action secrion, either form can be used. The example in
Figure 3.16 presents condition entry in extended form and action entry in limited form.
The examples of these three types of statements are illustrated in Table 4.1.
Table 4.lz Examples of Three Types of Statements
(, Program Documentation: Many companies discuss about programming documentation but fail to
provide it adequately. Before a program is developed, the systems analyst should provide the
programmer with the required documentation. The logic in some programs is best described by a
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 77
flowchart. Sometimes, decision tables are most appropriate for explaining the logic of a Program.
Programmers should insist on proper documentation before starting a job.
(ir) Operations Documentation: A well for a long time with little or no
designed system may run
from the systems department. This can happen only when the system has been
"rrirtr.r..
documented in a proper way. For smooth running of the system, the console oPerator must have
complere knowledge about the job. Providing the computer centre with a set of oPerating
instructions will not serve the purpose. The instructions must be in a form readily accessible to
the console operator and written in simple and understandable style. A systems analyst must
thoroughly discuss all the requirements of new jobs with the operations staff before the job can be
properly transferred.
(11i) (lser Documentation: Systems users require proper documentation to PrePare a developing system
and to smoothly carry oLLt existing ones. To meet this requirement, each system should have a
manual that spells everyrhing that the users must know to do their iob correctly. Users require
rwo general types of information; complete details to handle each case of the system Processes,
and overall piclure of the system so that they can see their role in the total operation of the
comPany.
(iv) Management Documentation: The documentation required by corporate management differs quite
* lot lro1n that required by users. The systems designer must know the requirements of the
management and provide documentation to enable management to perform three functions:
Documentation also includes plans to test the system and convert from the old to the new one. The
sysrems analyst must also provide a plan to train the personnel affected by the changes.
During the life cycle of the completed system, the system itself must provide documentation of, how
well ii is operating and consequently should be designed to yield data about itself as a normal by-
product.
Docurnentation Tools
A system is required to meet the needs of maintenance, reliability and testing. For this, you need well-
designed modrrlrr software. The following three tools can be used to measure the affectivity of a
system:
78 System Anal;,sis & Design
M.S. University - D.D.C.E.
. Structured flowchart
. HIPO diagrams
o \(/anierlOrrdiagrams
Structured Floarchart
A structured flowchan a graphic tool that forces the system designer ro srrucrure the software in
-is
modular as well as top-down form. It is also called Nassi-schneidermJrrn .harc.
The main advantage of
using the structured flowchart is that it provides a proper srructure that
can be retained by" the
Programmer for developing the application software. i{oi.rr.r, ro ensure effective use of structured
flowcharts, a programmer should b. ,r, .*p..t in using these.
There are three basic elements or symbols that are used in developing structured
flowcharts. They are
being listed below.
. Decision symbols
. Process symbols
. Iteration symbols.
Decision Symbols
The decision symbol symbolizes alternative conditions that can occur. The program
must have a
manner of handling these alternative conditions. The decision symbol
' -"yr rho#"ctions for more rhan
two alternatives at the same time.
Process Symbols
l+
t
Y
)
Connecieu:
Eo;nr
The:e
us;d Econncctihcrvit
oG
An example of flow chart in Figure 4.27 represents the flow of logic while adding rwo numbers.
c:q
,
I
/1 hd{t I
C=4{
...Y.
I ,* !
{ t*=e
/
-t_
li A*t=fi
".,"," _ ."J
Figure 4.28: Another Example of Programme Flow Chart to check even or odd number
HIPO Diagram
HIPO is another commonly used method for developing sysrems software. An acronym for
Hierarchical Input Process Output, this method was developed by IBM for its large, complex
operating systems.
The assumption on which HIPO is based is that, it is easy to lose track of the intended function of a
system or comPonent in a large system. This is one reason, why it is difficult to compare existing
sys_t_eTs against specifications (and therefore why failures can occur even in sysrems that are technically
well formulated). From the user's view, single functions can ofren extend ,i.o5 several modules. The
concern of the analyst then is understanding, describing and documenring the modules and their
interaction in a way that provides sufficient details but that does not lose sighi of the larger picture.
HIPO diagrams are graphic, rather than prosaic or narrarive, description of the sysrem. They assist the
analyst in answering three guiding quesrions.
. \7hat does the system or module do? (Asked when designing the system.)
. How does it do it? (Asked when reviewing the code for resring or maintenance.)
M.S. University - D.D.C.E. Requirement Analysis and Methodologies 81
. N7hat are the inputs and outputs? (Asked when reviewing the code for resting or mainrenance.)
. A HIPO description for a system consists of visual table of conrents and functional diagrams.
Visual Table of Contents
The Visual Table Of Contents (VTOC) shows the relations between each of the documents making up
a HIPO package. It co_nsists of a hierarchy ehart that identifies the modules in a sysrem by n.r*ber"ard
in relation to each other and gives a brief description of each module. The numbers in the conrenrs
section correspond to those in the organization section.
The modules are in increasing detail. Depending on rhe complexity of the sysrem, three to five levels
of modules are typical.
Functional Diagrams
There is one diagram for each box in the VTOC. Each diagram shows input and ourpur (right to left
or toP to bottom), major processes, moyement of data and control points. Traditionai flow chart
symbols rePresent media such as magnetic tape, magnetic disk, and printed ourpur. A solid arrow
shows control paths, and an open arrow identifies data flow.
The iilustration is an overview o{ the system, represenring the rop level box in the VTOC. The
numbers on the lower Portion of the diagram indicate, *here more Jetails will be found; that is, they
refer to other document numbers.
3.0
ttu$try
hvolct
procaqs
rosr{rrlE
Some functional diagrams conrain other intermediate diagrams (Figure 4.29). Bu they also show
external dara, as well as internally developed data, and the steps in the procedure where the data is
used. A data dictionary description can be atrached to further explain the data elemqnts used in a
Process.
82 System Analysis Ec Design M.S. University - D.D.C.E.
2. S+mlrarEaciloa erB
3. Del$rr*latran3scihrt
VPe
To#gram3.1r
Toe{rem3.12
tsdagrarns.lS
Tod8flram3.t{
Wamier-OnDiagrarus
'Wanier-Orr
diagrams are other tools aimed at producing, working and correcting program. The
'lVanier-Orr
diagrams take its name from its co-developers, Jean-Dominique 'Warnier and Kenneth
Orr. Unlike VTOCs, pseudocode or flow charts, which read from the top to down and then from left
to right, the \Tanier-Orr diagram reads from left to right, then from the top to down. \ffhereas a flow
chart requires many symbols, 'Wanier-Orr diagrams employ brad circles, parentheses, dots, and bars.
Diagrams can depict data-diction^ry-type definition or detailed program logic.
'$Tanier-Orr
The uses brackets to group related elements, following the sequence control structure.
Technically the symbol for a bracket is "[" and a brace is "{"but lWanier-Orr calls "{", a bracket. Thus,
we see that three elements in Figure 4.30 make up the single element "systems process". Two elements,
preliminary and detailed, make up analysis.
Iteration stnrcture (called repetition in the Warnier-Orr notation) is depicted by a parenthesis to the
left of the series of elements to be repeated (Figure 4.31). A number inside the theses indicates the
number of times the iteration should be performed. Thus, there will be four bracketed elements, until
there are no more bicycles to assemble.
M's' university - D'D'C'E' Requirement Analysis and Methodologies g3
fneuminary
{o'ru,'o
systemsprocess (r) Iffi:
l*our.lop*.nr
Figure 4.30
(b) \Marnier-Orr diagram for
bicycle assembly
'Oprn cgnqk€f,
?r6ciss Stekparts
(0, E4d)
Assemble *heeh
Finish ass*mbly
Figure 4.31
G) W.arnier-orr diagram for the accounts payable stub-over-cheque module. This diagram
shows the
three control structures of sequence, selection, and repetition
Figure 4.32
A plus sign enclosed in a circle, indicates an alternation or selection srnrcrure. A bar separates the
decision into true (above the bar) and false
@elow the bar) (see Figure 4.32).
For our AP cheque-printing logic, the lil/arnier-orr diagram (Figure 4.32)
has brackets surrounding the
repetitive oPerations and_a decision point inside the p.o."L secttn to
determine whether a discount will be
taken' This diagram also has a beginning and endingiogic that our bicycle
example do", ,rot require.
\ffarnier-orr diagrams show the
beginning, processing, and ending parts of the detailed logic, quite
explicitly..In keeping with the structured
-"thodolog1l, th"y have a single entry and a single J*i, ilr.y
support the three control structure and compareJ'with'other tooli they employ f; ry-bolr.
84 System Analysis & Design M.S. Universitv - D.D.C.E.
Disadvantages of rhe lWarnier-Orr system include left-to-right, top to down construction (the opposite
of all other tools which are top to down, left to right) and its focus on processing versus data flow.
Introduced b,v \Tarnier and later modified by Orr, Warnier-Orr diagrams are thus, used to decompose
and partition rhe conrents of a data store, much like DFDs are used to decompose the functions of a
system.
Figure 4.33 illustrates how a Warnier-Orr diagram would be drawn for the employee-master file. As
before, the employee-master file is defined as a set of employee records, thus, leading to the equation:
'Warnier-Orr diagram tells us how to define an employee record. 'W'e can write (as
Flowever, the
before):
fr*t*.r* su!r{.d&!|r
I
Enptote.tmbq I f.tptvtt*-}m- gry-rddn.r
..r.".
I
nn$qitctw- 1 f"+ry-r,l-.- &rirjddru.
rod-rd&tr I ddmt
&qlqt* knmncljdcrr [ ,o**.---- fh-60d6
rledrd io 'Ur*
Sqr-m{-nlry-
infsmrt*x
law-ri-lnrin
-[i*o.y
O'tr*r $y*fl-
idomrtio
Vm-pytdl-
Srtory (D.Y)
Employee_home_address ({P0_box_/apartment-number))+
street_address + city_address +
state address+Pin code
M.S. University - D.D.C.E. Requirement Analysis and N{ethodologies 85
City_address : 2 (character) 12
Telephone_-extension : 4 digits,
where an extension always consists of a four digit number.
As this example suggests, there are several good reasons for using \Warnier-Orr diagrams to describe the
contents of data stores. First, \Tarnier-Orr diagrams are easy to construct, read, and interpret. Second,
they permit larger, complex terms to be decomposed into constiruenr parts. Third, Warnier-Orr
diagrams describe the three logical constnrcts used in programming. Fourth, they can be used to
analyse, both actions and things. Fifth, they simplify the definition and order of rerms to be entered
into the data dictionary. The main disadvantage of a lVarnier_Orr diagram is that it does not show
relationships which exist within and between data stores.
Nassi-Shneidermann Charts
Nassi-Shneidermann (I'{-S) charts offer an alternative to either pseudocode or program flow charts.
Named after their authors, N-S charts are much more compact than program flow charts, as it include,
pseudocode like statements, feature sequences, decisions, and repetition constructs. Figure 4.34
illustrates an N-S chart designed for processing payroll cheques.
Enur chtxluo-nunibcr
Sel contral sm - 0
la(femettt c(xltsl$lrm
Writ+ paycheque
TTY1'YY:*Y Repeiition
Co$robiutn s Clle{u$oul
Y6 No
Nassi-Sheidermann charts are also sometimes called the Chapin charts. This system was developed by
and named for 1. Nassi and B. Shneidermann in the early 1970s and differs markedl;, from thtse we
have examined so far. It uses rectangles divided into halves with an angular line for selecrion, a
horizontal rectangle for sequence, and the word DO\7HILE for iteration. The bicycle-assembly chart
aPPears in Figure 4.35, and the AP check-printing system with discounting in Figure 4.36.
Nassi-Shneidermann charts are winning wider acceprance in the compurer industry because they so
simply illustrate complex logic. Perhaps, as analysts evaluate the various tools at their disposal, these
charts will gain even more followers. As with other srructured rools, they are single entry and single
exit, and efficiently accommodate modules. However, they are nor as useful for conveying system flow
as they are for detailing logic developmenr and they are difficult to maintain.
Crk$lercnr
oldisd
$rbdffi (do fria iNoi6lis
.Mof insi* fi$6
*iId ffitff inwiaro l&8l
*Hdsifi0i6esl{
Priru dEE liae m €h{ *
rea nt heA&c lo *$(g
llird
fddm&.mlldd&rs
'What
1. are process symbols?
2. Discuss Interviews.
4.6LET US SUM UP
In this lesson we discussed the following:
Main emphasis in system analysis is on determining the sysrem requirements. System
' requirements are the various features of the sysrem like inputs, ourpurs and lrriio,rs processes.
System requirements are documented and requirements specifications (SRS) are prepared.
'
Documentation of requirements is necess ary as there is a lot of handing over of requirements
' from one hand to another.
a The requirements analysis is done through fact finding techniques. These tools of fact finding
include interviews, questionnaires, onsite observations and st.rdy tf procedures and manuals.
a Studying procedures and documents of the system are useful in gathering information.
a Information about various processes may be gained by observing the work of the users.
a IJsers may be interviewed personally or may respond ro a ser of questions or a quesrionnaire. This
also helps in gathering of information by an analyst.
a Organrzation chart is used to represent the hierarchy of the organrzation The relations of various
departments, divisions, people with each other can be shown riirg rn organization chart.
a Decision tree and table are used to represent the processes where different acrions are taken
dependirrg on various conditions.
Decision trees are shown like a branch of a tree with nodes as decision points and the leaves as
' resulting actions.
Decision table is made up of four parts - condition statement, condition entry, action statement,
' action
9ntry. Entries are made in correspondence to a list of condition, ,rd irop.r action entry
marked in correspondence.
a Decision tables are of limited enrry (Yes/No), extended entry or mixed entry rype.
a Structured English is used to depict sequence, decision condition or iterational strucrure logics in
English like structures.
a system flow chart is used to define a business system as various processes and media are used in it.
a Watnier/Orr diagrams are used in development of complex sysrems. The key is ro move
backwards from output to funher backward.
a HIPO charts list inputs, outpurs and various processes in a graphical format.
a Structure charts are used to represent the relationship between various modules in a software, and
also what data they share between each other.
88 System Analysis & Design M.S. Universitv - D.D.C.E.
. Processes are defined using DFDs (Data Flow Diagram). The source and destination of data, the
data flow, processes and data stores implied are shov/n.
. Context diagrams are O level DFDs. They have only one process.
. Context diagrams may be further exploded into level 1 DFD's. Each process of level 1 DFD may
befurther exploded into level2 DFDs and so on.
. Data dictionary is a repository of all data items used in a system. It may hence be called data about
data or metadata.
. Data dictionary contains details of all data elements, the smallest possible units of data, and data
structure, set of data elements or other data structures.
o Entities are anlthing which may be characterized by certain attributes.
. Entities have relations amongsr them.
. Entity relationship diagram represents the various entities and the relations.
4.7 KEY\trORDS
Decision Trees; Decision trees are shown like a branch of a tree with nodes as decision points and the
leaves as resulting actions.
Decision Table: It is made up of four parts - condition statement, condition entr!, action statement,
action entry.
Structured English: It is used to depict sequence, decision condition or iterational $ructure logics in
English like structures.
$tstem FIow Chan: It is used to define a business system as various processes and media are used in it.
Warnier/On Diagrarus: These are used in development of complex sysrems. The key is to move
backwards from output to further backward.
HIPO Charts: HIPO charts list inputs, outputs and various processes in a graphical format.
Data Dictionary: It is a reposito ry o{ all data irems used in a system.
Entities: Entities are anything which may be characterrzed by certain attributes.
Entity Relationship Diagram: It represents the various enrities and the relations.
5
COST BENEFIT ANALYSIS
CONTENTS
5.0 Aims and Objectives
5.1 Introduction
5.2 The Real Cost
5.3 The Real Benefits
5.4 How to Define Cost Benefit Analysis
5.4.1, Steps in Cost Benefit Analysis
5.5 Identification of Costs and Benefits
5.6 Classification of Costs and Benefits
5.7 Evaluation
5.8 Selection of Evaluation Method
5.1 INTRODUCTION
Cost is associated with the two activities of developmenr and operation as follows:
Development comprises all the stages from the initial investigation srage ro rhe successful handover
' of a final sysrem ro the users.
. Operation also includes mainrenance of the system.
for a computer based system to nrn for years without substantial changes being needed to
It- is iare
allow necessary alternations changing business requirements or improvemenr; in haidware and
software. In fact, it is the experience of many long-esiablished comput., soft*ar" firms that the major
part of their analysis and programming effon is devoted to the maintenance of existing sysrems. So, an
important objective is to minimize cosrs in these areas.
Benefits are also of different type and can be grouped on rhe basis of advanrages they provide
ro rhe
management.
G) Hardware costs: The hardware costs include the costs of actual purchase or lease of compurers,
terminals, storage and output devices, as well as any additional furniture and other eqrripments.
Itis generally more difficuit to determine the actual cost of hardware when the sysrem is shared
by various users than for a dedicated stand-alone system.
(b) sofiware costu; The software costs are also easy to esrimare if we use packaged software for parricular
applications. Th..t: should be quoted price for each application package. Tf,e proble- b".om",
more
complex if we wish to modify an existing package. Ttis would i"q"i* quotations from one or more
systems desigr, consultants. The most difficult pricing situation o...rrc when only customised
software
would match our needs. Nonetheless, we should be able to negotiate .ort, *'ith our programming
consulant' It is recommended that we agree upon a reasonable figure, if possible.
G) Installation and lmplementation Cost: The hardware and software cosrs are rreared as our initial
system cost for tax calculation purposes. In addition, installation and implementation costs,
some
of which have been itemised below, may be included in the initial pricing. Initial operaror
training may be included in the system price. However, we may also h"r" Io pay for tr.krrp
persc,nnel in manual processes u,hile the training is in progress.
Some of the heads, which would incur cosrs, are as follows:
* Modifications may be required to the room which would house the sysrem.
t Some systems may require temperature, humidiry or dust conrrol equipment to be installed.
t \[e may wish to install fire or smoke detectors, fire extinguishers, security locks and the like.
.f. Stabilised power supply must be accounted for.
a conversion costs of moving from our old system to a new one may arise.
t Consulmnt's fees should be included if use their services selecting and implemenring our system.
(d) Ongoing Support and Growth Costs: Even where we cannot estimate a cost accurately, it's wise to
include an estimate based on whatever information can be gathered. The support and growth
costs are as follow:
{' Maintenance cost, which may be between 10 to 12 percenr. Equipment rental is a mapr expense
in case we opr for a pleasing plan.
* Training of new operators may be required.
* We may experience idle time cost when our computers are down and operators can't be assigned
to other productive tasks.
* Finance changes on borrowed capital used for sysrem acquisition.
* Insurance premium to cover the risk of damage to our system and records.
a Consumable supplies, like paper, printer ribbons, aad magnetic storage media (disk or tape), are a
significant continuing cosr.
* The cost of upgrading our sysrem ro accommodate furure growrh.
G) Perconnel Costs: Personnel costs include the salaries and benefits (insurance, vacating time, sick pay, etc.)
provided to EDP staff as well as to those involved in developing the system. Costs incurred during the
development of a system are one time costs and are known as developmental costs. Once the system
has been installed, the costs of operating and maintaining the system become recurring cosrs.
(0 S"ppll Costs: Supply costs are variable costs that increase use of paper, ribbons, disk and the like.
They should be estimated and included in the overall cost of the system.
G) the performance
Improued-Seruice-Lcael Benefits: Improved-service-level benefits are rhose where
of a system is improved by a new computer-based method. Registering a student in fifteen
minutes rather than an hour is an example of this rype of benefir.
(d) Improued-bfotmation Benefits: Improved-Information benefits is where compurer based methods
lead to better information for decision making. For example, a sysrem that reports rhe mosr,
M.S. University - D.D.C.E. Cost Benefit Analysis 93
(, That method by which we find and estimate the value of the gross benefits of a new sysrem specification.
(ir) That method by which we find and determine the increased operating cosrs associated with the
above mentioned gross benefits.
(iii) The subtraction of these operating costs from the associated gross benefits ro arrive ar ner benefi$.
(iv) That method by which we find and estimate the monetary value of the developmenr cosrs rhar
produce the above menrioned benefits.
(v) Those methods by which we show the time-phased relationship between net benefits and
development costs as they relate to cash flow, payback on investment, and time-in-process taking (or
not taking) into operation factors such as inflation etc. In short, the calculation of actual ner
benefit as cash flowback overrime.
Benefits can also be classified as tangible and intangible benefits. Tangible benefits are rhose savings that can
be actually measured. For example, decrease in production cosrs ,rJ ir.r.rr. in sales are tangibie benefirs.
Intangible benefits, on the other hand, cannot be measured. For example, improvement in the company's
image due to computerisation is the intangible benefit. Let us review ..ih .rt"gory,
(0 Tangibte costs and benefits: Tangibility refers to the ease with which, cosrs or benefits can be
measured. For example, an outlay of cash f.or any specific item or acriviry is referred ro as a
tangible cost. The purchase of hardware or software, personnel training and salaries are examples
of tangible accounrs costs. They are readily identified and measured.
Benefits are often more diftlcult to specify exactly than costs. For example, suppliers can easily
quote the cost of purchasing a terminal but it is difficult for them to tell specific benefits or financial
advantages for using it in a system. Tangible benefits such as co-pleting jobs in fewer hours or
producing error free reports are quantifiable.
(i, Intangibtc and bencfits: Costs that are known to exist but whose financial value cannot be accurately
costs
measured are cofporate known to as intangible costs. The estimate is only an approximation. It is
difficult to fix exact intangible costs. For example, employee morale problems becars. of installing new
system in an intangible cost. How much moral of an employ'ee has tree affected cannor be exactly
measured in terms of financial values. Intangible costs may be difficult even to identify, such as an
improvement in customer satisfaction from a real-time order entry system.
Intangible benefit such as more satisfied customers or an improved corporare image because of
using new sysrem are not easily quantified.
Both tangible and intangible costs and benefits should be taken into considerarion into evaluation
Process' If the project is evaluated on a purely intangible basis, benefit exceed cosrs by a
substantial margin, then we will call such project as cosr effective. On the other hand, if intangible
costs and benefits are included, the total cost (tangible as well as intangible) exceed the benlfits
which makes the project an undesirable investmenr. Hence, it is desirable that systems projects
should nor be evaluated on the basis of intangible benefits alone.
$1i) Direa or Indirect costs and benefits: Direct cosrs are those which are directly associare with a
system. They are applied directly to the operator. For example, the purchase of floppy for
< 400/' is a direct cost because we can associate the floppy box wiih .rror"y spend.
Direct benefits also can be specifically attributable to a given project. For example, a new
$/stem
that can 30olo more rransactions per day is a direct benefit.
Indirect benefits arc realized as a by-product of another sysrem. For example, a sysrem that tracks
sales calls on customers provides an indirect marketing benefit by giving additional information
about competition. In this case, competition informarion becomes an indirect benefit although its
work in terms of money cannot be exactly measured.
(iv) r*ea or Variablc costs and benefix: Some costs and benefits remain consranr, regardless of how a
system is used. Fixed costs are considered as sunk costs. Once encountered, they will not recur. For
example, the purchase of an equipment for a computer cenrre is called as fixed cost as it remains
constant whether in equipment is being used extensively or not. Similarly, the insurance, purchase of
software etc. In contrast, variable costs are incurred on a regular basis. They are generally pioponional
to work volume and continue as long as the system is in operation. For e"ample, the cost of .o-prra.,
forms vary in proportion to the amount of processing or tle length of the reptns desired.
M.S. University - D.D.C.E. Cost Benefit Analysis 95
Eixed benetits a\so ternain constant. Ry usrng a ne\J system, rt 20s/o oi staii members are reduced,
we can call it a fixed benefit. The benefit of personnel saving may occur every monrh. Variable
benefits, on the other hand, are realized on a regular basis. For example, the library information
system that saves two minutes in providing information about a particular book whether it is
issued or not, to the borrower compared with the manual system. The amount of time saved
varies with the information given to the number of borrowers.
5.7 EVALUATION
Computerised information systems are developed and utilized by two categories of organisations:
(r) firms, which have the in-house capability.
(b) Service bureaus, which develop them for usage by the outside clients.
In both the basic investments are of a high order in terms of not only the compurer system, but
cases,
also in terms of site preparation involving air-conditioning, civil and electrical *ork, foilo*ed by
recruitment of manpower (computer-centre manager, system analysts, programmers and op"rrtoi,
beside input/output, quality .ontrol, data preparaiion and other support itaff) and their training.
Thele can be only one objective behind making such sizeable investments and that is to prorii"
satisfaction to the end user, in-house or outside.
(i) System Cost: In most cost-conscious organisation, an initial esrimare is prepared for the on-line
cost of developing the system and the recurring costs of running the system. The cost estimation
has to cover details such as:
':' Routine manPower (systems, programming, operations and for service bureau, marketing staff).
* Manual manPower ( specially employed to handle production, quality conrrol, correcrion of
check-bots etc.)
, Data preparation (direct entry or punch entry or punch lord kind, whether done in house or by
outside agencies)
n consumable stores (stationery, cards or floppy disk, carbon, ribbons etc.)
* compurer time (actual usage house often logged by the computers itself)
* Administrativeexpenses
':' Logistic expenses (for the conveyance of manpower, transportation of documents or ourput
repon etc.)
* Miscellaneous expenses (Ovenime etc.)
(ii) Needfor Eaaluatinra'\Whether or not service bureaus face their irritated cusromers or gser organisations
meet their dissatisfied departmental heads, a sound principal ro run computerised information-qystems is
to introduce a reliable procedure for managemeni of hardware, ,oftwrr" and daa preparation. Such
Practices, as regular and time bound squares and componenrs, do help hardware management. Attention
to programming capabilrry, scientific design and development of sysrems and a high-gualiry support for
system sofrware is invaluable for software managemenr. Data preparation is a week link in most of the
organisations and qualiry control of entered data is a music, among other factors.
An actual evaluation plan has to begin from the stage when one knows what has been spent on a
computerised information system and then, projected to find out whether there has been value
96 System Analysis & Design M.S. University _ D.D.C.E.
for money sPent or not. Such an evaluation is certainly not easy and can be approached in a
twofold manner the realization from the process side of sysrem evaluation and from the product
side of outpur reports.
$ii) Process Eualuation: A process evaluation is carried our from the computer professional's point of
view. Design of the system and the quality of programming have ro srand the rigours ol careful
assessment. Quite often the system design in presented by the project leader to rhe entire application
software group and gains from their friendly criticism. Programming standards are today q"it. t lgt
and a modular approach is far preferable to single integrated programmes. Internal oi irrt"rrrrl
training in efficient program writing techniques can achieve surprisingly good results.
Another asPect of process evaluation is the utilizations of hardware resources. In all computers
capable of rumming multiple programs there should be adequate prior consideratio., to ,riir. ,t
different memory panitions, and to allocate input-output devices in a judicious way to each
partition. The allocation of certain tapes or discs to production or development jobs oiten helps
in obtaining an efficient and steady mix of jobs. The resr for evaluation is ro ensure oprim;l
system utilizations, with the least possible idleness o{ any single device.
The third aspect of process evaluation is to check whether there is minimum wastage of
comPuter-time. It may happen that well-designed systems with good quality programmes are
running with an apparently maximum waste of hardware resources and still rheamay hide many
wasteful runs. This arises due to two reasons associated with development and production stages
of the information system. At the development stage, lack of ,igoro..s quality control may a[Jw
many avoidable runs of the programmes. At the production stage lack of full scale debugging may
make some Programs prone to repeated runs. In fact the best relevant check is to 1ay do*r,
permissible number of development runs and ensure fitness of the programmes for release for
production runs without wasting systems resources.
(iv) Produa Eualuation: The product evaluation is concerned with the end user and has to ensure that
the output reports dre of. acceptable quality are conrinue to be of use. Insrances are not that
comPuter outputs, which have long from out of use, are not pointed out as such by
managers(users) out of difference to the higher level policy of computerisation while the ,rrrrg"i,
continue to use their little pocket-books containing relevant data. To avoid such a possibility,
organisations having a fairly long tradition of computer based information sysrems should, once
in a while take stock of the existing axutomation and computerised operarions.
The objective was to devise a questionnaire for each uses department, outlining the group of
computer applications for these. General questions related ro rhe usefulness, q""lity level-and
achievement of promised improvement and responses were asked on a rhree tier basis. Specific
questions were also framed regarding the reponed items of information, frequen.y of ,.portr,
nature of formats and reponing levels. The purpose of the questionnaire was to elicit frank
responses from the managers about the utility of the prevailing computerised information systems.
The replies received were then tabulated and put up ro rhe higher management for evaluarion of
each computerised system from three angles, should the system be continued as such? Or should
the system be curtailed or even replaced altogether by other some useful systems? Or should the
system be modified to cover more ground so that its utility were enhanced?
The result of such an introspection are not always as per expectations and managers do not feel
comfortable to answer such questions or the quesrions themselves are nor formulated clearly or
followed up seriously. These considerations however do not belittle their usefulness.
M.S. University - D.D.C.E. Cost Benefit Analysis 97
Payback Time -
_ (AxB)+(CxD)+G
E+F
\7here A is Capital Investment
B is Investment Credit Difference (o/o)
C is Cost Investment
D is Company's federal income tax bracket
E is Benefits after federal income rax
F is Depreciation
G is Installation Period
An Example
In developing 'Stock Monitoring System' (as discussed in our case scenario), the vice president of the
comPany requested a cost/benefit analysis. The systems analyst identified the vaiious costs and
benefim of the project and computed the following data:
tr'" pro1..r"t:.'*rilfJ|oolrl1::"mically feasible if the projecr cosr is less than or equal ro rhe
present value.
Now, let us understand this method by the following example.
M.S. Universitv - D.D.C.E. Ccst Benefir Analysis 99
AnExample
Suppose, the average annual benefit is { 20,000 for a projec of life 5 years.
The money is invested by
considering the interest rate to be 10 per cent. By using the ,bore fo.m.rla, the presenr .rrdrr"
fo, y"r, i,
calculated as shown in Table 5.1. The calculation of pr.r"nt value afrer 2 y:"^rsi,
ill.rrtr*r"d below:"r.h
Given, F : <20,000
r:10
n:2
Then,
20,000
D-
t- = ( 18181.82
(1+tO/fi0)2
The Break-even is the time when costs of current and candidare sysrems become equal.
'We
can conclude that the project would be economically feasible for getting the benefit
of < 2o,ooo
afrer I year if the project cosr is less than or equal to < 1g,ig1.g2 (presenJvaluei.
Table 5.1: calculations of Present value for a Software proiect of Life 5 years
2 20,000 16,528.92
3 20,000 15,426.30
4 20,000 13,660.27
5 20,000 12,410.42
(11i) Net Benefit Method: The net benefit method is the simplesr merhod of cost/benefit
analysis. In this
method, the net benefit is calculated by 5uh.acting the total esrimared cosr from the total
estimated benefit. Although it is the easiest method, its has main drawback is that it
does not
consider the time value of money.
1 0 10,000 - 10,000
benefits are compared to find the time when the money invested is recovered, similarly, in break-
eyen method, the co$s of current and candidate system are compared to find the time when both
are equal. This point is called the break-even point. The period prior to break-even is the
investment period and the period beyond break-even is the return period.
Table 5.3: Illustration of Break-even Point based on Cost Estimates of
Current and Candidate Systems
.:. '\il7hat
new skills will
be required? Do the existing staff members have these skills? If not, can they
be trained in due course of time?
Generally project will not be rejected simply because of opcrational infeasibility but such
considerations are likely to critically affect the nature and scope of the eventual
recommendations. This feasibility study is carried out by a small group of people who are familiar
with information system techniques, who understand the parts of the business that are relevant to
the project andare skilled in system analysis and design process.
3. EconomicFeasibilitjt: Economic analysis is the most frequently used technique for evaluating the
effectiveness of a .proposed system. More commonly known as cost/benefit analysis; the
procedure is to determine the benefits and savings that are expected from a prciposed system and
compare them with costs. If benefits out weigh costs, a decision is taken to design and implement
the system. Otherwise, further justification or alternative in the proposed system will have to be
made if it has a chance of being approved. This is an ongoing effort that improves in accuracy at
each phase of the system life cycle.
A number of approaches for assessing the costs of solutions have been suggested. Approaches
include the following:
* Last This is based on the observation that costs are easier to control and identify the revenues.
cost:
Thus, it assumes that there is no change in income caused by the implementation of a new system.
In such an evaluation, only the costs are listed and the option with the lowest cost is selected.
, Timc to Pajtbaele.This method of economic evaluation is an attempt to ans'wer the question.
How long would it be until we get out money back on this investment in system? This requires
data on both costs and benefits. This method of evaluation has two significant disadvantages:
(r) It only considers the time taken to return the original investment and ignores the
system's long term profitability.
(ir) The method does not recognizethe time value of money. Benefits that accrue in the
' distant future are not worth as much as similar benefits that occur more quickly but
this method fails to recognize this.
.t Coa-effectiueaess.. Sometype of cost benefit analysis is performed for each alternative. Rough
projections of equipment requirements and costs, operational costs, manpower costs,
maintenance cost, etc., need to be made. Projections of potential, tangible as well intangible
benefits are also needed to be made. For example, tangible benefits are: ability to obtain
information, which was previously not available, faster or timely receipt of information,
improved or better decision making, improvement in planning and control etc.
4. Social Feasibility: Social feasibility is a determination of whether a proposed project will be
acceptable to the people or not. This determination typically examines the probability of the
project being accepted by the group directly affected by the proposed system change.
5. Management Feasibilitjt; It is a determination of whether a proposed project will be acceptable to
management. If management does not accept a project or gives a negligible support to it, the
analyst will tend to view the project as a non-feasible one.
7. Timc FeasibiliSt: Time {easibiliry is a determination of whether a proposed prqea can be implemented
fully withina stipulated time frame. If a projea takes too much time iiis tit<eiy to be rejected.
'
(r) It is difficult to measure the cost incurred in providing better cusromer seryice.
(b) Improvement in the cornpany's image due to computerisation is an intangible benefir.
G) The present value method does not consider the time value of invested money.
(d) The net benefit method considers the time value of money.
5.11 KEY\T/ORDS
Hardwarc Costs: The costs of actual purchase or lease of computers, terminals, storage and output
devices, as well as ally additional furniture and other equipments.
M.S. University - D.D.C.E Cost Benefit Analysis 103
Cost-saaing Benefits: Benefits that leads to reduction in administrative operational costs. A reduction in
the size of the clerical staff used in the support of an administrative activity is an example of a
cost-saving benefit.
Cost-aaoidance Benefits: Benefit which eliminate cost is known as cost-avoidance benefits.
G) Payback
(d) Tangible
G) Presenr Value
2. (") True
(r) True
G) False
(d) False
G) True
SYSTEM DESIGN
CONTENTS
6.0 Aims and Objectives
6,1 Introduction
6.2 Constraints
6.3 Logical and Physical Design
6.3.1 Logical Design
6.3.2 Physical Design
6.4 Structured Design
6.5 Modularization
6.5.1 Modular Design
6.6 Principles that Guide Software Design
6.6.1 Modularity and Partitioning
6.6.2 Coupling
6.6.3 Cchesion
6.6.4 Span of Control
6.6.5 Module Size
b.6.6 Shared Modules
6.6.7 N{odularSpecifications
6.7 User Interface Design
6.7.1 Objectives of Input Design
6.8 Form Design
6.8.1 \7hat is a Form?
6.8.2 Classification of Forms
6.8.3 Requirements of Forms Design
6.8.4 Form Control
6.9 Input Stages
Contd....
108 System Analysis & Design M.S. Universitv - D.D.C.E.
5.1 INTRODUCTION
System design is the pivotal point in the system development li{e cycle. Prior to this phase user
requirements have been identified. Information has been gathered to verify the problem and evaluate
the existing sysrem. The design is a solution, a "how to" approach, compared to analysis which is a
"what is" orientation.
The objectives of Information System Design can be outlined as follows:
o Specifi the loghal fusign elements
System design involves description of detailed design that describes the features of an information
system: input, output, files, and databases and procedures.
. Support business actiaities
A fundamental objective in the design of an information system is to ensure that it supPorts the
business activiry for which it is developed. In other words, the computer and communication
technology specified in the design should always be secondary to the results the system is intended
to produce.
M.S. University - D.D.C.E System Design 109
For example, if it is essential for an organization to move information very quickly ro remain
comPetitive, then the design specification of the information sysrem musr be built around this
essential business objective.
Similarly, the design must fit the way the firm does business. If a sales system is designed to work
best for orders that are paid in cash when in fact the firm offers a liberal "sales-on-credit" policy,
management will not be happy. These examples show that fitting of a system to rhe needs of the
business is important. Objectives should guide virtually all system design decisions.
o Ensure that sgsterufeatures meet user requirements
User requirements are translated into system characteristics during design. '$7e say that an
information system meers user needs if it accomplishes the following:
* Performs the right procedures properly.
* Presents information and instructions in an acceptable and effective fashion.
* Produces accurate results.
Like the features of an information system, software musr also be carefully designed. System design
includes formulating software specifications.
The specifications state input, output and processing functions and algorithms used to perform
them. Software modules and routines focusing on what functions each performs and the
procedures for accomplishing them are specified as well. Selection of programming languages,
software packages and software utilities occur during the logical process ,.rd r..o--.rrdrtio.r, ,r"
included in software specifications.
o Confirm to dcsign standards
As you can see, the objectives of system design are broad and affect many aspecrs of both the
application and the organization in which the system will be used. As a resrrlt, it should be no
surprise to learn that well managed information sysrem groups also maintain sysrems development
standards. System design specifications are developed within these standards.
110 System Analysis & Design M.S. University - D.D.C.E.
6.2 CONSTRAINTS
The designer, normally, will work under following consrrainrs:
Hardware The existing hardware will obviot,sly affect the system design.
Software The available software (operating system, utilities, language etc.) in the market will
constrain the design.
Budget The budget ailocated for the project will affect the scope and depth of design.
Time-scale The new system may be required by a particular time (e.g., the start of a financial
year). This may put a consrraint on rhe designer to find the best design.
Interface The new system may require some data from another computerized system or may
provide data to another system, in which case, the files must be compatible in format
and the system must operate with a certain processing cycle.
. Preparesa logical design walk through the information flow, outpur, input, conrrols, and
implementation plan.
. Reviews benefits, costs, target dates and system constraints.
As an illustration, when safe deposit tracking system is designed, sysrem specifications include weekly
rePorts, a definition of boxes rented and boxes vacant and the summary of the activities of the week -
boxes closed, boxes drilled and so on. The logical design also specifies ourpur, input, file and screen
layout. In contrast, procedure specifications show, how data are entered, ho* files are accessed and
how reports are produced. (See Figure 6.1).
M.S. University - D.D.C.E. System Design ill
Progroms
Files
O ulpul I lnput R
Specilicoiiols M osfer
I Specificot,ons E
P
Repoding Comm unicotion
Determine the o
R M oster
T
I
File ond
S
Dolobose
pec i{ic oiio ns
I P.o.".r.ng
-------r,m=a+
eeqr;.e.ert
I
D olo
N
a
S pe c ific otio ns U
I
Bockup
enps{iE uipul
5B#iEEtiB,r6 t6[5Er
F.*la **\ybcre:
irtpulleAFut €E*municcgliaa
L*YOU!
ru€r:rNxrisitB . lnqui.t
File F#P
sFefffication i sp*eifieatio*ls iikTrupdotr
tayod / marrhngrc Trensact*rn
Eo*:fp.i rEealsf
{}off{r*nt
* Design physical information flow through the system and a physical design walkthrough.
. Plan system implementation
.:. Prepare a conversion schedule and a target date
A design is said to be top-down if it consists of a hierarchy of modules, with each module having a
single entry and a single exit subroutine.
6.5 MODULARIZATION
In structure design a program is segmented into small, independent modules. These are arranged in a
hierarchy that approximates a model of the business area and is organized in a top-down manner with
the details shown at the bottom. Thus, in structured design, we rry to minimize the complexity of the
M.S. University - D.D.C.E. System Design 113
problem and make it manageable by sub dividing it into smaller segments, which is called
modrlarization or decomposition. This has been shown in as below:
I I CffittB im@rate
$J
\ {
iJ
=t3
{"1 H@iffi d rnirsirnsm mt
p.'**""rrr-+1
\ /
CmtlModuh
DEte
Farafi!fief's C*nfrsl {fleg}
S&ta
ParaJreEIE €cllrol i8*g)
,1iuea:rutim
6.6.2 Coupling
Coupling is a measure of interconnection among modules in a program strucrure. It may
be
represented on a spectrum as shown in Figure 5.6. coupling depends on interface complexity
between
modules, the point at which entry or reference is made to a module and what data
passes across the
interface.
ro module 'a' and is accessed via a conventional argumenr list through which data are passed; a one-to-one
correspondence of items exists, low coupling (data coupling on the spectrum) is exhibited in this portion of
structure. A variation of data coupling, called stamp coupling is found q,hen a portion of a data structure
(rather than simple arguments) is passed via a module interface. This occurs between modules b and a.
No direct
coupiing
Conirolflog
The highest degree of coupling - content coupling - occurs when one module makes use of data or
control information maintained within the boundaries of another module.
Secondly, content coupling occurs when branches are made into the middle of a module. This mode of
coupling can be and should be avoided.
6.5.3 Cohesion
Cohesion is the degree to u.hich a module performs a single task. A cohesive module performs a single
task within a software procedure, requiring little interaction with procedures being performed in other
parts of a program. Stated simply. a cohesive module should (ideall1) do just one thing.
M.S. Universitv - D.D.C.E. S,vstem Design -117
'We
Cohesion may be represented as a spectrum shown in Figrire 6.8. always strive for high cohesion,
although, the mid range of the spectrum is often acceptable. The scale for cohesion is non-linear. That
is, low ended cohesiveness is much "worse" than the middle range which is nearly as "good" as high
ended cohesion. In practice, a designer need not be concerned with categorizing cohesion in a specific
module. Rather, the overall concept should be understood and low level of cohesion should be avoided
when modules are designed.
Although, the preceding tasks performed are loosely related, each is a separate function entity that
might best be performed as separate modules. Combining the function in single module can only serve
the likelihood of error propogation when a rnodification is made to any one of the processing tasks
noted above.
Moderate levels of cohesion are relatively close to one another in the degree of module independence.
'$(hen
processing elements of a module are related and must be executed in a specific order, procedural
cohesion exists. When all processing elements concentrate on one area of data structure,
communicational cohesion is present. Fligh cohesion is characterized by a module that performs one
distinct procedural task.
As we have already noted, it is unnecessary to determine the precise level of cohesion. Rather, it is
important to strive for high cohesion and recognize low cohesion so that software design can be
modified to achieve greater functional independence.
118 System Analysis & Design M.S. University - D.D.C.E.
On the one hand, excessive span of control, meaning a high number of subordinate modules, creare
considerable overhead in determining which module to invoke under certain conditions and in
es_tablishing calling sequences to pass data and results. On the other hand, it typically results from not
adhering to the coupling and cohesion objectives discussed previously.
Coll ng Modu e
Colling Module
Accepto b1e
Some organizations have established rules to manage module size. A common one is that no module
should contain more than 50 instructions. Another is that, the lisring of source code for a module
should fit into a single printed page. In some situations, these .rrles a.elppropriate but in others they
result in arbitrary decisions that miss the point of managing module size.
In general, we should seek designs in which the modules focus on a single purpose, are highly cohesive
and.are loosely coupled. The size of a module also depends on rhe l;g;rg;. Lesser insrrucrions are
used in a 4GL, while in any 3GL, the number of instruciions may be higher io, th. same rask.
I l.
trr rr
't
t
I ri rr I
lr* ,, I
i r. rr I
3.r t: I
l .i *r!
I rt r. I
t r. r* I
tt *. rr ll
t I r. ,. 1l
ls r* .r ll
lt.r rril
i{ rr rril
ls rr rr{
l* .r r.I
i, ii ,r ll
ll r* .r ll
li rr rril
IS.. .. ll
tl .. ,. l!
tt r; r] ll
lr.r tr at
t+ ri r* ,l
I... rr., - t!. "
-,.., ,lf , * ". r.. .tll" - . . r. , "{l , ., n I " . .il .. ,. +
FffilTT IFILICTY
3. The form's composition, color, layout (margins, space, etc.), and paper srock
Phltsi.cal Faetors:
should lend themselves to easy reading. pages shouid be numLered when multipage reports are
being generated for the user.
4. Orfur of data ltems: The data requested should reflect a logical sequence. Related data should be in
adjacent positions. Data copied from source documenrs Jould be in the same sequence on both
forms. Much of this design takes place in the forms analysis phase.
122 System Analysis & Design M.S. Universitv - D.D.C.E.
5. Ease of Data Entry: If used {or data entr/, the form should have field positions indicated under
each column of data and should have some indication of where decimal points are (use broken
vertical lines).
6. Siqe and Arrangentent: The form mu$ be easily stored and filed. It should provide for signatures.
Important items must be in a prominent location on the form.
7. Use of lnstructions: The instructions that accompany a form should clearly show how it is used
and handled.
8. EfficienE Consideratiozs.'The form must be cost effective. This means eliminating unnecessary
data and facilitating reading lines across the form. To illustrate, if a poorly designed form causes
10 supervisors to waste 30 seconds each, then 5 minutes are lost because of the form. If (the firm
uses 10,000 of these forms per year) then 833 hours of lost time could have been saved by a better
forms design.
9. Tjpe of Repod.' Forms design should also consider whether the content is executive summary,
intermediate managerial information, or-supporting-data. The user requirements for each type
often determine the final form design.
The first step in a procedure for forms control is to collect group, index, stock, and control the tonus
of the organization Each form is identified and' classified by the function it pelf onus and whether it is
a flat form, a snap-out form, or something else. Once classified, a form is evaluated by the data it
requires, where it is used, and how much it overlaps with other forms. The object is to get rid of
unnecessary tonus and improve those forms that are necessary.
Before launching a tonus control program, the designer needs to consider several questions:
Data conversion (i.e., conversion of the input data ro a computer acceptable medium);
'
. Data verification (i.e., checking the conversion);
Data control (i.e., checking the accuracy and controlling the flow of the data to the computer);
'
Data transmission (i.e., transmitting or transporring the data to the computer);
'
Data validation (i.e., checking the input databy a program when it enrers the computer system)
'
Data correction (i.e., correcting the errors that found tn arry of the earlier stages).
' are
careful thought has to be given to the choice of the input media and devices. Consideration
Y":h can
be given to:
o Type of input
. Flexibility of format
o Speed
o They-accuracy
. Verification methods
. Rejection rates
a Ease of correction
. Off-line facilities
. Need for specialized documenration
. Storage and handling requirements
. Automatic features
. Hard copy requiremenrs
o Security
o Ease of use
. Environment of data capture
. Portability
124 System Analysis & Design M.S. University - D.D.C.E.
The rate at which errors occur depends on the quantity of data, since the smaller the amount of data to
input, the fewer the opportunities for errors.
Poor form design can lead to a
2. Allow ample space for the data. Overcrowding causes eye strain and may tax the interest of the
user.
3. IJse easy-to-learn and consistent terms, such as "add," "delete," and "create."
alilUl',1i.i5
i'i
t:)
! .---*--*..".-il:
.i
I ,,i"1,-ttx; l.l,u.lijili 9a t :,
ll
i! tJl it{arrlt f[:tnilri,] i,3 *D &iirf $H.til
$
!1Ar1ii!G
*,*u*l
[.or"n
li
li_: I i I l:$i.liiii l,,njlEii i'1 rj,
I
Files are the hean of computer application. Constructing, files we musr understand the basic types of
files used to describe the file hierarchy.
6.10.1Types of Files
There are various types of Files in which the records are collecred and maintained. They are
categorized as:
126 System Analysis & Design M.S. University - D.D.C.E.
. Master File
. Transaction File
. Table File
. Report File
. Back-up File
o Archival File
. Dump File
o Library File
Master
Master files are the most important type of files. Most file design activities concentrare here. In a
business application, these are considered to be very significant because they contain the essential
records for maintenance of the organization's business. A master file can be further categorized. It may
be called as a reference master file, in which the records are staric or unlikely to change frequently. For
example, a product file containing descriptions and codes, a cusromer file containing name, address and
account number, are example of reference files-Alternatively, it may be described as a dynamic masrer
file. In this file, we keep records which are frequently changed (updated) as a result of transactions or
other events. These two types of master file may be kept as separare files or may be combined, for
example, a sales ledger file containing reference data, such as name, address, account number, together
with current transaction and balance outstanding for each customer.
Transaction
A transaction is a temporary file used for ts'o purposes. First of all, it is used ro accumulate data about
events as they occur. Secondly, it helps in updating master files to refleo the result of current
transactions. The term transaction refers to any business event that affects the organization and about
which data is captured. Examples of common transactions in the organization are, making purchases,
hiring of workers and recording of sales.
Table
A special type of master file is included in many systems to meet specific requiremenrs, where dara
must be referenced repeatedly. Table files are permanent files containing reference data used in
processing transactions, updating master file or producing ourpur. As the name implies, these files
store reference data in tabular form. Table files conserve memory space and make the program
maintenance easier by storing data in a file, that otherwise would be included in programs or masrer
file records.
Report
Report files are collected contents of individual output reporrs or documents produced by the sysrem.
They are created by the system, where many reports are produced by the system but the printer may
not be available for all the reports. This situation frequently arises, when the compurer carry our three
functions - input, processing and output simultaneously, rather than executing- each function in
sequence. In this case, the computer writes the report contents to a file on a magnetic tape or disk,
where it remains until it can be printed. That file is called the report file which conrains the unprinted
M.S. University - D.D.C.E. System Design 127
output data. The process of creating it is known as spooling which means that, output cannot be
printed when it is produced but is spooled into a report file. Then, depending on rhe availability of
printer, the system will be instructed to read the report file and print the ourpur on rhe printer.
Backup
It is a copy of master, transaction or table file that is made to ensure a copy is available if anphing
happens to the original.
Archiaal
These files are copies made for long term storage of data that may be required at a much later date.
Usually, archival files are stored f.ar away from the computer centre so rhat they cannot be easily
retrieved for use.
Dump
This is a copy of computer-held data at a particular point of rime. This may be a copy of masrer file to
be retained to help recovery in the event of a possible corruprion of the master file or it may be part of
a program in which error is being traced.
Library
Ltbrary file generally contains application programs, utility programs and system sofrware packages.
l'lll,,l
I .'
t
I r
'utu
, '
' '
,."tt'
123rl 5678
,.o
o
E9
-IJ OE
J4l a
Enter
Record
Gap
Phy s ical
record layout-
disk format 6 A}o'Y^!
.}
&
M.S. University - D.D.C.E. System Design 129
Iprro. I
programmer in the
I ri.ra I
Application
Programmer
\
Figure 5.13: Physical and Logical Records - A Contrast
o FiIe: A collection of related records make up a file. The size of a file is limited by rhe size of
memory or the $orage medium. Two characteristics determine how files are organized: activity
and volatility. File activity specifies the percentage of actual records processed in a single run. If a
small percentage of records is accessed at any given time, the file should be organized on disk for
direct access. In contrast, if a {air percentage of records is affected regularly, then sorting the file
on taPe would be more efficient and less costly. File volatility addresses the propenies of record
changes. File records with substantial changes are highly volatile, meaning the disk design would
be more efficient than tape. Think of the airline reservarion sysrem and the high volatility
through cancellations, additions, and other transactions, compared to tradition al payioll, which is
relatively dormant. Higher the volatility, more amractive is disk design.
o Database: The highest level i4 the hierarchy is the database. It is a set of interrelated files for real
time processing. It contains the necessary data for problem solving and,can be used by several
users accessing data concurrently.
There are four methods of organizing files: sequential, indexed sequential, inverted list and direct
access. Each method is explained.
Sequential
Sequential organization simply means storing and sorting in physical contiguous blocks within files on
tape or disk. Records are also in sequence within each block. To access a record, design is best suited
for "get next" activities, reading one record after another without a search delay.
In sequential organization, records can only be added at the end of the file. It is not possible to insert a
record in the middle of the file without rewriting the file.
lndzxed Sequential
Like sequential organization, keyed sequential organtz tion stores data in physically contiguous
blocks. The difference is in the use of indexes to locate records. To understand this method, we need
to distinguish among three areas in disk $orage: prime area, overflow area and index area. The prime
area contains file records stored by key or ID number. All records are initially stored in the prime
area. The overflow area contains records added to the file that cannot be placed in logical sequence in
the prime area. The index area is more like the data dictionary.It contains keys of records and their
locations on the disk. A pointer associated with each key is an address that tells the system, where ro
find a record.
Indexed sequential organization reduces the magnitude of the sequential search and provides quick
access for sequential and direct processing. The primary drawback is extra space required for the index.
It also takes longer to search the index f.or data access or retrieval.
Chaining and Inuened List OrganiXation
Like the indexed sequential storage method, the invened list organization maintains an index. The two
methods differ, however, in the index level and record storage. The indexed sequential method has a
multiple index for a given key, whereas, the inverted list method has a single index for each key type.
In an inverted list, records are not necessarily stored in a particular sequence. They are placed in the
data storage area but indexes are updated for the record keys and location.
The inverted lists are best for applications that request specific data on multiple keys. They are ideal
for static files because additions and deletions cause expensive pointer updating.
D ire ct Acce s s O rganiqatio n
In direct file organization, records are placed randomly throughout the file. Records need not be
access
in sequence because they are updated directly and rewritten back in the same location. New records
are added at the end of the file or inserted in specific locations based on software commands.
Records are accessed by addresses that specify their disk locations. An address is required for locating a
record, for linking records or for establishing relationships. Addresses are of ffi/o rypes: absolute or
relative. An absolute address represents the physical location of the record. It is usually stated in the
format of sector/track/record number. For example,3/t4/6 means, go ro secror 3, track 14 of that
sector and the sixth record of the track. One problem with absolute address is that they become
invalid when the file that contains the records is relocated on the disk. One way around this is to use
pointers for the updated record.
M.S. University - D.D.C.E. System Design 131
A relative address gives a record location relative to rhe beginning of the file. There must be fixed
length records for reference. Another way of locating , ,..orJ is bylhe number of bpes it is from the
beginning of the file. Unlike absolute addressing, if the file is moved, poinrers ,r."i ,ro, be updated
because the relative location of the record remains the same. Advantages and disadvanrages of ,ll th.
above discussed flle organizarions are briefly discussed in Figure 6.14.
It was a conventional file environment with no data integration or sharing of common dara across
applications. In a database environment, common daa are available and used by several users. Instead
of each Program (or user) managing its own data, data across applications are shared by authorized
users with the database software managing the data as an entity. A program now requests data through
the Database Managemenr sysrem (DBMS) which determines data sharing
The general theme behind a database is to handle information as an integrated whole. There is none of
the artificiality that is normally embedded in separate files or applications. A database is a collection of
interrelated data stored with minimum redundancy ro serve many users quickly and efficiently. The
general objective is to make information access easy, quick, inexpensive and flexible for the user. In
database design, several specific objectives are considered.
132 System Analysis & Design M.S. University - D.D.C.E.
. Controlled RedundanEt' Redundant data occupies space and, therefore is wasteful. If versions of
the same data are in different phases of updating, the system often gives conflicting information.
A unique aspect of database design is storing data only once. This controls redundancy and
improves system performance:
o Ease of ltarning and(Jse: A major feature of a user friendly database package is, how easy it is to
learn and use. Related to this point is that a database can be modified without interfering with
established ways of using the data.
. Data Indcpendence: An important database objective is changing hardware and storage proceCure
or adding new data without having to write application programs. The database should be tunable
to improve performance without rewriting programs.
o More lnformation at low Cosr.' Using, storing and modifying data at low costs is important.
Although hardware prices are falling, software and programming costs are on the rise. This means
that programming and software enhancement should be kept simple and easy to update.
. Accuracy and Integitj.' The accvracy of a database ensures that data quality and content remains
constant. Integrity controls detect data inaccuracies where they occur.
'W.ith
Rccouery from Failure: multiuser access to a database, the system must recover quickly after
it is down with no loss of transaction. This objective also helps maintain data accuracy and
integrity.
. PriuaE and Secuitg.' For data to remain private, security measures must be taken to prevent
unauthorized access. Database security must be positively identified and their action monitored.
o Performance: This objective emphasizes response time to enquiries suitable to the case of data.
How satisfactory the response time is, depends on the nature of the user database dialog.
In addition to the database itself, a set of programs is necessary to facilitate adding new data as well as
modifying and retrieving existing data within a database. This set of programs is referred to as a
Database Management System (DBMS). A database system merge data into one pool shared by all
systems so that any change automatically affects all relevant systems. The following figures define the
difference between the traditional file systems and database management system.
Figure 6.15 shows the Traditional File Systems in which each system is responsible for its own data.
L.,--,;'l
I rur"".. I
t-"t*-""" I
|
,*"0*
|
E
Figure 6.15: Traditional File System
M.S. University - D.D.C.E. System Design 133
Figure 6.16 shows the Database Management Systems in which data is centralized.
ADa6u?rts
He*eir;abl,e
l. File Consolidation: Poohng data reduces redundancy and inconsistency and promotes cooPeration
among different users. Since databases link records together logically, a data change in one system
will cascade through all the other system using the data.
2. Prograrn and File Indcpendence.' This feature separates the definition of the files from their
programs, allowing a programmer to concentrate on the logic of the program instead of precisely
how to store and retrieve data.
3. Aecess Versatilitlt: tJsers can retrieve data in many ways. They enjoy the best of both worlds -
sequential access for reportingdata in a prescribed order and random access for rapid retrieval of a
specific record.
4. Data Seeuitj; Usually a DBMS includes a password system that controls access to sensitive data.
By limiting their access to read-only, write-only, or specified records, or even fields in records,
passwords can prevent certain users from retrieving unauthorized data.
5. Program Deaelopmenl,.' Programmers must use standard names for data items rather than invent
their own from program to program. This allows the programmer to focus on desired function.
6. Program Maintenance:Changes and repairs to a system are relatively easy.
7. Special lr{ormation: Special-purpose report generators can produce reports with minimum effort.
logical view is what the data looks like, regardless of how they are srored. The physical view is the way
data exist in physical $orage. It deals with, how data are srored, accessed, o, ,.irt.d to other data in
storage. There are four views of data, out of which, rhree are logical and one is physical. The logical
views are the user's view, the programmer's view and the overall llgical view, called, SCH6UA. "
SCHEMA
Once a database system has been designed, it will be possible to identify each type of data item, data
aggregate, record and set by a name or code. It will be possible ro srare whiih data item rypes go
together to make da:,a types and record typ.r, and to identify which record ,yp., i"
-aggregate
members and owners of set types. A coded set of tables describing this information and stored in the
comPuter system on direct access devices is called a SCHEMA. It is a description of the dara srructure
which is separate from the data itself. The schema describes the areas, their identifiers and page sizes,
and indicates how these are related to the records and sets. In other sysrems, a different set of tables is
used for this.
The SCHEMA, therefore is the view of the data, the overall logical dara strucrure which is held by the
DBMS. Each time a Program requires data, the DBMS will loot up in the SCHEMA for the deta"ils of
the structure of the data requested. For example, if the progra* ,eq,rir"s an occurrence of a set, the
DBMS will look up in the SCHEMA, which record typei are required, how to find the relevant
records given a certain by the program, and perhaps, also, which areas the pages containing the
.k.y
relevant dataare stored in.
SUB-SCHEMA
In a database system, it
is not always possible to allow programmers to write the data division of their
choice for reasons of security or control. It is more ,s"f.rl io provide the programmer with a standard
description of the logical data to be used in a particular applicarion. All i.f"i.rr.., to data within the
Program will be for this description, which is called a SUB-SCFIEMA and is similar ro rhe SCHEMA
in structure. The DBMS has the job of matching data requesrs on a SUB-SCHEMA and data requesrs
based on the schema.
Network Moful
The network related data sets are similar to hierarchical ones, except that a node may have more than
one parent. Thus, a hierarchical DBMS is a subset of network DBMS. The trade off between the
simplicity of design of a hierarchical structure and the $orage efficiency of a network structure is a very
important consideration in database implementation. The Figure 6.18 shov's the network structure.
Relational Modcl
The relational structure, however, organizes the data in terms of two dimensional tables, that is,
relational data sets order data in a table of rows and columns and differ markedly from their
hierarchical or network counterparts. "There are no parent or node data sets as shown in Figure 6.19.
In a relational database management systems, we have the same concept of files, records, and fields.
Files are represented by two-dimensional tables, each of which is called a "relation". Records, which
can be visualized as rows in the table, are called "Tuples". Fields can be visualized as columns, and are
called by attribute names) or domains.
For example, note that, in the supplier table in Figure 6.19 we have three Tuples, or rows, and three
attribute names or columns. If we need to know the name of the supplier of blue chairs, the relational
DBMS searches the type and color columns of the furniture, table and finds supplier number 30, and
then, it scans the supplier table for number 30, which turns out to be PANKAJ'S. Since each "record"
is a row in the table and each "field" a column, an inventory system of 1600 Tuples, each with 5
attributes, would create a table of 1600 rows and 5 columns.
136 System Analysis & Design M.S. University - D.D.C.E.
SUTPLIffi
x, PANXAJ ?6$35.00
?6 trINESH 13S60.00
159 RAIESH 75,286.00
Since the relational structure organizes the data in rerms of two dimensional tables, they offer great
flexibility and a high degree of data security. The relational srrucrure uses relatively little
secondary storage. Unfortunatelv, the process of creating the tables is a rather
-.*o[ o,
pro."j.rr".
Another disadvantage of this stnrcture is that it generally requires more rime ro"lrborrt"
access information
than either of the other two structures. This is because much more information must be searched in
order to-answer queries posed to the systems. In addition, some implementation use a fixed amount of
storage for each field, resulting in insufficient storage urilization. in spite of these disadvantages, rhe
relational structure has gained rapid acceptance and is currently th" rnort popular of th! three
stnrctures. Many exPerts predict that it will eventually replace the others completely.
(b) Logical Data rndzpendence: If the database is organized in such a way rhar the logical srrucrure can
be changed without changing the application program, rhen, this level of dai independence is
called as logical data independence.
\Vhy the data independence is required? It is mainly due ro the follou,ing rwo reasons:
(0 The development of one application is generally rrery expensive and rime consuming. Therefore,
the application should be developed considering the possibiliry of changes lequired in
specifications of repons or queries in future. Hence, if the database is applicatilon independenr,
then there would not be any need to modify the application programs in-futrrre and hence will
save time and money of the organization.
Q) The requirement_ of queries or reports may be changed in future depending upon different
applications. If the database is application independent, then the data c^, b1 ,ior.d in one
particular representation (e.g. say in binary) but can be viewed in another represenration (say in
decimal). Sometimes the units of numeric data can also be changed in future (say from centimeters
to inches). So, there are a lot of possibilities of modification of speciiications given by
organization in future. Therefore, the data independence concepr is ideal for such applicaiions.
heck Your
1. Fill in the blanks:
G) Abstraction is a concept related to _
(b) is the strength of interconnections between modules.
(d) An entitl, having information together with operations that can be performed on it
is called an
2. State true or false:
Design constraints can be internal or external to the system. The processing options available to the
designers include Batch processing, Real-time processing, On-line processing or a combination of all.
Structured design is the most popular methodology for developing system design through a number of
steps. Obiect-oriented design is the latest method of designing the real life systems. In structured
design, a program is segmented into small, independent modules to minimize the complexity of the
problem.
A module may be categorized as a sequential module, incremental module or parallel module, within
the program stnrcture. The concept of functional independence is a direct outgrowth of modularity
and the concept of abstraction and information hiding. Cohesion is natural extension of the
information hiding concept. Coupling is a measure of interconnection among in a program structue.
System design process include output design, Input design, file design, procedure design and control
design. The result of the system design piocess is a document known as "system specification".
Atlast, prototyping is discussed, which is the process of creating, developing and refining a working
model of the final operational system.
6.13 KEY\T/ORDS
STtstem Design: A bridge between analysis and development of software, which produces a model of the
system.
Probhm Partitioning: Breaking down of a complex problem into small modules that could be solved
separately.
Top-doun Design: A design that starts from the highest level component of the hierarchy and
decomposes it into lower levels.
Bottom-up Design: A design that starts from the lowest level component of hierarchy and proceeds to
higher level component.
Coupling: The strength of interconnections between modules.
Cohesion: The strength of different elements within a module.
Stuaured Design' The most popular methodology for developing system designs wherein a program is
segmented into small, independent modules that are arranged in hierarchy and organized in top-down
manner.
Modulaiqation:Division of a complex program into small, independent segments/modules.
Sequential Module: A module that is referenced and executed without apparent interruption by the
application software.
Incremental Module: A module that can be interrupted prior to completion by application software and
subsequently, restarted at the point of interruption.
Parallel Mod.ule: A module that executes simultaneously with another module in concurrent
multiprocessor environments.
Moduta Module: Program components that combine data abstractons and procedured elements in an
object-oriented manner.
M.S. University - D.D.C.E. System Design 139
4. Differentiatebetween:
(") Physical design and logical design.
(b) Coupling and cohesion.
5. r$(/hat are different principles of system design?
6. 'S7hat
are the different design objectives?
G) Structured
(d) object
2. G) False
6) True
G) False
(d) True
SYSTEM IMPLEMENTATION
CONTENTS
7.0 Aims and Objectives
7.1 Introduction
7.2 \(hat is Implementation?
7.3 Types of Implementation
7.4 Process of Implementation
7.4.L Conversion
7.4.2 Training of Users
7.5 Maintenance
7.6 Review Plan
7.7 Hardware/SoftwareSelection
7.7.1 Procedure for Selection: Computer Contracr
7.7.2 Make vs. Buy Decision
7.7.3 Criteria for Software Selection
7.8 Let us Sum up
7.9 Ke)'words
7.lO Questions for Discussion
7.tI SuggestedReadings
7.1 INTRODUCTION
A crucial phase in the system life cycle is the successful implemenration of the new system design.
Implementation includes all those activities that take place ro converr from the old sysrem ro the n"ew
one. The new system-may be completely new, replacing an existing manual o, ,rrrorrrrr"d system or it
may be major modification to an existing system. In either ."rg prop.r implemenration becomes
144 System Analysis & Design M.S. Universitv - D.D.C.E.
necessary so that a reliable system based on the requirements of the organisation can be provided.
Successful implementation may not guarantee improvement in the organisation using the new system,
but improper installation will prevent it. It has been observed that even the best system cannot show
good result if the analysts managing the implementation, do not attend to every important details.
This is arL area where the systems analysts need to work with utmost care.
A design is a non-functional description of a solution. Though it is described (using design tools) in a
manner in which its applicability, advantages and limitations can be easily examined, it is no way a
working system. It is like the blueprint of a building constnrction - a house on the paper. The
construction engineer can follow the design to build the actual building.
Constructing the actual functional system starting from a design specification is known as system
implementation. Construction is invariabl,v a project in itself and therefore must be planned
beforehand. Planning and other implementation related issues are covered in this lesson.
Four types of change are encountered during the maintenance phase. These four activities are
undertaken after aprogram is released for use.
L Coryectiue Maintenanee: Even with the best quality assurance activities, it is likely that the
customer will uncover defects in the software. Corrective maintenance changes the software to
correct defects.
M.S. Universitv - D.D.C.E. System Implementation 14-5
2. Adaptiue Maintenance: Over time, the original environment (e.g., CPU, operating system,
business rules, external product characteristic) for which the software was deyeloped is likely to
change. Adaptive maintenance results in modification to the software to accommodate changes to
its external environment.
3. Perfeaiue Maintenance or Enhancement: As software is used, the user/customer will recognise
additional functions that will provide benefit. Perfective maintenance extends the software
beyond its original functional requirements.
4, Preuentiae Maintenance or Rcengineeing: Computer software deteriorates due to change, and because
of this, preventiye maintenance, often called software reengineering, must be conducted to enable
the software to serve the needs of its end users. In essence, preventive maintenance makes changes to
computer programs so that they can be more easily corrected, adapted, and enhanced.
Only about 20 per cent of all maintenance work is spent'fixing mistakes". The remaining 80 per cent
is spent adapting existing systems to changes in their external environment, making enhancements
requested by users, and reengineering an application for future use. When maintenance is considered to
encompass all of these activities, it is relatively easy to see why it absorbs so much effon.
7.4.l Conversion
Conversion is the process of changing from the old system to modified or new one. Many different
activities needed to be performed in conversion process depending upon the rype of
^re
implementation (as defined above). During fresh implementation, all necessary hardware is installed
and manual files are converted to computer-compatible files. During replacement implementation, old
hardware may be replaced with new hardware and old file structures are also needed to be converted
to new ones. The conversion process is comparatively simpler in the third type of implementation,
i.e., modified implementation. In such implementation, existing hardware is generally not replaced and
also no changes are made in file structures.
Conuersion Plan
Before starting conversion process, the analyst must prepare a plan for conversion. This plan should be
prepared in consultation with users. The conversion plan contains following important tasks:
(, Selection of conversion method;
(i0 Preparation of a conversion schedule;
(iii) Identification of all data files needed to be converted;
(iv) Identification of documents required for conversion process;
(") Selecting team members and assigning them different responsibilities.
145 System Analysis & Design M.S. Universitv - D-D.C.E.
Conuersion Methods
(") Training Programmes and Seminarc: Many programmes and seminars are conducted by the analyst at
the user's place for providing them the required training for converting and operating the new system.
M.S. University - D.D.C.E. System Implementation 147
(b) User's Manual: IJser's manual is the training guide that contains complere description on how ro
implement and operate the candidate system. It has to be prepared with development of every
new or modified sysrem. It must conrain the following:
(, Hardwarerequirementsspecifications
(ir) Software requirements specifications
G) Help Screem.'Helps screens are the useful aids to provide training ro the users in operaring rhe
system. They provide online help to the users during execurion of the system. These screens musr
be designed by the analyst or other training personnel during implemeniation phase of SDLC.
(d) In-house Training: The main advantage of offering in-house training is that instruction can be
tailored according to the requirements of the organisation. Often ihe ,endors negoriare fees
and charges that are more economical so that company can involve more personnel in the
training Program than is possible when travel is required. However, rhe disadvantage of
distracting telephone cells, business emergencies and other interruptions ,roi be
overlooked
-,rrt
Although high-quality training is an essential step in systems implementation, yet it is not sufficient by
itself.
7.5 MAINTENANCE
Implementation is not the last phase of SDLC. As the user requirements may change in future, it
becomes essential for the developer to maintain the system. After completion of ilplemerrrrrio.,
phase, the software is required to be properly maintained. If the sysrem s nor properly maintained, it
may fail too. Therefore, generally more than 50 per cent of total software developmenltime is spent in
maintaining the system.
Maintenance is actually improvement and updation of software in response ro rhe changes in the
organisation. It includes many activities including following:
. Correcting design errors
o Correcting coding errors
148 System Analvsis Er Design M.S" University - D.D.C.E.
7. 7 HARD\TARE/SOFT\TARE SELECTION
Implementation of a computerized system will invariably involve hardware and software. In some
cases the existing hardware/software may need updating while in some other cases procuringa.whole
new set of system may be need.
The system analyst has to determine, what software package is best for the candidate system and,
where sofrware is not an issue, the kind of hardware and peripherals needed for the final conversion.
To do the job well, rhe analyst must be familiar with the computer industry in general, what various
computers can do or cannot do, whether to purchase or lease a system, the vendors and their outlets,
and the selection procedure.
M.S. Universitv - D.D.C.E. Systemlmplementation 149
Prepare the
requisition
Submit the
document to the
Do the existing
hardware &
software satisfy
Revise requisition
will
upgradation
serve the
Invite tenders
Evaluate tenders
Figure 7.1
The procedure for hardware/software selection will vary from one implementation to anorher.
FIowever, some guideline needs to be in place that may be followed while making selection. A generic
procedure is presented below which .r, b. tailored ro ,.rit the occasion.
Please note that this is just one possible selection procedure highlighting the importance of having a
well defined and systematic procurement policy in the organization. The criteria that must be taken
into consideration while making a selection for the sofrware and hardware are discussed below.
Major Phases in Seleaion
The selection procedure may be divided into a number of phases as listed below:
1,. Phase-l: Selecting an oprimal vendor
2. Phase-2: Request from proposal (RPF) documenr prepararion
3. Phase-): RPF review and vendor recommendation
4. Phase-4: RPF analysis and vendor selection
5. Phase-J: Contract negotiation
6. Phase-6: Summary report
7.7.2Make vs. Buy Decision
Buying a product from a new business, such as the explosive software industry poses unusual
problems. Customers cannot evaluate decades of performance history by the .o*prry, and not
enjoying the benefits of an objective "consumer reporr" on new products, they often f..t ai the mercy
of fast+alking salespeople. Therefore, it is important for people in the market fo, ,oftwrre to ,rk ,o*e
really tough but relevant questions. Any reputable supplier ihould be able to answer the following 15
questions without backpedaling.
0 Range of Produely Can you offer us a complete range of sofrware sysrem designed ro work
together? Or will we have to piece together a patchwork of systems io fully computerize orrr
organization?
(ir) Decision Support Systems: Are your systems just record keepers, or can they really help us make
decisions? Can we pull together information from any of our integrated systems in the desired
form.
(iii) In-house Deoelopment: Can you provide business sofrware for both mainframe and
microcomputers? Do you develop this software yourself or do you simply market it for another
company?
(iv) online: Are your systems truly online? How many of your systems are online? How secure are
they?
(") Debugging and Testing: Vill my company have to be the one rhar discovers the bugs in your
brand new system? Just how long have your systems actually been used, and how hrrrJth"y t"..,
tested?
(vi) Updates, Vill you update your systems as technology advances and regulations change? ryhat are
some of your most recent updates? Vill you keep us currenr on regulatory change?
M.S. University - D.D.C.E. System Implementation 151
(vii) Ftexlt;t;ty/Adaptabilibtj Are your systems really adaptable to our unique needs? Or will we have
to change or add to them ourselves to get the features we want?
(viii)History/Performance: How long have you been in business? lWhat are your revenues? \What is
your growth record?'$7here will your company be in five years from now? Can you show me an
annual report?
(ix) Other Custoruers: How many systems has your company installed? How many of these were
installed in the past six months? How many of your earlier customers are still using and liking
your systems?
(>r) Secuity: Are your systems secure? Do you provide password type protection and to how many
levels? \7hat other type of security provisions do your systems have?
(x1) Networking: Can you link our executives' personal computers directly to the mainframe, so they
can get their own information? Is that software available right now?
(xir) Training Support: How will you make sure our own people thoroughly understand your system?
Do you have educational centers near us or will we have to travel all the way across the country
to find one?'\il7ill you be there to help during installation and after?
(x1r1)tn-tlouse Specialists: How many of your people specialize in software for my industry? How
marry accountants work for you? Human resource specialists? Manufacturing experts?
'W'hat
(xiv)Special Features: Do your systems have built-in features that make them easier to use?
happens if someone needs help figuring out a feature? Do you have online documentation that is
easy to understand?
(xv) Upgrading: As my business changes will your system be flexible enough to change with it? Or wili
we have to pay a lot to revamp it? Or even regenerate it?
1. A good package can get the system running in a matter of days rather than weeks or months
required for "home-grown" packages
2. MIS personnel are released for other projects
3. Packages are generally reliable and perform according to stated documentation
4. Minimum risks are usually associated with large-scale systems and programming efforts
5. Delays in completing software projects in-house often occur because, programmers quit in
midstream
6. It is difficult to predict the cost of "home-giown" software
7. The user has a chance of seeing, how well the package performs before purchasing it
152 System Analysis & Design M.S. University - D.D.C.E.
4. For first-time software package users, the overall expectation from package is often unclear and ill-
defined.
It can be seen, then, that the qualiry of a software package cannor be determined by price alone.
A systematic review is crucial. Prior to selecting the software, the project team musr set up criteria for
selection. Selection crireria fall into the categories described here.
Reliability
It is probable that the software will execute for a specified time period without a failure, weighted by
the cost to the user of each failure encountered. It relates ro rhe ease of recovery and the abilit| to girr"
consistent results. Reliability is particularly imponant to rhe professional users-
For example, a pharmacist relies on past files on parients, when filling prescriptions. Information
accuracy is crucial.
Although, reliable software is a desirable goal, limited progress has been made rowards improving it in
the last decade. The fact of unreliable software had led ro rhe practice of securing
-ri.rtei.rrrce
agreements after the package is in operation. In a sense, unreliability is rewarded.
Software reliability brings up the concept of modularity, or the ease with which a package can be
modified. This depends on, whether the package was originally designed as a package oi*", retrofitted
after its original development for single installation use- A package with a liigh d"gr." of modularity
has the capacity to operate in many machine configuratlons and p.rhrp{ ,.rJr,
-anrfr.r.rr.rr'
product lines.
\7ith modularity comes expandability, which emphasizes the sensitivity of a software package to
handle an increased volume of transactions or to integrate with other programs. fh. t"ttJ*hg
questions should be considered:
Functionalitj
It is a definition of the facilities, performance, and other factors that the user requires in the finished
product. All such information comes from the user. The following are key questions to consider:
L Do the input transactions, files and reports conrain the necessary data elements?
2. Are all the necessary computations and processing performed according to specifications?
Capacitg
Capacity refers to the capability of the software package to handle rhe user's requirements for size of
files, number of data elements, volume of transactions and reporrs, and number of o...r.r"rrces of data
elements. All limitations should be checked.
Flexibility
It is a measure of the effon required to modify an operational program. One feature of flexibility is
adaptability, which is a measure of the ease of extending the product.
Usabilitl
This criterion refers to the effort required to operate, prepare the input and interpret the output of a
Program. Additional points to be considered are portability and undeistandability. Ponability r"f.r, to
the ability of the software to be used on different hardware and operating systems. Understandability
means that, the PurPose of the product is clear to the evaluaror and thai, the package is clearly ani
simply written is free of jargons, and contains sufficient references to readily availabl-e do.r-.rrts ,o
that the reader can comprehend advanced contents.
Secuitjt
Itis a measure of the likelihood that, a system's user can accidentally or intentionally access or destroy
unauthorized data. A key question is: How well can one control access of software or data files?
Control provides sysrem integrity.
Performance
It is a measure of the capacity of the software package to do what it is expected to do. This criterion
focuses on throughPut, or how effectively a package performs under peak loads. Each package should
be evaluated for acceptance on the user's system, tht language in whlch a package is written and the
oPerating system and additional performance considerations. If we plan to modify or extend a package,
it is easier if it is written in a language that is commonly known ro programmers. Likewir., if ti"
package runs only under a disk operating system and the installation ir-rrr,J", a full operaring
system,
then, either the package will have to be upgraded to the larger operating ,yrr.* or rh; ,yrr.*
downgraded to handle the package as it is. In either .as", th"^ .h"rgl could be costli and
counterproductive.
Seraiceabilitjt
This criterion focuses- on documentation and vendor supporr. Complete documenration is critical for
software enhancement. It includes a narrative description of the ,yrr.-, system logic and logic flow
charts, input-output and file descriptions and layorts, and operator insiructiorr] Verrdo, l.rppo.
assures the user adequate technical support for software installation, enhancements, and maintenance.
154 System Analysis & Design M.S. University - D.D.C.E.
The user should determine, how much on-site technical assistance the vendor provides, especially,
during the first few weeks after the installation.
as part of most commercial packages. It is vital to inquire
The user expects on-site training and support
about the amount of training provided. The user may require training at several levels-clerical,
operations, programming and management.
Ownership
tWho owns the software once it is "sold" to the user? Most of the standard license agreement forms,
essentially, lease the software to the user for an indefinite time. The user does not "ow.n" it, which
means that, the source code is inaccessible for modification, except by the vendor. Many users enter
into an escrow arrangement, whereby, the vendor deposits the source code with a third-party escrow
agent, who agrees to release the code to the user, if the vendor goes out of business or is unable to
perform the services specified in the license.
In acquiring software, several questions should be asked:
1. \What rights to the software is the user buying?
2. Can the user sell or modify the software?
3. If the vendor is modifying the package, especially for the user, can the vendor sell it to others
within the same industry the user is in?
4. \What restrictions are there to copying the software or documentation?"
Minimal Cost
Cost is a major consideration in deciding between in-house and vendor software. Cost-conscious users
consider the following points:
Criterion Meaning
Contd...
M.S. University - D.D.C.E. System Implementarion 155
(b) is the training guide that helps the user ro operare the candidare sysrem.
G) Software Modifications Audits evaluate and update the programs during mainrenance.
7.9 KEY\T/ORDS
lmplementation: The process of converting the manual or old computerized system with the newly
developed sysrem and making it operational, without disturbing the functioning of the organization.
Direct Cutouer: The process of dropping out one old system on a paricular and implementation of new
system.
Parallel Conuersion; The process where both old and new systems are operated in parallel.
(Jser,s Manual: Training guide that contains complete description on how to implement and oPerate
the candidate system.
Post-implementation Rcuiew: Evaluation of a system in terms of the extent to which the system
accomplishes stated objectives and actual project costs exceed initial estimates.
Maintenance.: Improvement and updation of software in response to the changes in the organization.
G) Direct cutover
(d) Implementation
2. (r) False
(b) True
G) False
A Ziya Aktas, Englewood Cliffs, NJ., Structured analysis and design of information systeftis, Prentice-Hall, @1987 .
8
PROJECT SCHEDULING
CONTENTS
8.0 Aims and Objectives
8.i Introduction
8.2 Reasons for Developing New Systems Project
8.3 Sources of Prpjects Requests
8.3.1 Requests from Department Managers
8.3.2 Requests from Senior Executives
8.3.3 Requests from System Analysts
8.3.4 Requests from Outside Groups
8.4 Managing Project Review and Selection
8.5 Project Request Contents
8.6 PreliminaryInvestigation
8.7 Problem Classifications and Definitions
8.7.1 Defining a Problem
8.7.2 Evaluating the Problem
8.7.3 SourcesofProblem/Opportunity
8.7.4 Problem Identification and Definition
8.8 Let us Sum up
8.9 Keywords
8.10 Questions for Discussion
8.11 SuggestedReadings
8.1 INTRODUCTION
System analysts do not start working on any projects they desire. They receive a lor of request from
the management for starting different type of the projects. rVhen projects are formally requested, the
systems analysts, under the me,nagements direction, conduct a preliminary investigation to analyse the
reasons for the request and collect various facts to respond to the request in a systematic way. Some
projects are feasible, while others may not be feasible for various reasons.
Developing a new information system is one kind of a planned organizational change. The
introduction of a new system includes purchase of new hardware and software, appointm".,t o? skilled
persons and/or training of existing staff for using the new sysrem and changer i,
-"rrrgemenr and
organization So, developing a new system requires redesigning the organization. As an irganization
always has many proiects (concerned with MiS or orher business functions) ro do, the management
must decide the priority of a system development in order to srreamline the business.
4. Cost:
(, Monitor Cosrs; Tracking the costs of labour, goods and overhead is essential to determine
whether a firm is performing a line with expectations-within budget.
(ir) Reduce Cosrs: Using computing capability ro process data at a lower cosr rhan possible with
other methods, while maintaining accrracy and performance levels.
160 System Analysis & Design M.S. University - D.D.C.E.
5. Competitiueness:
(, Lock. in Customers: Changing the relationship with and services provided to customers in
such a way that they will not think of changing suppliers.
(ir) Lock Out Competitors: Reducing the chances of entering the competitors in the same market
because of good information systems being used in the organisation.
(nl) Improae Arrangements uitlt Suppliers: Changing the pricing, service or delivery arrangements,
or relationship between suppliers and the organisation to benefit the firm.
(iv) Neza Product Deoelopmenr; Introducing new products with characteristics that use or are
influenced by information technology.
In addition, government agencies outside the organisation may also ask for information systems
projects.
The management decides the priority of a system development by reviewing the answers of the
following questions:
. \ilhen should the organization go for comput erization, if it is still using manual systems?
o Are the users satisfied with the performance of existing systems (manual/computerized)? If not,
what are the reasons?
. 'What
are the major problems of the existing systems? Do they affect the normal working of the
organization? If yes, how long can the organization tolerate such problems?
. 'W'hat
are the major projects that the organization has to do? Vhich one of all these is the most
imponant?
The management must ensure that the most important systems are developed first, followed by the
less important ones and the least important ones in the last. The criteria to accept or reject a request
can be decided in a number of ways. One of the suitable methods commonly in use is by committee.
Mainly three committees formats are commonly used:
L. Steeing Comrnittee: This is one of the most common methods of reviewing and selecting projects
for development. Such a committee, consisting of key managers from various departments of the
organisation as well as members of information systems group, is responsible for supervising the
review of project proposals. This committee receives requests for proposal and evaluates them.
The main responsibility of the committee is to take decision, which often requires more
information than the proposal provides. It is, therefore, desired to have preliminary investigation
to gather more details. The steering committee approach is generally favoured because systems
projects are considered as business investments. Management, not systems analysts or designers,
selects projects for development. Decisions are made on the basis of the cost of the project, its
benefits to the organisation and the feasibility of accomplishing the development within the limits
of information systems technology.
2. Information Sjtsterus Committee: In some organization, the responsibility for reviewing project
requests is entrusted to a committee of managers and analysts in the information systems
department. Under this method, all requests for service and development are submitted directly to
a review committee within the information systems department. This committee approves or
disapproves projects and sets priorities, indicating which projects are most important and should
receive immediate attention. This method can be used when many requests are fot routine
'When
services or maintenance of existing applications. major equipment decisions are reqttired or
162 System Analysis & Design M.S. University - D.D.C.E.
when long-term development commitments are needed to underrake a projecr, the decision
authority decided whether a project should proceed or nor. So, the major functions of this
committee are:
(r) To review the systems plan and approve/disapprove them.
(i0 To integrate the systems that share the input data.
(iii) To provide alternatives ro the project.
3. UserGrcup Committee: In some organization, the responsibility for project decisions is entrusted
to the users themselves. Individual departments hire their own analysts and designers who handle
project selection and carry out development. Although the pracrice of having user committees for
both choose and develop systems does take some of the burden from the sysrems development
group it can have disadvantages for the users. Some users' groups may find themselves with
defective or poorly designed systems that require additional time and effort to undo any damage
caused by the misinformation that such systems could geflerare. Although users groups may find
the decisions of steering committees and Information Systems Committees disappointing at rimes,
the success rate for users who undertake development job is nor very encouraging.
REQUEST CONTENTS
The project proposals submitted by the users or the analysts ro rhe Project Selection Committee is a
critical element in launching the systems study. There is a general agreemenr that a project requesr
form should contain the following:
. \flhat is the problem?
. \What are the details of the problem?
Analysts working on the preliminary investigation should accomplish the foilowing objectives:
l. Clarify and Understand the Project Request. \7hat is being done? \7hat is required? And why? Is
there an underiying reason different from the one the user identifies?
2. Determine the size of the project.
3. Access costs and benefits of alternative approaches.
The data collected by the analysts during preliminary investigations are gathered through three
primary methods:
l. Reaieruing Organisation Docuntents: The analysts conducting the investigation first learn about the
organisation involved in, or affected by the project. For example, to review an inventory systems
proposal means knowing first how the department works and who are rhe persons directly
associated with inventory system. Analysts can get some details by examining organisation charts
and studying written operating procedures. The procedures clearly define various important steps
involved in receiving, managing and dispersing stock.
2. on-Site obseraationr.'In this methoci, the analysts observe the activities of the sysrem directly.
One purpose of on-site observation is to get as close as possible ro rhe real sysrem being studied.
During on-site observation, the analyst can see the office environmenr, work local of the system
and the users, methods of work and the facilities provided by the organisation ro the users.
3. Conduc"ting lruteruiews: The above two methods tell the analysts how the sysrem should operare,
but they may not include enough details to allow a decision to be made aborrt the meriis of a
system proposal, nor do they present user views about current operarions. Analysts use interview
to learn these cietails. Intervie*'s allow analysts to learn more about the nature of the project
request and the reason for submitting it. Interview should provide details that further explain the
project and show whether assistaqce is merited economically, operationalll' and technically.
(b) The Problem of Validity: Maintaining validity in computer software is a troublesome design
problem. The objective in design is to produce a flawless product, one that will always reflect
actual events. Validity problems result when the environment changes and these changes are not
incorporated into the software.
(.) The Problem of Accuracy; A system is inaccurate when processing is error-prone. 'Routine'
transaction-based manual procedures are basically suitable for conversion to computer-based
methods of processing because the computer is far more accurate than human beings, provided
that software is written properly.
(d) The Problem of Economy; Project with clear-cut savings are likely to be considered suitable for
conversion to computer-based methods of processing. Much like the problem of accuracy, the
problem of economy is relatively easy to identify, the danger with the problem of economy is the
naive assumption by both users and system managers that the compurer will eliminare rhe cause
of the problem. Budget managers will say that this assumption is not always true; they will reporr
that some project cost far more than they return. Thus, before moving ahead, on a project
assignment, the analyst must ask, "Is the project work doing".
A partial answer to this question follows from determining the return on the invesrmenr expected
from the project. If the return is low, more economical projects should be selected.
G) The Probtem of Timeliness: The problem of timeliness relates more ro the rransmission of
information than to the processing or storing of it. If information is available but cannot be
retrieved when and where it is needed, the system suffers from the problem of timeliness.
Organizations have committed extensive resources to handle the problem of rimeliness in recent
years. Fingertip access to information has been the desired objective. Only when retrieval
problems are small and well defined has the overall success rate improved.
(0 The Problem of Capacitjt: The problem of capacity occurs when a system componenr is not large
enough. This problem is specially common in organizations that experience peak periods of
business or that are rapidly growing. NTith growth, smaller-c apacity equipment soon becomes roo
small; smaller staff groups soon become overworked. In either case, some expansion is needed to
handle the increasing volume of business.
(g) The Problem of Throughput: The problem of throughpur may be viewed as the reverse of the
problem of capacity. Throughput deals with the efficiency of a system. If system capacity is high
and production low, a problem of throughput occurs. Similar to the problem of capacity, the
problem of throughput may be much easier to spot than to treat. Rather, a manager must be able
to determine the root of the problem for any improvement in throughput.
M.S. University - D.D.C.E. Proiect Scheduling 165
Your
7. Fill in the blanks,
G) Business activities are influenced by an organization's ability to .......'....'..... quickly
and efficiently.
(b) The prtmary sources of project requests include
.................. and
166 System Analysis & Design
M.S. University - D.D.C.E
(r) The analyst studies the problems and needs of an organ izationduring feasibility and
requirements analysis phases of SDLC.
(b) Senior execurives usually have more information about the organization as compared
to department managers.
k) The direction of the anal,vst need not help the improvement of the svstem.
(d) Intervievrs are conducred for preliminary investigation.
The first step in SDLC, preliminary investigation, derermine the feasibility of the system. The
data
collected by the analyst are gathered through reviewing organization do.rr-"rrtr, on-site observations
and conducting interviews. After that the problem is d;fin;d classifieci, and evaluated on
the bases of
various characteristics.
8.9 KEY\trORDS
steering committee: A committee consisting of key managers from various departments of the
organization as well as members of information systems gro.rp.
Information Systems Committee: A committee of managers and analysts in the information sysrems
department.
8. Vhat is a problem? 'What are the various types of problem? How can a problem evaluated?
'$7hat
9. are the various sources of a problem? How can you identify a problem?
10. \Vhy do we develop a new systems project?
G) Management
(d) Steering
G) Preliminaryinvestigation
2. G) True
(b) True
G) False
(d) True
S.A. Kelkar, Structured System Analysis and Design, Prentice Hall of India'
9
SYSTEM TESTING AND QUALITY ASSURANCE
CONTENTS
9.0 Aims and Objectives
9.1 Introduction
9.2 System Testing
9.3 \7hat is System Control and Reliability?
9.4 System Reliability
9.1 INTRODUCTION
After the development and testing of the system) the major stress is given on system control, its
reliability and security i.e., to assure the quality of the system. Quality assurance is an integral part of
all production and development processes. Reliability is the degree to which the system performs its
intended functions over a span of time. System Security is required to prevent the system from
unauthorized access or any natural disaster such as fire, flood earthquake etc. \7ith the advent in the
field of technology, Cyber crimes are developing day by day to destroy the system or to malfunction
it. Systems should be protected from these cyber criminals, so specific security measures should be
designed to prevent the system from trapping, unauthorized access and virus attacks. Besides security
aspects, adequate control measures are needed in the system due to its reliability and correctness. Some
recovery measures are also to be planned to recover the system after any natural disaster. Encryption
techniques can be used to avoid unauthorized access of the data.
So the System testing builds on the earlier levels of testing such as unit testing and Integration Testing.
Typically a dedicated testing team is accountable for doing 'system Testing'. System Testing is a vital
step in Quality Management Process.
. In the Software Development Life cycle System Testing is the first level where the System is
tested as a whole.
. The System is tested to confirm if it fulfills the functional and technical requirements.
If we consider a computer-based system, a simple measure of reliability is mean time between failures
(MTBF), where,
MTBF:MTTF+MTTR
(The acronyms MTTF and MTTR are mean time to failure and mean time to repair, respectively.)
Many researchers argue that MTBF is a far more useful measure than defects /KLOC. Stated simply,
an end user is concerned with failures, not with the total defect court. Because each defect count
provides little indication f the reliability of a system. For example, consider a program that has been in'
operation for 14 months. Many defects in this program may remain undetected for decades before they
are discovered. The MTBF of such obscure defects might be 50 or even 100 years. Other defects, as yet
undiscovered, might have a failure rate of t8 or 24 months. Even if every one of the first category of
defects is removed, the impact on system reliabiliry is negligible.
174 System Analysis & Design NI.S. University - D.D.C.E.
The MTBF reliability measure is equally sensitive to MTTF and MTTR. The availability measure is
somewhat more sensitive to MTTR, an indirect measure of rhe maintainability of sofrware.
9.6QUALITY ASSURANCE
The quality of an information system depends upon its design, developmenr, resring and
implementation. One aspect of systems quality is its reliability. A sysrem is reliable if, when used in a
reasonable manner, it does not produce failures that can be dangerous or costly. This definition
distinguishes between software errors, instances of the system's not producing the expected result and
failures as well as the occurrences of software errors. Although it is virtually impoisible to develop
software that can be proven to the error-free, yet software developers strive to pr.rr".rt the occurrence
of errors, using methods and techniques that include error detection and correcrion and error
tolerance. Both these strategies are useful for keeping the system operaring and pi-eventing failure, of
software. Failures are result of design errors that were introduced when specificaiions were
formulation and software written.
Quality assurance is the review of software products and related documentation for completeness,
correctness, reliability and maintainability. And, of course, it includes assurance that the sysr;m meers
the specifications and the requirements for its intended usage and performance.
An additional aspect of quality assurance is avoiding the need for enhancemenr on the one hand and
developing software that is maintainable on the other. The need for maintenance is very high and
impedes new developments.
Quality assurance has been defined as a planned and systematic pattern of all the acrions necessary ro
provide adequate confidence that software conforms to established technical requirements. The key
ideas or goals of quality assurance are as follows:
1. Comprehensiaeness: Quality assurance is not restricted to the function of a software quality groups
or phase. It includes all the necessary activities that contribure towards the quality of toft*rr.
through out rhe enrire life-cycle of a project.
2. Planning: The emphasis is on a systematic plan to achieve the objectives of software quality. The
quality of a piece of software is not left to the efforts of individuals.
3. Rclatioity: The notion of quality is relative to some requirements. The purpose of quality
assurance is not to guarantee 100o/o reliability or zero detect software. It is rather to increase
confidence that every reasonable effort has been made ro ensure the quality of the end product.
Quality, therefore, equals conformance to requirements, not excellence.
4. Cosr; \tr7hile purchasing any product, the levelof quality of a product is usually reflected in its
price. Hence, software quality involves increased cost. Product quality is, therefore, wholly a
matter of customer choice. It is essential at the requirements analysis stage for the analysr to
identify appropriate customer quality needs.
M.S. University - D.D.C.E. System Testing and Quality Assrrance 175
Preparation of a software qualiry assurance plan for each software projecr is a primary responsibility of
the software qualiry group.
Topics in a software qualiry assurance plan include the following:
L. Purpose and scope of the plan.
7. A Configuration management as well as plan that identifies software product irems, controls and
implements changes and records reports change status.
8. Practices and procedur"r,o t. followed in reporting, tracking and resolving software problems.
9. Specific tools and techniques to be used to supporr quality assurance activities.
10. Methods and facilities to be used to maintains and store controlled versions of identified software.
11. Methods and facilities to be used to protect compurer program physical media.
12. Provisions for ensuring the quality of vendor - provided and subconrracror-developed software.
13. Methods and facilities to be used in collecting, maintaining and relating quality assurance records.
3. Prior to product delivery, a functional audit and a physical audit are performed. The functional
audit reconfirms that all requirements have been met. The physical audit verifies that the source
code and all associated documents are complete, internally consistent and consistent with one
another and ready for delivery. A software verification summary is prepared to describe the
results of all reviews, audits and tests conducted by quality assurance personnel throughout the
development cycle.
Quality assurance personnel are sometimes in charge of arrangements for walk throughs, inspections
and major milestone reviews. In addition, quality assurance personnel often conduct the project's
postmoftem, write the project legacy document and provide long-term retention of project records.
The quality assurance organisat^-i. can also serve as a focal point for collection, analysis and
dissemination of quantitative da:'a concerning cost distribution, schedule slippage, error rates and other
factors that influence qualiry and productivity.
2. Case: Many argue that case tools offer the developer a route to better quality systems because
fewer errors are likely to occur between states such as design and implementation.
3. Fomeal Methods: The advocates of formal methods would claim that approach offer a key to
quality be and implementation can proved to meet its specification.
4. Object-orientation: Object-oriented languages foster the reuse of coding of an information system
from well proven parts and are likely to lead to increase quality.
WE
Before
2486 35.A30
I lo.u.". I
Print Transaction log entry
| :s.z t.ur. I Read Master file record write Before
before images 2486 35.2 30
hocess changes and write in
master file rvrite after image After
CPU 2489 35.2 20
-
Transaction Log
The storage of these details is automatic and invisible to rhe user abour whom information
should also
be stored so that it is clear who conduoed the transacrion. If the system has
an internal clock, each
transaction is also time stamped to tell when it occurred. If the need arises ro audit a
particular record..
in a file, it is relatively easy to determine who submitted rhe rransacrion, when it occurred, what
data
the transaction contained and what modifications were made in the masrer file. In other words,
it is a
complete trail of the entire transacrion and its effect on the system.
178 System Analvsis & Design M.S. University - D.D.C.E.
Another form of audit trail presumes that keeping transaction data on magnetic disk is not fully
reliable. For example, in some small business systems, if the system is turned off, perhaps through a
power failure, before the data captured on disk during an editing session has been backed up, it will be
iort .ompl.tely (Some computer systems use disk systems in which the read-write heads drop down to
the disk surface when the power is turned off. In these systems, users must remove the disk before
powering down or they will loose data).
Printing a copy of the transaction before processing it is one of the best ways to Protect data against
losses. fl"" if anlthing happens during the online session, a backup copy of the master file can be
mounted and transactions re-entered by using the printed transaction list.
lJsers many miles away have no way of learning when a malfunction occurs. As long as they can
conrinue to enter transactions, they have every reason to believe that the system is operating correctly.
Therefore, the analyst must anticipate these problems for safeguarding the integrity of a system by
providing ways to audit it's use.
There are several forms of computer crimes which are described below:
1" Data Diddling:.Data diddling refers to the unaurhorised modification of data by dishonest
employees of th9 organisation. Data
_diddling is mostly done by the staff. For insrance, an
employee may falsify lis record by making modifications in the daia. An
accountanr may change
the amount figures of the debtors, which could cause excessive loss to the organisation.
A bank
e-mployee performing reconciliation can embezzle millions of rupees
by makiig modificarions of
data. He can also illegally rransfer money to his accounr.
3' Superlap Programs: SuPerzaps refer to another special rourine of the sofrware,
which do not have
regular control mechanisms and passwords. These are used only when the
normal functioning of
the software is stopped. Although, only authtrised persons can use superzap
.disturbed -or
programs, there is a possibility that unauthoriseJ persons may use them.
In those circumrirrr."r,
superzap programs may lead ro computer crimes.
4' Logic Bombs and viruse.s.' Logic bombs are the most dangerous compurer
crimes. Logic bombs
refer to special routines that cause excessive damage to" the drt, o, ,ritrl
operating system files) and thus either disturb o, .o*-pl"r.ly stop the
frograms (such as
working of tir" ,yrt"-. ro1.
example, a logic bomb may be a program:
.... To format the hard disk;
* To erase system files;
18C S;zsrem Analysis 6r Design M'S' University - D'D'C'E'
Viruses are rhe mosr common form of logic bombs. Viruses refer to the programs that invade and
disrupt the normal working of PCs b), spreading from one PC to another. A virus spreads like a
biological virus as discussed below:
(1) A virus atracks when someone writes or copy a program that embeds itself in a host
Program.
(ir) The virus amaches itself to the host program and travels from one PC to another either
through floppy disk or data communications networks.
(iii) A virus may cause minor or severe ciamage to the data or create unexpected problems in the
infected PCs.
5. Hacking: Hacking refers to get into someone else's computer system without permission in order
to find out information or do something illegal. Hacking has become very widespread over the
last decade. A person who gains access to a computer system or network without authorisation is
called as hacker. Hackers generally write programs in assembly or C language and break into a
. computer system just for accepting the challenge of doing so. For instance, in April t992, some
hackers invaded the system of a tiS credit bureaus company and stole credit history records of
numerous individuals.
6. Leakage: Leakage refers to unauthorised copying of confidential data from hard disk to floPPy
disks.leakrg. i"srlt, when an employee leaves the office by carrying sensitive data on small
floppies, which cannor be detected by security persons. The leakage of sensitive data enhances
computer crimes.
7. Eauesd.ropping and Wiretapping: Eavesdropping refers to monitoring of data transmissions which
'siliretapping is one of the methods of eavesdroPPing. \Wiretapping
are meant for other persons.
'\X/iretappers
refers ro setring up a special transmission path for diverting the flow of data.
generally attach a cable on the local area network for diverting the flow of transmitted data.
Eauesdropping on Internet: As an access to the internet cannot be easily restricted, any information
that is transmitted on the Internet is subject to eavesdropping. This is because of the following
reasons:
G) On Interner, the information is passed through multiple sites and telecommunication links
befc,re reaching the target destination. So, anybody on the way can easily eavesdrop the
information.
(b) Most of the hosts of the Internet are Unix-based, which is notoriously weak on security.
Thus, eavesdropping on Internet is easier.
8. Download.ing: Downloading refers to receiving of data and software, which are transmitted from
orher compurers. Download has become a common method of copying files via Internet. So,
Inrerner helps computer users in unauthorised copyin g o{ data and programs from all over the
world and thus provides a convenient way for making comPuter crimes.
M.S. Universitv - D.D.C.E. System'l'esting and Quality Assurance 181
9. Soiftware PiraEt: Software piracy refers to illegal cop,ving of software for the purpose of
distribution or sale. It is the most common and widely spread form of compurer crime. This is
because that most users prefer to use pirated copies rarher than spending money on buying
softwares. Software piracy is the most serious problem of today's software industry.
Softrtsare Piracy in India: For many years, the Indian software market has been dominated by
pirated software. It is a very serious computer crime which is done by 99o/o Indian users. The
copies of ail latest software such as \Windon's, MS Office. PageMaker, CorelDRA\X/, Oracle, erc.,
costing lakhs of rupees are available on pirated CDs or Floppv Disks in just few hundreds of
ruPees or eyen sometimes free of cost. The users want to invest only in hardware and expect free
copies of software with every PC. Hardware vendors also promote software piracy because they
understand that the1, will be unable to sell a PC in India, unless rhey offer few software free of
cost with every PC. Actually in India, the user mentally sets the value of software simply as rhe
cost of a floppy disk. This is because that the legal software are yerv costhz in India as compared
to hardware. Although, software piracy has become the greatest threat to softs.are industry, it
does harm the security of an organisation because it is the data q,,hich is importanr for an
organisation and not the software.
(r) Reliabilitlt: During development of the system, the main objective of the analyst is to ensure the
reliability of the system. Reliability is the main criteria for quality assurance of the software.
(b) fficiency: Efficiency refers to the numbers volume and capacitl. of computer resources (hardware
storage devices, memory, etc.) used by the system during execution. Adequate control measures
must be built in the system to make it efficient.
k) Conectness: The system must meet the user objectives and software requirements specification.
Security control is required to make the system correct as per the specifications given bv the user.
(d) AccuraEt: Inaccurate data leads to inaccurate results and outputs. The system must have adequate
controls to ensure the accuracy while feeding the data.
G) Usabilitjt: Graphical user interface is the basic need of present day systems. The sysrem must be
easyto operate and learn. Usability is the another need of system conrrol.
(0 MaintainabilitJ): The system must be easv to modify and maintain. System control ensures rhe
maintainabilit.v of the system.
. Data lntegitjt; Contrary to system integrity, data integrity refers to surety of the completeness and
consistency of data by providing appropriate security measures such as data validation. Data
validation refers to the measures taken to ensure the vaiidity, completeness and consistency of data.
The organisation must follows the follov.ing control measures for providing adequate security to PCs
and information systems:
G) Access Control
(d) Encryption and Decryption
G) Audit Controls
Ph3tsical Securitjt
Physical security includes safeguards against damage of hardware, software and data due to the physical
environment of the PCs. The computer room and data library are the most critical areas of physical
security. The major threats to the physical security are:
. Destruction of hardware
o Loss of documentation
. Damage of databases
. Fire
'W'ater
.
. Theft of computer-based resources
. Sabotage (to prevent the success of computerisation by destroying computer equipments)
. Loss of power
The organisation must take following preventive measures against the above threats:
. The entry and exit to computer room and data library should be restricted and properly
monitored by closed circuit televisions and security guards.
. The hardware, software and data must be protected against theft by installing locked doors, theft-
proof saf'es and vaults, burglar alarms and closed-circuit televisions in the computer room and data
bbrary.
Sensors for early detection of fire, fireproof vaults and wali-mounted fire-extinguishing systems
must be installed in the entire office building.
'Water
pipes should be located away from the computer room, data library and communication
lines.
. Ceilings and walls should be properly sealed against water seepage.
. External storage devices having backups of data and software should be stored either away from
the computer rooms and data library in the same building or away from the office building.
M.S. University - D.D.C.E. System Testing and Quality Assurance 183
. Sprinklers (equipments for scattering water to put out fires) should be fitted in the office premises.
. Fibre optic cables, which are relatively safe from wiretaps, should be used in cabling of local area
networks.
Identification of Users
The authorised users must be identified before using comprrr., ,.rorr.es. The identity of users may be
established by one or more of the following merhods:
1. Using Passuord: Password is a group of characters, used to access certain hardware, software or
data. A
password is the most commonly used method for verifying the identity of user. A
password should have the follov,ing characterisrics:
(, It should be a meaningful word or phrase that can be remembered easily. For insrance,
'DELHI', 'YEAR2000', 'I LOVEYOU', 'GOODDAY', etc., are some of the meaningful
passwords.
(ir) It should not be related with the system to be accessed. For insrance, for using the payroll
system, the passwords 'PAY', 'SALARY', 'PAYMAKER', 'BASICPAY', erc.. can be guessed
by other persons. Therefore, a password must be easy to remember but hard to guess.
(iii) k should not be the name of user who is using the system or rhe namelpiace of company
where it is installed. For instance, if the user named 'Dr Suchitra' is aurhorised to use a
system of company named 'National Computer Lab (Regd.)' located at 'Vikas Puri, Delhi',
the passwords 'DOCTOR', 'SUCHITRA', 'NCL', 'NATIONAL','VIKASPURI', 'DELHI',
etc., can be easily guessed.
(iv) Never use the passwords consisting of only numbers. For instance,'12345','1998', '2OOO',
'39230', etc., may be difficult ro remember but easier to guess.
(") Never write the passwords on any paper or in the compurer file because it may be leaked
out.
(vi) Use only unrelated word or phrases as passwords which nobody could think about. For
instance, using a 'Financiai Accounting System', the passu,ords 'CRICKET',
'BUTTERFLY', 'CAT', 'I LOVEYOIJ', erc., are exrremely difficult to guess.
Change your passwords regularly.
Are the Passzaords really secure?
Passwords are not always 100 per cenr secure because they may be:
t leaked out;
* forgotten by the user;
.:. guessed by others even if the chances are less than 1 per cenr;
* find out by experts having knowledge of systems programming;
* searched by computer utilities.
2. Using Fingerprints: Fingerprints can also be used for identity of users in an organisation by using
the latest technology. Although, it is'the best method for identifying the users, it is not used due
to non-availability of the required hardware/software in many organisations. Currently,
fingerprints technology is only used in law enforcements.
184 System Analysis & Design M.S. University - D.D.C.E.
3. Using Aceess Cards: In some organisations, access cards are provided to authorised users. Besides
knowing password, the user must possess access card in order to use the system. For instance,
access cards are used in auromated teller machines for withdrawing money.
4. Using Kejts: IJsers are provided keys to unlock their terminals. The user is identified on the basis
of the key.
5. Restr;cted Sjtstem Use.' IJsers are allowed to use only those terminals and resources to which they
are authorised. The restricted use of system makes the identification of users easier.
Access Control
The access to various computer resources by authorised users must be properly controlled. The main
guidelines to control access are:
. Provide a single entrance to the computer room monitored by security guards.
o Note down the name of the user, his ID No., terminal used, time and duration of use, purpose of
use, etc., in the entry register.
o IJse an encoded card system which serves as a key to unlock doors. The encoded card sysrem
consists of a magnetic key and a lockport. When card is inserted into the lockport, the door is
unlocked.
. Employ a librarian to monitor the use of floppies and various hardware/ sofrware resources by
permitting authorised persons only.
E n cryp t i o n an d D e crl p t i o n
Encryption is an effective and practical method to secure daa. Encryption refers to encode data by
converting the standard data code into a proprietary code. Just opposire ro encryption, decryption is
the process to convert encrypted data into its original form. Encryption and decryption techniques are
commonly used during transmission of data from one computer to another. The basic coniept of
encryption/decryption process is illustrated inFigureg.2 and is explained:
(r) The plaintext message, which has to be transmitted, is encrypted to produce a ciphertext.
(ii) The ciphertext is transmitted to other terminals over communication lines.
(iii) The ciphertext is received at authorised receiver and is decrypted back into plaintext.
Audit Control
Although, all the above discussed security measures are sufficienr ro protecr the system, there may be
some breaches in tire security. Audit control protects the system from possible security breaches and
frauds. Audit, with respect to systems, refers to examination of working sysrems (hardware/software)
in order to determine their efficiency. Software implementation and mainrenance processes must be
audited properly to prevent any embezzlement. Various audit control software .rn alro be used by
auditors to examine databases for their correctness, completeness and consistency. The best way f.or
audit control is that the application software shouid have inbuild audit control procedures so that the
system can examine itself.
Class C2 Requires an individual level of login by password with an audit mechanism (e.g., Novel Netware 4.x,
\flindows NT Server).
Class B1 Requires Depanment of Defence Security clearance levels.
Class 82 Guarantees a path between the user and the security system and ensures that clearances cannot be
changed.
Class 83 Security based on a mathematical model that must be viable and repeatable. The system must be
managed by a network administrator in charge of security and must remain secure when shut down.
Class A1 The highest level of security based on a mathematical model that can be proven.
Securitg Leuels
The United States Department of Defense Standard specifies the security levels for various operating
systems and networks which are summarised in 'lable 9.2.
Table 9.2
Right Function
Permits the user:
Backup
Backup, with reference to software afld data, refers to creation of duplicate copies of important data
and software on various storage devices, such as magnetic tapes and floppies in order to restore data in
M.S. University - D.D.C.E System Testing and Quality Assurance 187
event of hardware or software failure. Backup is extremely imporranr in a disaster recovery procedure.
Backup, sometimes, is also defined with reference ro hardware. Hardware backup irrroirr., keeping
duplicate hardware components, especially computer peripherals (I/O and Storage devices) ir, .rr" oi
their failure or malfunctioning. However, 'backup' term is generally ,nderstool as 'backup of data
and software'.
. Store backup floppies or tapes away from the data processing centre.
Besides all the discussed security measures, ethics are also required
to maintain the system security.
Although, unethical acts are not always illegal, they may cause harm ro the security of the
organisation. Unethical acts may be performed by both employees and people outside organisations.
Cofu of ComputerEthics
Organisations develop a code of ethics in order to create awareness among employees to understand
their duties. Employees must know the difference berween right and *rorrg in order to be ethical.
Some of the guidelines which are generally given in a code of computer ethics are described below:
o All employees will maintain the privacy and confidentiality of the organisarion's dara and official
documents.
No employee without proper authorisation, shall make changes in the data in any way form.
'
o Employees will not carry with them floppies having official data while leaving office.
No employee, for whatever reason, shall give any floppy having official data and legal software to
' any outsider.
. No employee shall be involved in any conduct related to software p*acy.
o All employees will use the software in accordance with the license agreement between purchaser
and seller.
Your
1. Fill in the blanks:
(r) Fire and v/ater are the major threats ro .............. securiry.
(b) ....... is an effective and practical method to secure data.
(-) Floppies having backups of data should be stored in the computer room in order to
provide physical securit,v to the organisation.
(b) Access cards are used to identify the user.
G) A password should be reiated with the system ro access.
(d) Audit controls protects the system from possible security breaches and frauds.
(.) If all security measures are followed, organisations are not vulnerabie to disasters.
3. Match the following:
9.I6LET US SUM UP
Quality control and assurance is an integral part of all production and development processes. System
control governs all the activities of the software development p{ocess. System security refers to the
protection of computer-based resources system reliability is the degree to which the system performs
its intended functions olrer a span of time.
Security of PCs and information system is needed due to privacy, accuracy, threat frorn dishonest
employees, threats frorn fire and natural disasters and computer crimes. Various forms of computer
M.S. University - D.D.C.E System Testing and Quality Assurance 189
crimes include data diddling, trapdoor progra.rs, superzap programs, logic bombs and viruses,
hacking, leakage, eavesdropping and wiretapping, downloading and sofrware piracy.
Besides security aspects, adequate control measures are needed in the system due to reliability,
efficiency, correctness, accrxacy, usability and maintainability of the sysrem. The organizarion must
follow control measures for providing adequate security to PCs. The authorized users musr be
identified before using computer resources. The access to various conlputer resources by authorized
users rnust also be properly controlled.
Software implementation and maintenance processes must be audited properly to prevent any
.embezzlement. Audit trail is designed to permit tracing of any inpur record process performed on a
system back to its original source. Another form of audit trail presumes that keeping rransactio n data
o magnetic disk is not fully reliable.
Security on networks refers to operating system controls used by the network administrator to limir
users' access to approved areas. The United States Deparrment of Defense standard specifies the
various security levels for various operaring sysrems from class A1 to Class D.
Inspite of all security measures, organizations are always l.ulnerable to disaster. Disaster recovery
refers to the contingency measures that an organization must take to recover the data incase it is
damaged or lost due to security breaches. Backup of data and soft*'are is exrremely importanr in a
disaster recovery procedure.
Computer Ethic are the standards of moral conduct to be followed by employees for using various
computer resources. Employees must know the difference between right and wrong in order to be
ethical.
9.17 T{EY\T/ORDS
Rcliabiliti: The degree to which the system performs its intended functions over a span of time.
Sitstem Secuitg: Theprotection of computer-based resources which include hardware, software, data
procedures and people against unauthorized use or natural disaster.
Data Security.' The protection of data from modifications, deletions, destruction or disclosure by
unauthorized persons.
Priaaclt: The rights of the individual users or organizations to keep their person al data and information
secret.
Coruuputer Cimes: Misuse of computer resources for unautho rized or illegal functions.
Logic Borubs: Special routines that cause excessive damage ro the dara or vital programs (Such as
oPerating system files) and thus either disturb or completely stop the working of the sysrem.
190 System Analysis & Design M.S. University - D.D.C.E.
Viruses: Programs that invade and disrupt the normal working of PCs by spreading from one PC to
another.
Hacking: To get into someone else's computer without permission in order to find out information or
do something illegal.
Leakage: Unauthorized copying of confidential data from hard disk to floppy disks.
Eauesdropping: Monitoring of data transmissions which are meant for other persons.
Wire Tapping: Setting up a special transmission path for diverring the flow of data.
Downloadirug: Receiving of data and software, which are transmitted from other computers.
Sofiware Piraclt: Illegal copying of software for the purpose of distribution or sale.
Plrysieal Security: Safeguards against damage of hardware, software and data due to the physical
environment of the PCs.
Encryption: The process to encode data by converting the standard data code into a proprietary code.
Decryption: The process to converr encrvpted data into its original form.
Cornputer Ethic: Standards of moral conduct to be followed by employees for using various compurer
resources.
1.t. 'Any information that is transmitted on the Internet is subject to eavesdropping'. Do you agree
with this sraremenr? Discuss.
12. '!7hat is software pii'acy? \flrite a short nore on sofrware piracy in india.
L3. 'Why does a PC is vulnerable ro most compurer crimes? Discuss.
G) Hacking
(d) Downloading
'What
15. are the major control measures for providing adequate security to PCs? Explain in brief.
'What
t6. \flhat is physical security? are the major threats to physical security?
17. \ilhat are the different methods to identify the users? \7hich one of them is the best and why?
18. Explain with examples the characteristics of a good password.
G) Code of ethics
2. (r) False
(b) True
G) False
(d) True
G) True
3. G) (i,)
(b) (i")
G) (viii)
(d) (,
G) ("il
(0 (ii)
Contd....
192 System Analysis & Design M.S. University - D.D.C.E
0 (")
(h) ("')
0 (")
6) ('*)
9. 19 SUGGESTED READINGS
James C Wetherbe, St. Paul , S1,si,",,o .tnalysis and design, S7est Pub. Co., @1988.
lerry Zeyu Gao, H. S. Jacob Tsao, Ye. lWu, Testing and Quality Assurance for Component-Based Softuare, Artech
House.