Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Target releaseBeta 1 (MVP 0.1)
Epic
Document status
DRAFT
Document owner
Designer
Developers
QA

Goals

  • Provide a first release, the first step in providing a minimal viable product (MVP).
  • Provide a stable starting point to reflect and plan future incremental development upon.
  • Provide a first attempt at delivering a system that can replace the current intranet
    • When this release is done, further requirements to replace the current intranet (ie. MVP requirements) should be identified.
  • Have some working, show-able results!

Background and strategic fit

This is the first stepping stone in a more long term development process of providing AEGEE (and other NGO's) with a sustainable and usable Online Membersship System. See the project plan for more information.

Assumptions

  • The term 'minimum' is based on the requirements of the organization AEGEE-Europe.
  • Every member of the organization has a linked (possibly anonymous) object in the system.
    • For each member there exists at least 1 user that can relate the real world member (person) to the (anonymous) member object in the system.

Requirements

#TitleUser StoryImportanceNotes
1MembersThe system should contain a set of membersMust have


2BodiesThe system should contain a set of bodies Must have  
3Join bodyA member can join a bodyMust have
  • A member should be able to join multiple bodies
4Body boardA body has a board, a member can become a board of a bodyMust have
  • Board meaning 'admin' of that body, having special rights
5View membersA user can see details of a memberMust have
  • Roles should be taken into account
6Edit bodyA board of a body should be able to edit the details of a bodyMust have
7Create bodyThe Comité Directeur should be able to create a bodyMust have
8Register memberA guest should be able to register as a memberMust have
  • Should a guest be able to join without any bodies? Or apply for body directly?
9Accept memberA ??? should be able to accept new membership applicationsMedium
  • Who should check this?
  • System membership, not body membership
  • Questionable if this is necessary
10View bodyA user should be able to view information of a bodyMust have
  • Body information, as well as members within the body
  • Roles should be taken into account
11Restrict AccessA user should be restricted access to actions depending on their rolesMust have
  • For example, a board member should only have special rights over the members of the body the member is board of, not any other members.
12Export informationA user should be able to export information of the systemLow
  • Members list
13Account managementA user should be able to manage his account, ie change/reset/request login credentialsMust have
  • Updating profile information goes in the member attached to the user (if the user is a member(person))
14Data migrationThe system should be able to make use of the old data from the previous systemLow
  • Difference can be made between migrating and merely making use of: the second could be sort of archiving the older data, providing limited access to it
15Scale-abilityThe system should be able to scale up to 15.000+ membersMust have
  • Further scaleability requirements should be set (concurrent users? speed?)
16Live deploymentOnce running, the system should be able to upgrade with relative ease and minimum downtimeLow
  • For now this is a low priority
17SecurityThe system should handle sensitive information with care and anticipate upon users with malicious intentsMedium
  • The anticipation part can be further tackled in future releases
18MaintainabilityA developer should be able to maintain the system with relative ease, meaning documentation of design and processes should be includedMust have
19AvailabilityThe system's uptime should be as high as possibleMedium
  • What would be acceptable uptime? 99%?
20DependenceTODO?
  • What third-party software/libraries/frameworks/services are allowed?
  • Crucial elements should be 'independent'
    • Independent probably means open source
21PrivacyThe system should respect the privacy rules as specified in the CIA, the countries law and the European lawMedium
  • Should probably contact JC / MedCom about this
  • Maybe just Belgium's law?
22GuestsA non-AEGEE member should be able to access (parts of) the systemMust have
  • What should such a guest see?
23AccessabilityThe system should be accessable for all the members of AEGEELow
  • Low priority for now
  • Prioritize desktop mainly
    • Microservice dependent.
24SearchThe system should allow searching for entities on certain fieldsMust have
  • Entities: Members, Bodies
  • Fields: Name, email, all?
25FilterThe system should be able to filter a set of entities based on certain fieldsHigh
  • When viewing lists of entities, but also internally for future development

Questions

Below is a list of questions to be addressed as a result of this requirements document:

QuestionOutcome
How is a cross-cutting concern such as the access restriction, which is present in nearly every requirement, done?A general access restriction requirements list can be found here. TODO
Are all the members of AEGEE-Europe in the system, or only members that registered themselves
  • Probably require Name of every member (maybe even hashed)
  • Enable voluntary signup for more features + editing your profile.

Not Doing

The following features are not included in this release, they might be included in future releases.

  • Events and financial management
  • Integration with other services (Office 365, Statutory events, online voting, SU website etc.)
  • No labels