Difference between revisions of "CNM Cloud Embryo"

From CNM Wiki
Jump to: navigation, search
(User stories)
(User stories)
Line 5: Line 5:
  
 
===User stories===
 
===User stories===
:The following [[user story|user stori]]es clarify those [[CNM Cyber requirements]] that are relevant to the ''Embryo''. Three [[user story|user stori]]es shall describe completion of the second phase:
+
:The following [[user story|user stori]]es clarify those [[CNM Cyber requirements]] that are relevant to the ''Embryo'' and that describe completion of the second phase:
:{|class="wikitable" width=100% style="text-align:center;"
+
:#
|User story
 
!Initial [[Opplet role|role]]!!Actions to upgrade!!New [[Opplet role|role]]
 
|-
 
!First
 
|As a [[NetAnyone]], I shall be able to:||style="text-align:left;"|
 
#Click any [[Friends Of CNM Get-Started Clickable|Get-Started Clickable]];
 
#Get to the [[Opplet.net]] registration page;
 
#Fill in my credentials including (a) login name, (b) password, and, (c) optionally, email address;
 
#Submit my credentials
 
|[[NetConsumer]]
 
|-
 
!Second
 
|As a [[NetConsumer]], I shall be able to:||Complete the [[CNM Cyber Orientation]]||[[CertAssociate]]
 
|-
 
!Third
 
|As a [[NetAdmin]], I shall be able to:||Appoint any user to the [[FellowAdmin]] role||No change
 
|}
 
  
 
===Software to be used===
 
===Software to be used===

Revision as of 01:12, 28 January 2020

CNM Cloud Embryo (hereinafter, the Embryo) was the second phase of CNM Cloud Project (hereinafter, the Project), which primary deliverable was a minimum viable product. A team of developers (hereinafter, the Team) started working on that phase in January of 2018 and ended in December of 2019. CNM Cloud Beginnings is the previous phase; CNM Cloud Usable is the successor one.


Requirements

User stories

The following user stories clarify those CNM Cyber requirements that are relevant to the Embryo and that describe completion of the second phase:

Software to be used

CNM software Description Service Base(s)
Platform Servers Hardware, operating system(s), environment for programming languages to operate, database management systems, web servers (temporarily, outsourced) Not important for the Project
Middleware In this phase, the software that enables identity and access management of user's access to CNM apps. Cabin Written specifically for the Cloud using the Yii framework
Apps User interface to allow end-users to interact with Opplet
Labware Studio for Careerprise vendors to document their developments and store developed files Lab Redmine, Apache Subversion (SVN), (possibly) containers
Certware E-learning software to accommodate learning processes Cert Moodle
Wikiware Knowledge management software to develop corporate knowledge collaboratively and access the results Wiki MediaWiki
Pageware Content management software to empower websites Page WordPress

Up-to-date story

Several concepts, lessons learned, and pieces of software that was developed in the CNM Cloud Beginnings have been utilized in this successor phase. The Team calls the new phase Embryo because the Embryo of the new cloud is going to be developed during this phase. The key developments could be summarized as follows. The Team:
  1. Identified:
  2. Designed and is implementing a new recruitment process based on the core package of developed technology;
  3. Dramatically increased funding for both technology development and recruitment.

Second cloud initiation

In 2018, Romanof as a PHP developer, Gary Ihar as the product owner, and Natalia as a vendor liaison initiated a new cloud endeavor. Its goal is to create the simpliest system for onboarding employees and Careerprise vendors. The Team called this system embrio. No private cloud itself is going to be launched in the second phase of the Project and even the next phase, which emphasis shall be a new Odoo instance.
During the CNM Cloud Beginnings, a SimpleSAMLphp instance, as an integration tool, worked well, but it had a few drawbacks, most importantly, in difficulties to integrate an Odoo instance. Instead of a SimpleSAMLphp instance, Romanof now implemented an OpenLDAP instance for the directory access. That development completed the third sprint of Opplet.net.

Launch of the Wiki

In spring of 2018, this very CNM Wiki was launched. A new instance of MediaWiki is used for CNM Wikiware. Temporarily, this development used tentative requirements.

New documenting model

Lack of documentation was critical in troubles of the CNM Cloud Beginnings. Now:
  1. Technical requirements for any critical software shall be developed before awarding of any contract. These requirements shall be published at this CNM Wiki;
  2. After awarding any contract, Friends Of CNM shall grant its winner an access to the corresponding project at Fixett;
  3. Technical documentation for the developed software shall be kept posted at Fixett.
The most comprehensive documentation for the Embryo phase was originally created in Russian (using Fixett and the Russian part of CNM Wiki at https://wiki.friendsofcnm.org/ru); however, since the recruitment efforts are shifting to East Africa and the United States, new documents shall be posted at the English part of CNM Wiki.

New management approach

The management model changed substantially:

Early recruitment of apprentices

In summer of 2018, dozens of candidates, primarily from Kenya and Philippines were tested for WorldOpp Fellow Staff positions, but no one has been eventually brought on the board permanently.
  • The majority of most motivated candidates were concentrated on their efforts instead of getting the results. That suggests that their project management skills needed some development;
  • If those candidates were oriented on some results, their desired results were not communicated with the product owner and, consequently, their efforts couldn't be funded. That suggests that their business analysis skills needed some development;
  • It looks like documenting remains at very least one of the biggest problems. No candidate has accomplished more than a dozen of actions on CNM Wiki so far.
A clear recruitment and onboarding process was considered being an important problem to be solved next. The endeavor produced a solid database of those who can work having clear instructions and under close supervision, but the Team didn't have such positions at that time.

Idea of the Incubator

An idea of WorldOpp incubator was developed in order to create an onboarding process generally and, to develop candidates' skills in business analysis, product ownership, project management, and records management particularly. Its idea is to hire those apprentices who could act as prospective members of WorldOpp Fellow Staff.
The apprentice candidates who participate in the incubator shall be enrolled into WorldOpp Placement Seminar and, consequently, WorldOpp Bootcamp and practice their concepts while creating and bettering curricula, as well as epics, user stories, and other documentation for CNM Cloud at CNM Wiki.
One of possible implementations could be a group of 7-10 apprentices working on some local site somewhere in Kenya. To make it real, a partner on the ground should be looked for. However, the Project should mature more in order to be attractive to that partner.

Launch of the Cert

In the last months of 2018, CNM Cert' launch was expedited in order to be used by students of Shanghai Jian Qiao University. An instance of Moodle is used for CNM Certware. Initially, Gary Ihar opposed launching the Cert without complete technical requirements. However, there was an urgent need in some learning management system used for a program of Vaughn College of Aeronautics and Technology in that university in Shanghai, China. The Cert was tested successfully. Its technical requirements are still needed to be developed.

Development of the Orientation

In January of 2019, Kevin temporarily joined the team to help developing materials of the WorldOpp Orientation. Its first session, Welcome to Friends Of CNM, was ready to be launched in mid-February, but Gary Ihar decided to transfer this session from CNM Cert to CNM Page.

Work on the Pages

In early February of 2019, the CNM Pageware was developed in order to make the launch of FriendsOfCNM.org and other CNM Page possible. In mid-February, the search for a front-end developer started. As a result, Paul was recruited in March and started working in early April. The worldopp.com was the first result of this endeavor.

Minimal viable technology

By April of 2019, the PHP sub-projects led by Romanof outrun the other developments on the server-side. Because of that fact, Gary Ihar decided to launch a minimal viable product (MVP) of future CNM Cloud based on PHP only. The following product had been defined and launched:
  1. CNM Cabin that allows for:
  2. CNM Cert that allows for courses and assessments such as WorldOpp Orientation and CNM PMP Bootcamp;
  3. CNM Lab that allows for file development;
  4. CNM Linkup that allows for customer relationship management and temporarily plays a role of CNM Venture, which is scheduled to be launched in the next phase of the Project;
  5. CNM Mail that allows for emailing;
  6. CNM Page that allows for websites such as worldopp.com and friendsofcnm.com;
  7. CNM Social that allows for social networks especially for Friends Of CNM communities;
  8. CNM Video that allows for videosharing; and
  9. CNM Wiki that allows for collaboratively-developed documents.

Volunteer and partner outreach

New developments on both server- and client-sides underlined the need in documentation. Basically, the documentation remained the only unsolved task preventing the Phase from its completion.
To solve this challenge, Gary Ihar decided to hire a new team member for new outreach endeavors. Generally, the Team needs apprentices, volunteers, and partners. Since the Team is not ready for the apprentices outreach, the new hire would be asked to look for volunteers and partners:
  1. Volunteers will be recruited for the newly-defined CNM Technology Board. Volunteers may be helpful for development of services;
  2. Partners will be sought for the educaship line of products. Partners may be helpful for recruitment of participants and landing of customers.

Deliverables of the Embryo

Projected deliverables:
  1. A software system capable to execute the User stories;
  2. Contracts between Friends Of CNM and Careerprise vendors to run:
  3. Contracts between Friends Of CNM and members of WorldOpp Fellow Staff to run:
  4. Curricula at CNM Cert:
  5. Organizational structures:

Current state

Developers

Main wikipage: WorldOpp Fellow Staff
The WorldOpp Fellow Staff is the development group that works on the Project.

Completion rates

The DAMP is the development cycle that includes 4 components: (1) discover, (2) analyze, (3) model, and (4) plan. No component is fully developed to the date. The following table presents estimates on every component of every software to be launched:
CNM software Service Sprint Description Discover Analyze Model Plan
Platform Servers (temporarily, outsourced) Second Requirements and designs are drafted in Russian in CNM Lab; DigitalOcean is temporarily used for implementations 90% 90% 90% 90%
Opplet Opplet.net Fourth Requirements and designs are drafted in Russian in Fixett; Opplet.net handles identity and access management for CNM Cloud 75% 75% 75% 75%
Apps
Labware Fixett Second Requirements and designs are drafted in Russian in Fixett; the current implementation is located at a classified URL 50% 50% 50% 50%
Certware Cert Second Requirements and designs are drafted in Russian in Fixett and English in CNM Wiki; the current implementation is located at https://cert.friendsofcnm.org 50% 50% 50% 50%
Wikiware Wiki Second Requirements and designs are drafted in Russian in Fixett and English in CNM Wiki; the current implementations are located at https://wiki.ksacerts.com and, in Russian, at https://wiki.friendsofcnm.org/ru 50% 50% 50% 50%
Pageware CNM Page Second Requirements and designs are drafted in English in CNM Wiki; the first instance is installed at https://friendsofcnm.org; its requirements have been started at FriendsOfCNM.org 50% 50% 50% 50%

Challenges

Lack of procurement documentation is still the primary obstacle for the Project to move forward faster. There are a plenty of developers ready to implement technical requirements, but those requirements are needed to be documented. If some backup has been de-facto implemented, the state of cyber-security is either inappropriate or unknown.

Vacancies

Neither education nor experience is needed for the vacancies listed below. Full-time (at least, 40 hours a week) availability and willingness to learn on the job (and any learning includes so-called "errors" and "mistakes") are absolute musts. Since English language is the primary medium at Friends Of CNM, some level of English capacity is needed as well.

Related lectures