Translate

Sunday, October 6, 2013

Agile: Should You Be Using It?

Programming is hard, messy, and complicated. There is no doubt that you cannot just learn how to program well, especially not at an industrial level. One thing much more difficult than programming is group programming. Group programming involves communication, management, version control systems, and many hours of debugging everything.

Agile is a type of project management that is used in many software engineer and programming fields. Agile uses group management, communication between groups, and communication between groups and clients to create short windows of time where the group will fulfill part of the entire project and deliver it to the client. This time of management creates rapid execution of projects using short term goals and lots of communication between everyone. This way the client is satisfied by seeing how their needs are being satisfied, and the group feels satisfaction by completing a small project in a larger project. One other advantage is that because the Agile method breaks down the project into smaller projects, there is more room change and adjustments.

Agile flowchart from Wikipedia


Now there is nothing without its cons. One such con of Agile is the management process. Sometimes a team should not manage itself, but should be managed by someone else. This is important in larger groups where the team will have a boss who will have their own boss. A large group cannot possibly manage themselves because there will be too many different opinions and options. Another con is that Agile breaks up a project into equal smaller projects, but sometimes that just isn't doable. In that event Agile does not work because the short cycles end up becoming long cycles.


The answer to this blog entry title is that Agile should be used for smaller group projects. There is no deal breaking defect of Agile, and should be used if possible. If not then there’s always other management methods that are surely just as effective.

1 comment:

  1. Hi Matthew, it is nice reading your blog. I agree with you that programming project sometimes can become very messy especially in group programming which involves many communication, management and more. Like what you describe, Agile has some disadvantage when using it for relatively large group. I think you have a strong point of argument on the short cycles ending up becoming long cycles can cause Agile not working. However, despite this disadvantage, overall I think Agile is a pretty great management tool.

    ReplyDelete