Hope
you got to know: what is crystal family of methodologies from previous post. In
this post, let’s discuss about Crystal Methodologies – Commonality .i.e.nothing
but properties common among all crystal family members.
These are the common properties (given below) among different methods of crystal famiy.
1. Frequent delivery
2. Reflective improvement
3. Osmotic communication
4. Personal safety
5. Focus
6. Easy access to expert users
7. Technical environment (With Automation testing, configuration management and frequent integration)
Out of the above, first three properties are core properties of crystal and rest are the properties which increases project safety by dealing with adverse conditions. Let’s discuss one by one in more detail.
Crystal Family members - Common Properties |
Frequent delivery:
Deliver usable
software atleast once a quarter (Delivery cycle can vary from a week to a
Quarter).
Crystal suggests to deliver usable
software atleast once a quarter. Delivered software must be running, tested
with usable functions. Delivery cycle shouldn’t be more than four months, so
that problems/issues can be found and fixed early. Customers/Stakeholders can
provide feedback on the working software which helps team to tailor things with
respect to people/process/product.
Reflective improvement: Inspect and
Improve
All team members get together atleast
once in a quarter to discuss about ‘what is working good’, ‘what is not working
good’ (Factors slowing down team’s work) and ‘is there any
improvements/modifications to be done?’. This is called reflection workshop.
Short iterations help teams to evaluate the process they are following.
Osmotic communication:
All team members working for a project
to be seated in same room/same building (Co-location), which helps in effective
communication and quick information flow through the team. The main objective
behind all team members getting seated in the same room is that: team members
can overhear the discussions happening in background (though they are not
directly involved in) and pick up relevant information. Through this, Communication
overhead is reduced and it takes less
time to get the answers for your questions.
Personal safety:
Team members must be able to speak to
team without any hesitation/inhibitions. Members should be able to discuss with
the team about anything. For example: wrong estimations, friendly disagreements
etc. Main objective behind this property is creating an environment where team
members can share their views without thinking about what others think about
their views.
Focus:
Goals of the project is well defined
and all team members should know their top two priority items/tasks to work on.
Members should get at least two days in a row with two hours each day to work
with out any interruptions. This will increase focus on a item/task long enough
for progress towards project goal.
Easy access to expert users:
Team members should work with experts
to get their questions answered. Experts/End-users would suggest improvements
or solutions. Experts should be available to team (either by person or
reachable by phone), so that team get answers to their questions in few hours.
Technical environment (With Automation
testing, configuration management and frequent integration):
Developers need to check their code
into configuration management system and run automated system tests to identify
errors/problems with the changes being made. It should be done regularly to identify
erros/problems early and fix it.
In this post, We have discussed about
common properties among all crystal family members. Will discuss about
crystal-process in next post.
Thank you for visiting my blog and
spending some time. It would be great, if you could share your feedback as it helps
me to improve. If you have any suggestions OR queries, Please feel free to
reach out to me @ Linkedin Facebook
Linkedin: http://in.linkedin.com/in/sathrambalaji
Facebook: https://www.facebook.com/sathrambalaji
Twitter: @sathrambalaji