Importance of Agile Project Management

17 Dec 2019

In this ICS 314 course, I have greatly improved my skills ranging from web development with react to learning databases with MongoDb. But two very important aspects of software engineering I’ve learned in my opinion is Agile Project Management and Open Source Software Development.

What is Agile Project Management?

Agile project management is the idea of breaking up a project into smaller more manageable milestones instead of diving head first into a project without any proper structure so that the team can work more efficiently and be able to adapt to any changes needed. This style of structure is good because it promotes collaboration with your fellow team members. If you divide a big project amongst the team and assign each subteam a task, the project will be done more quickly. This develops trust amongst your colleagues knowing that each team is responsible for each task. But it is not limited to only the team assigned. Meaning even though one team is assigned a certain task and ultimately responsible for the outcome, anyone is encouraged to help out. This can be used beyond software development. This again promotes the idea of collaboration which is very important in any field of work.

What is Open Source Software Development?

Open source software development is the process by which open source software whose source code is publicly available. In ICS 314, we were introduced to GitHub which provides hosting for software development version control using Git. It host open source projects with source code available to the public. Up until now, in my previous ICS classes, we did final projects alone. Meaning we can’t lean on others for help so any help would be resorted to online searches. This experience learning how to use GitHub was all new to me but also very important.

Last Thoughts

In my opinion, learning agile project management and open source software development goes hand in hand. Both have a strong correlation together. Agile project management divides the tasks and open source software development allows each team to upload their source code to hosts such as GitHub so everyone can see each other’s code and help one another get on the right track. Learning these two important skills, agile project management and open source software development would be very helpful to me because I have aspirations to work in game development one day.