|
Server : Apache/2.4.62 System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64 User : www ( 80) PHP Version : 8.3.8 Disable Function : NONE Directory : /domains/srakitin/OLD/newsletter/vol4/no3/ |
Upload File : |
Food for Thought-An e-newsletter published by Software Quality Consulting, Inc.
March 2007, Vol. 4 No. 3
The Quality Manifesto
What topics would you like to see in this newsletter? Each month, this
newsletter tries to provide you with useful information. This is a two-way
street and your feedback is important. Please send your thoughts and comments
to [email protected].
--------------------------------------------------------------------------------
Welcome to Food for Thought(TM), an e-newsletter from Software Quality
Consulting (http://www.swqual.com/index.html?Intro). I've created free
subscriptions for my valued business contacts. If you find this newsletter
informative, I encourage you to continue reading. Feel free to pass this
newsletter along to colleagues by clicking the Forward Email link at the bottom
of this newsletter. If you�ve received this newsletter from a colleague and
would like to subscribe, please click this Enter New Subscription link
(http://www.swqual.com/newsletter/Subscribe.htm?Newsletter). If you don't wish
to receive this newsletter, click the SafeUnSubscribe(TM) link at the bottom of
this newsletter, and you won�t be bothered again.
Your continued feedback on this newsletter is most welcome. Please send
your comments and suggestions to [email protected].
--------------------------------------------------------------------------------
*** In This Issue ***
In This Months� Topic, I offer a somewhat belated response to the Agile
Manifesto...
Regular features to look for each month are:
- Monthly Morsels
Hints, tips, techniques and reference info related to this month�s topic
- Calendar
Conferences, workshops, and meetings of interest to software engineers,
QA engineers and anyone interested in software development
--------------------------------------------------------------------------------
*** This Month�s Topic ***
THE QUALITY MANIFESTO
The music of Neil Young played an important role during the turbulent
1970�s. With the release of his latest album � Living With War
(http://www.neilyoung.com/lwwtoday/) � I learned of the angst he experienced
as an irreverent rock and roll icon. In a recent interview, he expressed
regret that the younger generation of rock and roll groups hasn�t taken up
�the cause� of the anti-war movement, a cause he and other musicians
championed during the Vietnam War...
Does this have anything to do with software engineering? Of course not, but
after listening to the Neil Young interview, it occurred to me that it�s been
almost 6 years since the Agile Manifesto (http://www.agilemanifesto.org/) was
published. During this time, there have been few voices questioning the hype
emanating from the Agile Zealots. Like Neil, I hoped that other like-minded
people would see through the smoke and mirrors and expose these methods for what
they are � just another set of development methodologies, nothing more � nothing
less.
Thankfully, people are finally starting to speak up and speak out. There�s
anecdotal evidence that indicates adherence to Agile Methods such as Extreme
Programming has led to project disasters (http://c2.com/cgi/
wiki?ChryslerComprehensiveCompensation) and while there have been some
successes, this only illustrates my point � Agile Methods are not a
Silver Bullet.
And like Obama, I can proudly say that I didn�t vote for Agile Methods
(http://www.swqual.com/newsletter/vol4/no3/Letters%20to%20Editor%20-
%20Dec%202001.pdf) back in 2001...
In case you�ve been living under a rock for the past few years, Agile
Methods are a collection of several development methodologies that
include:
- Extreme Programming (known as XP)
- Crystal
- Scrum
- Dynamic Systems Development
- Adaptive Software Development
- Lean Software Development
While these methodologies have some significant differences, they all
share common values as expressed by the Four Values:
�We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
- Individuals and interactions...over processes and tools
- Working software...over comprehensive documentation
- Customer collaboration...over contract negotiation
- Responding to change...over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.� [1]
Penned by an impressive group of really smart people, the publication of
the manifesto touched off a firestorm of controversy and ignited a �you�re
either with us or against us� discourse that hasn�t been seen in our
industry since the methodology wars of the late 1980�s.
As you may recall from my earlier e-newsletter on this topic
(http://www.swqual.com/newsletter/vol2/no7/vol2no7.html), I was not a
happy camper when the manifesto was first published. What angered me was
the suggestion that Agile Methods were well-suited for all types of
projects with all types of project teams. The Agile Zealots wanted us to
believe that these methods were the holy grail of software development �
and would render all other methods obsolete.
CYNIC ALERT!
Soon after the manifesto was published, it seemed that books with the
word �agile� in their title started appearing almost on a daily basis.
The cynic in me believes that the Agile Manifesto was published to
create marketing buzz about books the Agile Zealots planned to write.
Today, amazon.com lists over 535 books with the words �agile
development� in their title.
EXTREME SOLUTIONS
Extreme solutions are almost always not the most effective solutions. From
the perspective of software development, too much process is just as
detrimental as too little process. Process needs to serve a purpose that
provides value to your customers.
The ideal software development methodology provides �just enough process�
so that the development team can deliver a product that:
- Meets or exceeds customer expectations for functionality and quality
- Meets or exceeds time to market commitments made to customers
- Meets or exceeds internal business expectations
There are many software development methodologies that can provide �just
enough process�. And more importantly, a fact that seems to have gotten
lost in all of the hoopla over Agile Methods is:
Customers don�t care what method is used to develop
software, so long as the software meets their needs.
Customers are focused on results, finding solutions to their problems, and
getting on with their work. If you take the time to ask your customers
what they care most about with respect to your software, you would likely
get answers like this:
- Your software needs to solve my problems in my environment...
- Your software needs to include features we need in order to be
successful...
- Your software needs to be delivered in a timely manner with as few bugs
as possible...
- Your software should be able to support us as we grow...
- Your company needs to provide the level of support we need to be as
productive as possible...
In dealing with customers, there are always going to be challenges...
... but we need to learn how to manage this relationship as effectively and
efficiently as possible. Those companies that are successful in the long
run will be companies that have mastered techniques for managing customer
relationships in a manner that values customer interactions.
The software industry needs to focus on meeting customer needs and expectations
since high profile software failures (http://www.swqual.com/newsletter/vol4/no1/
vol4no1.html) will likely continue to increase.
- Instead of focusing on meeting customer needs, the Agile Manifesto
addresses the needs of software development teams.
Do you think customers care if your company uses Agile Methods or any
other methodology to develop software? I don�t think so.
- Many software companies suffer from short-term thinking
(http://www.swqual.com/newsletter/vol4/no1/vol4no1.html).
Strategic decisions are often made based on achieving short-term
objectives without consideration for long-term impact. The goals and
objectives of many software development companies are often very
different from the goals and objectives of their customers. The effect
of these differences results in software products that fail to meet
customer expectations. You can ignore your customer�s expectations for
only so long before they say to you � so long!
We need to identify how the software industry can do a better job of
meeting and exceeding customer expectations...
FOCUS ON MEETING CUSTOMER NEEDS
A Quality Manifesto addresses how we can meet and exceed customer
expectations, rather than focusing on the needs of development teams. Here
then is my belated response to the Agile Manifesto:
The Quality Manifesto
We are committed to developing and delivering software products that meet
or exceed our customers� expectations. To do this, we have come to value:
- Getting it right the first time...since we all know this is the most
efficient way to work
- Using measurable definitions of software quality based on our
customers� needs... because we know that to improve something we must
be able to measure it
- Meeting commitments made to our customers and to each other...because
our reputation depends on our ability to meet commitments
- Providing products that can meet customer needs as their needs
evolve... since our business depends on establishing long-term
relationships with our customers
We believe that achieving these values is essential to the long-term
viability of our company.
By focusing on the values described above, software development companies
will be focusing their energies on meeting customer needs. Addressing the
needs of software development teams should be determined once customer
needs are understood. Using the paradigm of �just enough process� can help
organizations determine the most efficient approach for developing and
supporting software products over the long-term.
Summary
Dr. Roger Pressman said,
�I contend that software engineering principles always work. It�s never
inappropriate to stress solid problem solving, good design, and thorough
testing (not to mention the control of change, an emphasis on
quality,...). A specific software process might fail because it is
overkill, or the work products it requires are unnecessary or
burdensome, or a person or team becomes overly dogmatic in the
application of the process. But history is on the side of a solid
engineering approach.� [2]
Until next time...
--------------------------------------------------------------------------------
*** Monthly Morsels ***
Every month in this space you�ll find additional information related to
this month�s topic.
- References:
[1] Highsmith, J. and Cockburn, A., �Agile Software Development: The
Business of Innovation�, IEEE Computer, Vol. 34, No. 9, Sept 2001, pp.
120-122.
[2] Pressman, R., �What A Tangled Web We Weave�, IEEE Software, Jan/Feb
2000, pp. 18-21.
--------------------------------------------------------------------------------
*** Calendar ***
Every month you�ll find news here about local and national events that
are of interest to the software community...
- Software Quality Calendar
There are many organizations that sponsor monthly meetings, workshops,
and conferences of interest to software professionals. Find out what�s
happening...
(http://www.swqual.com/links/upcoming.html)
- Workshops Offered by Software Quality Consulting
Software Quality Consulting offers workshops in many topics related to
software process improvement. Get more info...
(http://www.swqual.com/seminars/courses.html)
--------------------------------------------------------------------------------
*** About SQC ***
Software Quality Consulting provides consulting, training, and auditing
services tailored to meet the specific needs of clients. We help clients
fine-tune their software development processes and improve the quality of
their software products. The overall goal is to help clients achieve
Predictable Software Development(TM) � so that organizations can consistently
deliver quality software with promised features in the promised timeframe.
To learn more about how we can help your organization, visit our web site
(http://www.swqual.com/index.html?AboutSQC) or send us an email
([email protected]).
--------------------------------------------------------------------------------
I hope this newsletter has been informative and helpful. Your comments and
feedback are most welcome. Send me your feedback ([email protected])...
Thanks,
Steve Rakitin
[email protected]
--------------------------------------------------------------------------------
Food for Thought, Predictable Software Development, Act Like a Customer,
and ALAC are trademarks of Software Quality Consulting, Inc.
Copyright 2007. Software Quality Consulting, Inc. All rights reserved.
Graphic design by Sage Studio