

















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
Agile Methodologies Crystal, Crystal, Project Categories, Complexity, Family Members, The Crystal Family, Common Traits, Flexibility, Crystal Clear, Chartering, Cyclic Delivery, Raman Ramsin, Lecture Slides, Software Development Methodologies, Department of Computer Engineering, Sharif University of Technology, Iran.
Typology: Slides
1 / 25
This page cannot be seen from the preview
Don't miss anything!


















1
Sharif University of Technology
Software Development Methodologies – Lecture 12
^
^
^
^
2
Sharif University of Technology
Software Development Methodologies – Lecture 12 Crystal Methodologies: Complexity
y^
g
p
y
^
Projects
with
a^
larger
size
require
heavier
(more
complex)
j^
g^
q^
p^
methodologies,
since
they
involve
more
people,
and
hence,
need
better coordination.
Projects with higher criticality call for a more rigorous approach, which
j^
g^
y^
g^
pp
might be accommodated by tuning a methodology used for a lesscritical project.
^
^
^
4
Sharif University of Technology
Software Development Methodologies – Lecture 12 Crystal Methodologies: Family Members
y^
g
y
^
Crystal
methodologies
named
in
the
literature:
Clear
,
Yellow
,
^
Crystal
methodologies
named
in
the
literature:
Clear,
Yellow,
Orange,
Red,
Maroon,
Blue,
and
Violet
(in
ascending
order
of
complexity). ^
Others can be added if a usage context arises. ^
Only those that have been practically used in real projects have ^
Only those that have been practically used in real projects havebeen defined:^
Crystal Orange
was introduced in 1998, targeting C40, D40 and E
projects.
Crystal Orange Web
was introduced in 2001, and is a variant of
Crystal Orange targeting ongoing web development projects.
y^
g^
g^
g^
g^
g^
p^
p^
j
Crystal Clear
was introduced in 2004, primarily targeted at C6 and
D6 projects.
5
Sharif University of Technology
Software Development Methodologies – Lecture 12 Crystal Methodologies: Common Traits
y^
g
^
Adherence to the principles of agile development
p^
p^
g^
p
^
Iterative-incremental process, with each increment (delivery cycle)lasting no more than four monthslasting no more than four months ^
No support for development of life-critical systems ^
No support for distributed teams ^
The people involved must be collocated (e.g. in the same building).Dependence
on
effective
communication
and
information
flow
^
Dependence
on
effective
communication
and
information
flow
among team-members for successful enactment
7
Sharif University of Technology
Software Development Methodologies – Lecture 12 Crystal Methodologies: Flexibility
y^
g
y
^
Every Crystal methodology:
y^
y^
gy
Enforces a development process framework.
Requires that a set of certain general process elements be used.
Requires that a set of certain general process elements be used.
Requires that certain work products be produced.
^
But a large body of finer-grained detail is left to the developmentteam to decide; developers are even allowed to use techniquesborrowed from other methodologies.borrowed from other methodologies.^
The development team(s) selects a base methodology at the start ofthe project (in the form of a minimal set of working conventions).
Reflection Workshops are frequently held to monitor and tune theprocess.
8
Sharif University of Technology
Software Development Methodologies – Lecture 12
g^
g^
p^
, p
g^
p^
y
feasibility analysis, shaping and fine-tuning the developmentmethodology, and developing an initial plan. 2
C^
li^
D li
th
i^
d^
l^
t^
i^
i ti
f t
more
Delivery Cycles. Each delivery cycle takes from one week to
three months, during which:
th
t^
d t
d^
fi^
th
l^
l
program-test-integrate iterations; the iteration(s) in a delivery cycleare themselves composed of
daily and
integration cycles
are themselves composed of
daily and
integration cycles.
deployment reviews and reflections are performed.
10
Sharif University of Technology
Software Development Methodologies – Lecture 12
Project
Project
Project^ Chartering
Wrap-up
Project
Delivery
Delivery
Cyclic Delivery
deliver
reflect
Delivery
Iteration
Iteration
recalibrate
Iteration
plan
reflect & celebrate
Day
Day
Day
Day
daily stand-up
Integration
Integration
Integration
Integration
Episode
Episode
Episode
build & test
11
Sharif University of Technology
[Cockburn 2004]
Software Development Methodologies – Lecture 12
Executive Sponsor: provides monetary and logistical support and essential direction to the team; may also act as domain expert.
Lead Designer: also acts as project manager, coordinator, and technical expert and trainer. 3
An
Ambassador User
who acts as the expert on system usage
Ambassador User, who acts as the expert on system usage.
Systems Analysts,
Designer-Programmers,
Business
Experts,
Testers,
Text-Writers,
Coordinators, and others, as deemed
p^
necessary by the team.
2.^
Perform the
Exploratory 360°
3.^
Shape and fine-tune the methodology conventions
4.^
Build the initial project plan
13
Sharif University of Technology
Software Development Methodologies – Lecture 12
1.^
Build the core of the team 2
Perform the
Exploratory 360
° : a preliminary feasibility study providing a
Exploratory
360°
:^ a
preliminary feasibility study providing a
high-level project-wide review of the key issues governing the developmenteffort:
expected business value of the system
high-level requirements (usually captured in use cases) 3
d^
i^
d l
domain models
technology alternatives 5
overall project plans and constraints
overall project plans and constraints
necessary resources 7
development methodology
development methodology
3.^
Shape and fine-tune the methodology conventions
14
Sharif University of Technology
4.^
Build the initial project plan
Software Development Methodologies – Lecture 12
1.^
Build the core of the team 2
Perform the
Exploratory 360
°
2.^
Perform the
Exploratory
360
3.^
Shape and fine-tune the methodology conventions
p^
j^
p
Project Map showing the development tasks and
their dependencies, and a
Release Plan showing the projected
completion dates for delivery cycles and iterationscompletion dates for delivery cycles and iterations.
called
Blitz Planning, which is a close variant of XP’s card-based
l^
i^
h i
planning technique.
16
Sharif University of Technology
Software Development Methodologies – Lecture 12
p^
q^
p^
j^
p
are reviewed and updated according to the experience gained in thedelivery cycles performed so far.
delivery cycle. Each iteration lasts from one week to three months.
number of users and feedback is used for improving the system andnumber of users and feedback is used for improving the system andrevising the plans and/or the requirements.
lit
f th
d li
d^
d^
t^
th
d^
l^
t^
th d l
d
quality of the delivered product, the development methodology andthe plans.
17
Sharif University of Technology
Software Development Methodologies – Lecture 12
19
Sharif University of Technology
Strengths ^
Iterative-incremental processC^
ti^
i t
ti
Continuous integration
Iterative development engine governed by planning andreviewingreviewing
Flexible and configurable process
Methodologies used for a low criticality project can typically be
Methodologies used for a low-criticality project can typically betuned to fit a higher-criticality project, provided that the projectsize is not increased dramatically.
Active user involvement
20
Sharif University of Technology