THE BRIEF/INSTRUCTIONS
The following Learning outcomes will be assessed in this assessment
· 1. Develop appropriate software solutions to technological problems.
· 2. Describe and apply features of an object oriented programming language.
· 3. Effectively exploit the programming language and development environments.
· 4. Effectively apply software design and development principles.
Overall Aim.
To implement a software system in C#, that can read and write data in standard XML, store and retrieve data from an SQL database in a user friendly manner.
Assignment Aims
Students will be provided with the following software (on blackboard) :
An SQLite database file.
The aim of the coursework is to give students practical experience in object oriented software development by implementing a system in an object oriented language (C#) that involves a number of real-world engineering applications (reading and writing standard data format (XML), database access and storage, user interface design).
The System.
A company has developed an autonomous robot system that has the capability to deliver small to medium sized objects over a short distance. The robots are to be used in a large warehouse environment to move small parts, tools, orders etc. An empty robot can travel for 1000m before it has to re-charge, for each 5kg the robot carries it operates 5% less efficiently E.G.
Empty / lightly laden robot (0 - 5.0kg) can travel for 1000m.
Therefore a robot carrying 5.1 to 10.0kg
100% / 95% = 1000 / x. x = 950 therefore a robot operating at 95% efficiency could travel 950m
At 95% efficiency 1% of battery moves the robot 950 / 100 = 9.5m
Or moving 1m uses 1/9.5 = 0.1053% of the battery (rounded to 4 decimal places)
The maximum weight a robot can carry is 25.0 kg. It is assumed that size is not an issue.
All robots always move at their maximum speed of 5m/s regardless of cargo weight.
The warehouse is assumed to be a simple square, 100m along each side. There is a re-charging station in each corner and robots are assumed to be able to move in a straight line at all times and never collide.
A full charge of a robot (robots never charge less than fully) takes 3 minutes. Robots will recharge during a job but not between jobs.
The company owns 5 of these robots.
The student is supplied with an empty SQLite database, on Blackboard, containing three tables, Jobs and RobotHistory, RobotStatus.
The Tables are as follows:
Jobs |
||||
JobID |
StartPos |
EndPos |
Weight |
Complete |
JobID – Primary key, Integer – Uniquely identifies a Job.
StartPos – Text – Starting point for the job where the object is collected.
EndPos – Text – End point for the job where the object is delivered.
Weight – Real – Weight of the object being transported.
PREPARATION FOR THE ASSESSMENT
· XML file handling was covered in lab 12 · Database access / SQL was covered in labs 13 and 14, students should use the code given in these labs for this work. · Students will be given time during lab sessions to work on the assignment with guided assistance. · The assignment will be explained and students given the opportunity to clarify any points in a lab session, and the recording will be placed on Blackboard. |
|
|
|
RELEASE DATES AND HAND IN DEADLINE Assessment Release date: Week commencing 5/2/24. Assessment Deadline Date and time (Report): 31/3/24 11.59pm
Please note that this is the final time you can submit – not the time to submit! Your feedback/feed forward and mark for this assessment will be provided on Blackboard after 15 working days |
|
SUBMISSION DETAILS
Submit a single Microsoft Word compatible file. This to be uploaded to Blackboard (TurnItIn) before 31/3/24 11.59pm
|
|
|
|
HELP AND SUPPORT
· For support with using library resources, please contact Neil Marshall [email protected] or [email protected]. You will find links to lots of useful resources in the My Library tab on Blackboard. · If you have not yet made the university aware of any disability, specific learning difficulty, long-term health or mental health condition, please complete a Disclosure Form. The Inclusive Support team will then contact to discuss reasonable adjustments and support relating to any disability. For more information, visit the Inclusive Support site. · To access mental health and wellbeing support, please complete our online referral form. Alternatively, you can email [email protected], call 01772 893020 or visit our UCLan Wellbeing Service pages for more information. · If you have any other query or require further support you can contact The <i>, The Student Information and Support Centre. Speak with us for advice on accessing all the University services as well as the Library services. Whatever your query, our expert staff will be able to help and support you. For more information , how to contact us and our opening hours visit Student Information and Support Centre. · If you have any valid mitigating circumstances that mean you cannot meet an assessment submission deadline and you wish to request an extension, you will need to apply online prior to the deadline. |
|
|
|
|
|
Disclaimer: The information provided in this assessment brief is correct at time of publication. In the unlikely event that any changes are deemed necessary, they will be communicated clearly via e-mail and a new version of this assessment brief will be circulated. |
Version: 1 |
Appendix A.
Marking Grid
|
< 40% (Fail) |
40-49 (3rd Class) |
50-59 (Lower Second class) |
60-69 (Upper Second Class) |
70+ (1st Class) |
Documentation |
Some aspect of the documentation is missing (Design, testing, improvements or user guide). |
Basic program design. Testing limited to checking program is in a compliable state. Improvements limited to aspects that could have been done by the student. Program features missing from documentation. |
Program design may not fully explain all aspects. Some parts of testing are missing or not fully covered. Simplistic improvements. Some aspects of program may not be documented. |
Program design covered well. Good testing plan that covers most aspects. Some improvement ideas. Program features fully explained. |
Excellent design documentation (UML, data flow etc.), Full testing plan that covers all major aspects, innovative improvement ideas. Program fully explained. |
Program |
Program has severe problems and is missing major features of the specification. Program may not compile as supplied. |
Program can save XML, load XML, and update the database. May not handle file issues without crashing. May use poor programming style. A program with significant work that does not compile can not gain a mark higher than this. |
Program performs all the main functions (save, load XML, update and simple database query). The program may not perform all the advanced functions such as calculating the robot path including charging. |
Program performs all the specified functions. There may be some small program flaws that do not affect the overall running of the program. |
Program works as specified without any issues (handles file issues without crashing, prevents changes to the database through SQL interface etc.). Additional marks can be gained for innovative design and features. |