Sunday, March 2, 2014

THE AGILE ERA

In the business and software engineering literature the word agile is more a common adjective and the word agility is more a common noun than the name of an accurately defined set of principles, let alone the name of a methodology with well defend set of methods and techniques. Consequently it is easy to find substantial number of definitions of these terms in different contexts. Kettunen (2009) lists seventeen different definitions for the agility in the business literature from years 1995-2008. Further he points out definitions for the strategic, business, enterprise, organization, workforce, IT, manufacturing and supply chain agility and indicates that there are several definitions of agility in the business specific areas as well.

As a summary those 17 different definitions of agility contain the change or the response to change as a key characteristic. Nearly all of them indicate the customer value or the customer involvement as a key characteristic. High quality is expressed in 5 definitions. Also innovation, effectiveness, high performance, nimbleness, competitive capabilities, profitability, simplicity of practices, dexterity of performance, cost efficiency, quickness, resiliency, robustness, adaptive, and lightness are mentioned in some definitions.

Agility in the software development is no exception to this diversity. Kettunen (2009) lists these:

- Quick delivery, quick adaptations to changes in requirements and surrounding environments (Aoyama, 1998);

- Being effective and maneuverable; Use of light-but-sufficient rules of project behavior and the use of human and communication-oriented rules (Cockburn, 2002);

- Ability to both create and respond to change in order to profit in a tur
bulent business environment (Highsmith, 2002);

- Ability to expedite (Anderson, 2004);

- Rapid and flexible response to change (Larman, 2004);

- Building software by empowering and trusting people, acknowledging change as a norm, and promoting constant feedback; producing more valuable functionality faster (Schuh, 2005);

- Discovery and adoption of multiple types of ISD innovations through garnering and utilizing agile sense and respond capabilities (Lyytinen & Rose, 2006);

- Uses feedback to make constant adjustments in a highly collaborative environment (Subramaniam & Hunt, 2006);

- Iterative and incremental (evolutionary) approach to software development which is performed in a highly collaborative manner by self-organizing teams with "just enough" ceremony that produces high quality software in a cost effective and timely manner which meets the changing needs of its stakeholders (Ambler, 2007);

- Capability to accommodate uncertain or changing needs up to a late stage of the development (until the start of the last iterative development cycle of the release) (IEEE, 2007);

- Conceptual framework for software engineering that promotes development iterations throughout the life-cycle of the project Wikipedia (2007);

When the basic terminology offers such variability in definition, it is no wonder that the diversity can be found in understanding of the agile principles as well. The similar variation is also visible in the large number of agile methodologies. In this text agile is a common adjective characterizing any word it is connected with. Agile approach is common name of the agile way of developing software, complying with the agile principles. Agile methodology means some defined and named way of doing agile development, for example XP (Beck, 2000) is called a methodology.

Originally the agile approach in the software development was considered to be a team practice, which is discussed in this chapter first. Then the two dominant ways of expanding the agile approach to cover a wider scope of the software development life cycle in larger organizations are presented.

When the agile manifesto was published in 2001 it marked the start of the avalanche of the agile approach in the software development.
THE AGILE ERASocialTwist Tell-a-Friend
Digg Google Bookmarks reddit Mixx StumbleUpon Technorati Yahoo! Buzz DesignFloat Delicious BlinkList Furl

2 comments: on "THE AGILE ERA"

Unknown said...

As a synopsis those 17 different definitions of nimbleness hold the change or the response to change as a key trait

Regards
vanya

Sanjana said...

In this text agile is a common adjective characterizing any word it is connected with. Agile approach is common name of the agile way of developing software, complying with the agile principles

Regards
Sarkari naukri

Post a Comment