Transcript pps

MB IT 02
System Analysis and
Design (SAD) and
Software Engg
…General discussion
What is a System?
 A collection of parts that work together to
achieve a goal/task
– Examples
•
•
•
•
•
Solar system
Digestive systems
Public transport system
Computer system
Information system
System Concepts (continued)
System Analysis and Design
(SAD)
 Analysis: defining the problem
– From requirements to specification
 Design: solving the problem
– From specification to implementation
System Analysis and Design
(SAD)
 Systems Analysis: understanding and
specifying in detail what a system should do
 System Design: specifying in detail how
the parts of an system should be
implemented
 Definition of SAD:
– The complex organizational process whereby
computer-based information systems are
developed and maintained.
Software Engineering
Software
 IEEE (Institute of
Electrical and Electronic
Engineers) defines
software as
“collection of computer
programs, procedures,
rules and associated
documentation and data“
Characteristic of Software
It is intangible part of the computer
system
Software is intrinsically complex.
Software does not wear out but
deteriorates.
Software is not manufactured but
developed.
Software is prone to failure.
Software is costly to maintain.
Software Categories
 Software products may be developed for a
particular customer or may be developed for a
general market.
It can be classified into two categories
– Generic - developed to be sold to a range of
different customers e.g. PC software such as
Excel or Word.
– customized - developed for a single
customer according to their specification
(Hospital management system)
What is software engineering?


Software engineering is an art of developing quality
software in an effective and efficient way.
According to IEEE definition
“Software Engineering is the application of a
systematic, disciplined, quantifiable approach to
the development, operation and maintenance of
software”.
Activity Cost Distribution
15%
40%
25%
20%
Specificaiton
Analysis &
Design
Implementation
Integration &
Testing
Development - Maintenance
Cost Ratios
60%
40%
Development Cost
Maintenance Cost
Maintenance Cost Ratios
22%
22%
Adaption
Enhance
Bug Fixing
56%
Management Myths
Myths
Realities
 ‘We already have
books full of
standards and
procedures for
building software.
That will provide my
people with
everything they need
to know’
 ‘My people do have
state-of-the-art
hardware’ which is
essential ingredient
for successful
software production.
 Standards are rarely
used
 Developers rarely
know about them
 Standards are often
out-of-date and
incomplete
 Software tools are
usually more
important than
hardware tools for
achieving quality and
productivity.
Management Myths
Myths
Realities
 ‘If we get behind
schedule we can add
more programmers
and catch up’
 Adding more
manpower to the
project, which is
already behind
schedule, further
delays the project.
 New workers take
longer time to learn
about the project as
compared to those
already working on
the project
Management Myths
Myths
Realities
 ‘If I decide to
outsource the
software project to a
third party, I can just
relax and let that firm
build it
 Outsourcing
software to a third
party does not help
the organization
User’s Myths
Myth
 ‘A general statement
of objectives is
sufficient to begin
writing software - we
can fill in the details
later’
Realities
 Insufficient
knowledge about
requirements is the
major cause of
software failure
 Formal and detailed
descriptions of data,
functionality, design
constraints are
essential
 Communication
between user and
developer is vital
User’s Myths
Myth
 ‘Project requirements
continually change
but change can be
easily
accommodated
because software is
flexible’
Realities
 The impact of change
varies according to
the time when it is
introduced
 Early requests for
change can be easily
made and can be
much cheaper
 Changes made
during design,
implementation and
installation have a
severe impact on
cost
Developer’s Myths
Myth
 ‘Once we write the
program and get it to
work, our job is
done’
 ‘Until I get the
program running I
really have no way of
assessing its quality’
 ‘The only deliverable
for a successful
project is the
working program’
Realities
 50% to 70% of all the
efforts are expended
after the software is
delivered to the user.
 The success of a
project does not
depend only on the
quality of programs.
Documentation and
software
configuration are
also essential
Why Software Engineering?
Major Goals:
- To increase software productivity and quality.
- To effectively control software schedule and planning.
- To reduce the cost of software development.
- To meet the customers’ needs and requirements.
- To improve the current software engineering practice.
- To support the engineers’ activities in a systematic and
efficient manner.
What are the key challenges facing
software engineering?
 Coping with legacy systems, coping with
increasing diversity and coping with demands
for reduced delivery times
 Legacy systems
– Old, valuable systems must be maintained
and updated
 Heterogeneity
– Systems are distributed and include a mix of
hardware and software
 Delivery
– There is increasing pressure for faster
delivery of software
Coming to Syllabus Topics
System
1. System’s Concept
Def. A System is a set of components that
interact with one another and serve for
a common purpose or goal.
1. System’s Concept
system has nine main characteristics :
1. Components.
2. Interrelationships.
3. Boundary.
4. Purpose.
5.
6.
7.
8.
9.
Input.
Output.
Interface.
Constraints.
Environment.
25
System’s Concept (cont’d)
FIGURE 1-1 Characteristics of a system
26
2. System’s Characteristics
• A component is either an irreducible part or an aggregate of parts,
also called a subsystem.
• The components are interrelated; that is, the function of one is
somehow tied to the function of the others.
• A system has a boundary, within which all of its components are
contained and which establishes the limits of a system, separating it
from other systems.
• All of the components work together to achieve some overall
purpose: the system’s reason for existing.
27
System’s Characteristics
(cont’d)
• A system operates within an environment – everything outside the
system’s boundary. The environment surrounds the system,
both affecting it and being affected by it.
• The point at which the system meets its environment are called
interface.
• A system must face constraints in its functioning because there
are limits to what it can do and how it can achieve its purpose
within its environment.
• A system interact with the environment by means of inputs and
outputs. Input is anything entering the system from the
environment; output is anything leaving the system crossing the
boundary to the environment .
28
Elements of a System
1.
2.
3.
4.
5.
6.
Outputs and inputs
Processor(s)
Control
Feedback
Environment
Boundaries and interface
System Elements
INPUT
PROCESS
FEEDBACK
OUTPUT
3. Feedback and Control in a
System
Very often output’s data are returned to the input of the system, and used to
regulate the system’s activity.
Such a process is called feedback. It helps to adjust the system to changes so that the
system operates in a balanced state, or equilibrium. This feature of a system is used in
control.
Def. Control is the process that measures current performance and guides it towards a
predetermined goal. It is the decision making subsystem that controls the pattern of
activities governing i/p, processing and o/p
31
Feedback and Control in a System
(cont’d)
Two types of feedback are related to system control.
•
•
Negative feedback is corrective feedback that helps maintain the system within a
critical operating range and reduces performance fluctuations around the norm
or standard. Negative feedback is transmitted in feedback control loops. A
sensor detects the effect of output on the external environment; this information
is returned to the system as an input, and necessary adjustments are made
according to predetermined goal.
positive feedback reinforces the operation of a system by causing it to continue its
performance and activities without changes.
32
Types of Systems
Physical or Abstract system
 Physical system are tangible entities . For
e.g. computer system
 Abstract System are non physical entities.
For e.g. models
Types of Systems
Open or Closed system
 An open system has many interfaces with
its environment. It permits interaction
across its boundary. It receives inputs from
and delivers outputs to the outside.
 A closed system is isolated from
environmental influences
Types of Systems
Information Systems
 Interrelated components working together to
– Collect
– Process
– Store
– Disseminate information
To support decision making, coordination,
control, analysis and visualization in an
organization
What is an Information System?
A SYSTEM THAT PROVIDES THE INFORMATION NEEDED TO
ACCOMPLISH THE ORGANIZATION’S TASKS
WHAT IS A COMPUTER BASED
INFORMATION SYSTEM?
A SYSTEM THAT USES COMPUTERS TO
PROVIDE THE NEEDED INFORMATION
Computer-based Information Systems (CBIS) vs
Manual Systems
 CBIS
– Information system that rely on
computer hardware and software for
processing and disseminating
information
 Manual systems
– Use paper + pencil technology

Difference between manual IS and computer based IS
Manual IS
• Manual IS works without
the help of technology
• Manual IS is slow and
may be inaccurate
• Retrieving information
in manual IS is quite
hectic and time
consuming task.
Computer based IS
CBIS uses computer
technology to perform
its tasks
CBIS is very accurate and
provide results faster
than the manual IS
Data processing and
fetching information is
fast
...cont
• Manual IS is less capable of Through CBIS it is easy to convert
and present info in a
presenting information in a
presentable manner e.g.
systematic way.
graphs, charts tables etc.
• Manual IS in not suitable for Huge amount of information
can be easily stored, copied,
storing huge data
moved from a system
It is expensive compared to the
• Manual IS is less expensive
manual IS
than CBIS
• It provides less security for
information stored
it provides more security and
have many options like
password, login ID’s
Components of Computer based
Information System
• It is an organized combination of
–
–
–
–
–
–
Data
Hardware
Software
Communications networks
People
Policies and procedures
(continued)
The Components of a Computer-Based Information System
• Data: Input that the
system take to
produce information
• Hardware: Computer
and its peripheral
equipments. The
equipments are input
and output devices,
storage devices and
communications
devices
• Software: Set of
instructions that tell
the computer how to
take the data in, how
to process it, how to
display the output
and how to stores the
data and information
• Communication
Network: Hardware
and software that
facilitates the fast
transmission and
reception of texts,
pictures, sound and
animation in the form
of electronic data
• People: IS
professional and
users who analyses
the organizational
information needs
designs, constructs
and uses information
system
• Policies and
procedures: Rules for
achieving optimal
and secure operation
in data processing
Computer based Information
System Types
1. Transaction Processing Systems (TPS)
2. Management Information Systems
(MIS)
3. Decision Support Systems (DSS)
4. Expert System and Artificial Intelligence
(ES &AI)

Transaction Processing Systems
(TPS)
 TPS are computerized information systems that were
developed to process large amounts of data for routine
business transaction.
–
–
–
–
–
Data about each transaction are captured,
Transactions are verified and accepted/rejected,
Validation transactions are stored for later aggregation.
Report may be produced to provide summarization of the
transactions, and
Transaction may be moved from process to process in order to
handle all aspects of the business activities.
Management Information Systems
(MIS)
 Information system at the management level of an
organization that serves the functions of planning,
controlling, and decision making by providing routine
summary and exception reports.
 It takes the relatively raw data available through a TPS
and converts them into a meaningful aggregated form
that mangers need to conduct their responsibilities.
Decision Support systems
(DSS)
 Information system at the management level of an
organization that combines data and sophisticated
analytical models or data analysis tools to support semistructured and unstructured decision making.
 DSS are designed to help organizational decision
making.
 A DSS is composed of a:
–
Database ( may be extracted from a TPS/MIS)
–
Graphical/mathematical models for business process
–
User interface that provides a way to communicate with DSS
Expert Systems
 An expert system is…
– A computer application that performs a task
that would otherwise be performed by a
human expert
– gives the computer the ability to make
suggestions and to act like an expert in a
particular field
– Examples: diagnose human illnesses, make
financial forecasts
System development models
Stages of the System
development







Investigation or Feasibility analysis
Requirement analysis
Design
Construction
Testing
Implementation
Maintenance
Waterfall model
 In waterfall model the development of system
proceeds linearly and sequentially from
requirement analysis to design, coding, testing,
implementation and maintenance. So it also
known an Linear Sequential model.
 It has different phases and each phase has its
distinct goal.
 Once a phase is completed, the development of
system proceeds to the next phase.
 Each phase modifies the intermediate product
to develop a new product as an output
 The new product becomes the input of the next
process
Waterfall Deficiencies
Requirements need to be specified
before the development proceeds
Deliverables created for each phase
are considered frozen – inhibits
flexibility
Does not reflect problem-solving
nature – iterations of phases
Little opportunity for customer to
preview the system
Throwaway prototype model
 The development of the product starts with
the part of the system which is poorly
understood by the developer.
 It is then designed and exposed to the user
to get more and refined requirements.
 The revised specifications are again
designed and developed into another
enhanced prototype of the software.
Throwaway prototype model
The reviewing , revising specifications
and implementing continues until final
specifications are documented.
The final specifications are regarded
as the base of the delivery and all the
developed prototypes are discarded.
Throwaway prototyping model
Iterative enhancement model
Incremental development
 Rather than deliver the system as a single delivery,
the development and delivery is broken down into
increments with each increment delivering part of
the required functionality.
 User requirements are prioritised and the highest
priority requirements are included in early
increments.
 Once the development of an increment is started,
the requirements are frozen though requirements
for later increments can continue to evolve.
Incremental development
 The first increment is available to the user
within short time. This increment meets most of
the critical requirements of the user for
immediate use. Hence he need not wait for
delivery of the entire system.
 Exposure of early increments to the user helps
refining the requirements for subsequent
increments
 Subsequent increments would address the
shortcomings of the earlier increments. This
minimizes the risk of overall project failure
Spiral model
Spiral model sectors
 Planning
– Specific objectives for the phase are identified. The
products and its constraints are identified. The
alternatives and risk factor for the development of the
products with constraints are identified
 Risk assessment
– Risks are assessed and activities put in place to
reduce the key risks.
 Engineering
– A development model for the system is chosen .
 User Evaluation
– The project is reviewed and the next phase of the
spiral is planned.
 The model demands a high level expertise
to deal with the risk analysis and control
 For small project, this model may not time
and cost effective
Chapter -1
The End