Professional Documents
Culture Documents
Problem Specification
• Please read this requirement specification document completely to understand the
application that you need to create.
• It’s your responsibility to read and understand all the requirements.
• No kind of help in terms of solution or error fixing will be provided during the
examination.
• The marking sheet is provided at the end of this document.
Create your Android mobile app project with the following specifications:
• The task is to create an Android application for subscribing to a design application
• Project Name: XXMealDelivery, where xx is your initials. (For example,
KPMealDelivery for Kevin Peterson)
• Project Type: Empty Views Activity
• Minimum SDK: API 29: Android 10.0 (Q)
• Language: Java
• Create the borders, strings, colors, and themes as needed for the UI
Functional Requirements:
Note: Database is not implemented in this application.
1. Enter the subscriber's name in the ‘Customer Name’ field
3. Select a subscription plan either ‘Monthly’ or ‘Yearly’. Both these options should be
unchecked when the app launches (See Figure 2)
4. Populate the plan types ‘Cooked Meal’ and ‘Uncooked Meal’ in the plan type spinner only
when the monthly plan is selected (See Figure 3)
5. Populate the plan types ‘Veggies with Recipe’ and ‘Veggies Only’ in the plan type spinner
only when the yearly plan is selected (See Figure 4)
6. Select the additional features ‘3L Lemonade’ and/or ‘4L Milk’. These items should be
unchecked when the app launches (See Figure 5)
7. The ‘Type of Delivery’ spinner should get populated with the items ‘Door Step’, ‘Store pick-up’
and ‘Community box’ (See Figure 6)
8. A pop up calendar should get displayed when the ‘Subscription Date’ field is clicked (See
Figure 7)
9. The subscription cost should get displayed when the ‘Submit’ button is clicked. The details like
customer name, subscription plan selected and total cost should be displayed using a snackbar.
The total cost should be calculated as yearly total if "Yearly Subscription" is selected otherwise
show monthly total. Business rules for calculating total cost are provided in the table 1 below.
10. Implement Object Oriented Programming principles with at least one Java class in which
encapsulation is applied. You are free to choose a Java class that is relevant in the application.
13. Implement the best practices and validations. The following validations must be
implemented:
a)Data should be entered in the fields customer name, phone number, and subscription date.
e) Subscription date entered must be today or a date from future. Past date should not be
allowed
Subscription Plan:
Additional Features:
Type of Delivery:
Table 1
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
What to Submit:
• Comment the Code: You must provide meaningful comments to every Java class, method,
and every and any significant code segment.
• Word Document: Include all the Java code in a Word document. Code
should be pasted as text. Submission will not be considered for evaluation if code
is pasted as an image. Do not zip the word document. Name this document as
YournameMealDelivery.docx’ (Example: PeterMealDelivery.docx)
• Application Package: Create a zip file of your entire application package.
•• Upload: You must also upload the Word document and the project zip file to the
mid- term examination folder in the assignments section on eConestoga.
Marking Sheet:
Description Marks Allocated Marks Achieved
Page designed as specified 2
Functionalities implemented
as per requirements:
• Dynamic population of 2
monthly plans
• Dynamic population of 2
yearly plans
• Implementation of 1
additionals
• Dynamic population of 2
the type of delivery
•Implementation of 2
Subscription Date Picker
• Calculation of total 2
subscription cost as per
given business rules
• Implementation of 2
Snackbar as per
requirements
Implementation of OOP 2
principles with at least one
Java class having
encapsulation applied
Implementation of validations 3
Total Grade Points 20
Deductions
Failure to submit the word 20
document and the application
zip file in the Mid-term
examination folder under
assignment section on
eConestoga
Non submission of Word 12
document file with the
commented Java code pasted as
text
ViewBinding not enabled 2
Listener interfaces not 1 x --------
implemented
Runtime errors 1.5 x --------
Hardcoded text found in the UI 3
Hardcoded color found in the 3
UI
Assignment Standard (proper 1 x --------
project name, submission docs
name
etc)