Main Page

Revision as of 18:30, 25 October 2017 by (talk | contribs)

Jump to: navigation, search

SE-AMA - 2017

This is the wiki for our project, the Sharing Editor, for the course INF5750 - Open Source Development.

Name SE-AMA explained:

  • SE - Sharing Editor
  • AMA - Alexander, Magnus, Andrei

Group members

  • Alexander Wandrup (alexanow)
  • Andrei Eismont (andreiei)
  • Magnus Biong Nordin (magnubn)

Project Description Requirements

For our assignment we chose to work on the Sharing Editor.

The assignment states that we are to create an application for DHIS that lets the user multi-select any number of metadata objects within a selected category, and then edit the sharing configuration of that metadata all at once. The primary goal of this app as we see it is to provide the user with an intuitive and quick way to edit sharing configuration in bulk. To achieve this, we will apply many of the same principles/designs on which the DHIS app Maintenance was built on. More on that later.

The main menu of the application will consist of a tree-like view of all (or what we can manage) objects that have sharing configurations. Sub-categories are nested. For example, if you chose data element, the tree will expand and display three options: data element, data element group, and data element group set. Chose any of the three, and begin your editing.

For search we'll be using a template not dissimilar to the one currently used by Maintenance when creating a new data element, or a new set etc. There'll be two selection windows: one will, for example, display every single data element in a scrollable view, and the other window displays the chosen elements. In both windows the user has the option to multi-select and add, multi-select and remove, and select- and remove all.

Anything the user types will filter the output in the windows to display valid search results. Certain objects such as data elements have specific properties that can be selected to narrow down the search field, such as selecting the domain type or value type. This feature will be implemented for objects that have additional properties.

From the nested-tree menu the user will be able to select data elements, groups, data sets, programmers, dashboards and much else. A minimal requirement is to be be able to work with only a select few of the sharable objects. Ideally, there should be support for all. This is a specification we will strive to achieve but, as of right now, we intend to take it one step at a time and just make sure we don't accidentally fall of a cliff.

- A description of the product you are developing, including features/requirements being implemented and mockups/screenshots. Also specify which assignment you have chosen.


- Describe the technical architecture of the product, including what frameworks you will be using (e.g. react, angular, others) and /why/ you have chosen these.


- Licensing. Discuss the implications (if any) on the product you are development from the software licenses of the frameworks and libraries you are using.

Division of labour


1. november

  • Wiki up and running
  • Chosen assignment
  • Overview of the product to be developed
  • Proposed architecture of the app
  • Broad timeline for development (in form of milestones)
  • Link to project repository

8. november

  • The app's interface up and running

15. november'"

  • TODO

22. november

  • TODO

29. november

  • Completed and delivered


... Will come, following the 1.nov milestone

Application Flow/Screenshots

Suggested Improvements

Documented Learning During Project

Link to Repository


The repository is private.