Agile Development at Excira

Agile development is a set of principles and practices that address the problem “How can we build the right software, quickly, with high quality, in a rapidly changing business and technology environment?"

At Excira, we embrace the Agile principles and philosophy, and put them to practice in our client engagements.

Agile development recognizes the fact that our understanding of our projects requirements will likely change during the execution of the project, and offers specific practices for each of the software development disciplines: requirements analysis, project planning, development, and testing.

Agile projects are developed incrementally and iteratively, using relatively short, time boxed iterations of 1 to 4 weeks. Each iteration, a fresh look is taken at the project requirements and the features with the highest business value are developed.

"Agility is dynamic, context specific, aggressively change embracing, and growth oriented. It is not about improving efficiency, cutting costs, or battening down the business hatches to ride out fearsome competitive storms. It is about succeeding and about winning profits, market share and customers in the very centre of competitive storms that many companies now fear."  (Goldman, Nagel and Preiss, 1995)

 

Agile Manifesto and Principles

When writing a process for people to follow, we unfortunately can not write a rule for every case. Agile practitioners have developed an “Agile Manifesto”, and set of  principles to guide daily decisions during project development.

 

Agile Manifesto
http://www.agilemanifesto.org/

Agile development values:

"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.

 

Agile Principles
http://agilemanifesto.org/principles.html  

Agile defines a set of principles that add detail to the values expressed in the manifesto.

"Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software. "

"Welcome changing requirements, even late in
development. Agile processes harness change for
the customer's competitive advantage."

"Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale."

"Business people and developers must work
together daily throughout the project."

"Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done."

"The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation."

"Working software is the primary measure of progress.
Agile processes promote sustainable development."

"The sponsors, developers, and users should be able
to maintain a constant pace indefinitely."

"Continuous attention to technical excellence
and good design enhances agility."

"Simplicity--the art of maximizing the amount
of work not done--is essential."

"The best architectures, requirements, and designs
emerge from self-organizing teams".

"At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behavior accordingly."