Copyright

What is Agile Programming? - Definition & Methodology

Instructor: Lucinda Stanley

Lucinda has taught business and information technology and has a PhD in Education.

In this lesson, we will discover what agile programming is and why it was developed. We will identify some key features and take a look at how the process works.

Why Agile?

How does that software come into being? How does it go from an idea of something someone could use to the actual program? Well, to get from the idea to the finished product we rely on software development. There are a number of software development frameworks or processes. The most commonly used, and the oldest is a sequential development process known as the waterfall methodology, where there is a linear plan for developing the software and the developers go through the process step-by-step. Like this:

Software Programming: Waterfall Approach
Software Programming:Waterfall Approach

The process is this: the designer gets the list of requirements, completes the storyboard (plan out the architecture and design), writes the code, tests the software, and works out any bugs; done. Looks great, right? Well, it is, however, as software became more complicated, this linear approach was no longer enough; the linear process assumes that the developer knows exactly what is going to be needed when the project begins. With newer software projects, developers often don't know all of the requirements before the project begins, developers found they couldn't build software the same way you could build a car or a house. So, what happened?

In 1970 (yes, that long ago!), Dr. Winston Royce created a different process for software development. It became known as agile programming or agile development. Agile programming is a software development framework that is iterative, meaning as new requirements are found, they are added to the process.

Key Features of Agile

Why do software developers like Agile so much? Let's take a look:

Frequent Testing

The software is tested during the development process rather than at the end. This means any 'bugs' in the software are worked out as that section is developed rather than trying to fix the bugs all at once in the end.

Adaptable

Because the product is tested, and new requirements can be added as new information presents itself. There is time to adapt the product before it is complete to make sure it meets the clients' needs.

Savings

While new requirements are added as needed, the time to project completion does not change. Because the software is tested and debugged as it is developed, it reduces the amount of time it takes to go from an idea to a finished product. This decreased development time results in a reduction in cost. Reduced costs mean increased revenue!

Teamwork

One of the real powers of agile programming is the active involvement of all the stakeholders - from the client who is requesting the product, to the design team, to the production team. There is continued communication with the client, which results in a high level of requirement capture, meaning, the needs of the client are being actively considered and the product is adapted as needed. An important element of the teamwork approach is that teams are given the authority to make decisions right then and there without having to get permission. If they think this is the best approach, they are encouraged to go with it.

Methodology

We saw what the waterfall approach looked like earlier, let's take a look at what the agile approach really looks like.

  • Brainstorm - The client and the designer get together to determine the initial requirements.
  • Design - The designer creates a storyboard, or the anticipated flow of the program.
  • Development and quality assurance - The designer develops pieces of the program, tests it, fixes bugs, demonstrates it to the client, and makes changes based on the clients' feedback.
  • Deployment - The product goes to production.
  • Release to market - The product becomes available to the end user.

To unlock this lesson you must be a Study.com Member.
Create your account

Register to view this lesson

Are you a student or a teacher?

Unlock Your Education

See for yourself why 30 million people use Study.com

Become a Study.com member and start learning now.
Become a Member  Back
What teachers are saying about Study.com
Try it risk-free for 30 days

Earning College Credit

Did you know… We have over 200 college courses that prepare you to earn credit by exam that is accepted by over 1,500 colleges and universities. You can test out of the first two years of college and save thousands off your degree. Anyone can earn credit-by-exam regardless of age or education level.

To learn more, visit our Earning Credit Page

Transferring credit to the school of your choice

Not sure what college you want to attend yet? Study.com has thousands of articles about every imaginable degree, area of study and career path that can help you find the school that's right for you.

Create an account to start this course today
Try it risk-free for 30 days!
Create an account
Support