Originally published in my blog.
As the summer sun lit the horizon, I enrolled in the Software Development Processes (SDP) course. This choice was driven by the tantalizing prospect of refreshing my Android Development skills, a requirement for my new role at work where I am tasked to put recommendation systems on the edge mobile devices — federated learning stuff (more on this later).
In terms of academic load, SDP proved to be fairly manageable. The initial stages took us through the fundamental principles of software engineering. The course featured integration of software engineering theory with practical applications in Java and Android projects.
The course structure was designed to foster collaborative learning. One standout aspect was the group project, wherein teams were formed based on time zones and profiles. The group project revolved around an Android application, spanning three weeks and encompassing three distinct deliverables. The remainder of the deliverables were assignments, five of them — testing various aspects, from git to unit tests to android development.
The capstone project took a different direction, shifting the focus to Java. The project primarily revolved around white box testing. Crafting a command-line application and fortifying it with test cases unveiled a dimension of software development that often goes unnoticed.
Throughout the journey, the coding language was Java. There were no exams. There is no curve. Easy A.
Summing up my experience, SDP turned out to be a pleasant surprise with a very light workload, especially if you are good at coding.