CST2550 Software Engineering Management And Development

Assignment Help Software Engineering
Reference no: EM133135165

CST2550 Software Engineering Management And Development - University of Middlesex

Task Description

You must design and implement a system to track vehicles entering and exiting a car park, calculating parking charges if required, storing the details to file and allowing functionality to produce a report for a given date with a list of number plates, enter/exit times and parking price.

You should consider carefully which data structure to use for the various parts of the system. During the design phase, you should analyse the algorithms for adding a vehicle as it enters the car park and, removing the vehicle from the collection of current vehicles, calculating the parking charge and adding it to the history when it exits.

You should not use any third party libraries or code as a part of your solution and all code should be written by you, i.e. not automatically generated. You also shouldn't use non-standard or operating system dependant libraries in your program or operating system calls (the code should all be standard C++).

To achieve a good mark, you should design and implement the data structures yourself. Using standard template library (STL) data structures will severely limit the grade you can achieve.

Apply the knowledge you have gained on this module to select and design the data structures and algorithms which are most appropriate and to analysis the time-complexity for your report.

Scenario

A large car park requires an automated system which tracks vehicles as they enter and exit the car park using their number plate and calculates the parking cost as they exit.

The input to your program will be from a file which will have (on each line) a time and date and either a vehicle entering or exiting the car park.

Your program must use an appropriate data structure to track the vehicles currently in the car park. When they leave they should be removed from this data structure and added to a history data structure which stores all vehicles, entry and exit times and parking charge.

You will be provided with a small sample data file in the correct format to use when writing and testing your program. However, the program should work with any file of this format (and another file will be used when marking your work); therefore, your program should allow the user to specify the input file name as a command line argument.
Parking prices will be calculated using the following table.

Duration                 Price less than 30 minutes FREE

Up to 1 hour

£1.50

Up to 2 hours

£3.00

Up to 4 hours

£5.00

Up to 8 hours

£15.00

Over 8 hours

£30.00

Detailed Description

It is recommended that you complete the tasks in the following order as the later sub-tasks will require the earlier ones.

Set up Project
Create a Git repository and makefile for the project, remember to update the makefile and commit new files to the git repository as you implement/update them.

Plan Software
Design and implement a class to store the necessary details of a vehicle with a specific number plate.

Design and Implement Data Structure/Algorithm
Design and implement the data structure(s) which will store the Vehicle objects and associated algorithm(s) to add and remove them as they enter and exit the car park. Analyse the time- complexity of the algorithms (this will be needed in your report). You must also justify your selection of data structure, based on the requirements of the program.

Test Data Structure
Apply software testing (using catch2) to ensure your vehicle class, data structures and algorithms are all working correctly.

Read Sample Data File
Implement the program to read the sample data from the given file and process it using the data structures.

Implement Menu
Implement a (command line) user interface to allow users to output all vehicles with entry and exit times and parking cost for a specific date. The output should be sorted by entry times.

Write Report
Finish writing the report, including the time-complexity analysis and test cases you prepared while designing the software.

Report Contents
The report should have the following sections:
• Introduction
- brief description of the project (not just repeating the coursework task)
- a paragraph describing the report layout
• Design, including:
- justification of selected data structure(s) and algorithms
- analysis of the algorithms which provide the key functionality (using pseudo code, not C++ source code)
• Testing, including:
- statement of testing approach used (not test code)
- table of test cases (not test code)
• Conclusion, including:
- summary of work done
- limitations and critical reflection (including what caused the limitations)
- how would change approach on similar task in future (should avoid repeating mistakes)
• References
- in Harvard format
- must have matching in-text references

Video demonstration
The video should be a quick demonstration of the software demonstrating your understanding of the implementation (just showing you know how to use the software will not demonstrate any understanding).
Run the program and explain how the functionality was achieved. You may show both the program running and the source code, but don't just step through the source code line-by-line reading it out (this also doesn't demonstrate any understanding). Just explain key parts of the code which achieve the functionality you are showing.
Marks for code will be limited if your demonstrated understanding of the code is limited.

Formative Feedback
You will have the opportunity to submit a draft version of your report by the end of week 22. If you submit a draft in week 22, some written feedback will be available by the end of week 24 stating what you should improve before the final submission. There will be no mark for the formative submission, but the feedback given will help you to improve your work (and your final mark).

Attachment:- Software Engineering Management.rar

Reference no: EM133135165

Questions Cloud

Prepare a schedule to determine the amount of loss : Based on the previous information, prepare a schedule to determine the amount of loss that Wells should recognize for the current year
Prepare journal entries to record lance brothers investment : Prepare the journal entries (a) to record Lance Brothers' investment in the bonds on July 1, 2021, and (b) to record interest on December 31, 2021
Describe the impact upon the beneficiary : Discuss Medicaid program restructuring in NYS. Identify the goals associated with this restructuring and describe the impact upon the beneficiary
Record the given transactions : The common shares were trading for $7 per share on that date. The fair value of the land was estimated to be $81,800. Record the given transactions
CST2550 Software Engineering Management And Development : CST2550 Software Engineering Management And Development Assignment Help and Solution, University of Middlesex - Assessment Writing Service
Evaluate organization and management principles : Evaluate organization and management principles in healthcare settings.
Future direction of sports marketing : The purpose of this assignment is to draw conclusions that support predictions for the future direction of sports marketing.
Specific scenarios in the health care setting : There are five essential principles of management. These include planning, organizing, directing, controlling, and leading. You have been asked to give a presen
What is the net present value of not testing : Suppose, a test that costs $425,000 can verify the amount of oil under the ground, is it worth paying for the test? What is the net present value of not testing

Reviews

Write a Review

Software Engineering Questions & Answers

  Research report on software design

Write a Research Report on software design and answer diffrent type of questions related to design. Report contain diffrent basic questions related to software design.

  A case study in c to java conversion and extensibility

A Case Study in C to Java Conversion and Extensibility

  Create a structural model

Structural modeling is a different view of the same system that you analyzed from a functional perspective. This model shows how data is organized within the system.

  Write an report on a significant software security

Write an report on a significant software security

  Development of a small software system

Analysis, design and development of a small software system.

  Systems analysis and design requirements

Systems Analysis and Design requirements

  Create a complete limited entry decision table

Create a complete limited entry decision table

  Explain flow boundaries map

Explain flow boundaries map the dfd into a software architecture using transform mapping.

  Frame diagrams

Prepare a frame diagram for the software systems.

  Identified systems and elements of the sap system

Identify computing devices, which could be used to support Your Improved Process

  Design a wireframe prototype

Design a wireframe prototype to meet the needs of the personas and requirements.

  Explain the characteristics of visual studio 2005

Explain the characteristics of Visual Studio 2005.

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