Product Vision Statement » Historie » Verze 22
Zuzana Káčereková, 2021-04-04 21:55
1 | 1 | Roman Kalivoda | h1. Product Vision Statement (WIP) |
---|---|---|---|
2 | |||
3 | h2. Project Goals |
||
4 | |||
5 | 11 | Zuzana Káčereková | Creating an application that will based on weather input, predict the attendance in class. User will be able to input their own weather information or choose a prediction based on current weather information or prediction for future days. |
6 | 5 | Roman Kalivoda | |
7 | 10 | Alex Konig | h3. Customers and benefits |
8 | |||
9 | 11 | Zuzana Káčereková | Can be useful for teachers when planning for activities that require higher attendance. For example, if the teacher wants to give their students a pop quiz about their current knowledge from lectures, to get a better idea of the class's general understanding it would be good to have as many answers as possible. This app would enable to predict the attendance for a class, and therefore to decide if it is worth it to plan a 30min window in the lecture for a quiz or to rather plan something else. |
10 | 6 | Alex Konig | |
11 | 11 | Zuzana Káčereková | It could also be useful for students to decide how early to get to class to get the best seats. Many classrooms only have a limited number of plugs, and since a lot of students write notes on their laptops, the seats near these plugs are highly valuable. This app would enable the students to look how at how populated the building will be and decide if coming early to the lecture will be necessary to get those good seats. |
12 | 6 | Alex Konig | |
13 | 12 | Zuzana Káčereková | h3. User input |
14 | 1 | Roman Kalivoda | |
15 | 12 | Zuzana Káčereková | - Date (or system date) |
16 | - Weather (or official weather server prediction) |
||
17 | - Building or classroom number (however, classroom number retrieves building data due to spacial granularity) |
||
18 | - Time? (TBD based on the achieved model accuracy) |
||
19 | 6 | Alex Konig | |
20 | 13 | Zuzana Káčereková | h3. Output |
21 | 8 | Alex Konig | |
22 | 13 | Zuzana Káčereková | - Rush level (very calm, calm, average, busy, very busy) |
23 | - Based on achieved model quality, visualization may be extended to a "heatmap" showing rush across the campus (TBD later in the process) |
||
24 | 10 | Alex Konig | |
25 | 14 | Zuzana Káčereková | h3. Key factors to judge application quality |
26 | 1 | Roman Kalivoda | |
27 | 14 | Zuzana Káčereková | * Application response time |
28 | * UI design appeal to the customer |
||
29 | * Maintainability (as a measure of effort required to update the model with new data) |
||
30 | 10 | Alex Konig | |
31 | 14 | Zuzana Káčereková | Prediction quality is not guaranteed at this stage as data quality is out of our control and hugely impacts the output. Quality should also improve over time as more data is collected by UWB. |
32 | 10 | Alex Konig | |
33 | 19 | Zuzana Káčereková | h3. Crucial product factors |
34 | 10 | Alex Konig | |
35 | 17 | Zuzana Káčereková | Server |
36 | * Capable of being updated at admin request |
||
37 | * Capable of extending the model/updating it with new data/changing the model entirely (software designed to support smooth model transition) |
||
38 | |||
39 | Client |
||
40 | * Able to access prediction using the earlier specified input parameters |
||
41 | * Able to specify input parameters |
||
42 | * Able to easily browse prediction across a greater range of time |
||
43 | * Has a web interface |
||
44 | * Has a mobile interface |
||
45 | 6 | Alex Konig | |
46 | 5 | Roman Kalivoda | h3. System parts & technologies |
47 | |||
48 | h4. Server (backend) part |
||
49 | |||
50 | There will be a server application which: |
||
51 | 16 | Zuzana Káčereková | * will retrain prediction model when new data is available (or when a new model is defined by an administrator/maintainer), |
52 | 5 | Roman Kalivoda | * will run predictions based on client app requests and send the response once it is ready. |
53 | |||
54 | We decided that the backend will be developed in C# and .NET platform. |
||
55 | |||
56 | h4. Web frontend app |
||
57 | |||
58 | There will be a WebGL application: |
||
59 | * user will be able to specify arbitrary weather conditions (e.g. temperature, precipitation) or use an automatic weather forecast, |
||
60 | * user will be able to specify an arbitrary classroom at UWB, |
||
61 | * these input data will be made into a web request and sent to the server, |
||
62 | * The prediction result will be shown to the user when the response is received. |
||
63 | |||
64 | The app will be written in C# and Unity framework. |
||
65 | |||
66 | h4. Android app |
||
67 | |||
68 | 18 | Zuzana Káčereková | There will be an android app with functionality similar to the web frontend. The app will also be developed with C# and Unity. |
69 | 1 | Roman Kalivoda | |
70 | 3 | Eliška Mourycová | h3. Happy Day use-case |
71 | |||
72 | The user will specify a date and classroom (e.g. UC-336) for which they wish to get the prediction of attendance. It will be possible to choose to have the weather forecast data for the given day downloaded automatically or input manually. The output of the app will be a text field saying how high the attendance the model predicts (e.g. very high). |
||
73 | |||
74 | 1 | Roman Kalivoda | h2. Project Plan |
75 | |||
76 | |||
77 | h2. Stakeholders |
||
78 | |||
79 | * Development Team |
||
80 | * Project Sponsor |
||
81 | * Project Mentor |
||
82 | * Users: lecturers |
||
83 | * Users: students |
||
84 | |||
85 | h2. Risks |
||
86 | |||
87 | 22 | Zuzana Káčereková | h3. Available data is too crude |
88 | 4 | Roman Kalivoda | |
89 | 22 | Zuzana Káčereková | Chances are that the data are not specific enough to make proper predictions for some buildings, much less single classrooms. Hopefully, the model could be improved gradually when there is more data available. In the meantime, the granularity will be selected based on the model quality we achieve. |
90 | 4 | Roman Kalivoda | |
91 | 21 | Zuzana Káčereková | h3. Our effort estimation may be grossly underestimated |
92 | 4 | Roman Kalivoda | |
93 | We should define/negotiate a minimum viable product and prioritize individual features. |
||
94 | |||
95 | h3. We proposed an unsuitable technological stack |
||
96 | |||
97 | 21 | Zuzana Káčereková | Due to our unfamiliarity with web programming we've chosen to use technologies closer to our previous experience. These limit us in that the web application will not be easily compatible with mobile platforms. However, in turn, we can easily implement more complex UI and visualizations, and with some extra effort produce both a web and a mobile application using the same components. |