Why Agile?
About 10
years ago, when Agile started its expansion also in big corpos I was very sceptic
about that. Then we have well known procedures, processes, type of documentation,
project status metrics and tracking. We were happy, I would say.
Competition
Analyst -> Architect/Designer -> Developer -> Tester). Everyone would like to be Business Analyst or Architect because this was cool to create and design new things. Developers were rather bored – because of very strict design they didn’t have creative job. Testers were at the end of the chain still need to wait everything is finished and were frustrated because usually development were delayed.
constant competition between tester and developer.
Having
Agile gives everyone chance to prepare a design, preparing a demo to customer
so everyone in scrum team is equal. No competition inside the Scrum team.
Evaluation
Before
Agile team were usually big (about 30-40 people) and during 6-month period could
develop many features. This was one big release from time to time, upgrades
were usually very tough. Feedback from customer was not really appreciated because
when it arrives team need to rework very complex solution, maybe change the
complex design.
In Agile we
would like to show new feature (maybe not complete yet or prototype) as early
as possible. Having early feedback help the teams in delivering real value to
customer – not only new fancy feature in documentation.
Constant quality
I was
working in test department from the beginning and waterfalls’ time I remember as
a constant fighting with quality. Our quality was good at the end of the
product development (near GA) however with first feature developed in new
release quality dropped down dramatically. This was well known and we had special
quality metrics where we projected number of defects in different cycles. This
was crazy because we treated product code as a sandbox in the middle of the development!
At one my project at some point of time we had 100 severity 1 defects
(potential blockers) so development manager asked us to prioritize which one are
more important than others J
Yes that was crazy!
Agile gives
us strict requirement – quality need to be at the same level for the whole
sprint. With no exceptions.
No support line
Probably
last crazy think was having separate support line(s). When Product was developed,
we released v1. When development team is working on new version (v2) support
team is responsible for preparing fixes for v1. Some time there were no
interaction between development team and support team so that development was
not even aware of defects found by customer in their code!
Agile and
Continues Delivery fix this gap and we have common development code (yes, not
backport fixes!) and development team is responsible for fixing problems from
field. Thanks to this they can learn on their mistakes to avoid similar issues
for future.
Comments
Post a Comment