EECS 3311 Section Winter 2022 Software Design Midterm is intended to help you get familiar with the basic OOP design principle and basic software design patterns introduced prior the reading week. You will have 48 hours to finish and submit the Midterm solution. Check the Amendments section of this document regularly for changes, fixes, and clarifications. 1 Policies

EECS 3311 Section Winter 2022

Software Design

Midterm is intended to help you get familiar with the basic OOP design principle and basic software design patterns introduced prior the reading week. You will have 48 hours to finish and submit the Midterm solution.

Check the Amendments section of this document regularly for changes, fixes, and clarifications.

1 Policies

-Your (submitted or un-submitted) solution to the Midterm (which is not revealed to the public) remains the property of the EECS department. Do not distribute or share the Midterm or your design in any public media (e.g., a non-private Github repository) in any way, shape, or form before you get the permission from your instructors.

•You are required to work on your own for the Midterm. No group partners are allowed.

•When you submit your solution, you claim that it is solely your work. Therefore, it is considered as an violation of academic integrity if you copy or share any parts of your design or documentation.

•When assessing your submission, the instructor and TA may examine your design, and suspicious submissions will be reported to the department/faculty if necessary. We do not tolerate academic dishonesty, so please obey this policy strictly.

-You are entirely responsible for making your submission in time.

•You may submit multiple times prior to the deadline: only the last submission before the deadline will be graded.

•Practice submitting your project early even before it is in its final form.

•Back up your work periodically, so as to minimize the damage should any sort of computer failures occur. You can use a private Github repository for your labs/projects.

•The deadline is strict with no excuses.

•Emailing your solutions to the instruction or TAs will not be acceptable.

Amendments

• so far so good

1

2 System Description

The SmartShoppers system is an online system that allows customers to find products in the physical retail stores with a greater precision. The main goal of the software system is to provide the customers with a faster and smooth shopping experience in store. SmartShoppers would allow customers to find the products that are available in a specific store and its location in the store. This product will have many benefits to the customer and the SmartShoppers Inc. The customer will have financial benefits as they are able to save money by being provided all the on-sale items. The customer also is able to find recommended products which they might not have had a chance to find in store. The customer saves time shopping because they know the exact locations of the products which they would like to purchase. ShoppersLand Inc. would benefit financially as they will sell more products because of the SmartShoppers online system. ShoppersLand’s employees would also be able to work efficiently as they will be asked fewer questions by the customers regarding the products.

We have helped created a detailed software requirement specification for SmartShoppers, in which you can find the expected functionalities for different types of stockholders: Software Requirements Specification.

Your Tasks:

Task1: Apply at least THREE design patterns we have introduced, and explain which requirements you think the THREE patterns can help (you have at most two pages to answer this question).

Task2: Design a system that can meet the specifications (hints: Section 4 System Features) via class diagrams, and use the methods in your classes and relationships between classes to describe how your design can meet each requirement. Please show the details of classes (including attributes, methods, and relations among classes) in your class diagrams. You must use https://app.diagrams.net to draw your diagram and submit both the ”.xml” and ”.png” versions of your class diagram, a penalty will be imposed for the violation. (Your answer to this task should be at most 5 pages).

You can put your solutions to task1 and task2 in a PDF file and submit it as an attachment.

Report requirements: 11 point font; Times New Roman; A4

Some format requirements for class diagram:

•give meaningful names to your classes/interfaces, attributes, and methods;

•give clear modifiers (public +, private −, and protected #) for each of your attributes and methods;

•for each method, using format: modif ier methodN ame (parameter1 : type, parameter2 : type2, ….) : returnT ype

•use proper relationships and indicators between classes, e.g., association, aggregation, dependency, composition, realization, and inheritance;

Submission

By the due date, submit it on eClass.

2

GET HELP WITH YOUR HOMEWORK PAPERS @ 25% OFF

For faster services, inquiry about  new assignments submission or  follow ups on your assignments please text us/call us on +1 (251) 265-5102

Write My Paper Button

WeCreativez WhatsApp Support
We are here to answer your questions. Ask us anything!
👋 Hi, how can I help?
Scroll to Top