Difference between revisions of "Deliciouscake"
From mn/ifi/inf5750
(Tag: Visual edit) |
(→How you are dividing tasks within the group) (Tag: Visual edit) |
||
Line 2: | Line 2: | ||
[http://www.uio.no/studier/emner/matnat/ifi/INF5750/h15/group-projects/lmis-light/index.html Logistics Management Information System (LMIS) Light ] | [http://www.uio.no/studier/emner/matnat/ifi/INF5750/h15/group-projects/lmis-light/index.html Logistics Management Information System (LMIS) Light ] | ||
− | The goal for the project is to replace the current paper based system for ordering commodities with a web-based app connected to DHIS2. This will enable users to submit orders to higher managements more efficiently than when using today's system. On one side the app is a simple web-based form where the health workers can fill in orders. On the other side the app is notification system, where the management can be notified of order requests. | + | The goal for the project is to replace the current paper based system for ordering commodities with a web-based app connected to DHIS2. This will enable users to submit orders to higher managements more efficiently than when using today's system. On one side the app is a simple web-based form where the health workers can fill in orders. On the other side the app is a notification system, where the management can be notified of order requests. |
= List of group members = | = List of group members = | ||
Line 70: | Line 70: | ||
We have: | We have: | ||
* Gained a better understanding of DHIS2, and how to use the DHIS2 API. | * Gained a better understanding of DHIS2, and how to use the DHIS2 API. | ||
− | * Learned how to develop apps for DHIS2. | + | * Learned how to develop apps for DHIS2. (integrating our own app with open source app) |
* Learned to use Git as version control system for the development, enabling synchronization and coordination of source code. | * Learned to use Git as version control system for the development, enabling synchronization and coordination of source code. | ||
* Gained experience in using HTML5, JavaScript, AJAX, JSON, jQuery and CSS3 to make web apps. | * Gained experience in using HTML5, JavaScript, AJAX, JSON, jQuery and CSS3 to make web apps. | ||
− | = How | + | = How we have divided tasks within the group = |
''Planning phase'' | ''Planning phase'' | ||
* Figure out how to implement the app. All questions are addressed by all members of the team. | * Figure out how to implement the app. All questions are addressed by all members of the team. | ||
Line 89: | Line 89: | ||
= Screenshots and screen flows = | = Screenshots and screen flows = | ||
− | [[File:deliciousCake1.png|400x400px|thumb|First version of the commodity form|none]] | + | [[File:deliciousCake1.png|400x400px|thumb|First version of the commodity form|none]][[File:deliciousCake2.png|526x526px|thumb|Second version of the commodity form|none]] |
+ | [[File:lmis3.png|thumb|Third version of the commodity form|none|404x404px]] | ||
− | |||
− | |||
− | |||
+ | = Suggested improvements to API = | ||
= Link to repository = | = Link to repository = | ||
[https://jorgeval@bitbucket.org/deliciouscake2/deliciouscake.git jorgeval@bitbucket.org/deliciouscake2/deliciouscake.git] | [https://jorgeval@bitbucket.org/deliciouscake2/deliciouscake.git jorgeval@bitbucket.org/deliciouscake2/deliciouscake.git] |
Revision as of 13:15, 9 December 2015
Contents
Project details
Logistics Management Information System (LMIS) Light
The goal for the project is to replace the current paper based system for ordering commodities with a web-based app connected to DHIS2. This will enable users to submit orders to higher managements more efficiently than when using today's system. On one side the app is a simple web-based form where the health workers can fill in orders. On the other side the app is a notification system, where the management can be notified of order requests.
List of group members
Name | |
---|---|
Simen Røste Odden | simenrod@ifi.uio.no |
Thomas Schwitalla | thoschwi@ifi.uio.no |
Jørgen Valen | jorgeval@ifi.uio.no |
Summary of requirements
Functional requirements:
- The app's main page must contain a form for the submission of commodity orders, and a dropdown menu from which the user may select a receiving user.
- The input fields of the form must accept quantities given by positive integers of the requested commodities.
- The form must have 3, 5 or 10 input fields for commodities depending on type of user.
- Subrequirements are still work in progress.
- There must be a submit button. Upon click, the app must validate the format of the input and the amounts of the ordered commodities before generating and sending a message through the DHIS2 Messaging System.
- The input of each field must be restricted to positive integers no greater than the actual amount that is in store for each given commodity.
- Upon the submission of an order, if any fields do not contain a valid entry, an error message must display the available amounts along with instructions for the correct format next to the invalidated field(s). No message will be sent in such a case.
- The input of each field must be restricted to positive integers no greater than the actual amount that is in store for each given commodity.
- The dropdown menu must contain only users from the DHIS2 users resource that are authorized and capable of processing commodity orders.
- A confirmation message must be displayed upon submission of order.
- The app must store previously submitted orders in the user's outbox in the messaging system.
- The recipient must get a message describing the submitted order.
- The message must identify the sending user's name.
- The message must display the submission date
- The message must display the commodities and their respective quantities
Non-functional requirements
- The messages generated from the app's form will be in the format JSON.
- User experience goals are work in progress.
- Performance requirements are work in progress.
- Security requirements are work in progress.
List of technologies and frameworks we (likely) will use:
- JavaScript (jQuery)
- JSON
- CSS3
- HTML5
- AJAX
- DHIS2 web API
Time schedule
Milestone 1: November 8th
- Document features and architecture on Wiki
- Show understanding of DHIS2 web apps
Milestone 2: November 22th
- First bare-bone version - static HTML
- Uploadable as DHIS2 web app
Milestone 3: December 4th
- Finished, if applicable also with the mobile app
Milestone 4: 11th December
- Final delivery
Documented learning during project
We have:
- Gained a better understanding of DHIS2, and how to use the DHIS2 API.
- Learned how to develop apps for DHIS2. (integrating our own app with open source app)
- Learned to use Git as version control system for the development, enabling synchronization and coordination of source code.
- Gained experience in using HTML5, JavaScript, AJAX, JSON, jQuery and CSS3 to make web apps.
How we have divided tasks within the group
Planning phase
- Figure out how to implement the app. All questions are addressed by all members of the team.
- How do we implement the submission form?
- How do we validate the input fields?
- How do we generate a JSON or XML from the form?
- How do we generate and send a message based on contents of the form?
- How do we implement a storage for commodities, or, what database to pull from?
- How do we identify the type of user and change the content on the main page based on this?
- What commodities exist and which should be accessible to each type of user?
- What types of users exist?
- How do we store sent messages in the user's outbox?
- How do we implement the submission form?
Screenshots and screen flows