COMP6239 Mobile App Development Assignment Assignment: School App Lecturer: ra3@ecs Weighting: 50% Deadline: 14/05/2021 @ 16:00 Feedback: 12/06/2020 Effort: 60 hours per person Relevant Learning Outcomes (LOs) This assignment assesses your ability to design, build and test a mobile application using professional mobile app development tools. Development You are expected to work on this assignment in a group of three, or at least with a partner. You can choose your groupmates and send me your group details (student numbers and names) once groups have been formed. You will submit your work jointly and receive the same mark. Mobile App Requirements This mobile app aims to provide a platform to facilitate the delivery of packages to construction sites. You are required to build an Android application that provides an interactive environment, allowing a manager to assign packages of building materials from different vendors to some registered driver. The drivers should pick up the packages from the vendor site and drop them off at the construction site. Target users of this app are: 1. A manager who is in charge of getting building materials to multiple sites. 2. Drivers who deliver packages. Note: Vendors which are the suppliers of building packages/materials and site admins can be considered as the future stakeholders, but they are not part of your main features for this coursework (if you develop any features in this relation it will be treated as extra features) App features include: 1. The manager can create and maintain a list of building-sites, vendors, and drivers. a. Note: you have to decide what sort of information you need to record about the above entities (building-sites, vendors, and drivers). 2. The manager should be able to view the list of building sites, vendors, drivers and packages and make changes/updates to these items in a sperate detailed view page. a) In the list view for each entity, you should make suitable provision to differentiate between items with a different status, for example, between packages that have been delivered, and the ones pending delivery. This could be implemented by using different colours or having a status column, or both. b) Note: Having the option of filtering the entities to view, for example, all packages that are pending for delivery, or delivered between two given dates is considered as extra feature. 3. The manager should be able to add a new package, choose a vendor, and assign this package to a driver. 4. After the initial details of a new driver (full name and email) have been added to the system by the manager, then this driver should be able to sign up to their account and complete their profile by adding information such as phone number and profile photo. 5. The diver should be notified when they are allocated a new delivery job and should be able to see a list of the packages they need to deliver. 6. When a driver marks the package as delivered, the building site's admin receives a message notifying them of that delivery. Note 1: Displaying content of any type beyond text in a notification, such as using image, audio, video or showing an event’s location on a Google map are all considered as advanced features. The remaining of the above features are considered as basic features. Your main focus should be on implementing basic features, and then implementing advanced features if you have time. Note 2: Whenever you need to make any further assumptions or interpretations of the requirements for this system, you are free to do so. This should be accompanied by an explanation of your rationale and justification of your approach. You should design a suitable database structure and user interface to support these features - local database is considered a basic feature, whereas supporting a back-end database such as Firebase is considered as an advanced feature. The majority of marks for this assignment are available for your correct and efficient use of the technologies and techniques and implementing the basic functionality.
Required Platform/Technologies and Frameworks
You are required to implement this app using recent versions of your choice of platform/libraries/frameworks (primarily Android, unless I have agreed with you on another choice). Your app must provide multiple screens with professional layouts, navigation and deliver a good UX. Documentation
You should produce a PDF document describing your app’s development. This must be no more than 2,500 words. Allowing for diagrams and other figures, this will be up to approximately 12 A4 pages. The document must include: § A clear statement of your implemented requirement with proper formatting and suitable labelling for traceability purposes. § Design diagrams showing the structure of your user interface, database, and the mobile app. § Appropriately clipped and labelled screenshots illustrating the implemented features. § Samples of code, using appropriate formatting and colour, to demonstrate the technologies and techniques you have used, and identifying which source code file the fragment is extracted from. § Samples of mark-up you have written yourself, each identifying which mark-up file it is extracted from. You should present these samples as figures so that they do not count toward the word limit given above. This is also applicable to the previous bullet point. § Clear and concise explanations of these diagrams, screenshots, and code/mark-up samples. § Evidence of how the mobile app has been tested. For example, how error messages appear appropriately, error reporting does not lose previous user input and that the back and up navigations function correctly. § Evidence of how you have tested your business logic, for example, to ensure that all inputs are valid. § Clarification of which technologies or frameworks/libraries you have used, including design diagrams, code fragments, other figures, and explanations as appropriate.
§ A short evaluation of the tools, technologies and techniques you have used and effective in achieving their intended goals. § A bibliography of all tutorials and textbooks you used to support your development, noting that your bibliography will not contribute toward the word limit given above. Your App Demo During week 12 you will be asked to demo your app. The exact time and venue for each team will be announced on the module website later on in the semester. Submission Instructions Submit your report in PDF format, and all of your project files as a single archive in ZIP format to the electronic hand-in system by 4pm on the due date shown above.
Relevant Learning Outcomes (LOs) 1. Design and develop mobile applications using a chosen application development framework. 2. Demonstrate knowledge and understanding of the techniques used for developing and testing mobile applications, and enhancing their usability, and performance. 3. Evaluate your chosen design and development and justify the advantages and limitations of your development approaches and decisions. Marking Scheme
There are three assessment criteria, each weighted as the following: Criterion Description LOs Total Application Basic features Effective implementation of required features, good use of technology (platform and frameworks), usefulness, innovation, packaging techniques, ease of use and UX. 1,2 60 Additional Features Additional and advanced features and techniques. Other design and implementation considerations such as robustness, security and performance. 2,3 20 Report Clear discussion on application design, development and testing, showing appropriate evidence of these aspects. A clear justification of 2,3 20 all implementation and discussion of effectiveness of your decision in achieving the intended goals of the app. Late submissions will be penalised at 10% per working day. No work can be accepted after feedback has been given. Please note the University regulations regarding academic integrity. The marking scheme is indicative, and all marks returned to students are for feedback purposes. These marks will be prior to moderation and before late penalties are applied.
欢迎咨询51作业君