Professional Documents
Culture Documents
URL: https://sites.google.com/site/nadeemcsuoliict/home/lectures
1
SW DESIGN
METHODOLOGY?
2
TODAY’S LECTURE
Development process of reasonably complex SW systems does not consist
of “coding” only.
SW Development methodologies?
We will become familiar with the various phases of the process that
developers follow to develop SW systems of reasonable complexity.
People noted that to develop large scale complex SW, only 15 % work is
done on programming rest is done on other things i.e. thinking, design
and testing. Programming is just a small part of SW development.
3
THE SET OF (OFTEN FLEXIBLE) RULES AND
GUIDELINES A TEAM OF DEVELOPERS
FOLLOW TO CONSTRUCT REASONABLY
COMPLEX SW SYSTEMS
4
ANY OTHER SW DESIGN METHODOLOGIES?
5
COMPLEX SOFTWARE
Example: Airplane monitoring system, Accounting system of a
company where up to 10,000 people work.
6
SW LIFE-CYCLE?
7
SW LIFE-CYCLE
The sequence of phases a SW goes through from the concept to
decommissioning( formal process to remove something from an active
status. )
It is important to think about all those phases before the design work
starts
8
EXAMPLE
9
Software life cycle is start from concept to decommissioning and the
phases between them.
10
CASE STUDY
I was working with a team and we have to develop an e-commerce
website for jewelry sale.
11
A CASE IN POINT
I didn’t discuss with the customer about the specification of the HW &
OS before developing a particular e-commerce SW
12
LET US NOW TAKE A LOOK AT A VERY
SIMPLE SW LIFE-CYCLE
13
CONCEPT
DEVELOPMENT
DECOMMISSIONING
14
THAT WAS A VERY SIMPLE VIEW
15
Concept & Feasibility
User Requirements
Developer Specs
Planning
Design
Implementation
Integration Testing
Opr. & Maintenance
16
Retirement
DURING THE REST OF THE LECTURE WE ARE
NOW GOING TO DISCUSS EACH OF THESE
STEPS IN SOME DETAIL.
17
Concept & Feasibility Concept: What needs to be
done?
User Requirements
Feasibility: Preliminary
Developer Specs
exploration of possible
Planning solutions, technologies,
Design suppliers
Implementation
Integration Testing
Opr. & Maintenance
18
Retirement
Concept & Feasibility The user
documents as
User Requirements
much as he knows
Developer Specs about the job the
system must do
Planning
Design
Implementation
Integration Testing
Opr. & Maintenance
19
Retirement
Concept & Feasibility Developer
analyses users
User Requirements
requirement,
Developer Specs performs further
Planning investigation,
and produces
Design unambiguous
Implementationspecifications
Integration Testing
Opr. & Maintenance
20
Retirement
Detailed plan
Concept & Feasibility
specifying the
User Requirements required
Developer Specs resources and
expected
Planning deliverables
Design
Implementation
Integration Testing
Opr. & Maintenance
21
Retirement
Concept & Feasibility
User Requirements
Developer
Architecture: Specs the problem into
Decompose
subsystems and define their relationships
Planning
Design
Detailed Design: Decompose further such that one
Implementation
person can manage each sub-subsystem
Integration Testing
Opr. & Maintenance
22
Retirement
Concept & Feasibility
User Requirements
Developer Specs
Planning
Design Design
Implementation Coding
Integration Testing
Opr. & Maintenance
23
Retirement
Concept & Feasibility
User Requirements
Bring the sub-
subsystems together
Developer Specs to form subsystems
Planning and test. Bring
subsystems together
Design
to form the system
and test
Implementation
Integration Testing
Opr. & Maintenance
24
Retirement
Concept & Feasibility
User Requirements
Developer Specs
Planning Use
Design Enhance
Implementation Adapt
Integration Testing Correct
Opr. & Maintenance
25
Retirement
Concept & Feasibility
User Requirements
Developer Specs
Planning
Design
Implementation Phase it
out when
Integration Testing the time
comes
Opr. & Maintenance
26
Retirement
Concept: Sale Jewelry, There are already many people who are
doing the same business. The concept is when this website is built,
then why people visit it. In Concept we think only business point
of view.
27
The concept i have. Is this possible to build that system the
current technologies, tools and suppliers are available to build
this for me.
28
I am the business person who is running the website, i want to
know at any given time how many people are on my website. Or
last week how much customer purchases or in a year how much
bangles i sold.
29
Planning: Start with developer spec and see how much time is
required to build this system. How much resources are required
i.e. man power, computers, software?
30
31
Concept & Feasibility
User Requirements
Test
Developer Specs
Test
Planning
Test
Design
Test
Implementation
Test
Integration Testing
Acceptance Test Opr. & Maintenance
32
Retirement
KEY ISSUES
33
Concept & Feasibility Customer’s lack of
knowledge about
User Requirements requirements
Developer Specs
Planning
Design
Implementation
Integration Testing
Opr. & Maintenance
34
Retirement
Concept & Feasibility
User Requirements
Lag
Developer Specs
Planning
Design
Implementation
Integration Testing
Opr. & Maintenance
35
Retirement
OTHER LIFE-CYCLE MODELS
The sequence of phases (or the life-cycle mode) that I showed is
just one example of the several sequences that SW developers
follow
You will learn about some more models (e.g. the Spiral model) in
your future courses
36
IN TODAY’S LECTURE
37
READING ASSIGNMENTS
38