















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
An overview of the personal software process (psp) in software development, focusing on cyclic processes and scalability stages. The psp is a disciplined personal framework designed to help engineers produce zero-defect products on schedule and within planned costs. The evolution of psp, the concept of scalability, and the different stages of psp, from small programs to large multi-component systems.
Typology: Slides
1 / 23
This page cannot be seen from the preview
Don't miss anything!
















Department of Computer & Information Sciences Department of Computer & Information SciencesPakistan Institute of Engineering and Applied SciencesPakistan Institute of Engineering and Applied Sciences
Umar Faiz
http://www.pieas.edu.pk/umarfaiz/cis
Software Quality
Cyclic Personal Process
TSPCyclic development
PSP2.1D
i^
t^
l t
Personal Quality Management
PSP2Code reviewsDesign reviews
Design templates
Personal Planning Process
PSP
PSP1.1Task planningSchedule planning
Personal
Planning Process
Size estimatingTest report
p^
g
Baseline Personal Process
PSP0Current processTime recording
PSP0.1Coding standardSize measurementProcess improvementproposal (PIP)
http://www.pieas.edu.pk/umarfaiz/cis
Time
recording
Defect recordingDefect type standard
proposal (PIP)
It
can
be
disintegrated
into
smaller
components
The smaller components can be developedThe
smaller
components
can
be
developed
http://www.pieas.edu.pk/umarfaiz/cis
http://www.pieas.edu.pk/umarfaiz/cis
Stage
is
the
basic
construct
level.
It concerns the construction of loops case statements etcIt
concerns
the
construction
of
loops
case
statements
etc
Stage
is
the
principal
focus
of
initial
programming
courses.
At
stage
you
consciously
design
each
programming
construct.
When
your
thinking
is
preoccupied
with
these
details,
it
is
hard
to
visualize
larger
constructs.
http://www.pieas.edu.pk/umarfaiz/cis
http://www.pieas.edu.pk/umarfaiz/cis
Hiding
functional
complexity
from
users
so
they
are
not
g
p
y
y
overwhelmed
with
the
multitude
of
capabilities).
Maintaining
component
quality:
integration
is
difficult
if
not
impossible with low quality componentsimpossible
with
low
quality
components
http://www.pieas.edu.pk/umarfaiz/cis
Reduce
centralized
control,
because:
-^
No
one
could
p
ossibly
track
all
the
activities.
p
y
-^
No
one
could
understand
all
the
components.
-^
Too
many
communication
paths
would
be
necessary.
-^
Data to central control would be late & incomplete, and would thus lead toData
to
central
control
would
be
late
&
incomplete,
and
would
thus
lead
to
poor
decision
‐making.
-^
Centralized
control
de
‐motivates
the
people
at
the
bottom,
who
need
to
take
effective
action
on
their
own
http://www.pieas.edu.pk/umarfaiz/cis
Large Project
Product Z
MediumP
j^
t^
Component X
Component Y
Projects
Component X
Component Y
Module B
Module A
Module E
Module D
Module H
Module G
Module K
Module
J
Module N
Module M
SmallP
j^
t
Module C
Module F
Module I
Module
L
Module O
http://www.pieas.edu.pk/umarfaiz/cis
P
rojects
Requirements& Planning
Specifications
SpecifyCycle
High-levelDesign
Detailed Design &Design Review
HLDReview
Test Developmentand Review
CyclicDevelopment
Implementationand Code Review
Post-mortem
Compile
IntegrationSystem test
Product
Test Reassess
http://www.pieas.edu.pk/umarfaiz/cis
Reassess and Recycle
Cyclic PSP Flow
Progressive
(“pipeline”)
-^
System
p
rocesses
information
in
a
sequential
manner
y^
p^
q
Functional
Enhancement
-^
Kernel
enhancements,
see
working
system
earliest
t P th E h
t
ast
ath
nhancement
-^
Demonstrate
key
timing/system
problems
as
early
as
possible
Dummy
-^
Top
‐down,
layered,
good
for
kernel
of
enhancement
approaches^ http://www.pieas.edu.pk/umarfaiz/cis
These
will
define
activities
for
subsequent
cycles
(new
changed)
per
cycle
Establish
spec’s
for
current
cycle
Follow
regular
development
process
for
the
current
sub
‐system
Be
especially
attentive
to
quality
(thorough
reviews,
defect
prevention removal) since subsequent cycles will use this codeprevention
removal)
since
subsequent
cycles
will
use
this
code
http://www.pieas.edu.pk/umarfaiz/cis
you
will
better
understand
your
strengths
and
weaknesses
you will be better able to maximize your assetsyou
will
be
better
able
to
maximize
your
assets
the
will
help
you
to
objectively
deal
with
your
weaknesses.
by
defining
your
process,
you
assert
control
over
it
you
will
unconsciously
observe
your
working
self
you
will
see
many
ways
to
improve
your
process
and
your
performance.
you
can
better
see
how
the
process
parts
relate
you
can
better
focus
on
p
riority
areas
for
improvement.
http://www.pieas.edu.pk/umarfaiz/cis
y^
p
y
p
you
will
have
a
planning
framework
you will have the data on which to base your plansyou
will
have
the
data
on
which
to
base
your
plans
your
plans
will
be
more
reliable
you
will
be
better
able
to
track
your
status
you
will
be
better
able
to
manage
your
work.
you
will
recognize
your
personal
bests
you
will
better
understand
how
to
repeat
and
to
surpass
them
you will see where and how you have improved
you
will
see
where
and
how
you
have
improved
you
will
have
your
own
personal
improvement
goals
you
will
have
the
satisfaction
that
comes
with
knowing
y
ou
are
http://www.pieas.edu.pk/umarfaiz/cis
y^
g y
doing
superior
work.