Computer Science Online Class
Class:12
Subject: Computer Science
Subject Teacher: Kapil Sharma Neupane
Email :kapilComputer2020@[Link]
Computer Science Online Class
Chapter 6
Software Process Model
Computer Science Online Class
Software Project
A software Project is the complete procedure of software
development from requirement gathering to testing and
maintenance carried out according to the execution
methodologies in a specified period of time to achieve
intended software product.
Computer Science Online Class
Software Project
A project is well defined task which is a collection of
several operation done in order to achieve goal (for
example:‐Software development and delivery). A project
can be characterized as:
Computer Science Online Class
Software Project
• Every project may have a unique and distinct goal
• Project is not routine activity or day to day operations.
• Project comes with a start time and end time.
• Project ends when its goal achieved hence it is a
temporary phase in the lifetime of an organization
• Project needs adequate resources in terms of time,
manpower, finance, material and knowledge.
Computer Science Online Class
Software Project
Software is said to be an intangible product. Software
development is a kind of all new streams in world business
and there's very little experience in building software
products .Most software products are tailored made to fit
client's requirements.
Computer Science Online Class
Software Project
The most important is that the underlying technology
changes and advances so frequently and rapidly that
experience of one product may not be applied to the
other one. All such business and environmental
constraints bring risk in software development hence it is
essential to manage software projects efficiently. `
Computer Science Online Class
Software Project
It is an essential part of software organizations to deliver
quality product keeping the cost within client's budget
constrain and deliver the project as per scheduled. There
are several factors, both internal and external which may
impact this triple constrain triangle. Any of three factors
can severely impact the other too.
Therefore, software project management is essential to
incorporate user requirements along with budget and
time constraints.
Computer Science Online Class
System
System is a group of elements or components which work
together to accomplish a common task.
System is a collection of interrelated parts that works
together to achieve one or more common goals. In other
word system can be defined as any set of objects and
ideas and their relationships which are ordered to a
common goal or purpose.
Computer Science Online Class
System
In general terms, system is the organized collection or
arrangement of different parts together such that they
function collectively and efficiently.
A system has five components‐ input,
processes, output, feedback and control. Developing
meaningful systems is the joint responsibility of the
information system department and end users.
Computer Science Online Class
Properties or Characteristics of a System
• Organization
• Integration
• Interaction
• Interdependence
• Central Objective
Computer Science Online Class
Data
Data are raw facts and figures. Data are the raw material
for information. Data can be text, number, audio, video,
images, animation or combination of these. Data is
processed or transformed into information which is used
in the decision making process. Example:‐ In a bank
account number, account name, amount provided by the
user are the data.
Computer Science Online Class
Information
Information is the processed data. The outcome of data is
called information. It is the processed data into a form
that is meaningful to the decision maker to take necessary
decision. Example:‐ Total deposited or withdrawn amount
in a branch of a bank in a day are the information.
Computer Science Online Class
Information System
An information system is a set of processes and
procedures that transform data into information.
Information systems do not generate data.
An information system is interrelated components working
together to collect data, process it, gives output and store
using the resources of hardware, software, people and
procedure. The aim of information system is to provide
detailed information on a timely basis throughout the
organization so that the top management can take proper
action and effective decision.
Computer Science Online Class
Information System
The data are generated collected, recorded, stored,
processed and retrieved after it has been generated by
business operation in an organization. Information
systems are designed for supplying information to
managers in the areas of marketing, finance, production
etc.
Computer Science Online Class
Types of Information System
Management information system:‐MIS is an information
system that generates accurate timely and organized
information so that managers and other users can make
decisions, solve problems, supervise activities and track
progress. The information system that converts raw data
into meaningful form to provide information for managing
an organization is known as management information
system.
Computer Science Online Class
Types of Information System
MIS can be define as a system that provides information
to support managerial functions like planning, organizing,
directing, controlling. In other word MIS is defined as a
system that includes files, hardware, and software and
operations research models of processing, storing,
retrieving and transmitting information to the users. MIS
are primarily meant for providing information from the
data after processing them.
Computer Science Online Class
Types of Information System
Decision support system:‐The system that is developed to
support the managerial decisions whenever a decision
making situation arises is known as decision support
system. DSS provides the required information to support
decision making process. It is a type of information system
that supports business and organizational decision making
activities. It serves the management, operation and
planning levels of an organization and helps to make
decisions.
Computer Science Online Class
Types of Information System
Transaction processing system:‐TPS is one of the first
computerized information system designed to process
business transactions which was originally called data
processing. TPS are intended to capture and record
information about organization’s day to day transactions.
It is a type of information system that collects, stores
modifies and retrieves the business transaction of an
organization. This system is capable of responding to
user’s request immediately. Example:‐ATM in banking
system.
Computer Science Online Class
Types of Information System
Expert system:‐It is an information system that captures
the expertise of expert and then simulates that expertise
to the benefit of non‐experts. Expert system is a part of
artificial [Link] can be used at any level of
operation or management in an organization.
Computer Science Online Class
Types of Information System
Office Automation system:‐It is an information system
that supports the wide range of business office activities
that provide for improved workflow between workers. The
information that aims at office automation and uses
different types of hardware, software, data and
communication networks like LAN, WAN, Internet etc. to
enhance work flow and facilitate communication among
the employees is known as office information system.
Computer Science Online Class
System Development Life Cycle(SDLC)
System Development Life Cycle is a framework for
developing computer based information systems and
implementing in the organization. SDLC is a systematic
process of developing any software systems. In other
words SDLC is the overall process of developing
information systems through a multi‐step process from
investigation of initial requirements through analysis,
design, testing, implementation and maintenance.
Computer Science Online Class
Importance and Necessity of SDLC
System Development Life cycle(SDLC) is a process used by
a system analyst to develop an information system. Any
SDLC should result in a high quality system that meets
customer expectations, reaches completion within time
and cost estimates, works effectively and efficiently in the
current and planned information technology
infrastructure and it is cost effective to enhance and
maintain.
Computer Science Online Class
Importance and Necessity of SDLC
SDLC provides guidelines to follow for completing every
activity in the system development process. SDLC is a
systematic approach to solving business problems. It is
divided into different distinct phases and each phase has
unique activities. It helps to ensure that the cost‐effective
quality systems are developed which address an
organization’s business needs and solve the problems.
Computer Science Online Class
Importance and Necessity of SDLC
SDLC is considered important in the following respects:
• Since the whole process of SDLC requires constant
communication between the developer and the client,
the prototype model of the SDLC provides that
strength. With the prototype model, there is a regular
communication between the involved people.
• The SDLC models easily identify the missing
functionality because of the presence of the iterated
steps that allow for missing features to surface and be
easily identified.
Computer Science Online Class
Importance and Necessity of SDLC
• With the SDLC models all function that seems to be
difficult and complicated are easily identifiable thus, it
can give immediate resolution of simplifying it.
• With the SDLC models, they allow for designs which are
primarily flexible and contain a lot of innovation.
• With the SDLC models, there is the presence of the
flexibility of adding up more functions and features
even at a later time date.
Computer Science Online Class
Importance and Necessity of SDLC
Thus the SDLC models used by the program developer
create the big impact on every plan that he/she works on.
It is therefore clever to select and choose the best SDLC
model to employ on every project that we get involved
with.
Computer Science Online Class
Types of models developed by software scientists
for developing software systems
The different types of models developed by software
scientists for developing software systems are as follows:
• Waterfall model
• Prototype model
• Iterative Enhancement Model
• Spiral Model
Computer Science Online Class
Waterfall Model
It is the simplest and most popular model of SDLC. In this
model, the phases are organized in a linear order. This
model is most suitable for routine type of jobs in which all
the problems are already known. It generally has longer
completion time because testing and documentation
should be done at the completion of each levels.
Computer Science Online Class
Waterfall Model
The activities and steps of this model are:‐
• Feasibility study
• Requirement analysis and project planning
• System Design
• Detail Design
• Coding and Unit Testing
• System and Integration Testing
Computer Science Online Class
Prototype Model
This model is much suitable for new systems where there
is no clear idea of the requirements, inputs and outputs.
Instead of developing a full‐fledge or final system, a small
prototype (sample, trial product) is developed first. The
model or design is discussed with the client or owner and
after having the final approval from the client or owner
the final system or final products is made. It is just like that
engineers develop a prototype of buildings and design for
big projects.
Computer Science Online Class
Prototype Model
The prototype model consist of following steps:
• Determine the Requirements
• Quick Design
• Build/Create Prototype
• Use and Evaluate Prototyping (if user satisfied goto
step6 otherwise goto step5
• Refine the Prototype and goto step 4
• Implement the System
Computer Science Online Class
Iterative Enhancement Model or Agile Model
This model useful for developer who themselves provide
the requirement or specification. In other words,
requirements are not provided by the user, but developer
make list of the possible requirements and then they make
the software and launch it in the market.
Computer Science Online Class
Iterative Enhancement Model or Agile Model
After the feedback from the users is gathered, some
modification is done instead of changing the software
totally. Microsoft uses this model for software
development. Example‐ Window 95 was released at first,
after sometime Window 98 was released with some
modification likewise Window 2000 was released and so
on. This model is the combination of both waterfall model
and prototype model.
Computer Science Online Class
Spiral Model
This is the most realistic model because it uses
multidimensional approach for software development.
The activities in SDLC are organized in a spiral structure
that has many cycles which starts from the center of the
spiral and goes out as it progress and becomes matured.
Computer Science Online Class
Spiral Model
The Spiral Model has following major steps:
• Planning
• Risk Analysis
• Engineering
• Construction and Release
• Customer Evaluation
Computer Science Online Class
Different Phases of Classical Model of SDLC
The different phases of classical model of SDLC are: ‐
• System study (Planning)
• Feasibility Study
• System Analysis ( Requirement Determine & Analysis)
• System Design
• System Development
• System Testing
• System Implementation
• Maintenance and Review
Computer Science Online Class
System Study
This is the first phase of SDLC. In this phase, the software
developer and the user sit together and discuss their
problems. User explains his or her needs and expectations
from the new system that is being developed. Developer
either agrees upon the requirement and assures that such
type of system will be developed or shows his or her
problem for developing such system. Since all the
requirements and specifications are discussed in this
phase, this phase is also known as SRS (System
Requirement and Specification) phase.
Computer Science Online Class
Feasibility Study
It is one of the most important steps in the SDLC phase.
Feasibility study means to study different aspects of
system development in terms of its feasibility. In this
phase whether the requirements presented by the user
are possible to be implemented in terms of computerized
programs or not. Feasibility study or analysis is a measure
of how beneficial the development of system for an
organization.
Computer Science Online Class
Feasibility Study
There can be alternative design of systems and the
feasibility study selects the best system that meets
system performance requirements. The major purpose of
feasibility study is to decide whether the proposed system
is feasible or not in terms of time, cost, technology,
operation, maintenance etc.
Computer Science Online Class
Types of Feasibility Study
• Technical Feasibility
• Economic Feasibility
• Behavioral Feasibility
• Legal Feasibility
• Operational Feasibility
• Time Feasibility
• Social Feasibility
• Management Feasibility
Computer Science Online Class
Technical Feasibility
This study finds out whether the proposed system can
be implemented with the available hardware, software,
technical resources and human resource. It also studies
out whether hardware and software is available to do
what is needed? To decide the technical feasibility,
determination should be made if the system can be
developed and implements using existing technology.
Computer Science Online Class
Economical Feasibility
It refers to the analysis of how beneficial will be the
system with regards to the time, money and other
resources required. This feasibility is measured in terms
of cost/effectiveness analysis. It mainly focuses on the
lifetime benefits of the proposed system.
Computer Science Online Class
Operational Feasibility
This is the study to find out whether the proposed
system will be able to perform the designated
functions with the existing organizational
environment with its current human resources and
existing procedures or not.
Computer Science Online Class
Operational Feasibility
It focuses on whether the proposed system is
desirable within the existing managerial and
organizational framework and culture or not. Will
the user like the new system? Will they use it? Will
it meet their requirements? Will it cause any
changes in their work environment?
Computer Science Online Class
Schedule Feasibility
Feasibility study also includes schedule feasibility
study. It studies whether the established deadlines
for the project are reasonable. This is the
determination of deadline for a completion of a
system. If the system is not completed within the
schedule time, definitely it will affect other
feasibility elements such as economical, operational
etc.
Computer Science Online Class
Social Feasibility
Social Feasibility is a determination of whether a
proposed system will be acceptable to the people
or not. This determination typically examines the
probability of the system being accepted by the
group directly affected by the proposed system.
Computer Science Online Class
Management Feasibility
It is a determination of whether a proposed system
will be acceptable to management or not.
Computer Science Online Class
System Analysis
System analysis is an important activity that takes
place when new information system is being changed.
It follows the feasibility study and involves a detailed
study of the current system, leading to specifications
of a new system. System analysis is a detailed study of
various operations performed by a system and their
relationships within and outside the system
Computer Science Online Class
System Analysis
During system analysis, data are collected from the
various available sources by using tools such as
interview, questionnaire etc. System analysis
determines the shapes, form, strength, capability and
even the life of the system.
Computer Science Online Class
System Design
This phase is the most creative and challenging phase
of SDLC. This phase is concerned with the design of
final system. The design of an information system
produces the details that clearly describe how a
system will meet the requirements, identified during
system analysis. System specialist often refers to this
stage as logical design, in contrast to the process of
developing software which is referred to as physical
design.
Computer Science Online Class
System Design
During this phase the designer must design all the
aspects of the system from the input and output
screen to reports, database and processes of
computing. Some of the technique or methodologies
used for this phase are as follows:‐
Computer Science Online Class
System Design
Algorithm:‐ The problem studied is converted into
some logically presented English sentences, which
are listed in some sequences. It is a very easy and
non technical method for designing system.
Computer Science Online Class
System Design
Flowchart:‐ The logical steps presented in terms of
algorithms are presented in terms of some symbols
and pictures so that the understanding of the
problem becomes easier for the programmer.
Computer Science Online Class
System Design
Pseudo‐codes:‐ The problem presented in algorithm and
flowcharts are presented in terms of English statements
for easiness of the user but it is presented in some
programming codes so that it will be easier for the
programmer, which is know as pseudo‐code.
Computer Science Online Class
System Design
Decision table:‐A decision table allows an analyst to
identify the exact course of actions for given condition. A
decision table provides clear‐cut decisions. The decision
tables consist of two parts. They are‐condition and
action.
Computer Science Online Class
System Design
Decision tree: ‐ It is the conversion of decision table in
terms of tree. It makes the decision easier to understand.
Computer Science Online Class
System Design
DFD (Data flow diagram):‐ It is the pictorial representation
of the data flow in the program. This method of designing is
used to show how data are obtained and how they are
written into the database. It is used to show the path rather
than logic.
Computer Science Online Class
System Design
Context diagram: ‐ An overview (overall representation) of
the Information system through a single DFD is called
Context diagram. In other word we can say if an entire
system can be depicted by one data flow diagram which
gives a system overview. Then it is called a context diagram.
The context diagram treats the whole system as a single
process with all its inputs, outputs, links and sources. The
entire system is presented as a single system without any
sub‐system or sub DFDs in context diagram.
Computer Science Online Class
System Design
ER‐Diagram:‐ER‐diagram shows the relationship
between the entities, type of relationship and
attributes.
Computer Science Online Class
System Design
CASE tools:‐CASE (Computer Aided system
engineering) software tools are designed to support a
variety of activities of the system development cycle.
CASE tools are used to automate the methodologies
used in the system development process and reduce
the amount of repetitive work to be done in the
development cycle. CASE tools are automated,
microcomputer‐based software packages for system
analysis and design. There are four major reasons for
using CASE tools.
Computer Science Online Class
System Design
UML (Unified Modeling Language):‐It is a standard
language for specifying, visualizing, constructing and
documenting the software system. The UML is very
successful as it has been adopted by most of the
leading software companies including IBM, Microsoft,
and Oracle etc. It is mainly developed to emphasize
Object oriented concept. The UML uses mostly
graphical notations to express the design of software
projects.
Computer Science Online Class
System Development
This is the fourth phase of SDLC. The major goal of this
phase is to translate the problem studied in the system
analysis and design made in the system design phase into
proper physical system. After developing the system, it is
ready for testing. Generally, programmers choose 4GLs
(fourth generation language) for writing programs
because of their simplicity, easily availability, good user
interface and user friendly design. Without this phase,
the problem remains in design and paper only; it can
never come into real existence.
Computer Science Online Class
System Testing
This is the fifth phase of SDLC. This is the process of
verifying that whether the software fulfills the objective
of development or not. This phase is used for finding the
errors and defects so that there is no difference or very
less difference between the actual output and desired
output. It is the most complex, most time consuming,
most expensive and most crucial step in the SDLC. There
are two types of testing technique.
Computer Science Online Class
System Testing
They are: Black‐box testing and White‐box testing
technique.
Black–Box Testing:‐In this technique of testing only the
internal coding of the program are tested. It is also called
‘functional testing’ because it test all the functional parts
of the codes. It generally tests the loops and their
function, control structures and their functions, array and
their boundary etc.
Computer Science Online Class
System Testing
It is called ‘black‐box testing’ because the test cases are
totally hidden for the general users because it is done at
coding level.
Computer Science Online Class
System Testing
White–box testing: ‐ In this technique instead of testing
the coding part or internal functioning of the program,
the structure (behavioral part) of the program is tested. It
is called ‘Glass‐box testing’ because the test cases are
totally visible to the general users and they can also make
test cases.
Computer Science Online Class
System Implementation
System implementation refers to putting the system into
operation. The developed system is put into actual
implementation replacing the existing system in which
the clients or users themselves operate the system to
execute their intended task. The main component of
every system is people.
Computer Science Online Class
System Implementation
Training or education should be given as per need of the
system users. Various methods such as seminars, group
instruction, on the job training etc can be implemented.
The implementation can be performed all at once
throughout the organization or a bit at a time, or in
parallel with the existing system.
Therefore implementation can be performed either of
the following manner:‐
Computer Science Online Class
System Implementation
• Phased Implementation‐In phased implementation a
bit of the system at time is put into operation.
• Pilot Implementation‐Pilot implementation means
new system is first of all implemented in one section of
the organization, while other continues with their old
system. If the output of the system meets the client’s
intended purpose, then it is implemented throughout
the organization replacing the old system. It works best
for the large systems.
Computer Science Online Class
System Implementation
• Parallel Implementation‐The new system is
implemented in parallel with the existing system. Both
the old system and new system performs
simultaneously in parallel and once the new system
starts functioning satisfactorily the old system is
dismantled and the new system is put into actual
operation.
• Direct Implementation‐In direct implementation the
old system is replaced with the new system all at once.
It works best for small systems.
Computer Science Online Class
Need of Feasibility Study
• It determine whether the system meets the goal of the
clients or not.
• It determine the strengths and limitations before
starting to develop the system.
• It suggests new opportunities through the investigation
process.
• It provides quality information for decision making.
• It helps to increase the investment in the system.
• It enhance the probability of success.
Computer Science Online Class
Steps of System Testing
• Test unit specification
• Features to be tested
• Approach used for testing
• Test deliverables
• Schedule
• Personal Allocation
Computer Science Online Class
Types of Testing
• Unit Testing
• Integration Testing
• System Testing
• User Acceptance Testing
Computer Science Online Class
Unit Testing
It is the process of testing the individual component of
the system after the component is developed but before
the component are combined together to form a
complete system.
Computer Science Online Class
Integration Testing
Integration is the process of combining all the individual
components together to form a complete system.
Integration testing is the process of testing the individual
component of the system after all the individual
components are combined together.
Computer Science Online Class
System Testing
It is the process of testing the complete system after all
the components of the system are combined together.
There are two ways of system testing:‐
• Black‐box Testing
• White‐box Testing
Computer Science Online Class
User Acceptance Testing
It is the process of testing the complete system by the
user to identify if the newly developed system meets the
user’s requirement or not.
Computer Science Online Class
System Maintenance and Reviews
Correcting and upgrading process of the system is called
system maintenance. This is the last and final phase of
SDLC. After the final system is being developed and
tested, it is delivered to the market or installed in the
users’ machine, user starts using the system. If any
problem arise during such it is reported to the developer
and maintenance is done. All the feedback of the users is
collected;software is modified and again launched in the
market or installed into the system.
Computer Science Online Class
System Analyst
A system analyst is an information specialist who is able
to analyze the present system, design new system and
implement the system with the help of programmers and
other system personnel, but users of a system need to be
involved in designing the system, because only they knew
what the desired outcomes of the system should be
because they will have to live with the new system. In
computer‐based information system, the user, the system
analyst and the programmer, all work together to
evaluate design and implement the system
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
• Knowledge of Organization
• Knowledge of computer systems and software
• Good inter‐personal relations
• Ability to communicate
• An analytical mind
• Breadth of knowledge
• Flexibility and adaptability
• Character and ethics
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Knowledge of organization: ‐
A system analyst must understand the way in which
various organizations function. He or She must
understand the management structure and the
relationship between the departments in organizations.
As many systems are built for marketing, accounting and
materials management, he/she must have a working
knowledge of these areas.
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Knowledge of computer systems and software: ‐
The analyst should have knowledge about recent
development on computer hardware and software. He or
She must be able to advice the proper configuration of
hardware and the latest software needed to develop the
required applications.
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Good inter personal relations:
An analyst must be able to
interpret user needs, must be a good listener, a good
diplomat and behave with user as a friend. He/She must
understand people and be able to influence them to
change their minds and attitudes.
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Ability to communicate:
An analyst is also required to
orally present his design to group of users. He/She must
be able to organize his/her thoughts and present them in
a language easily understood by users.
An Analytical mind: ‐
Analyst should have excellent analytical mind. A good
system analyst should convert a problem into an
opportunity.
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Ability to communicate:
An analyst is also required to
orally present his design to group of users. He/She must
be able to organize his/her thoughts and present them in
a language easily understood by users.
An Analytical mind: ‐
Analyst should have excellent analytical mind. A good
system analyst should convert a problem into an
opportunity.
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Breadth of knowledge: ‐
A system analyst has to work with persons performing
various jobs in an organization. He/She may have to
interact with accountants, sales persons, clerical staff,
production supervisors etc; a system analyst must
understand how they do job better. During his/her carrier
he/she will be working with a variety of organization such
as hospital, hotels, departmental stores, transport
companies, education institutions etc, Thus, breadth
knowledge of a system is necessary to be a successful
system analyst.
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Flexibility and adaptability:‐
A good system analyst should be flexible and learns to
adapt in new challenges because he/she have to work in
different organizations having different nature and have
to adapt themselves according to the nature of the
organization.
Computer Science Online Class
Qualities or Characteristics of Good System Analyst
Character and ethics:‐
The system analyst must have a good moral and strong
character. Analyst often gets access to sensitive and
confidential information of the organization that are not
meant for public disclosure. Thus the analyst must
respect ethical values.
Computer Science Online Class
Duties or Responsibilities of System Analyst
• Defining Requirement
• Prioritizing Requirements by consensus
• Gathering data, facts and opinion of users
• Analyzing and Evaluating
• Solving problems
• Drawing‐up specifications
• Designing systems
• Evaluating system
Computer Science Online Class
Duties or Responsibilities of System Analyst
Defining Requirement:‐ This is the most important
duties or tasks of system analyst. System analyst
should understand the users’ requirements for that he
or she should have an interview with the user and find
out what information they use in the current system,
how they use it, what information they feel they lack in
the current system, which if provided in the new
system, will allow them to do their job better.
Computer Science Online Class
Duties or Responsibilities of System Analyst
Prioritizing requirements by consensus:‐ In any
organization there are many users. Each users has
some special information needs. It may not be possible
to satisfy needs of every one due to limited computing
capacity, limited funding etc. Thus there is a need to
set priorities among the requirements of various users.
This is best achieved by having a common meeting
with all the users and arriving at a consensus. This
responsibility of the system analyst requires good
interpersonal relations and diplomacy.
Computer Science Online Class
Duties or Responsibilities of System Analyst
Gathering data, facts and opinion of users: ‐ After
determining the user’s requirements and prioritizing
the requirements, the analyst must develop the system
with the active and wiling cooperating of all the users.
While developing a system the analyst must
continuously consult the users and get their views. He
must be the users’ student in learning various facts
about the organization, and their teacher in telling
them how best to use the computer‐based system.
Computer Science Online Class
Duties or Responsibilities of System Analyst
Analysis and Evaluation:‐ The system analyst analyses
the working of current information system in the
organization and finds out to what extend he or she
meet users’ needs. Various graphical means of data
analysis are useful in this task.
Computer Science Online Class
Duties or Responsibilities of System Analyst
Solving Problems:‐ The system analyst must study the
problem in depth and suggest alternate solution to the
management. The relative difficulties in implementing
each of the alternatives and benefits of each must be
determined so that manager can pick what he
considered at the best solution
Computer Science Online Class
Duties or Responsibilities of System Analyst
Drawing up specifications:‐ System analyst have to
draw up the functional specification in a non‐technical
way so that the users and the managers can easily
understand it. The analyst must win the acceptance of
all levels of users of the system such as clerks, middle
level managers and top level managers. The
specification must be designed in such a way that it
can be expand in the near future.
Computer Science Online Class
Duties or Responsibilities of System Analyst
Designing system:‐ Once the specification is accepted,
the analyst designs the system. The design must be
understandable to the system implementer. The design
must be modular to accommodate changes easily.
Computer Science Online Class
Duties or Responsibilities of System Analyst
Evaluating system:‐ An analyst must critically evaluate
a system after it has in use for reasonable periods of
time. An analyst must have an open mind to accept
valid criticism and he or she must be good critic
himself or herself to enable him or her to carry out
necessary improvements.
Computer Science Online Class
What are the different Phases of Software Designing
• Planning
• Requirement Analysis
• Software Design
• Coding
• Testing
• Implementation
• Maintenance and Feedback
Computer Science Online Class
Software Process Activities
• Software Specification (or Requirement
Engineering)
• Software Design and Implementation
• Software Verification and Validation
• Software Evaluation(Software Maintenance)
Computer Science Online Class
Requirement Gathering Methods
Different Methods used in Gathering
Requirements are:
• One‐to One Interviews
• Group Interviews
• Focus groups
• Questionnaires/Surveys
• Observation/Field Visit
• Analyzing Existing Documents
• Brain Storming
Computer Science Online Class
Difference between System analyst and Software
Engineer
System Analyst Software Engineer
• More Responsible for • More responsible for designing,
documenting the project developing, testing, implementing
and evaluating the software
• A system analyst may not be as • Software engineer is a purely
technical or proficient with technical person
programming as the engineer
• System analyst should have both • Software engineer should have
coding and managerial skills only coding skill
• Leadership quality is needed • Logical and creative qualities are
needed
• Remains as a bridge who fulfills • Remains as a pillar, who makes
the gap between IT and business the software sound and strong
Computer Science Online Class
Software and Quality
Software Quality is defined as a field of study and
practice that describes the desirable attributes of
software products to make the software a good
software.
Computer Science Online Class
Software and Quality
The software can be considered as a good
software if it contains the following qualities:‐
• The software should be correct.
• It should be easy to understand.
• It should be easy to maintain and update.
• It should have an easier user interface.
• It should be efficient in terms of processing
and memory utilization.
• It should be protable
Computer Science Online Class
Documentation
Documentation is the process of
collecting,organizing,storing and maintaining a
complete record of the system and other
documents used or prepared during the different
phases of the life cycle of the system. The system
cannot be considered to be complete until it is
properly documented. Documentation is a
process which never ends throughout the life of
the system.
Computer Science Online Class
Documentation
Proper documentation of the system is necessary
due to the following reasons.
• Even if the person who has designed or
developed the system leaves the organization,
the documented knowledge remains with the
organization which can be used for the
continuity of the software.
• It makes the system easier to modify and
maintain in the future.
Computer Science Online Class
Documentation
• It helps in restarting a system development
which was postponed due to some reasons.
Computer Science Online Class
Types of Documentation
• System Manual
• Program Manual
• User Manual
Computer Science Online Class
Types of Documentation
• System Manual‐It contains the technical
details of the system which can be mainly used
for upgrading and maintenance of the system.
• Program Manual‐It contains the detail about
the program used in the system.
• User Manual‐It contains guidelines for the
user to run the system smoothly.