Friday, October 4, 2013

Agile: Why, When, and Where

Programming development cycles are an interesting topic. When considering which development pattern is best for a given project. Things to consider include but are not limited to development time, the size of the development team, the duration of the project, the need for updates, and the amount of communication with the end user/manger.

Agile is a fast paced development cycle that has originated from software development/Programming. It originated because of the fast pace style of programming, the push for rapid deployment and the various difference between building a physical and digital product. I'd say the founding of Agile development came from web development where rapid deployment is often emphasized over optimization. The severity 

A few things to note about Agile development is that it is NOT always the best choice. Generally you want to mix and match different development processes and expect for things to change that out of your control.

For a large company I would recommend the spiral or waterfall method. I believe it works better because the hierarchical structure of companies allows for it to delegate tasks and it has much more trouble pivoting with something like the Agile approach. The agile approach is designed to allow change and for rapid deployment. For a large company rapid deployment is not as much an incentive as is having efficient well tested code.

In the end, methodologies and patterns are applicable but should not be strict. In business as well as programming and engineering, the need for flexibility and approximation is key. Agile is nice because it expects things are going to change, however I wouldn't design my database or an operating system using a agile design.

Links:

No comments:

Post a Comment