Implement a small test application

Assignment Help Computer Engineering
Reference no: EM131489386

Object Oriented Systems Analysis and Design

Asg- Design Patterns

Submit a sequence diagram illustrating the operation of EACH of their implementations for Assignment ( ie 2 separate sequence diagrams).

Also, to clarify the weightings for the different tasks and sections within each task:

Task 1 (Chat Server)
Task 2 - (Pizza Shop)

Within each task the deliverables will be weighted as follows:
1. Explanatory paragraph:
2. Class diagram (plus sequence diagram if submitted) :
3. Implementation:
4. Output:

Task

For each of the two small case studies provided, decide on an appropriate pattern or patterns to support, and explain that decision. Then, come up with a design to implement that solution and document your solution with a class diagram. Finally, implement a small test application to demonstrate your solution. Show how your solution works to support the described use case with a sequence diagram.

For each case study:

1. A paragraph explaining what pattern or patterns you have decided are appropriate for the solution in a Word compatible word processed document.

2. A class diagram showing your intended implementation classes

3. A ZIP file containing all your implementation source code arranged in the appropriate package hierarchy.

4. A text file containing output demonstrating how your solution supports the described use case.

Case Study 1

A hopeful (and slightly behind the times) startup company is pinning its hopes on a multiplatform distributed text-based chat application.

Signed up members connect to a server using their logonid and password, and are placed in public lobby. Their client is notified of all other currently connected members, and immediately starts receiving messages posted in the public lobby from other members. They continue receiving messages in that public area until they log out. All connected clients are notified whenever a member either connects or disconnects from the service.

While connected, members can also select a subset of other currently connected members and start private chat sessions with them. Messages sent between participants in private chat sessions appear only to those participants. Members can leave private chat sessions whenever they like, but the remaining members can continue chatting, until only one participant is left. Members can also be invited to join a private chat session that has already started.

Implement the message handling aspect of the server. You may assume that the networking aspects of the client are handled internally by the client object. Your job is to implement those aspects of the client that interface with the message handling system, and the server side message handling system itself.

In essence, you are allowed to assume that remote clients are represented by local Client objects, and you only need to organize calling methods on those objects and having those objects call methods in the message handling system. How you simulate new clients connecting and existing clients disconnecting is up to you. How you simulate clients is up to you.

Here is a list of the messages that need to be exchanged between client and server: your job is to make sure those messages get to the right chat session of the right client.

CONNECT(logonid)
DISCONNECT(logonid)
MEMBER_CONNECTED(logonid)
MEMBER_DISCONNECTED(logonid)
SEND_MESG(chat_id, sender_id, message)
RECEIVE_MESG(chat_id, sender_id, message)
chat_id = NEW_CHAT(initiator_id, logonid_list)
REQUEST_CHAT(initiator_id, logonid_list)
INVITE_CHAT(target_id, chat_id)
JOIN_CHAT(logon_id, chat_id)
LEAVE_CHAT(logon_id, chat_id)

These messages are indicative only. You are not bound to implement this exact interface. You do need to implement the functionality as stated.

Case Study 2

Luigi's Pizza makes pizzas. They make a variety of pizza bases, and cover them with a variety of sauces. They then add cheese, and a variety of toppings. Luigi's ‘schtick' is that all pizzas are customizable: customers order a pizza by ordering a base type, selecting a sauce, selecting a cheese, then selecting all the toppings they want. Each base type, sauce, cheese, and topping has its own cost, and the charge for a pizza is calculated by adding up all the component costs.

You job is to write a program that allows customers to order any combination of base, sauce, and whatever and as many toppings as they like, and to produce an itemized receipt with the correct cost for each pizza.

Here are the different bases, sauces and toppings that are available. Remember a pizza consists of 1 base type, one sauce, a particular type of cheese, and whatever toppings the customer wants.
Here are the different types of each component and their costs:

Bases:

 

 

Thin and Crispy

2.00

 

Regular

2.50

 

Deep Pan

3.00

 

Cheese Filled

4.00

Sauces

 

 

 

Tomato

1.00

 

Barbeque

1.50

 

Marinara

2.00

Cheeses

Mozarella

1.00

Buffalo

2.00

Goat

2.50

Cheddar

1.00

Toppings

Salami

1.00

Pepperoni

1.25

Ham

0.75

Bacon

1.00

Chicken

0.80

Ground Beef

1.20

Prawns

2.00

Dried Tomato

0.50

Capsicum

0.50

Olives

0.75

Jalapenos

0.75

Pineapple

0.50

Onion

0.50

Artichoke

1.00

Anchovies

1.50

Parmesan Cheese

1.00

Baby Spinach

0.75

Rationale

This assignment relates to the following learning outcomes:
- be able to evaluate and choose appropriate software design patterns to compose the design of a software system;
- be able to demonstrate use of a Computer Aided Software Engineering (CASE) tool to document the models in a system

Attachment:- Network Messages.rar

Verified Expert

In this assignment we have studied implantation of design pattern.There are different design pattern are there .Here we have studied behavioural design pattern like observer pattern and many more like strategy ,state etc.Here we also studied Class diagram,UML diagram ,state diagram .

Reference no: EM131489386

Questions Cloud

Result in reverse discrimination : Explain how government action may result in "reverse discrimination."
What will happen to the price you pay for concert tickets : Understanding Cause and Effect What will happen to the price you pay for concert tickets if a popular group has to move its show to a smaller facility?
Explain why you think the federal reserve bank : Explain why you think the Federal Reserve Bank tracks M1 and M2.
What determines the price of a share of stock : What determines the price of a share of stock?
Implement a small test application : Implement a small test application to demonstrate your solution. Show how your solution works to support the described use case with a sequence diagram.
What is the companys undlevered cost of equity capital : Twice Shy Industries has debt-equity ratio of 1.4. Its WACC is 9.4 percent,its cost of debt is 6.7 percent. The corporate tax rate is 35 percent.
Discuss about the equilibrium price of the product : Equilibrium Price Select a product that appears in newspaper ads of several different stores. Note the various prices and indicate whether any of these prices.
How did the shortage of polysilicon affect its price : The solar power industry has been on a tear, growing at more than 30% per year for the last six years. It's poised to reach a surprising milestone within two.
What is the current share price : If the required return on this stock is 13.5 percent, what is the current share price?

Reviews

inf1489386

5/22/2017 5:04:38 AM

Many thanks to you for helping me collect an open door that I will make sure to profit by. Expertsmind's expert truly goes above and beyond with their technical skills. I consider your prices right on target for the services you offer. Thanks a lot.

len1489386

5/9/2017 2:58:45 AM

Dear All - the assignment spec asks only for class diagrams in Assignment 2. However, students need to do submit a sequence diagram illustrating the operation of EACH of their implementations for Assignment 2 ( ie 2 separate sequence diagrams). Also, to clarify the weightings for the different tasks and sections within each task: Task 1 (Chat Server) - 50% Task 2 - (Pizza Shop) - (50%) Within each task the deliverables will be weighted as follows: 1. Explanatory paragraph: 20% 2. Class diagram (plus sequence diagram if submitted) : 20% 3. Implementation: 50% 4. Output: 10%

len1489386

5/9/2017 2:58:20 AM

Presentation Any text documents must be either in Word compatible Word processed documents, or standard ASCII text files. Class diagrams should be saved as high resolution PNG files (NOT JPG) and included in a word processed document or submitted as a separate file. Do NOT submit Visual Paradigm project (*.vpp) files. Source code should be packaged into a ZIP file that unpacks into the appropriate package structure. Requirements Submit a ZIP file containing all required documents and diagrams. Label the ZIP file with your NAME (e.g. JBloggs_Asg2.zip), NOT just an identifier for the assignment.

len1489386

5/9/2017 2:58:10 AM

Criteria High Distinction Demonstrates an ability to evaluate a problem and choose an software appropriate design pattern. Choice of pattern or patterns completely appropriate, well justified and explained. Demonstrates a sound understanding of the chosen software pattern. Class diagram is completely consistent with chosen pattern or patterns. Implementation demonstrates completely correct use of patterns. Demonstrates an ability to verify a design through implementation and testing. Implementation exactly implements illustrated design. Test output comprehensively and unambiguously demonstrates correct operation. Demonstrates an ability to document a design using a CASE package. Class diagram exactly documents implementation with correct UML syntax. Sequence diagram exactly and correctly documents execution of software to support described use case.

len1489386

5/9/2017 2:57:57 AM

Rationale This assignment relates to the following learning outcomes: • be able to evaluate and choose appropriate software design patterns to compose the design of a software system; • be able to demonstrate use of a Computer Aided Software Engineering (CASE) tool to document the models in a system Marking criteria Demonstrates an ability to evaluate a problem and choose an appropriate software design pattern. Demonstrates a sound understanding of the chosen software pattern. Demonstrates an ability to verify a design through implementation and testing. Demonstrates an ability to document a design using a CASE package.

Write a Review

Computer Engineering Questions & Answers

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd