Codingassignmenthelper | Home Codingassignmenthelper | University

MITS4002 Object Oriented Software Development

Victorian Institute of Technology

Assignment : Research Study (5%)

50% deduction for Late Submission within one week
0 mark for Late Submission more than one week
0 mark for duplicated Submission or Shared Work.

You will be marked based on your submitted zipped file on Moodle. You are most welcome to check your file with your lab tutor before your submission. No excuse will be accepted due to file corruption, absence from lecture or lab classes where details of lab requirements may be given.
Please make sure that you attend Lecture EVERY WEEK as low attendance may result in academic penalty or failure of this unit.

Table of Contents

1. Question 1
2. Question 2
3. What to submit:
4. Research References:
5. APPENDIX A
 5.1 Use Case Model Global View (Partial)
 5.2 Checkout Use Case
  5.2.1 Brief Description
  5.2.2 Flow of Events
  5.2.3 Class Diagram
  5.2.4 Sequence Diagram (Self research question, 10% bonus)
 5.3 Compute Price Use Case
 5.4 Flow of Events
 5.5 Class Diagram
 5.6 Sequence Diagram (Compute Price – subtotal of items)
 5.7 Sequence Diagram (Compute Price – total price)

1. Question 1

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.
Describe each of them


2. Question 2

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 in the 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)

Use UML diagram to design ComputePrice class. Then write the complete Java class

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)

Use UML diagram to design Checkout class. Then write the complete Java class
NOTE: Don’t forget to include relationships (use appropriate symbols, dotted arrow, diamond shape …etc)


For each of these design problems, answer the following: 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 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. Critically analyze the patterns and list two benefits of incorporating the design pattern, with respect to the problem. 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: Level of Abstraction: Ease with which he pattern can be used in different contexts without redefinition. Completeness: The security speciation that is correct and complete Reusability: The pattern should be easily applied and used in different contexts. Pattern Composability: The pattern should be easily used with other patterns 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. 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.

4. Research References:

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns : Elements of Reusable Object-Oriented Software, Addison Wesley, 1995. Smith, Ben. Object-Oriented Programming. Advanced ActionScript 3. Apress, pp63-69, 2015.

5. APPENDIX A :

Analysis and Design for Object Oriented Software Online Shopping System for iChipKart

5.1 Use Case Model Global View (Partial)

Image1

5.2 Checkout Use Case :

5.2.1 Brief Description


After a buyer adds 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, iChipKart has 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: If the buyer purchases goods worth .$25 and <$50, he/she will receive a iChipKart T-Shirt. If the buyer purchases goods worth ≥$50 and <$100, he/she will receive a iChipKart backpack. If the buyer purchases goods worth ≥$100, he/she will receive a iChipKart portable hard disk of 1Tb.
Note that iChipKart memorabilia items are not for sale.

5.2.2 Flow of Events

This use case is invoked when the buyer chooses the Checkout option from the Purchase Screen. 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). 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). The system invokes Compute Price use case to compute the total price of this transaction, including the shipping, handling and other charges. The system presents the total price and prompts the buyer for payment details in Payment Screen. Upon verification of the payment details, the system invokes the Print Receipt use case to print receipt for this transaction. The system displays completion message. The buyer acknowledges the completion message and the system returns to the Purchase Screen. The use case terminates.


5.2.3 Class Diagram

Image1


5.2.4 Sequence Diagram (Self research question, 10% bonus)


Image1

To Continue Click Here > MITS4002 Object Oriented Software Development.pdf
Codingassignmenthelper | Home Codingassignmenthelper | Home