ICS 414 Putting Me A Step Above Others

09 Dec 2021

During the entire semester of ICS 414, there was no lectures, tests, quizzes or any of the standard things one would do in a class and that would make you think that you learned nothing at all! But not ICS 414, even though there was none of that I felt I’ve learned more from this class than any other class in the whole program of Computer Science. Going from having to work with a actual client with a program and this features and have it built by a certain deadline or to working with a bigger group than normal is all something that can push me towards a career after I graduate.

Working With A Client

This was the first time I’ve worked with a real life client that wants something after giving a list of what need in their application. At the start of the semester when they were giving out the things that they wanted, what made it difficult was that some of the requests for their application that they have wanted were a bit vague making it harder for the development teams to make a perfect image of what they have in mind only to be something completely different from what they had in mind. But because of that, I felt that what you would normally experience in a work environment working as a software developer and made me think deeper on the customer needs and what they truly want from their request that they given like what happens if the client is a bit older, then they may need the font styling to be bigger for them. Overall, this was one of the main highlights of ICS 414 because this is something that you wouldn’t normally experience in any other classes but the benefits from it for a better career in life is huge and it’s a must take for all Computer Science Majors.

Larger Development Teams

Working with teams larger than 3-4 was tough because even in a smaller team there can be disagreement and conflicting ideas that can ultimately break up the team. Minerva Medical was a team I was in and it originally had eight group members but at the end of the semester we ended with 7 members as one had dropped out of the class. This caused a minor problem because of the tasks assigned to that person were now given to the rest of the members and we had to manage with our current tasks to balance everyone workload. As a team gets larger the main thing to have for this team is communication and that can be a make or break type of situation. Early on in our group there was little to no communication within group members about tasks and what to do causing a mini split up of conversations and because of this the people who could not contribute as much because they didn’t know what to do were suffering in performance even though I knew that they have potential to keep up with the team. When I knew about this problem, I had addressed this concern to everyone as communication is important to everyone and now at the end of the semester, the group members performing poorly in submitting work are now actively contributing to the team.

Deadlines

Another one of the most important things when it comes to developing an applications is setting deadlines for the team and this does not only apply to Software Engineering but can be applied to almost any other group based project since the concept is essentially the same. There has been many times where my group members have missed multiple deadlines throughout the semester which eventually caused our development to be further delayed each time this happens. This would apply to real life when working in a software development team at your job because if that one person would keep missing their deadlines or not even do it in the first place it can cause stress for the others to take over and they can eventually get fired for their performance. But using Github issues have helped manage our deadlines and it gave us the ability to show what each time member be aware of what issues each other is working on making our workflow easier to manage for everybody.