OMSCS: Spring 2022
December 22 2022
Review: CS6310 Software Architecture and Design
Objective
As it had been quite some time since I had a formal introduction to software engineering (e.g., Object Oriented Programming) concepts, I wanted to refresh, refine, and reinforce my knowledge of designing software.
Learning Outcome
This course helped me to revisit existing knowledge in software engineering. The lectures were quite long and a little dry. However, there is a lot of helpful content and concepts, so I completed them and took notes.
Some concepts like First Order Logic and Object Constraint Language are not immediately applicable in the workplace. However, they were valuable topics to learn about in case I need to revisit them later.
What I could apply immediately were high-level concepts like design patterns, the distinction between functional and non-functional requirements, and various architectural styles.
Difficulty
I took many notes for future reference. I spent 8 - 12 hours per week on this course, except for weeks leading up to assignment submission, when the time spent would be +-10 hours. Overall, this is an excellent course for reviewing or learning new software architecture and design concepts.
Review: CS6750 Human Computer Interaction
Objective
I did not take a Human-Computer Interaction course during my undergraduate years. This course presented an opportunity to take a formal class on HCI and see how I can apply what I've learned in my work.
Learning Outcome
This course taught me how to view the design of everyday things differently. Due to the proliferation of electronics and computing power, the course content was relevant to our every day lives. For example, in the assignmnets, I evaluated everyday computer designs in everything from web user interfaces to the controllers of standing desks.
Difficulty
I spent about 10 - 15 hours per week on this course. Time spent was greater during weeks when I had to work on the project or gather data.