Assignment 2
Software Engineering
Fall 2021
Due date: Thursday, October 14, 2021 (Midnight)
“Rhythm. Life is full of it; words should have it, too. But you have to train your ear. Listen to the waves on a quiet night; you’ll pick up the cadence. Look at the patterns the wind makes in dry sand and you’ll see how syllables in a sentence should fall”
Arthur Gordon, A Touch of Wonder
In this assignment, you will learn how to apply design patterns to solve problems in software components design. You will work with one partner, I prefer that you choose your partner. The experiment from the first assignment was a nightmare for me! If you cannot find a partner by Wednesday, I will assign you a partner randomly.
This is an easy assignment; it was something else (I would say much harder) but I decided to change it since we have only three weeks left. The assignment, however, is a practice on how to apply some of the well-known patterns to solve problems, it also contains a general design problem.
In this assignment you need to provide solutions to the following problems. Please submit all your answers using one document in in pdf.
Problem 1. A giant industrial company produces different types of vehicles including cars, boats and buses. The company provides its vehicles with three different types of seats: luxury seats, leather seats, and clothes seats. The company buys these seats from 3 different providers: Provider A, B, and C. Any type of vehicle can have any type of seat which might be requested from any of the 3 providers. A control unit (i.e., a client code) can create vehicles of different types depending on the requests that come from the managers.
What design pattern(s) best fits your needs? Using the design pattern(s) you choose, design a solution in the form of a class diagram that shows how these classes can be structured.
Problem 2. You were asked to design a smart control unit for a printer. The printer can print three types of documents: pdf, MSWord, and JPG (images). The smart printer keeps the documents sent for printing in a queue. It can perform 2 types of operations on the jobs in the queue. These are: (1) Add colored frame, which displays a colored frame on the edges of the printed paper. (2) Add background, which adds some background on the printed paper.
The control unit should be designed in a way that allows clients to perform any operation on the jobs in the queue. So the problem is that you have a collection of heterogeneous
objects, on which you want to perform similar operations. The design also allows adding more operations upon client’s needs.
What design pattern(s) best fits your needs? Using the design pattern(s) you choose, design a solution in the form of a class diagram that shows how these classes can be structured.
Problem 3. Suppose you want to design a software component that is responsible for the calculation of the shipping cost for some shipping company. The company ships goods for three destinations: local (in the same city), domestic (same country) and international. The shipping cost consists of two factors:
Handling:forlocalshipping,handlingisperformedbythecompanyemployees, for domestic, handling is performed by a contractor, and for international shipping, handling is performed by some airplane employees.
Delivery:bycarforlocaladdresses,trainfordomestic,andairplanesfor international addresses
What design pattern(s) best fits your needs? Using the design pattern(s) you choose, design a solution in the form of a class diagram that shows how these classes can be structured.
Problem 4. Video Store
A new video store intends to offer rentals (and sales) of entertainment material to the wider public. The video store will keep a stock of video tapes, CDs (games and music) and DVDs. The inventory has been ordered from suppliers. All entertainment media will be bar coded so that a scanning machine integrated with the system can support the rentals, returns, and sales. Existing customers will be able to place reservations on entertainment material to be collected at a specific date. The system must have a flexible search engine to answer customer enquiries, including enquiries about the material that the video store does not stock (but may order it on request).
System Requirements:
The video store keeps an extensive library of current and popular movie titles in stock. A particular movie may be held on video tapes or disks
Amoviecanberentedforaparticularrentalduration(indays),witharentalcharge for that period
Thevideostoremustbeabletoanswerimmediatelyanyqueriesaboutamovie’s stock availability. The current condition of each tape and disk must be known and recorded, together with generic information about the percentage of video tapes and disks in excellent renting condition
Scanning Device
<>
Rent Video
Reserve Video
Return Video
Employee
Order Video
A use-case diagram for the video store
Maintain Customer Answer Enquiry
a. Designanarchitecturalcontextdiagramforthevideostoresystem.Pleasestate any assumptions you make
b. Definethearchetypesandrefinethearchitectureintocomponents,designthe component structure for the system
What design pattern(s) best fits your needs?
Struggling With a Similar Paper? Get Reliable Help Now.
Delivered on time. Plagiarism-free. Good Grades.
What is this?
It’s a homework service designed by a team of 23 writers based in Carlsbad, CA with one specific goal – to help students just like you complete their assignments on time and get good grades!
Why do you do it?
Because getting a degree is hard these days! With many students being forced to juggle between demanding careers, family life and a rigorous academic schedule. Having a helping hand from time to time goes a long way in making sure you get to the finish line with your sanity intact!
How does it work?
You have an assignment you need help with. Instead of struggling on this alone, you give us your assignment instructions, we select a team of 2 writers to work on your paper, after it’s done we send it to you via email.
What kind of writer will work on my paper?
Our support team will assign your paper to a team of 2 writers with a background in your degree – For example, if you have a nursing paper we will select a team with a nursing background. The main writer will handle the research and writing part while the second writer will proof the paper for grammar, formatting & referencing mistakes if any.
Our team is comprised of native English speakers working exclusively from the United States.
Will the paper be original?
Yes! It will be just as if you wrote the paper yourself! Completely original, written from your scratch following your specific instructions.
Is it free?
No, it’s a paid service. You pay for someone to work on your assignment for you.
Is it legit? Can I trust you?
Completely legit, backed by an iron-clad money back guarantee. We’ve been doing this since 2007 – helping students like you get through college.
Will you deliver it on time?
Absolutely! We understand you have a really tight deadline and you need this delivered a few hours before your deadline so you can look at it before turning it in.
Can you get me a good grade? It’s my final project and I need a good grade.
Yes! We only pick projects where we are sure we’ll deliver good grades.
What do you need to get started on my paper?
* The full assignment instructions as they appear on your school account.
* If a Grading Rubric is present, make sure to attach it.
* Include any special announcements or emails you might have gotten from your Professor pertaining to this assignment.
* Any templates or additional files required to complete the assignment.
How do I place an order?
You can do so through our custom order page here or you can talk to our live chat team and they’ll guide you on how to do this.
How will I receive my paper?
We will send it to your email. Please make sure to provide us with your best email – we’ll be using this to communicate to you throughout the whole process.
Getting Your Paper Today is as Simple as ABC
No more missed deadlines! No more late points deductions!
You give us your assignments instructions via email or through our order page.
Our support team selects a qualified writing team of 2 writers for you.
In under 5 minutes after you place your order, research & writing begins.
Complete paper is delivered to your email before your deadline is up.
Want A Good Grade?
Get a professional writer who has worked on a similar assignment to do this paper for you