Difference between revisions of "Deliciouscake"
From mn/ifi/inf5750
(→Summary of requirements) (Tag: Visual edit) |
(Tag: Visual edit) |
||
Line 21: | Line 21: | ||
= Summary of requirements = | = Summary of requirements = | ||
− | ''Functional 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 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 input fields of the form must accept quantities given by positive integers of the requested commodities. |
Revision as of 13:24, 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 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