Skip to content

FIT5046 assignment 2023 s1

Assignment 1: Research Paper Analysis Presentation (Weight: 15%) - Due 27/03/2023 4:30pm#

requirement#

Assignment 1 - Research Paper Presentation (15%)
Presentations in your allocated lab in Week 5 (on-campus students must present in person and online students will present online via Zoom)
This is a group assignment (group of 2), where each group member will present their own slides (5 minutes each).
Your group member should be from the same lab.
Attendance in Week 5 lab is compulsory.
This assignment uses questions at the end of the presentation as the method of validation.
Monash University - 登录

Building a Crowdsensing Platform Based on Spatio-Temporal Fencing | SpringerLink


Android Project Proposal 20% Due date Friday, 21 April 2023, 11:55 PM#

Android Project Proposal 20%

Due date Friday, 21 April 2023, 11:55 PM

https://lms.monash.edu/course/view.php?id=149600&section=4

  1. Generative AI tools are not restricted for this assessment task. ("In this assessment, you can use generative artificial intelligence (AI) to assist you in any way. Any use of generative AI must be appropriately acknowledged")

This is a group assignment (groups of 3-4).

Only one of the group members need to submit the proposal AND the task allocation form to Moodle. Please make sure you use the template (the guideline) provided in the assignment specification for this proposal.

This assignment requires submitting:

  1. A project proposal using the template provided in Appendix A The word limit of the proposal is 1500 words.

  2. A task allocation (Appendix B).

you will propose a mobile distributed application with an Android app as its front-end. You will interact with online public web APIs like a weather API or YouTube API, and cloud-based services such as Google Firebase for storage (as the backend). In Assignment 3, you will build this app in Android according to your proposal.

Section 1 - Key steps

(following the template in Appendix A)

Step 1. As a group, you will first decide on the application domain (health, fitness, entertainment,education, smart energy, smart parking or smart gardening to name a few) and its use and purpose. You need to also describe the user group, and discuss the scope and limitations

Scope,(What is being delivered)1. 解决用户什么样的痛点 == 为什么要开发这个 2. 开发时间和目标level

Limitation - (What is not delivered)要实现上面的goal有什么限制或者产品本身的局限性

  1. Free account in Firebase,so each user can store limit data

  2. 因为数据存储在云服务端,为来用户隐私考虑,会定期删除数据,只保留XX月数据

Step 2. You need to conduct a brief market and competitor analysis of similar apps in the market (Google Play Store or App Store), find and review two apps of the same type and understand their key functionalities, strengths, and weaknesses. You should provide FIVE screenshots of the main screens of each of these two apps, and describe any features/functionalities that differentiate your proposed app from existing apps. It is fine for your app to serve the same purpose as existing apps but it must be different from existing offerings in some way

Step 3. You need to draw a diagram that shows the main components of the proposed mobile distributed application (explained in the template with an example). Provide a list the server side and client-side components, and how they work together

step 4. You need to provide an overview of your UI design for the main screens (Section 2 Part 1) and the navigation hierarchy of your app using prototyping tools with a FREE trial (e.g. Lucid Charts, InVision, FIGMA, Wondershare Mockitt (previously known as Mockingbots)). This overview is explained in the template with an example

Step 5. You will assign the tasks among the group members and complete the Task Allocation form (Appendix B).

Step 6. Your proposed Android app must include the key screens and components defined in Section 2 as the minimum requirements.

Step 7. You need to consider the requirements for each achievement level described in Section 3

Section 2 – Key requirements

(PASS level)

Your proposed app must include the following screens and Android components as the minimum requirements

section 3 – Achievement Levels

Credit leve l To achieve a Credit level, the mobile app must successfully implement TWO additional features:

Firebase Authentication for Login and Signup

Android RecyclerView with CardView that displays data from the Room database (using LiveData)

Distinction level To achieve a Distinction level, the mobile app must implement TWO additional features.

Firebase Database to store the user's profile/data

WorkManager to run a job in the background continuously e.g. every night to store the local

data in the Firebase database

(App Architecture: Data Layer - Schedule Task with WorkManager - Android Developers)

High Distinction level To achieve a High Distinction level, the mobile app must implement ONLY ONE of the following additional, advanced features.

  • Integrating the android app with Facebook SDK and sending a message/data from the app

to your Facebook account

  • Incorporating Google calendar and using the user's calendar events to perform context-

aware and personalised tasks

  • Using sensors in the app that is meaningful and related to your app but it must be implemented and demonstrated with the emulator

Sensors | Android DevelopersSensors Overview | Android Developers

  • Other advanced features (you MUST discuss it with your tutor and get their approval)

The project proposal#

1 Introduction#

1.1. An Overview of the proposed android app#

//here briefly discuss the application domain and main use/purpose

1.2. User group#

1.3. Key functionalities#

1.4. Scope and limitations#

2. The market and competitor analysis#

a brief description of two (the most popular and well-known) apps and how your app will be different and novel compared to these two apps, include a few screenshots of these two apps

3. The system architecture#

In this section, you will provide a system architecture diagram of your proposed app that shows the front-side and server-side components, plus all the key Android components mentioned in Section 2 Part 2 (refer to the example below). You also need to provide a short paragraph about these components and how they work together.

This diagram is only an example. You must show the name of APIs you will use, the server-side database (e.g. Firebase). You also must show what Android components you will include in another box. If you are using any other components, show it in the diagram

4. The UI Design and Screen Mockups#

In this section, you need to provide screen mockups created by any prototyping tool and the navigation flow between them (using arrows). You need to provide a meaningful title for each screen. The figure below is just a guide Design navigation graphs | Android Developers

5. Advanced features#

//additional components based on Section 3 and how you will achieve them (any SKD details, or online sources and tutorials)

6. References#

(the publications, and website links based on the APA style)

Appendix B#

Task Allocation Form

Please provide the name of tasks and the name of the group member(s) who did the task in the table below

Sure, I understand. Let's analyze the proposed healthy Android app.
当然,我明白。让我们分析一下建议的健康 Android 应用程序。

The main purpose of this app is to provide users with tools and resources for tracking their nutrition intake and providing exercise and dietary advice through chat services integrated with the chatbot API. Users can also share their exercise and diet status on Facebook and engage with other users through forming a group and having friendly competitions.
该应用程序的主要目的是为用户提供工具和资源,用于跟踪他们的营养摄入量,并通过与聊天机器人 API 集成的聊天服务提供锻炼和饮食建议。用户还可以在 Facebook 上分享他们的运动和饮食状况,并通过组队和友好竞赛的方式与其他用户互动。

The target user group for this app would be individuals who are interested in maintaining or improving their health and wellness through a balanced diet and exercise routine.
该应用程序的目标用户群是有兴趣通过均衡饮食和日常锻炼来维持或改善健康状况的个人。

Key functionalities of this app could include:
此应用程序的主要功能可能包括:

  1. Sign-up/Registration: This feature would allow users to create an account on the app.
    注册/注册:此功能将允许用户在应用程序上创建一个帐户。

  2. Dashboard: The app should have a dashboard where users can view their exercise and dietary habits in a concise manner.
    仪表板:该应用程序应该有一个仪表板,用户可以在其中以简洁的方式查看他们的锻炼和饮食习惯。

  3. Data Entry Screen: A feature that allows users to input information about their dietary intake and exercise routine.
    数据输入屏幕:该功能允许用户输入有关他们的饮食摄入量和日常锻炼的信息。

  4. Map Screen: Using a free map API to assist users to locate nearby healthy food restaurants or gyms would be a useful feature.
    地图屏幕:使用免费的地图 API 来帮助用户定位附近的健康食品餐厅或健身房将是一个有用的功能。

  5. Reports Screen - Graphs: This feature should display and summarize data from the user's entries, showing their improvement over time. This can include a bar or pie chart showing dietary and exercise intake in comparison to goals set by the user.
    报告屏幕 - 图表:此功能应显示和汇总用户输入的数据,显示他们随时间的改进。这可以包括一个条形图或饼图,显示与用户设定的目标相比的饮食和运动摄入量。

  6. Chatbot API: The app should provide users with dietary and exercise advice/options through a chatbot API.
    聊天机器人 API:该应用程序应通过聊天机器人 API 为用户提供饮食和锻炼建议/选项。

  7. Social Media Sharing: The app should allow users to share their exercise and healthy diet status with the world via Facebook.
    社交媒体分享:该应用程序应允许用户通过 Facebook 与全世界分享他们的锻炼和健康饮食状况。

  8. Group creation/competition: A feature that enables users to create groups and compete healthily against each other for rewards.
    组创建/竞争:使用户能够创建组并相互健康地竞争以获得奖励的功能。

The limitations could include the accuracy of the provided nutrition and exercise information from public web APIs. Additionally, some advanced features like integration with wearable health devices might require additional resources.
这些限制可能包括从公共网络 API 提供的营养和锻炼信息的准确性。此外,一些高级功能(如与可穿戴健康设备的集成)可能需要额外的资源。

In terms of the Android key components, Fragments can be used to construct various screens for smooth navigation. Navigation Drawer can be added to enhance the user experience. Room and LiveData can be incorporated to store user data locally. Retrofit can be used to interact with public web APIs. FirebaseAuth and FireStore can authenticate and store user data, with the chatbot API integrated through Dialogflow.
在Android关键组件方面,可以使用Fragments构建各种屏幕,实现流畅的导航。可以添加导航抽屉以增强用户体验。可以合并 Room 和 LiveData 以在本地存储用户数据。 Retrofit 可用于与公共 Web API 交互。 FirebaseAuth 和 FireStore 可以通过 Dialogflow 集成聊天机器人 API 来验证和存储用户数据。

In conclusion, your proposed healthy Android app can be a fresh and unique alternative to other apps in the market that focus solely on one aspect of health or wellness. By providing users with both exercise and dietary tracking features and a chatbot API, the app can provide a comprehensive approach to maintaining and improving overall health and wellness.
总之,您建议的健康 Android 应用程序可以成为市场上其他仅关注健康或保健某一方面的应用程序的新鲜而独特的替代品。通过为用户提供运动和饮食跟踪功能以及聊天机器人 API,该应用程序可以提供一种全面的方法来维持和改善整体健康状况