In this assignment, you will develop a complete class-based design for an in-home smart thermostat that controls heating, air conditioning, and a fan.
About this Assignment
In this course, you have learned how to create class-based component design.
In this assignment, you will develop a complete class-based design for an in-home smart thermostat that controls heating, air conditioning, and a fan.
Upon completion of this project, you will be able to:
Define class-based component design
Develop a data flow diagram, state chart, activity diagram, and interface descriptions
Design a user interface
Develop a testing plan
Justify the design for the user interface and the testing plan.
Scenario
You are the IT manager of a company that makes in-home smart thermostats. Before you develop any code or build any product, you will need to create a system design that can be reviewed by your IT departments and key users.
This requires you to establish a design that is both functional and easy to use. You have decided to use a class-based design for the product, and so all subsequent design decisions flow from this. After developing the class-based design, you will establish the technical flow diagrams (data flow, state chart, etc.). These should be clear and understandable to the IT staff.
Once the flowcharts are constructed, you can continue with a user interface design, always thinking from the users’ point of view. You may think you know what a user wants, but many companies also bring in end-users to provide feedback on your design.
Finally, you’ll need to justify your design and decisions to upper management before you can move forward.
Here is what you’ll need to complete for this assignment:
Develop a data flow diagram, state chart, activity diagram, and interface description for the in-home smart thermostat system
Design a simple user interface for the thermostat system (the design is a visual plan/drawing)
Write a report that includes the following:
An explanation of the purpose and use of class-based component design
A proposed testing plan for your software. Your testing plan should identify possible testing gaps and account for components that can’t be tested before launch.
A justification of your user interface design and testing plan. Use Study.com lessons and outside sources to find evidence that will support your choices.
Please use Microsoft Visio or free online programs such as Balsamiq or LucidChart to create your UML diagrams. You should write your report in Microsoft Word or another word processor.
Formatting & Sources
This assignment covers material presented in the chapters:
Component-Level Design: Definition & Types
Class-Based Component Design: Principles & Process
Practical Application for Software Engineering: Component-Level Design
Practical Application for Software Engineering: User Interface Design
You may also refer to the course material for supporting evidence. You may use primary and secondary sources as needed and cite them using APA format. If you use any Study.com lessons as sources, cite them in APA format, including lesson title and instructor’s name.
Primary sources are first-hand accounts such as interviews, advertisements, speeches, company documents, statements, and press releases published by the company in question.
Secondary sources come from peer-reviewed scholarly journals, such as the Journal of Computer and System Sciences. You may use sources like JSTOR, Google Scholar, and Scopus to find articles from these journals. Secondary sources may also come from reputable websites with .gov, .edu, or .org in the domain. (Wikipedia is not a reputable source, though the sources listed in Wikipedia articles may be acceptable.)
If you’re unsure about how to use APA format to cite your sources, please see the following lessons:
What is APA Format? Style & Definition
How To Format APA Citations
Grading Rubric
Your project will be graded based on the following rubric:
Category Unacceptable (0-2) Needs Improvement (3-6) Good (7-8) Excellent (9-10) Total Possible Points
Explanations & Justifications (x1) Explanations are incomplete or missing; no sources used to justify the decision Explanations are incomplete; justifications are semi-logical, but not supported with evidence Explanations are provided and correct; justifications are logical and but not fully supported with evidence Explanation and use of diagrams is correct; justification of decisions is logical and fully supported with evidence 10
System Diagrams (x1) Diagrams are incomplete, sections missing Components present but missing descriptions and logical flow Diagrams complete but missing notations or difficult to read or follow Diagrams are fully complete with notations, logical flow, and are easy to follow 10
User Interface (x1) Interface is not intuitive; missing labels or indication of the purpose of functions Interface is complete but missing more than two of the interface design process, or design requires unnecessary amount of clicks/interactions) Interface is complete, but missing one or two steps in the process Interface is complete and all steps outlined (map the flow, minimal clicks, exception handling, and screen design) 10
Testing Plan (x1) Testing plan incomplete; missing key definitions and methods of testing Plan covers only one type of software testing; examples missing Multiple methods of testing provided but lacking in definition and completion Full analysis of software testing, including dynamic and static testing; examples provided and analyzed 10
Collepals.com Plagiarism Free Papers
Are you looking for custom essay writing service or even dissertation writing services? Just request for our write my paper service, and we'll match you with the best essay writer in your subject! With an exceptional team of professional academic experts in a wide range of subjects, we can guarantee you an unrivaled quality of custom-written papers.
Get ZERO PLAGIARISM, HUMAN WRITTEN ESSAYS
Why Hire Collepals.com writers to do your paper?
Quality- We are experienced and have access to ample research materials.
We write plagiarism Free Content
Confidential- We never share or sell your personal information to third parties.
Support-Chat with us today! We are always waiting to answer all your questions.