SNHU CS230 Assignment Submission
Briefly summarize The Gaming Room client and their software requirements. Who was the client? What type of software did they want you to design?
The client, The Gaming Room, requested assistance in a design document for creating a web-based application to increase their reach and userbase. I designed a web-based application so it could be played on mobile devices, with possibility of expanding onto game consoles.
I believe that I was really able to dig into the details of what made certain recommendations better than others for a given situation. I didn't come out of the situation thinking that there was a one-fits-all solution for all situations, but rather, I felt more familiar with them as a set of tools. None are better than the other, they're just made to do different things.
What about the process of working through a design document did you find helpful when developing the code?
I found out that making a design document helped me keep more focused. I know what I'm doing, and what I'm doing for. It prevents things like choice paralysis or going down a circular rabbit hole, which I know I am prone to. A circular rabbit hole would be like, deciding you like, A, then you realize B is cheaper, but then C is also cheaper than that. However, when thinking about ease of use, all of a sudden, I'm looking at A again. With a design document, I know what my priorities are.
If you could choose one part of your work on these documents to revise, what would you pick? How would you improve it?
Fortunately I was able to revise some of my sections already. I would revise my security section even more, there's a lot more to be said about it than I did.
How did you interpret the user’s needs and implement them into your software design? Why is it so important to consider the user’s needs when designing?
I believe that the user's needs mostly stems from wanting a comfortable and easy experience with minimal frustration. It's really important to consider what they like and enjoy, especially for a game, as if the user experience is bad, they won't be playing. The Gaming room had the intention to reach more people so they can also enjoy what they offer, so when we satisfy users, we also help realize the client's goals.
How did you approach designing software? What techniques or strategies would you use in the future to analyze and design a similar software application?
I think it's really important to approach designing software with solving a problem in mind. You identitfy what needs to be done, what is the desired outcome, and then decide the material that you need to build to get from point A to point B. Some situations might need a road, some might need a bridge, and maybe you need to build an airport on each side. That's to say, you need architecture that fits your needs. UML can be very good in helping visualize the needed structure. Knowing the classes, sequences and components of everything assists in writing simple, tight and elegant code.