Types and characteristics of interprocess communication

Assignment Help Other Subject
Reference no: EM131303603 , Length:

Part -1:

Objectives

This unit aims to teach the theoretical aspects of communication, concurrency, synchronisation, and fault-tolerance in distributed systems. These aspects are applicable in both mobile distributed systems, and fixed distributed systems where computers are connected via fixed communication links.

The purpose of this assignment is to assess your understanding of distributed systems, and the theoretical aspects of communication, and fault-tolerance as it applies to both distributed systems and mobile distributed systems. You focus on the application of theoretical aspects with respect to software development for these systems.

Learning Outcomes Assessed

This assessment item is designed to test the following learning outcomes provided in the unit profile.

1. Compare and contrast distributed systems with non-distributed systems

2. Discuss the social issues arising from ubiquitous distributed systems.

3. Critique the issues involved in developing reliable and secure distributed systems.

Assessment task 1

Your task for this assignment is to write a review article which will:

1. Differentiate between distributed systems, mobile distributed systems, and non-distributed systems.
a. What is the definition of a distributed system?
b. What are the differences between distributed systems and mobile distributed systems?
c. What is meant by ubiquitous distributed systems?
d. How the above systems differ from non-distributed systems?

2. Define and explain theoretical aspects of communication, in distributed systems.
a. What are the types and characteristics of interprocess communication?
b. How Java Programming language supports the use of three of the interprocess communication primitives in application development?

3. Compare and contrast the fault-tolerance requirements in distributed systems and mobile distributed systems.
a. What are the process and communication failures to be considered?
b. Are there additional failures to be considered in case of mobile distributed systems? Compare and contrast.

4. List the main social issues arising from the use of ubiquitous distributed systems.
a. What are the well-known social issues reported from the use of ubiquitous distributed systems arising from cyber security?
b. What measures can be used in software application development to reduce the impact of these social issues?

Part -2:

Objectives

The purpose of this assignment is to assess your competency in the use of networking protocols, thread programming, and database access in the development of distributed applications.

Assessment task 2: Paired Programming

Your task for this assignment is to design, implement, test and document a client/server application that allows multiple users to access stored data, or add new data. A distributed system often has a backend database for storing and retrieving business data. In this assignment, you are to implement a multiple-threaded client/server application for managing home inventory allowing all adult residents of the house access the stored details. The application also allows the house owner to add new item to the inventory.
All users accessing the home inventory system should able to view the following data:
1. List of available categories of items stored
2. List of purchases of items
3. Specific details of all the items within a chosen category

The home owner accessing the Home Inventory System should able to add a new purchased item to the list of purchases and additional details to the list within the specific category.

Sever side
Request for view Inventory
The server creates a new thread for each client connection (thread-per-connection model). The server side receives client requests, processes them and return results. If the client request is to view information related to inventory, the server should parse the request received from the client and execute appropriate queries to extract data from the database and send the data back to the client. Multiple read requests are executed concurrently.

Request for add inventory item
If the client request is to add inventory item, the server should parse the request, execute database query to add the details to the appropriate table. This should be synchronised as multiple clients will be running through multiple threads.
Client side
The client side interacts with the user, parses the request and sends it to the server. It receives messages from the server and displays to the user. The query frontend provides a menu to let a user choose any of the functions continuously until the user chooses to exit the system.
The Category list contains three categories and these are:
1. Furniture
2. Kitchenware
3. Appliance
The database should have 4 tables and these are:
1. List of categories
2. List of purchases
3. List of furniture
4. List of appliances
If the user selects the category 2 Kitchenware a message should be displayed informing no items are added yet. If the user wants to add an item, initially the purchase details should be collected followed by the data required within the category. There is no validation of users required. Assume the users do the right access and only the owner will choose the option to add an item.
The test data required for the assignment are given in the file COIT20257Assign2Data.csv. Please refer to example source code given in Week 9 folder to access database programmatically, use prepared statements to insert and query database.

Data Structures
You may follow the following class design.
- Category class
To store the name of categories.
- Purchase class
To store and manipulate the details read from the given file including purchase date, price, supplier and location. It is assumed that all the purchases are from shops (no online purchases).
- Furniture class
This class stores the following details of a furniture:
FurnitureType, setName, Warranty, and No. Of Pieces. A Funrniture purchase can be a set for example dining which includes table and number of chairs.
Appliance class
This class stores the following details of an appliance: applianceType, make, modelNumber, warranty

Database Utility class
This class will have necessary data structures and methods to create the database and the Tables of Category, Purchase, and Furniture, Appliance, populate the tables, and extract data from the tables. Use Prepared Statements to populate the tables using values loaded from the file. Also use Prepared Statements to extract data and store in appropriate data structures.
- InventoryServer class
This class will have necessary data structures and methods to create the sockets for client connection, creating threads for each client. This class will have main() method to invoke methods from other classes to run the application.
- InventoryClient class

This class will display menus, take the user input, create socket and request connection to the server. This class will also send/receive the messages between the client/server.

Coding

Include necessary accessor, mutator methods, constructors, and toString() method for each class. Also, follow good coding practices, using meaningful names, camel case notation for naming, constants as necessary, and include meaningful comments.

Paired Programming
Complete the program design and coding in pairs. You choose another student from your tutorial to work with in consultation with your tutor. Distance students also can work in pairs. If there are any problems please contact the Unit Coordinator.

Individual Report

Your report should be written individually and submitted by each one of you. In your report clearly show your partner for the application development.

Ideally, the Home Inventory System should be a cloud based application. This should allow the vendors to upload purchase details and documents such as Warranty certificate, purchase receipt, and instructions manual. Also, a user may want to access information while away from home, for example, while purchasing spare parts. When theft or damage caused by natural calamities happen, the data stored in a cloud can be accessed.

The added convenience of having ubiquitous availability of access to Home Inventory System creates the necessity for additional security as home inventory is part of assets owned by individuals or families.

1. Write how the Home Inventory System can be extended to a ubiquitous distributed system focusing on the additional cyber security requirements and Java language constructs that could be used for implementation. You need to write a maximum of 500 words.

2. Provide a diagrammatic representation of the system architecture.

3. Include a test plan, and user instructions.

Attachment:- Assignment Template.rar

Verified Expert

Reference no: EM131303603

Questions Cloud

Analyze two essential public health care services : Analyze two essential public health care services found in the text. Examine these services in relationship to one well-known healthcare organization in your community. Provide specific examples to support your analysis.
What must the coupon rate be on the bonds : Barnes Enterprises has bonds on the market making annual payments, with 15 years to maturity, a par value of $1,000, and a price of $966. At this price, the bonds yield 7.8 percent. What must the coupon rate be on the bonds?
New state-of-the-art cancer treatment center : ABC Hospital invests $11,995,000 in the development of a new state-of-the-art cancer treatment center. Based on their estimates, the first year cash flow will be $2,000,000, the second year cash flow will be $4,000,000, the third year cash flow will ..
Examine two types of healthcare discrimination found : Examine two types of healthcare discrimination found in the text. Next, analyze the fundamental implications of the chosen two types of discrimination to both a healthcare organization and to you as a consumer of healthcare services.
Types and characteristics of interprocess communication : What are the types and characteristics of interprocess communication - How Java Programming language supports the use of three of the interprocess communication primitives in application development?
What product or products does your state specialize in : You can think of the United States as a set of 50 separate economies with no trade barriers. In such an open environment, each state specializes in the products that it produces best.
Maximizing firm value and minimizing the cost of capital : Which of the following are equivalent under M&M proposition I? Maximizing firm value and maximizing firm profit. Maximizing firm value and minimizing the cost of capital
Determine two to three benefits of having health insurance : Determine two to three benefits of having health insurance for a family. Specify two avenues through which families may obtain health insurance.
What adjustments might you expect in the exchange rate : Assume that there are no other trading partners and that the only motive for holding foreign currency is to buy foreign goods. Will the current exchange rate lead to trade flows in both directions between the two countries? Explain.

Reviews

inf1303603

12/9/2016 6:25:57 AM

Ok but i don't want any mistakes in that assignments.what ever help you need from me i will provide you.i have sent the complete rar file which has two assignment and with dead line dates just check the requirements and let me know what do you need more. i need the work to be finished in time. first finish the assignment-1 and then think about the assignment-2. As the assignment-2 has more time than the assignment-1.but i need both the assignments before it's dead line dates. is there any problem with the payment mode.when ever i am trying to pay with the card it say to enter the valid card number. ok i have done the payment without any bargain so make sure the assignments get the good marks with out any problems.i need the referring style in Harvard style.

len1303603

12/7/2016 12:39:50 AM

the subject name is Distributed Systems:Principles and Development.This time i need the perfect work from your side.lost time i got less assignments marks for this subject,but now i am expecting more for the assignments.i would like to pay in AUD so let me know it in AUD.

len1303603

12/7/2016 12:39:27 AM

1 The InventoryClient class enabling send/receive of messages and appropriate handling of user input, proper formatting and display of user outputs 3 2 The InventoryServer class enabling acceptance of client request, creation of thread per client which processes and responds to client request. 5 3 DatabaseUtility class enabling creation of database and tables, populating database tables with data from file, and extraction of data as requested by the client. 4 4 Other classes enabling the extraction and manipulation of data from database. 4 Correct use of Synchronisation for adding new purchase details 3 5 Programmatic creation of tables and correct database connectivity 3 12 Good coding practices (Indentation, Comments, Naming Conventions, Readability) 3 13 Well presented report with student details, and cyber security requirements, and Java language constructs 5 System architecture, test plan, and user instructions 5

len1303603

12/7/2016 12:39:00 AM

Your submission will be compared with other assignment submissions from this unit or material available from external sources. If large amount of text is found copied verbatim, it will be treated as plagiarism. Please ensure that you follow correct referencing and refer to ALC report writing guidelines on proper referencing. Follow Harvard Year date referencing style. Include correct in text referencing.

len1303603

12/7/2016 12:38:47 AM

Introduction should have a brief description of the topics of your discussion. This section also should introduce the organisation of the article, introducing each section of your article. As the focus is on exposing your understanding of the theoretical aspects given above pay attention to define and explain terms which you will be using to build your argument later in the article. You can use your own textbook and other books or articles. You are encouraged to use diagrams if needed. Conclusion. You should write a conclusion that will conclude the topics discussed and any suggestion of further work in this area.

len1303603

12/7/2016 12:38:33 AM

1 Introduction: 1 mark Introduction: topic and contents 2 Differentiate between distributed systems and mobile distributed systems: 3 marks definition of a distributed system differences between distributed systems, mobile distributed systems, and non-distributed systems ubiquitous distributed systems 3 Communication in distributed systems: 4 marks types and characteristics of interprocess communication Java Programming language support 4 Fault-tolerance requirements in distributed systems and mobile distributed systems: 4 marks process and communication failures Additional failures in case of mobile distributed systems: Compare and contrast 5 Main social issues: 4 marks Well known social issues reported Measures that could be used in software application development

Write a Review

Other Subject Questions & Answers

  Ct scanning lung cancer-treatment study

CT scanning lung cancer. University of South Florida clinical trial of 50,000 smokers was carried out to compare the effectiveness of CT scans with X-rays for detecting lung cancer.

  Rules in the state of georgia and review them

Locate the E-Discovery rules in the state of Georgia and review them - Locate ethics opinions on E-Discovery from the state of Georgia.

  Is dell corporation able to take good market held by hp

Is Dell Corporation able to take good piece of Market held by HP nowadays? Write two pages on solution? This is the guideline. Write down the outcomes of the case?

  Stakes and important are the decisions they will make

With the price of oil and gas climbing, or at best bouncing around at $3/gallon, what challenges and decisions are car manufacturers facing in the fall of 2010? How high are the stakes and important are the decisions they will make?

  What factors most contributed to the flourishing of great

What factors most contributed to the flourishing of great civilization in africa

  What is the value that you received from that purchase

What is the value that you received from that purchase - What is the difference between a customer need, want, or demand?

  Describe how a bill becomes a law at the national level

Describe how a bill becomes a law at the national level, in a fully developed essay. Support your work with cited sources, references to Lecture Notes, or URLs where you obtained your information.

  Functions and challenges in the hr department

Create a plan that will help the HR department accomplish this job growth. Write a report of no more than 1,250 words summarizing your plans. Your paper must include the following information:

  Write the possible causes ensure to explain both hereditary

isaac is a fifty-nine-year-old man. several months ago he noticed a slight tremor in his hands. he assumed this to be

  Difference between autism and aspergers syndrome

What is the difference between autism and asperger's syndrome, according to the DSM-IV? I always thought that they were really similar, but apparently the DSM-IV differentiates between autism and asperger's

  Compliance with federal and state legislation

Compliance with federal and state legislation - Public confidence in your enterprise by providing confidentiality, availability and integrity of customer data,

  Compare and contrast nightmares and night terrors

Our society makes a distinction between drugs such as alcohol and caffeine, which are legal to use, and others, such as marijuana and cocaine, that are not. Does this distinction make sense?

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