Programme Title: Computing Technologies Module Code & Title: CORC373 Advanced Object Oriented Programming University of Plymouth
For this coursework you are required to develop a simulation of a lift system
You are required to demonstrate your knowledge of object-oriented analysis, design and implementation by studying the description provided below. Your report should cover the four items listed after the description.
A building has four floors serviced by a single lift. There are request buttons at each floor for ‘Up’ and ‘Down’ (except the top floor, which only has a ‘Down’ button and the ground floor, which only has an ‘Up’ button).
The lift also has request buttons inside for each floor. The user will press the button for the destination floor and it will light up and remain lit until the lift stops at that floor.
The lift has a set of doors, which can be opened and closed and has a motor which can make the lift go up, go down or stop at the next floor.
When there are no requests the lift will wait with the doors closed at the last floor it reached.
The lift is sent a signal each time it reaches a floor and another signal when it leaves a floor, so that it can detect where it is and control its motor.
Each floor shows a display of which direction the lift is moving (Up, Down or Waiting) and where the lift is (at a particular floor, or between one floor and the next).
A control system must manage the requests for the lift, the opening and closing of the doors, and the movement of the lift to service requests. For safety, it must ensure that the doors have been closed before the motor is set to go up or down and that the doors cannot be opened until the motor is stopped.
Based on the above description, create a use case diagram(s) for the system including the scenarios for each use case. Break down the use cases into user stories that describe the features you implement in each iteration of your development of the system. The user stories must include conditions of satisfaction so you know when the story is complete.
State any assumptions you made during the analysis stage.
Based on your analysis produce:
State any assumptions you made during the design stage.
Implement your chosen classes in either C++, C# or Java using appropriate comments to explain the purpose of each class and functionality of each method. The implementation should produce either a textual or graphical output, which simulates the operation of the lift system. You should submit an electronic copy of the source code and the compiled class files. Make sure you include comments and correct indentations.
Your project should build on and target either Windows or Linux using one of the following build systems:
C++: make, CMake, Visual Studio/MSBuild
Java: Maven, Ant, Gradle
If you want to use a different build tool consult with your tutor.
Devise a test plan to test the operation of the lift system. This should cover the operation of the lift system under various operational situations (e.g. lift called to go down from top floor, lift called to go up/down from an intermediary floor, lift called to go up from ground floor etc.). Include the test plan together with screenshots, in your report along with the output from various test cases. Include any error conditions whether or not if they are detected (by your code) or undetected (genuine design errors).
The assignment I got was complicated enough and it was hard for someone else to do it. Our professor had explained a proper technique and format to do it, I was worried if urgenthomework could do it or not? I had a talk with their customer care and they gave me the contact details of the expert who would do my work. I told them the procedure and I was surprised by the product delivery. It was an excellent work framed in the style and Format I wanted it.
I had a critical task accommodation due date. One of my companions recommended that I should hire the services of urgenthomework.com. When I put in the task request, they quickly acknowledged it and comprehended the earnestness and urgency of time. they conveyed my task until before a day of submission date. Services are as good as your writing is. And quite affordable as well. Wish you good luck for the future. Keep growing.
I have been using this website since last many years. It helps me in my college project and homework. Excellent study materials are provided which is easy to understand and learn. Read More