Difference between revisions of "CNM Cloud Embryo"

From CNM Wiki
Jump to: navigation, search
Line 126: Line 126:
 
:#A software system capable to execute the [[#User stories|User stories]];
 
:#A software system capable to execute the [[#User stories|User stories]];
 
:#[[Contract]]s between [[Friends Of CNM]] and [[Careerprise contractor]]s to run:
 
:#[[Contract]]s between [[Friends Of CNM]] and [[Careerprise contractor]]s to run:
:#*[[CNM Servers]];
+
:#*[[CNM Cyber Platform]];
 
:#*[[CNM Labware]];
 
:#*[[CNM Labware]];
 
:#*[[CNM Certware]];
 
:#*[[CNM Certware]];
Line 152: Line 152:
 
|-
 
|-
 
|rowspan="2"|Platform
 
|rowspan="2"|Platform
|[[CNM Servers|Servers]]||Hardware, [[operating system]](s), environment for programming languages to operate, [[database management system]]s, [[web server]]s
+
|[[CNM Cyber Platform|Platform]]||Hardware, [[operating system]](s), environment for programming languages to operate, [[database management system]]s, [[web server]]s
 
!(temporarily, outsourced)
 
!(temporarily, outsourced)
 
|Not important for the ''Embryo''
 
|Not important for the ''Embryo''

Revision as of 14:33, 29 August 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

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

Learner's story

As someone who would like to be more competitive on the job market, I would like to:
  1. Use key software systems that enterprises use to have hands-on experience and to empower my job search.
  2. Get trained in utilizing those technologies which I am going to use.

Administrator's story

As someone who would like to help to those who want to be more competitive on the job market, I would like to:
  1. Know what technologies needs to be offered.
  2. Create a minimal viable product using the chosen technologies.
  3. Train someone to use the chosen technologies.

Desirable user stories

The following breakdown to the Opplet roles clarifies those CNM Cyber requirements that are relevant to the Usable. Three user stories shall describe completion of the second phase:
User story Initial role Actions to upgrade New role
First As a NetAnyone, I shall be able to:
  1. Click any Get-Started Clickable;
  2. Get to the Opplet.net registration page;
  3. Fill in my credentials including (a) login name, (b) password, and, (c) optionally, email address;
  4. Submit my credentials
NetConsumer
Second As a NetConsumer, I shall be able to: Complete the CNM Cyber Orientation CertUser
Third As a NetAdmin, I shall be able to: Appoint any user to the FellowAdmin role No change

Desirable role permissions

App / Role NetAnyone NetConsumer CertUser CertAssociate CertFellow
Social Visitor User
Cert Visitor Student
Wiki Visitor Registered Admin
Page Non‑registered Contributor Author
Lab No role User No role

Phase history

Several concepts, lessons learned, and pieces of software that were developed in the CNM Cloud Beginnings have been utilized in this successor phase. The Team called the new phase Embryo because the embryo of the new cloud was developed during this phase. The key developments could be summarized as follows. The Team:

  1. Identified:
  2. Designed 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 contractor liaison initiated a new cloud endeavor. Its goal is to create the simpliest system for onboarding employees and Careerprise contractors. 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 has been used for CNM Wikiware. No written requirements were developed; so, Romanof used his own judgment.

New documenting model

Lack of documentation was critical in troubles of the CNM Cloud Beginnings. To resolve that issue, Gary Ihar developed and unsuccessfully tried to push a new documenting model:
  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 were shifting to East Africa and the United States, new documents were supposed to 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 the CNM Cyber Placement 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 CNM Cyber Orientation. Its first session, CNM Essentials, was ready to be launched in mid-February, but the unresolved challenge was how to enroll prospect learners. Also, Gary Ihar once considered transferring 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. However, this endeavor didn't last long because of the lack of graphic designs.

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 package had been identified, developed and, excluding CNM Talkware, installed by September of 2019.

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 contractors to run:
  3. Contracts between Friends Of CNM and members of WorldOpp Fellow Staff to run:
  4. Curricula at CNM Cert:
  5. Organizational structures:

Delivered software

CNM software Purpose Service Base(s)
Platform Platform Hardware, operating system(s), environment for programming languages to operate, database management systems, web servers (temporarily, outsourced) Not important for the Embryo
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 contractors to document their developments and store developed files Lab Redmine, Apache Subversion (SVN), (possibly) containers
Certware Learning management system to formally plan and track one's learning progress 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
Linkupware Customer relationship management software to empower customer relationship management. Linkup SuiteCRM
Mailware A combination of email client, and mail servers to power email management system. Mail Roundcube, Postfix, Dovecot
Socialware Social networking software to power a social network. Social Humhub
Ventureware Customer relationship management software to power enterprise resource planning ecosystem. Venture Odoo
Tubeware Video-sharing software to power the video-sharing system. Tube YouPHPTube
  1. As someone who would like to help to those who want to be more competitive on the job market, I would like to accommodate their needs through development of:

Current state

Developers

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

Completion rates

The DREPD is the development cycle that includes 4 components: (1) discover, (2) research, (3) envision, 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 Research Envision 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.
  • Urgently needed. Any assistance with documentation published at CNM Wiki for upcoming procurement or topics related to procurement of CNM Wikiware, CNM Certware, CNM Labware, CNM Pageware, CNM Servers is urgently needed. These topics may include any information on what needs to be done, how to select the best contractor, and how to make sure that the chosen contractor has delivered the requested product.
  • Needed on an ongoing basis. As always, the Team is hiring staffers of WorldOpp Fellow Staff generally and WorldOpp fellow specifically to expedite the Project.