School of Information Technology
New Zealand Diploma in Information Technology Software Development (Level 6)
Course Code & Title:
ICT638 Mobile and App Development
Assignment Title
2 – Portfolio
Assessment Type
Practical
Level
6
Credits
15
Term & Cohort:
Due date:
Task 1: 11/03/2020, Task 2: 25/02/2020, Task 3: 08/04/2020, Task 4: 09/04/2020
Overall Weighting:
80%
Total marks available
100
Tutor:
Nidia Jackson
Course aim
Investigates the design and implementation of distributed systems, including contemporary technologies such as Java Enterprise Edition and .NET, as well as the development of mobile systems.
Purpose
Learners will gain an understanding of mobile and application development. Students will learn how to create distributed applications making use of Android and ASP .NET.
Assessment Information
1.
2.
3. 4.
ICT638
This is a combined individual and group open-book assessment which is worth 80% of your total assessment weighting of the entire course. The tasks 2 and 3 of the assessment is group assessment and task 1 and 4 of the assessment is individual assessment.
Resources and/or equipment which may be used for this activity:
a. NZSE issued material;
b. your own course notes; and
c. Other resources (referenced and cited).
Task 1 (individual) of the assessment is due on 11 March 2020, task 2 (group) is due
on 25 March 2020, task 3(group) is due on 8 April 2020 and task 4 is due on 9 April 2020.
You have 7 weeks to complete this assessment.
Assessment 2- Portfolio v1.0 Page | 1
Learning Outcomes
This assessment is mapped to the following learning outcomes for this course:
LO1 Evaluate and implement features of client-server systems using Java Enterprise edition and/or .NET
LO2 Implement mobile systems utilizing messaging, Bluetooth, push registrations, and location-based services
LO3 Demonstrate mastery of distributed algorithms
LO4 Research and apply contemporary remote technologies such as RMI, CORBA, .NET remoting, and web services
LO5 Apply standard design principles and algorithms in the construction of a distributed system
GPO’s (this course is mapped to)
1 Analyse requirements, design and document software solutions for a range of problems in an organisational context.
2 Write and maintain programs using design patterns, data structures and algorithms to meet specifications.
3 Apply a range of software quality assurance techniques to verify correctness of systems.
4 Apply data management and storage technologies to support the software application and the development process.
5 Establish application security by integrating security principles throughout software development to ensure system integrity.
6 Choose, justify and apply architecture, technologies, and tools, to implement the software solution.
Plagiarism
• Any submitted assessment or part of an assessment which has plagiarised content will not be marked.
• All cases of plagiarism and/or cheating will be investigated and dealt with according to A08: Misconduct in Assessment Policy.
Submission Instructions
You are
• • • •
required to ensure you have carried out the following before submitting your assessment:
Signed assignment coversheet
All answers are written in your own words
Proofread and spell check all written assessment work carefully
DO NOT email your document to your tutor, it must be uploaded to the NZSE LMS
ICT638
Assessment 2- Portfolio v1.0 Page | 2
Evidence Submission
You are required to submit the below documents as the evidence of the work done towards the assessment
ICT638
Assessment 2- Portfolio v1.0 Page | 3
• •
Visual Studio projects containing all the relevant project files and folders Reports required for documentation (as .pdf or .doc/.docx file)
Assessment Scenario
You have been hired as a software developer for a start-up firm i-Buy Technologies. You are part of a team that has to create a shopping application on Android.
Users of the application can post items for sale and can buy items that are available for sale from other users. Clicking on each listing opens a new page with more details on the item and the pickup location on a map.
The application is to obtain the data from another web application that stores all the data.
Task 1 Due: 11/03/2020
Individual Task – (25 marks)
LO 1: Evaluate and implement features of client-server systems using Java Enterprise edition and/or .NET LO3: Demonstrate mastery of distributed algorithms
Write a research report to:
1. evaluate the applicability of a client-server system in the above scenario and describe 3 features that can be implemented in the above scenario and how they can be implemented; and
2. describe distributed algorithms, analyse why they are required in most applications these days and a minimum of 3 issues faced when implementing distributed algorithms.
Task 2
LO3: Demonstrate mastery of distributed algorithms
LO5: Apply standard design principles and algorithms in the construction of a distributed system
Due: 25/03/2020 Group Task – (25 marks)
Based on the distributed system theory, design a solution for the above scenario applying design principles in the construction of a distributed system using REST API. You must include a diagram that outlines the basics of the system and a service flow diagram from backend to frontend.
You must satisfy the below requirements:
1. apply and document a minimum of 2 design principles in constructing the distributed system;
2. include a block diagram that outlines the basics of the system and explain the different components; and
3. include a service flow diagram.
ICT638
Assessment 2- Portfolio v1.0 Page | 4
Task 3 Due: 08/04/2020
Group Task – (40 marks)
LO 1: Evaluate and implement features of client-server systems using Java Enterprise edition and/or .NET
LO2: Implement mobile systems utilizing messaging, Bluetooth, push registrations, and location-based services LO4: Research and apply contemporary remote technologies such as RMI, CORBA, .NET remoting, and web services LO5: Apply standard design principles and algorithms in the construction of a distributed system
Implement a mobile app that allows the customer to view all available items for sale and a web service that stores the data and transfers data as per request from the mobile application as specified in the above scenario.
Web Service Requirements
The app must include the features as listed below.
1. The API should follow REST API principles
2. The API should be able to add new customer and item data coming from the application and
send it to the application according to the specific requests.
Mobile Application Requirements
The app must include the features as listed below.
1. Register new user including user first name & last name, phone number, address, country, unique username and password. The user should be able to see if the username already exists when registering the user.
2. Allow customer to login
3. View the list of all items available for sale and click the item on the list for more details.
4. View the item description (that includes a title of the item listing, description of the item,
price of the item and seller details such as the name, address and contact phone number)
along with the marked pick up location of the item on map using tabbed navigation.
5. Display your location using a location service on the map with a different pointer with a
custom marker that says “I am here”
6. The description page needs three buttons, one that can share the item description using
Bluetooth, one that can buy the item and another that can send a text message to the seller with the default text saying “Hi, I am interested in the item
7. Menu bar that includes options to go to the profile page and post an item for sale.
8. View customer profile details and be able to edit it except the username, password and
email address.
9. Able to add a new item for sale and mark an item sold.
10. A push – notification on your phone when you open the app and an item you posted was
sold by someone.
11. All the data regarding customers and the items posted for sale are stored on the web
server and accessed as per requirements.
ICT638 Assessment 2- Portfolio v1.0 Page | 5
You will be assessed on the following for the applications:
1. The functionality as listed above has been implemented for the mobile app and the web API
2. The Coding structure follows recognised conventions
3. Quality:
– The solution maps to the requirements specified in above scenario.
– The technologies selected are correct according to the requirements of the case study
– The source code is optimised
You are required to demonstrate the working of your application to a panel of tutors and your classmates on Wednesday, 08/04/2020.
Task 4 Due: 09/04/2020 Individual Task – (5 marks)
You are required to write an individual report reflecting on how you think the group worked. You should also make sure that the below requirements are met:
1. the group GitHub project link is provided.
2. provide proof of collaboration throughout the tasks (See marking criteria below); and
3. provide a document of what task were done by which team member signed by all team
members.
APA Referencing, spelling and grammar (5 Marks)
There is a total of five (5) marks available for correct use of APA v6 referencing, correct spelling and grammar for any document that you submit.
ICT638 Assessment 2- Portfolio v1.0 Page | 6
ICT638 Mobile and App Development Assessment 2: Portfolio Marking Criteria
Task
Assessment Criteria
Evidence
TASK 1
a) Applicability of Client-Server System
(4 marks)
Student provided a very clear and thorough evaluation of applicability of Client-Server system in the given scenario
(3-4 marks)
Student has attempted to do an evaluation of applicability of Client-Server system in the given scenario
(1-2 marks)
Student has not attempted to evaluate the applicability of Client-Server system in the given scenario
(0 marks)
a) Feature 1 – C-S System
(2 marks)
Student has clearly identified and described the feature and how it can be implemented for the scenario
(2 marks)
Student has clearly identified the feature and has either described the feature or how it can be implemented for the scenario
(1 mark)
Student has not attempted to identify the feature or identified the feature with no description at all
(0 marks)
a) Feature 2 – C-S System
(2 marks)
Student has clearly identified and described the feature and how it can be implemented for the scenario
(2 marks)
Student has clearly identified the feature and has either described the feature or how it can be implemented for the scenario
(1 mark)
Student has not attempted to identify the feature or identified the feature with no description at all
(0 marks)
1
a) Feature 3 – C-S System
(2 marks)
Student has clearly identified and described the
feature and how it can be implemented for the scenario
(2 marks)
Student has clearly identified the feature and has
either described the feature or how it can be implemented for the scenario
(1 mark)
Student has not attempted to identify the feature
or identified the feature with no description at all
(0 marks)
b) Distributed System and issues in implementation
(5 marks)
Student described distributed algorithms well by introducing distributed algorithms and 3 or more issues faced when implementing distributed algorithms.
(5 marks)
Student described distributed algorithms by introducing distributed algorithms and 2 issues faced when implementing distributed algorithms.
(4 marks)
Student described distributed algorithms by briefly introducing distributed algorithms and one issue faced when implementing distributed algorithms.
(3 marks)
Student attempted to describe distributed algorithms by introducing distributed algorithms but haven’t included any issues faced during implementation.
(2 marks)
Poor attempt to describe distributed algorithms.
(1 mark)
No attempt to describe distributed algorithms.
(0 marks)
ICT638 Assessment 2- Portfolio v1.0 Page | 7
b) Analysis of requirement of DS
(10 marks)
Student provided a very clear and thorough analysis of the necessity of distributed algorithms in applications with clear and logical reasoning.
(9-10 marks)
Student provided analysis of the necessity of distributed algorithms in applications with good but limited reasoning.
(7-8 marks)
Student provided a good analysis of the necessity of distributed algorithms in applications with limited reasoning.
(5-6 marks)
Student attempted to analyse the necessity of distributed algorithms in applications with limited reasoning.
(3-4 marks)
Poor or no attempt to analyse the necessity of distributed algorithms in applications with no reasoning.
(1-2 mark)
No attempt to analyse the necessity of distributed algorithms in applications with no reasoning.
(0 marks)
TASK 2
2
API design principles
(5 marks)
Provides a very clear description of five principles used in designing the API.
(5 marks)
Provides a very clear description of four principles used in designing the API.
(4 marks)
Provides a very clear description of three principles used in designing the API.
(3 marks)
Provides a very clear description of two principles used in designing the API.
(2 marks)
Provides a very clear description of the one principle used in designing the API.
(1 mark)
Provides a very clear description of the none of different principles used in designing the API.
(0 marks)
b) Block Diagram
(10 marks)
Included a block diagram that outlines the basics of the system.
Has included a thorough explanation of the different components of the block diagram.
(9-10 marks)
Included a block diagram that outlines the basics of the system.
Has included an explanation of most of the components in the block diagram.
(7-8 marks)
Included a block diagram that outlines the basics of the system.
Has included an explanation of a few of the components in the block diagram.
(5-6 marks)
Included a block diagram that outlines the basics of the system but doesn’t contain any explanation of the components or contains a very poor explanation of the diagram.
(3-4 marks)
Have described a few components poorly without a diagram.
(1-2 marks)
Doesn’t include the block diagram and has no explanation.
(0 marks)
c) Service Flow Diagram
(10 marks)
Has included a neat and detailed service flow diagram that includes all the
Has included a neat and detailed service flow diagram that
Has included a service flow diagram that includes few the
Has included a basic service flow diagram that just provides
Has included an insufficient diagram.
Hasn’t included a service flow diagram.
ICT638 Assessment 2- Portfolio v1.0 Page | 8
services that are accessed/provided by the different components of the distributed system.
(9-10 marks)
includes most the services that are accessed/provided by the different components of the distributed system.
(7-8 marks)
services that are accessed/provided by the different components of the distributed system.
(5-6 marks)
representation for a few services in the system.
(3-4 marks)
(1-2 marks)
(0 marks)
TASK 3
Web API
(6 marks)
Students have applied and documented 2 REST API principles while constructing the Web API
(2 marks)
Students have applied and documented 1 REST API principle while constructing the Web API
(1 mark)
Students haven’t applied and documented REST API principles while constructing the Web API
(0 marks)
API can successfully add, edit, select and delete all data coming from clients using the appropriate URL.
(3 – 4 marks)
API can successfully add, edit, select and delete some data coming from clients using the appropriate URL.
(1 – 2 marks)
API failed to add, edit, select and delete data coming from clients using the appropriate URL.
(0 marks)
3
Mobile
Application –
Register new user and User login
(2 marks)
The feature has been fully implemented and
working successfully.
(2 marks)
The feature has been fully implemented but not
working successfully or has been partially done.
(1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile
Application –
List items for sale – Clickable (2 marks)
The feature has been fully implemented and
working successfully.
(2 marks)
The feature has been fully implemented but not
working successfully or has been partially done.
(1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile Application – Item description page with buy button and pickup location map using
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
ICT638 Assessment 2- Portfolio v1.0 Page | 9
tabbed navigation (2 marks)
Mobile Application – Marked user location and pick up location
(2 marks)
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile Application – Bluetooth button to share item details
(2 marks)
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile Application – Message button to text seller with default text
(2 marks)
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile
Application –
Menu bar – Profile page and post item for sale
(2 marks)
The feature has been fully implemented and
working successfully.
(2 marks)
The feature has been fully implemented but not
working successfully or has been partially done.
(1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile Application – View user profile and edit (2 marks)
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile Application – Add item for sale and mark sold
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
ICT638 Assessment 2- Portfolio v1.0 Page | 10
(2 marks)
Mobile Application – Push notification (2 marks)
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
Mobile Application – Data access using API
(2 marks)
The feature has been fully implemented and working successfully.
(2 marks)
The feature has been fully implemented but not working successfully or has been partially done. (1 mark)
The feature hasn’t been implemented
(0 marks)
Connection between API and App
(2 marks)
The connection between the API and App works seamlessly
(2 marks)
The code to connect has been implemented but not working or has been done partially
(1 mark)
The connection has not been implemented
(0 marks)
Coding Standards
(5 marks)
The code adheres to all standards. The code is exceptionally well organized and very easy to follow. Comments are complete and useful; variables’ purposes are clearly communicated by their names.
(5 marks)
There may be some minor failures to adhere to standards, for instance, indentation may be inconsistent, some lines may be too long, or a few variables may have unobvious names or be undocumented.
(4 marks)
There are some moderate violations of the standards. The code may be difficult to read in places, or some of the function comments may be sketchy. However, the code is still generally readable and there is enough commenting, good enough variable names, etc. that someone could still figure out what’s going on without too much difficulty.
(2-3 marks)
There are major problems with the program’s design or coding style that would interfere with its comprehension, reuse, or maintenance. File or function comments may be sketchy, variable descriptions or names may be unenlightening. The code may be poorly formatted.
(1 mark)
The code is poorly designed and organized, with few or no useful comments. It is very difficult to read or understand.
(0 marks)
Quality Standards
(5 marks)
Quality standards are excellent as per the below criteria.
• The solution maps
to the requirements
Quality standards met by meeting at least 2 criteria below fully and one partially.
Quality standards partially met by meeting at least 2 criteria below fully.
Quality standards partially met by meeting 1 criteria below fully and at least two partially.
• The solution maps to
the requirements
Quality standards are not satisfactory as the student only meets one requirement fully.
• The solution maps to the requirements
Quality standards are not satisfactory as the student meets no requirements fully.
ICT638 Assessment 2- Portfolio v1.0 Page | 11
specified in the case study that is subject of Task 2.
• The technologies selected are correct according to the requirements of the case study
• The source code is optimized
(5 marks)
• The solution maps to the requirements specified in the case study that is subject of Task 2.
• The technologies selected are correct according to the requirements of the case study
• The source code is optimized
(4 marks)
• The solution maps to the requirements specified in the case study that is subject of Task 2.
• The technologies selected are correct according to the requirements of the case study
• The source code is optimized
(3 marks)
specified in the case study that is subject of Task 2.
• The technologies selected are correct according to the requirements of the case study
• The source code is optimized
(2 marks)
specified in the case study that is subject of Task 2.
• The technologies selected are correct according to the requirements of the case study
• The source code is optimized
(1 mark)
• The solution maps to the requirements specified in the case study that is subject of Task 2.
• The technologies selected are correct according to the requirements of the case study
• The source code is optimized
(0 marks)
TASK 4
4
Collaboration (3 marks)
Students have used git effectively for version control and collaboration as per below criteria.
• There are evidences of branches for all members of the group.
• 3 or more commits seen per group member.
• Branches merged with comments on functionality integrated using the branch.
(3 marks)
Students have used git for version control and collaboration but not extensively as per below criteria.
• There are evidences of branches for all
members of the group.
• One/two commits seen per group member.
• Branches merged with comments on
functionality integrated using the branch.
(1 – 2 marks)
Students have not used git effectively for version control and collaboration as per below criteria.
• Only one member has added code.
(0 marks)
Reflective Report
(2 marks)
The student provides a clear reflection on the group work with details such as group dynamics, how other members of the team performed and how you were
The student provides a reflection on the group work but lacks some details.
The student has not provided a reflection report.
ICT638 Assessment 2- Portfolio v1.0 Page | 12
involved in the group. Also mentions what could be better next time.
(2 marks)
(1 mark)
(0 marks)
Structure and organisation of ideas, English writing, and APA Referencing
(5 marks)
APA 6th edition referencing is properly applied to both in-text citation and reference list.
(2.5 marks)
APA 6th edition referencing is applied to both in- text citation and reference list but with minor errors.
(2 marks)
APA 6th edition referencing is applied to both in-text citation and reference list but with major errors.
(1.5 marks)
APA 6th edition referencing is not applied properly to either in-text citation or reference list.
(1 mark)
APA 6th edition referencing is not applied or very poorly applied to both in-text citation and reference list.
(0.5 marks)
There are no more than three spelling, grammar, or syntax errors.
(2.5 marks)
There are no more than five spelling, grammar, or syntax errors.
(2 marks)
There are more than ten spelling, grammar, or syntax errors.
(1.5 marks)
There are numerous of spelling, grammar, or syntax errors.
(1 mark)
It is full of spelling, grammar, or syntax errors throughout the report and makes it difficult to read.
(0.5 marks)
ICT638 Assessment 2- Portfolio v1.0 Page | 13
School of Information Technology
New Zealand Diploma in Information Technology Software Development (Level 6)
Cover Sheet and Student Declaration
This sheet must be signed by the student and attached to the submitted assessment.
Course Title:
Mobile and App Development
Course code:
ICT638
Student Name:
Student ID:
Assessment No & Type:
2 – Portfolio Theory/Practical
Cohort:
Due Date:
Date Submitted:
Tutor’s Name:
Assessment Weighting
80%
Total Marks
100
Student Declaration:
I declare that:
• I have read the New Zealand School of Education Ltd policies and regulations on assessments and
understand what plagiarism is.
• I am aware of the penalties for cheating and plagiarism as laid down by the New Zealand School of
Education Ltd.
• This is an original assessment and is entirely my own work.
• Where I have quoted or made use of the ideas of other writers, I have acknowledged the source.
• This assessment has been prepared exclusively for this course and has not been or will not be
submitted as assessed work in any other course.
• It has been explained to me that this assessment may be used by NZSE Ltd, for internal and/or
external moderation.
• If I am late in handing in this assessment without prior approval (see student regulations in
handbook), marks will be deducted, to a maximum of 50%.
Student signature: Date:
Tutor only to complete
Assessment result:
Mark /100
Grade
ICT638 Assessment 2- Portfolio v1.0 Page | 14