Distributed Property Rental System
Rentnet is a distributed system that estate agents have decided to set up to manage rentals. They have decided not to use a centralized system, but to keep rental data themselves. Each agent also wants to use their existing systems which differ in operating systems (Linux, MacOS, Windows) and versions.
There is a single advertising website that will gather data from the agents on an hourly basis. This will check for new properties, removed properties, and rented properties.
Once connected to an initial system, a user will search property in a location. Consider how to arrange systems as an overlay, is this structured or unstructured?
Systems can also come and go. What happens to the overlay when this happens?
Design application protocols to disseminate system availability information. Also design protocols to enable the user to search and reserve rentals.
From the characterization of protocols in the lecture on IPC decide which combination of attributes you need, that is text- or binary-based, etc.
You need to consider Salzer and Reed’s End-to-End argument – how much of the reliability factor can you leave to transport protocols and how much must be handled at the application layer.
Your protocol must be designed to be future-proofed so that new services can be added and existing message formats can be changed.
Now you need to cover the three aspects of protocol design:
Syntax – the format of the messages
Semantics – what do the fields in the message mean and error handling if that can’t be fulfilled
Timing – coordination between sender and receiver covering timeout situations.
For syntax, such formalisms as EBNF could be used, although not required.
For semantics, we could use formalisms such as denotational and axiomatic semantics, however, they would require a whole course to explain. The clue is in axiomatic. You can informally describe the axioms – the assumptions that are made for a correct system. For example a type given to a field is an axiom. “This field must be a string”. A tighter axiom would be “This field must be an ASCII string” – that is rather than EBCDIC or other character encoding. If you do not have this character type restriction, you would have to dynamically type the string with another field “string_type” which tells the receiver to interpret it as ASCII, EBCDIC, or UTF. This is what semantics is about – how the receiver interprets the message.
For protocols, we also need timing – that is, how long do we wait until we can assume messages have been lost. You can express these with the timing diagrams we introduced in the IPC lecture.
(5 to 10 pages)
For all questions in this assignment not only content but also presentation will affect your mark. You will lose marks if there are problems with the presentation, particularly with clarity. This means that your answers to each question should be a coherent statement and that the spelling and grammar of your submission will be taken into account in assessing its presentation.
For full marks, your answers should all be correct, clear, and coherent.
The standards of marking described in the unit outline L.O. 1 will be applied to this assignment as relevant to the assignment topics.
In addition, the following particular standards will be applied in marking this assignment:
- Spelling and grammar:
- Assignment submissions with more than 4 spelling or grammatical errors will not achieve a grade higher than distinction; submissions with more than 8 such errors will not achieve a grade higher than credit.
- Ambiguous or poorly worded answers will receive a grade no more than a pass for the individual question.
- Minor issues of clarity will receive a grade no more than credit for the individual question.
- Correctness of approach taken and answer obtained:
- Incorrect answers with the correct logic or approach will receive no more than a pass for the individual question.
- Correct answers with incorrect logic or approach will receive no more than pass for the individual question.
- Incorrect answers with no explanation of the approach taken or with the incorrect approach will receive a fail grade for the individual question.
The questions will be marked individually, the marks totalled, and a final grade assigned that is no more than indicated by the total marks, and no more than allowed by the standards specified above and in the unit outline.
Submit on the iLearn page under ‘Assignments Section’. The submission is with a tool called TurnItIn. This cross checks for online papers and other student papers for any plagiarism (copying). In short – DON’T COPY – or get others to do your assignment, we are pretty good at catching people out and the consequences can be severe.
You should be well aware of the University’s plagiarism policy. In this assignment, you must be particularly careful to avoid plagiarising your articles or any other sources of information. If you wish to directly quote any portion of another document, you must enclose your quotation in quotation marks and immediately following the quotation you must identify your source. It is important that you do not attempt to write your answers by pasting together pieces of text that you find on the Internet. You need to write your own words and phrases that express your own ideas. You must also list all sources used in your answer/essay in a bibliography at the end of the answer/essay. Do not trust anyone who will take money to do assignments. They can take money from several students, return the same assignment, and you get caught. They don’t care about you, but we do!