The City Built on Solid Foundation

15 Dec 2022

Building Cities

ICS 314 Software Engineering I had us laying the foundational pieces in building an application, but ICS 414 Software Engineering II was the first real test to that foundation. How well can we implement what we learned? Will the city we build next be on steady solid ground? The city we ended up focusing on building this semester was to create a legislative bill tracker for the Department of Education. Their current application needed a major rework as it was described by the client as inefficient and outdated. In a group consisting of 7 of my peers, we tackled the challenge of building a user-friendly, easy to navigate, updated application for our client to use.

“As iron sharpens iron, so one man sharpens another.”

The class structure was very independent, which allowed us to have free reign in creativity and fully take ownership of the project. However, since we are a group developed amongst peers, at some points the lack of direction was intimidating. I realized that while this class gave us the first taste of working with a real-life client, we lacked the structure that a real world organization would provide with a project manager. We learned early on in the semester that leadership and guidance is important to keep the project in check to get it moving where it needs to be, and while we are all capable as individuals, it does not make us any more lacking to be a follower. Notable individuals who were strong in coding quickly took the lead and directed the rest of the team.

By rubbing two iron blades together; the edges sharpen, making the knives more efficient in their task to cut and slice, just as we do as individuals with our own strengths and weaknesses, we are able to collaborate and learn from each other’s skill set to improve in areas that we lack on ourselves. We all have our own strengths and weaknesses and although it can be intimidating to be compared and think, “oh they’re so much better than me at coding,” at the end of the day we need to switch the mindset to think, “wow, they’re so much better than me at coding, and I can learn from them. We’re on the same team. This is my opportunity to learn in close proximity.”

“More hands make for lighter work”

The first thing we did as a group was sit down and get acquainted with each other, asking simple questions like, where are you from? What school did you go to?…etc. While the action felt almost elementary, I felt this was important as a group in order for everyone to feel comfortable with open communication. We created a team contract that set down our basic ground rules for each other and discussed expectations. In ICS 314, our project group consisted of 5 people total. Here, in ICS 414, the project group consisted of 8 people total. At first I was a little intimidated by the group size, wondering how we would be able to manage a group of that size. I learned the importance of communication and collaborative teamwork. We utilized it by having stand ups and check ins, and it helped when everyone shared the same mindset, with the same willingness to provide to the group.

“communication is important, but so is comprehension”

A difficulty we had in working on this project together was comprehension. While I felt that we had really good communication with each other, it was hard to ensure we were on the same page. The project was complex and difficult, and sometimes it took meetings of backtracking so that we could center ourselves back to the main focus. Are we creating an application that delivers what the client wants? We also had to learn about the legislative process within the Department of Education, and their system behind tracking the bills. The process was complicated as outsiders to the DOE system, but it was vital for us to comprehend what exactly this application needed to provide to our client.