Why you should learn Software Engineering!

18 Dec 2019

This fall 2019, I took a class (ICS 314) about web development in a software engineering aspect, and I do not regret that! When I started this semester, I thought we were just going to learn about web development. It turned out not to be the case. Don´t get me wrong, I learned a lot about web development, but I learned so much more than just the understadning of HTML, CSS and javascript. We learned about several different concepts, which put together gave me a much deeper understanding of software engineering.

Github

The first concept we got introduced to was github. Github is a open source software development system, where it´s possible to share code and collaborate with others. This was my first meeting with github and it will not be the last. By making it possible to work on the same project at the same time within a group, makes the work much more effective. It is also possible to see all the changes that has been done, which makes it easy to go back in case something went wrong or to see who did what.

In this class we learned a lot of the features that github offers. We created a professional portofolio, made our own webpages and at the end of the semester we developed a web application in a group using github as tool. I think that knowing how to use github will benefit me in the future, since I most likely will use it again.

Agile project management

When we were about to create our final project, we got introduced to agile project management. That is a life cycle approach where you do iterative steps to get to the final result. It will then make it easier to change things when a problem occure, and not at the end of the project. Within agile project management we used the process IDPM, with stands for Issue driven project management. This is guidelines that help you and your team to break down the project into smaller tasks. We used github to create three milestones in an issue driven project board. Within each milestone we created issues related to where we were in the process. Each issue got assigned to a person in the team. I will say that this encouraged all the members to contribute to the project. Based on the previous milestone, we made the issue related to where we were in the project and then kept iterating the process.

The things I´ve learned from this course is definitely the whole package. By that I mean how I have learned about different concept, and then use that to put it together. For example, without the agile project management part, I would not have learned how to set up a project to start with and know how to delegete and furhter develop the project. I think that most of the content in this course is tranferable into mye future job, even though I don´t necessarily will work spesificly with web development.

Sources

Agile project management
Github picture found here.
Coding picture found here.