Professional CodeIgniter

(singke) #1

Agile Methodologies and


Approaches


With our preliminary overview of MVC and CodeIgniter complete, let ’ s take a slight detour. Don ’ t
worry, you ’ re not being taken on a joyride; this detour lays some pretty important foundational
blocks. In other words, the goal of this chapter is for you to be able to marry what you ’ ve learned
about MVC with Agile methodologies. Knowing about MVC and Agile and combining that
knowledge with CodeIgniter allow you to build applications very quickly.

What Is Agile?


A lot of different definitions for Agile exist, ranging from the superficial to the authoritative and
pedantic. Not every definition is useful, nor is every definition really applicable to your job as a
software developer. Things only get more confusing once you realize that various Agile
methodologies exist, all of them competing for your attention.

At the end of the day, the most important thing to remember is this: Agile software development is
a conceptual framework that seeks to minimize risk by developing software in short amounts of
time. A typical iteration can last 1 to 4 weeks, during which time a software team performs tasks
from a complete project life cycle (planning, design, coding, testing, documentation). Each iteration
usually starts with stories (what Agile calls requirements ) and culminates in potentially shippable
software. Another important aspect of Agile is the team ’ s ability to self - organize as they
communicate face - to - face with stakeholders and other team members.

If you ’ re not familiar with Agile, you probably have one of two reactions:

“ How is this different from cowboy coding? Agile sounds just like every chaotic code - and -
fix project I ’ ve ever been part of. ”

“ How does anyone get anything done in so short a time? Agile sounds like a perpetual
hamster wheel where everyone burns out. ”


Free download pdf