Being an extension of the ics314 course I’ve taken a semester prior, I expected much of the same. However, this was not entirely the case. This semester saw near-complete independence, a “client” with a large list of needed features and optimizations for a community service web page.
This semester demanded that groups work to meet the requirements of the client. Every two weeks the expectation was that we knocked more items off the list given by the client at the start of the semester. This brought a new perspective as opposed to the loose guidelines from the 314 class. Moreover, this brought the challenge of implementing things that seemed of higher importance when deadlines loomed near. Time management and scoping were a huge factor in this class and a skill gained. We had to make constant changes on our site based on feedback given by the client so nothing was ever “final”. In this aspect, this class offered a more realistic software development experience.
Due to the long list of needs, there was greater emphasis on teamwork throughout the semester. Groups needed to frequently meet and discuss what is being worked on and how they plan to integrate it with the work of others. This aspect of this course was particularly challenging as work was constantly being overridden by other members’ pushes or even breaking main entirely. However, as time moved on, things progressively changed and we got into the swing of things. Most of my coursework involves individual work, so taking this course challenged my patience with others and how I structured my code for the sake of others.
ICS414 was a fun and demanding course that offered independence with a realistic project. It challenged teamwork, time management, and collaborative skills (or managing the lack of collaborative skills by other group members) which provides experience that is beneficial in our futures outside the classroom.