Weeks 14, 15, & 16 - A Look Back at Software Design

This is the final week of CST Software Design. It’s been a rewarding course. Below, I’m going to start off with a look back at homework 1 and then I’ll write about what I think I’ve improved on overall.

The histogram project is a lot easier to look at in hindsight, especially since we were provided with the UML and the tests. I think my approach this time around would be similar, but probably more efficient. I would take some time to review the requirements in the UML and then I would look over the tests. Then I’d start by creating the class and creating the constants and autogenerating the getters and setters. Then I’d work on the more difficult methods that require more logic like the read, display and sort methods. I would single out each test while working on each method to do one by one.

I feel like I’ve improved overall in software development. One area I feel I’ve improved on is working with is working with Test-Driven Development. Although I’m not great at writing tests yet, approaching development this way has really helped me understand the requirements of the program to ensure it doesn’t break. It also helps guide me to get the logic right.

I never thought I’d say this, but Android studio is not so daunting anymore. Android studio has so many different tools and it seems overwhelming at first. I’m probably more comfortable with this IDE now than I am with any other IDE because I was forced to learn a lot of the functionality with the GymLog and Project 02. 

I feel like I’ve improved my Java skills quite a lot. Coming into this course I only knew C++ and a bit of python. Moreover, my previous courses only taught object-oriented programming in a liner sort of way. My previous courses would rarely require me to build anything that required more than 4 classes, although I did cover data structures and algorithms, the projects were never as involved as this, though I did learn a lot from them. This course really forced me to learn on the fly with test-driven development and even implement the use of databases and understand the files working in the background. I feel more confident with software development, and I think more importantly, I feel more confident walking into things I know nothing about.

Comments

Popular posts from this blog

The End of the Byte Trail

Reflections on Algorithms

Refining Documentation and Planning Final Deliverables