crystal methodology cos 730

30
COS 730 group assignment Crystal methodologies MB Mauch 29007552 K Bassuday 29233412 J van Zyl 29112690 K le Roux 29021872

Upload: bassuday

Post on 30-Jun-2015

7.966 views

Category:

Technology


0 download

DESCRIPTION

A presentation on crystal methodology. Introduction of the crystal agile method is described.

TRANSCRIPT

Page 1: Crystal Methodology COS 730

COS 730 group assignment Crystal methodologiesMB Mauch 29007552K Bassuday 29233412J van Zyl 29112690K le Roux 29021872

Page 2: Crystal Methodology COS 730

Crystal Crystal methods are part of the Crystal

family developed by Alistair Cockburn in the mid-1990s

Based on observations of many teams that did not follow formal methodologies yet had successful projects

These are “lightweight methodologies” Avoids strict/rigid processes found in

other methodologies

Page 3: Crystal Methodology COS 730

Crystal Name crystal comes from gemstones

The faces are a different view on the underlying core of principles and values of each method.

In terms of software, the faces represent techniques, tools, standards and roles for each method.

Page 4: Crystal Methodology COS 730

Crystal Crystal methods focus on:

People Interaction Community Skills Talents Communications

Page 5: Crystal Methodology COS 730

Crystal Scaled according to team size, different

colours denote the weightCrystal Clear lightweight, not mission critical

Crystal YellowCrystal OrangeCrystal Orange WebCrystal RedCrystal MaroonCrystal DiamondCrystal Sapphire heavy, mission critical

Page 6: Crystal Methodology COS 730

Crystal common propertiesCrystal family methods have 7 common properties:1. Frequent delivery2. Reflective improvement3. Close or osmotic communication4. Personal safety5. Focus6. Easy access to expert users7. Automated tests, configuration management,

frequent integration

Page 7: Crystal Methodology COS 730

Frequent delivery Iterations of the software program

should be released regularly (from weekly up to quarterly)

Problems can be found and fixed early on

Customers can ensure that the project is going the way they want it to go

Page 8: Crystal Methodology COS 730

Reflective improvement Developers dedicate time to improving

the development process Reflection workshops are held every few

weeks to help find processes that are working and which ones need to be modified

Iteration helps determine if a process is working or not

Page 9: Crystal Methodology COS 730

Close or osmotic communication Development teams must be in the

same room This aids communication

Developers do not need to break concentration to move somewhere else

Information flows quickly through the team

Communication overhead is reduced

Page 10: Crystal Methodology COS 730

Personal safety Team members must be able to speak

freely in a group without being ridiculed

Page 11: Crystal Methodology COS 730

Focus1. Focus on a task long enough for

progress to be made 2 hour period where the developer should

have no interruptions Developer assigned to a project for at

least 2 days

2. Clear definition and goals of the project

Page 12: Crystal Methodology COS 730

Easy access to expert users Developers work with experts in the

field of the project who will also be end-users

Expert will answer questions and suggest solutions or improvements

Minimum: meet once a week for 2 hours and be reachable by phone

Page 13: Crystal Methodology COS 730

Automated tests, configuration management, frequent integration Spot errors and problems that arise from

changes being made

Done regularly Problems spotted early on Problems are less likely to grow

Page 14: Crystal Methodology COS 730

Crystal Clear Lightest methodology that will still lead to

successful projects Supports fixed price contracts Teams using Crystal Clear can use

techniques from other methodologies and vice versa

Requires documentation Does not prescribe what documentation but

leaves that up to the judgment of the team

Page 15: Crystal Methodology COS 730

Crystal Clear Priorities:

Project safety (deliver the system in adequate time and budget)

Effective and habitable (people can live with the system and use it)

Focuses on people, not processes or artifacts One small team of 2 - 6 people in the same

office working on not life-critical systems

Page 16: Crystal Methodology COS 730

Crystal Clear“The difference between CrystalClear and ExtremeProgramming is that XP is much more disciplined, CrystalClear is much more tolerant, even sloppy-looking. I would say XP is more productive, CrystalClear more likely to get followed.”

-- AlistairCockburn

Page 17: Crystal Methodology COS 730

Crystal Yellow Suitable for teams of 7 to 20 members Crystal yellow has key characteristics such

as easy communication, clear ownership of code areas , feedback from real users, automated testing, mission statement and monthly increments of improvements.

Easy communication replaces the need for detailed designed documentation and ensures everyone is comfortable with communicating the needs of the project.

Page 18: Crystal Methodology COS 730

Crystal Yellow Clear ownership of code areas; helps with

defined code areas being made so that changes do not have to be explained or granted by everyone. It also emphasises ownership and responsibility for each section of code.

Feedback is needed from “real users” where it eliminates the need of long process requirements collection.

Mission statements provide the goal and general achievements needed to be reached.

Page 19: Crystal Methodology COS 730

Crystal Yellow Monthly improvements include making

lists of what needs to be done and achieving small improvements within each list made.

Automated testing helps resolve errors quickly. It should be established before new functions are fully finished.

Page 20: Crystal Methodology COS 730

Crystal Orange Incremental development. The idea is for agile development. There needs to be a release every 3-4

months. Each release is called an “increment”.

Page 21: Crystal Methodology COS 730

Crystal Orange Designed for medium size projects (10 –

40 team members) Duration ranging from 1 – 2 years Split up in teams with cross functional

skills

Page 22: Crystal Methodology COS 730

Crystal OrangeActivities of Crystal Orange Staging: Planning for releases. In this phase the

developers gather the requirements, evaluate technical feasibility, and prioritise the tasks.

Review: This is the phase where the objectives of the increment is reviewed, to make sure that it was met accordingly. Increments consist of iterations – Construction → Demonstration → Review.

Tracking: Tracking the project at different stages of development ensures that fluctuations are picked up and handled correctly. The increments are measured at each milestone, including start, review, test and deliver.

Page 23: Crystal Methodology COS 730

Crystal OrangeActivities of Crystal Orange (cont) Parallelism: This is the phase where monitoring

teams review stability, work plans and synchronisation.

Holistic Diversity: This is an activity where large functional groups are split up into cross functional groups, creating a diversity of specialised people to handle certain parts of the project.

Tuning: This is the phase where interviews and workshops are used to find solutions.

Workshops: This helps to drive team attention to project goals.

Page 24: Crystal Methodology COS 730

Crystal Orange Web Used in projects that have a continually

evolving code base that is being used by the public

Used for category D40 projects. Used in teams with 21-40 members

Page 25: Crystal Methodology COS 730

Crystal Orange Web Consists of a set of conventions grouped

into five categories: Regular heartbeat, with Learning Basic process Maximum Progress, minimum distractions Maximally defect free A community, aligned in conversation

Page 26: Crystal Methodology COS 730

Crystal Orange Web1. Regular heartbeat, with Learning:

Consist of twee week development life cycles

It has a post-reflection workshop Suggestions are made at these workshops

2. Basic Processes: Organizes what work will be done by whom Organizes what decisions will be made by

whom

Page 27: Crystal Methodology COS 730

Crystal Orange Web3. Maximum progress, minimum distractions

Gives the people enough time to work on deliverables that are the most important.

Work is broken into two week cycles and then further broken down into cycles for components that that can be developed in 1-3 days.

Developers have whiteboards outside their offices on which they post the status of their current work for the week.

Page 28: Crystal Methodology COS 730

Crystal Orange Web4. Maximally defect free

Strive to develop code that is bug free. Done by intensive testing and overlooking of

code

5. A community, aligned in conversation Focused on the long term target of the

company All roles in the company should participate in

cross functional teams. This means that teams with different expertise

should all work towards a common goal

Page 29: Crystal Methodology COS 730

References http://en.wikiversity.org/wiki/Crystal_Methods http://www.agilekiwi.com/other/agile/crystal-clear

-methodology/

http://www.martinfowler.com/articles/newMethodology.html#Crystal

http://www.e-reading.org.ua/chapter.php/83470/35/Cockburn_-_Agile_Software_Development.html

http://www.versionone.com/Agile101/Agile-Development-Methodologies-Scrum-Kanban-Lean-XP/

http://c2.com/cgi/wiki/wiki?CrystalClearMethodology

Page 30: Crystal Methodology COS 730

References http://en.wikipedia.org/wiki/Crystal_Clea

r_%28software_development%29 Gorakavi P.K. What You Should Know

about Crystal Orange Methodology #6 of a Series, 2009

Coffin. R and Lane.D, 2010 http://www.devx.com/architect/Article/32836/1954

paraview.org/ParaView3/images/8/8a/Crystal_Yellow.ppt