Research on the various design patterns described in Smith (2015) and Gamma et al (1999). Describe how software development productivity can be accomplished by the application of various Creational Design Patterns.
Refer to the Software Solution Scenario described in Appendix A and also OO Software Design Patterns described in Gamma et al (1995) / Smith (2015 to answer the questions below:
You have been tasked to carry out the development of an online shopping system for iChipKart store. You are currently working on two use cases of the system: Checkout and Compute Price. An extract of the current analysis and design of these use cases are given in Appendix A.
Consider the two software design problems described below.
Design Problem 1 (Compute Price):
During the transition from Analysis to Design phase, you are designing the price computation for ease of incorporating different shipping and handling fees for different locations inthe pricing policies. In your design, you also want to ensure that various policies in pricing computation are encapsulated appropriately for ease of maintenance.
Suggested candidate design patterns (Proxy, Strategy, Template Method)
Design Problem 2 (Checkout):
During the transition from Analysis to Design phase, you are designing the functionality of free gifts for ease of offering and withdrawing the various gifts dynamically and for ease of modifying the price ranges of free gifts.
Suggested candidate design patterns (Chain of Responsibility, Composite, Iterator)
For each of these design problems, answer the following:
a. Choose one of the suggested candidate design patterns that you think best solves the problem. Justify the applicability of your choice. You need to research on various patterns and come up with your choices and justifications.
b. Applying scientific principles identify the participants for incorporating the chosen design pattern and modify the class diagram of the use case to show their relationships.
c. Critically analyze the patterns and list two benefits of incorporating the design pattern, with respect to the problem.
d. Concerns such as design of security properties and domain specific security is addressed while transiting from requirements engineering to design. Choose any two security design patterns of your choice and research their merits and demerits.Appraise you selected security patterns against the following pattern characteristics:
i. Level of Abstraction: Ease with which he pattern can be used in different contexts without redefinition.
ii. Completeness: The security speciation that is correct and complete.
iii. Reusability: The pattern should be easily applied and used in different contexts.
iv. Pattern Composability: The pattern should be easily used with other patterns.
v. Security Composability: The pattern can be used with other patterns without losing any of the security it provides, nor affecting the security provided by the other patterns.
vi. Valid-ability: The patterns’ security properties, as well as their implementation and usage, can be easily validated. This validation would preferably be automated.
3.What to submit:
Questions 1 and 2 and a written essay format. You may use the essay template given on Moodle.
1) Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns : Elements of Reusable Object-Oriented Software,Addison Wesley, 1995.
2) Smith, Ben.Object-Oriented Programming. Advanced ActionScript 3. Apress, pp63-69, 2015 .
Analysis and Design for Object Oriented Software
Online Shopping System for iChipKart
5.1Use Case Model Global View (Partial)
5.2Checkout Use Case
After a buyeradds items to the shopping cart, he/she will check out the purchased items. Items can be Books, Media (CD, hard disks, memory card etc.), TV, computing items and accessories like tablets, thumb drives etc. In order to make their business competitive,iChipKarthas decided to give its buyers one of the following memorabilia items as a free gift during the period 1 October to 15 January. The following describes the policy for these gifts:
(1) If the buyer purchases goods worth =$25 and iChipKart T-Shirt.
(2) If the buyer purchases goods worth =$50 and iChipKart backpack.
(3) If the buyer purchases goods worth =$100, he/she will receive aiChipKart portable hard disk of 1Tb.
Note thatiChipKartmemorabilia items are not for sale.
This use case is invoked when the buyer chooses the Checkout option from the Purchase Screen.
i. The system invokes the Compute Price use case to compute the subtotal of items price of all purchased items (excluding the shipping, handling and other charges).
ii. The system determines the free gift that the buyer is eligible for this transaction, and adds (if eligible) the memorabilia to the shopping cart (this item is priced at $0.00).
iii. The system invokes Compute Price use case to compute the total price of this transaction, including the shipping, handling and other charges.
iv. The system presents the total price and prompts the buyer for payment details in Payment Screen.
v. Upon verification of the payment details, the system invokes the Print Receipt use case to print the receipt for this transaction.
vi. The system displays completion message.
vii. The buyer acknowledges the completion message and the system returns to the Purchase Screen.
viii. The use case terminates.
5.3Compute Price Use Case
This is an abstract use case which will be included in use cases such as Checkout. In this use case, thesubtotal of items andtotal price of the items in the shopping cart will be computed and other charges such as shipping and handling charges will be included as appropriate. The total price will constitute the following:
i.Base price of the items.
iii.Handling charges (eg: fragile items will need to be specially packed, surcharge for oversized items, duties for dutiable items depending on country-specific policies, etc).
5.4Flow of Events
This abstract use case is invoked when other use cases want to compute the subtotal of items price of items in the shopping cart, or compute the total price of the items in the shopping cart including the shipping, handling and other charges.
i. The system traverses through the shopping cart items, determines the product price and computes the subtotal of items price of all the items.
ii.If shipping, handling and other charges are not required, the system returns the subtotal of itemsprice to the calling use case. Otherwise the system continues.
iii.Based on the shipping destination, the system computes the shipping charges and adds it to the total price.
iv.Based on the fragility of the items, the system computes the handling charges and adds it to the total price.
v.The system returns the total price to the calling use case.
vi.The use case terminates.
5.5Class Diagram 5.6Sequence Diagram (Compute Price – subtotal of items)
5.7Sequence Diagram (Compute Price – total price)
Why Work with Us
Top Quality and Well-Researched Papers
We always make sure that writers follow all your instructions precisely. You can choose your academic level: high school, college/university or professional, and we will assign a writer who has a respective degree.
Professional and Experienced Academic Writers
We have a team of professional writers with experience in academic and business writing. Many are native speakers and able to perform any task for which you need help.
Free Unlimited Revisions
If you think we missed something, send your order for a free revision. You have 10 days to submit the order for review after you have received the final document. You can do this yourself after logging into your personal account or by contacting our support.
Prompt Delivery and 100% Money-Back-Guarantee
All papers are always delivered on time. In case we need more time to master your paper, we may contact you regarding the deadline extension. In case you cannot provide us with more time, a 100% refund is guaranteed.
Original & Confidential
We use several writing tools checks to ensure that all documents you receive are free from plagiarism. Our editors carefully review all quotations in the text. We also promise maximum confidentiality in all of our services.
24/7 Customer Support
Our support agents are available 24 hours a day 7 days a week and committed to providing you with the best customer experience. Get in touch whenever you need any assistance.
Try it now!
How it works?
Follow these simple steps to get your paper done
Place your order
Fill in the order form and provide all details of your assignment.
Proceed with the payment
Choose the payment system that suits you most.
Receive the final file
Once your paper is ready, we will email it to you.
No need to work on your paper at night. Sleep tight, we will cover your back. We offer all kinds of writing services.
No matter what kind of academic paper you need and how urgent you need it, you are welcome to choose your academic level and the type of your paper at an affordable price. We take care of all your paper needs and give a 24/7 customer care support system.
Admission Essays & Business Writing Help
An admission essay is an essay or other written statement by a candidate, often a potential student enrolling in a college, university, or graduate school. You can be rest assurred that through our service we will write the best admission essay for you.
Our academic writers and editors make the necessary changes to your paper so that it is polished. We also format your document by correctly quoting the sources and creating reference lists in the formats APA, Harvard, MLA, Chicago / Turabian.
If you think your paper could be improved, you can request a review. In this case, your paper will be checked by the writer or assigned to an editor. You can use this option as many times as you see fit. This is free because we want you to be completely satisfied with the service offered.