CNM Wikiware
CNM Wikiware (hereinafter, the App) is the CNM knowledge app that empowers CNM Wiki. The App is both
- Knowledge management software; and
- A service of the CNM Cloud at friendsofcnm.org/wiki. The App is one of CNM apps.
Architecture
The App is a MediaWiki instance that is run on the CNM Cloud Platform.
Business functionality
User roles
- Opplet handles user management for the App (including "create account" and "change other users' rights" functions). Thus, the user roles of the App users are those Opplet roles that are specifically based on rights of groups granted by MediaWiki. The software-defined rights can be found at MediaWiki's list of groups.
User stories
- As a NetAnyone, I need to be able to:
- Read and/or view contents of any wikipage at clearly understood URLs such as starting with https://wiki.ksacerts.com/
- See the logo at the right upper corner and the name of the resource such as CNM Wiki;
- Feel safe while seeing that the App's resource is verified by the SSL certificate;
- As a Russian-speaking NetAnyone, I need to be able to locate wikipages in Russian, possibly, at URLs starting with https://wiki.ksacerts.com/ru
- As a NetConsumer, I need to be able to add selected wikipages to my watchlist and receive notifications when the watched wikipages are updated to my email.
- As a CertCandidate, I need to be able to:
- As a CertFellow, CertPartner, and/or CertVendor, I need to:
- Have default rights of a sysop established at MediaWiki;
- Be able to upload files up to 20Mb.
- As a OppletBureaucrat, I need to:
- Have default rights of a bureaucrat established at MediaWiki;
- As a CloudAdmin, I need to:
- Make sure that CNM Wiki at least gets basic cyber-security features implemented; new threats are monitored and, based on them, the security policy should be defined and, further, re-defined;
- Be able to restore CNM Wiki if the working software collapses. No more than one hour of work is allowed to be lost.
Development
The RFB has been posted and the following responses are collected so far:
- Define page types, naming conventions, user rights, expected behavior to select a set of useful extensions. Then develop ontologies, templates and forms for pages of various types. Adjust search function to the needs of the project.