think on their feet.
Certified SCRUM trainer (SCRUM is a
specific kind of agile development meth-
odology) Stacia Broderick states [ 5]:
“In order for teams to truly collabo-
rate, each team member must be free
of inhibition, able to speak his or her
mind, and willing to throw any idea out
there on the table. When collaboration
happens, innovation, the creation of a
new thing, is guaranteed. We teach a
lot about release [by] having team mem-
bers release into their edges, or their ar-
eas of discomfort and apprehension.”
GETTING AGILE
Agile software development techniques, and software development
methodologies in general, support the
idea that there is more to computer science in the real world than just technical topics. People are an integral part
of developing the software that makes
computers useful. In today’s industry,
most of that software is developed by
teams rather than individuals, and
more and more software is being developed in an agile environment. It
is important for individuals looking
for a job in the computing industry to
understand how teams work, how to
make a team highly productive, and
how to actively engage in agile software development.
Biography
David Largent holds a master’s degree in computer
science from Ball State Universityas well as 28 years’
experience as an information technology professiona,
focusing on systems analysis, programming, database
design, and business operations. He has managed an
information technology department in a medium-sized
company and currently serves as an instructor at Ball
State University.
SIDEBAR
What is Agile Software
Development? The Manifesto
In February 2001, 17 leaders in the agile software development world met to find common ground, naming themselves The Agile Alliance [ 1]. This gathering included representatives of a variety of methodologies: extreme programming, SCRUM, DSDM, adaptive software development, feature-driven development,
pragmatic programming, and others. What came out of this three-day gathering
was the “Manifesto for Agile Software Development.” The italicized words in the
principles of the Manifesto below (italics mine) speak to the human interaction
much more than computer science.
Principles Behind the Agile Manifesto [ 1]:
n Our highest priority is to satisfy
the customer through early and
continuous delivery of valuable
software.
n Welcome changing requirements,
even late in development. Agile
processes harness change for the
customer’s competitive advantage.
n Deliver working software frequently,
from a couple of weeks to a couple
of months, with a preference to the
shorter timescale.
n Business people and developers
must work together daily throughout
the project.
n Build projects around motivated
individuals. Give them the
environmentandsupport they need,
and trust them to get the job done.
n The most efficient and effective
method of conveying information to
and within a development team is
face-to-face conversation.
n Working software is the primary
measure of progress.
n Agile processes promote
sustainable development. The
sponsors, developers, and users
should be able to maintain a
constant pace indefinitely.
n Continuous attention to technical
excellence and good design
enhances agility.
n Simplicity—the art of maximizing
the amount of work not done—is
essential.
n The best architectures,
requirements, and designs emerge
from self-organizing teams.
n At regular intervals, the team
reflects on how to become more
effective, then tunesand adjusts its
behavior accordingly.
References
1. Agile Alliance. 2001. Manifesto for Agile Software
Development. http://agilemanifesto.org/ (accessed
Apr. 22, 2009).
2. Boy Scouts of America. 2004. National Youth
Leadership Training (Staff Guide, Staff Development
Guide, Syllabus). Irving, Texas.
3. Dee, J. R., and Henkin, A. B. 2001. Smart School
Teams: Strengthening Skills for Collaboration.
Lanham, Maryland: University Press of America.
4. Feinman, J. 2008. “Agile for a ne w age.” SD Times on
the Web. Dec. 1, 2008. http://www.sdtimes.com/
link/33076 (accessed Apr. 22, 2009).
5. Feinman, J. 2009. “Agile world’s a stage.” SD Times
on the Web. Feb. 1, 2009. http://www.sdtimes.com/
link/33198 (accessed Apr. 22, 2009).
6. Lencioni, P. 2005. Overcoming the Five Dysfunctions
of a Team: A Field Guide for Leaders, Managers, and
Facilitators. San Francisco: Jossey-Bass.
7. Pressman, R. S. 2005. Software Engineering: A
Practitioner’s Approach. 6th Edition. Ne w York:
McGraw-Hill.
“There is more to
computer science
in the real world
than just technical
topics. People are
an integral part
of developing the
software that makes
computers useful.”