CNM Cloud Project

From CNM Wiki
Revision as of 16:48, 21 October 2018 by Gary (talk | contribs) (History of the beginnings)
Jump to: navigation, search

CNM Cloud Project (hereinafter, the Project) is an endeavor to provide the Career Network Ministry with CNM Cloud in order to deliver services of CNM Digital. Friends Of CNM Cloud Administrator is responsible for this Project.


Requirements

Business requirements

Main wikipage: CNM Digital

Technical requirements

Main wikipage: CNM Cloud
A big portion of technical requirements is also published in Russian -- https://wiki.ksacerts.com/ru/Брацко_Облако

First phase -- beginnings

Initial user stories

Initial user stories were created by Loredana C. and are published at CNM Digital by Loredana C.

Software used in early stages

The first private cloud was built on an OpenStack instance. The applications included Opplet.net, Redmine, Apache Subversion (SVN), Moodle, MediaWiki, and WordPress. However, applications were not moved to the cloud because of its immaturity. Only Opplet.net and Redmine are still operational after the cloud was destroyed in order to cut costs.

History of the beginnings

The beginnings of the Project could be characterized by two factors:
  1. Many time-consuming experiments including software ventures and examinations of various organizational structures designed to support that software; and
  2. Constant and serious lack of financial resources.
Nonetheless, significant concepts, lessons learned, and a few lines of code were developed during this initiating phase of the Project.
Early hands-on training. In 2012, Gary Ihar organized first hands-on training sessions of Career Network Ministry in Tysons Corner Microsoft store. In 2012-2016, the training topics included:
Topics Trainers
Microsoft Excel Frank Gary, Malkia Perry, Mercedes Butler, Clayton Park
Microsoft Project Cassey Missal
ITIL
Microsoft SharePoint Mack Sigman, Scott Hoag, Roger, Malkia Perry, Bonnie Smerdon, Guillermo Lopez, Matthew J. Bailey, Brian Park, Stephen Kaludis
Database management system Saiid Ganjalizadeh, Clyde Ensslin
HTML Sean Lewczyk
Drupal Danny Abadi
Android app Vaclav Hnizda
WordPress Diane Snow Javaid, Michael Eicher
SEO Jim Caroll
PHP, CSS, and JavaScript
Ruby-on-Rails Wendy Sue Campbell

Emmanuel Amanyeiwe Jack Tsou Daniel M. Gonzales Ibrahim Alamin

Early cloud practice.
Early learning systems. Initial works that later contributed to the Project were started as early as in 2007. The initial development team consisted of Gary Ihar as the code developer and product owner and Romanof as the PHP developer. Until 2014, solutions were presented by various combinations of MediaWiki and Moodle. A special solution to integrate those, called Opplet.net, was initiated and coded by Gary Ihar in 2014. Revisions by Zlomovsky completed its first sprint in 2015. The first version of Opplet.net used SimpleSAMLphp as its authentication tool.
Early enterprise-wide systems. In 2015-2016, the concept of CNM Digital emerged. Loredana C. developed initial requirements for a complex system to serve patrons of Career Network Ministry (CNM). Later, the requirements were posted at CNM Digital by Loredana C. To implement those, Alexandrovich joined the team as the team architect and Natalia did so as the solution architect. Instances of Liferay and SuiteCRM were added and the platform was moved from DigitalOcean to Hetzner and newly based on Proxmox. Several instances of Odoo were also installed, but never integrated to the platform because Odoo didn't support SimpleSAMLphp. Romanof also installed an instance of Redmine separately from the platform. In addition, Romanof completed the second sprint of Opplet.net while moving its initial code from plain PHP to the Yii framework. In 2016, the platform collapsed and all developments, but Opplet.net and Redmine, were lost. At the moment of the crash, Opplet.net and Redmine were still stored at DigitalOcean.
Early cloud. In 2016-2017, several endeavors were undertaken. Alexander was the primary technology vendor at that time, Eunice contributed to its requirements, and Wushnevska worked on Odoo and Redmine instances. Instances of Odoo were installed at careernetworkministry.org, theeconomicgroup.org, and worldopp.org. At the same time, the first private cloud was built using OpenStack. However, no instance was integrated on this cloud, particularly, because of lack of documentation. Wushnevska tried to address the documenting task, but her retirement from the Project postponed all of the developments. Later, the first cloud was destroyed in order to cut expenses. Separate Odoo instances are still alive.
Administration as the primary difficulty. So, the first cloud endeavors were not sustainable mostly or significantly because of their lack of documentation. Gary Ihar hired a system engineer, Anand, in India, but the cost of this engineer wasn't bearable. Generally speaking, project administration had had been the greatest challenge since the Project's inception. The development team needed some combination of business analysts, system engineers, and project managers, but couldn't find qualified candidates who would have matched the existing budget.
Early project management training.
Early recruitment of learners.

In 2017-2018, several endeavors to recruit vocational learners were attempted through some job-bidding websites worldwide. However, those websites granted access to only those freelancers who expected to exchange their time to money and were not willing to dedicate enough time to learning. More importantly, the technology behind the programme, most notably, CNM Courseware, wasn't developed fully yet. At that time, it seemed that the interested candidates just couldn't be directed well remotely, without personal involvement.

In winter of 2017-2018, Gary Ihar traveled to Ukraine in order to find partners for the WorldOpp programme in its current state. Nevertheless, no partners were identified since the programme was still in its development stage. Two other reasons that may have contributed to that result were (a) the low unemployment rate in Ukraine and (b) its residents' tendency to favor the traditional educational system. The programme was clearly not ready to be launched then.
WorldOpp initiative. To face the administration challenge, the idea of hiring newbies and grow them to administrators emerged and started maturing in 2016-2018. Later, this idea became the WorldOpp programme. An outline of Septem Artes Administrativi was developed for this programme.

Deliverables of the beginnings

  1. Software:
  2. Concepts:

Second phase -- embryo

User stories for the embryo

Three user stories shall describe completion of the second phase:

Software used in the embryo

CNM software Description Service Base(s)
Platform Infrastructure 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, user management software that manages authorization of users and their access to CNM apps Opplet.net Written specifically for the Cloud using the Yii framework
Apps User interface to allow end-users to interact with CNM Middleware
Productware Studio for Careerprise vendors to document their developments and store developed files Fixett Redmine, Apache Subversion (SVN), (possibly) containers
Courseware Learning management software to accommodate learning processes Campus Moodle
Wikiware Knowledge management software to develop corporate knowledge collaboratively and access the results Wiki MediaWiki
Contentware Content management software to empower CNM websites FriendsOfCNM.org WordPress

History of the embryo

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 most simple system for onboarding employees and Careerprise vendors. The team called this system embrio.
Instead of a SimpleSAMLphp instance, Romanof now implemented an OpenLDAP instance for authentications. That development completed the third sprint of Opplet.net. A new instance of MediaWiki is used for CNM Wikiware, an instance of Moodle is used for CNM Courseware, instances of Apache Subversion (SVN) and Redmine are for CNM Productware. No private cloud itself is going to be launched in the second phase of the Project.
New administration model. While being the product owner, Gary Ihar decreased his Project involvement in order to increase new fundraising efforts. Romanof started playing a PHP sub-project manager role in addition to his technology development role. Additional finances have been supposed to be used in recruitment of new staffers.
The most comprehensive documentation for this attempt was originally created in Russian (using CNM Productware and the Russian part of CNM Wiki at https://wiki.ksacerts.com/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.
Early recruitment of staffers. 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 so far.
  • 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 is considered being the main problem to be solved next. Thus, the initiative was temporarily postponed until the process based on renewed technology is developed and, particularly, Careerprise Orientation and WorldOpp Placement Seminar are launched and get operational.
Idea of incubator. An idea of Opplet incubator was developed in order to address shortcomings in candidates' skills, especially in project management, business analysis, and technical writing. The idea was set to implemented as soon as some supporting technology is developed.
Minimal viable product. In early of November of 2018, some minimal viable product (MVP) is going to be launched. It shall include some registration, enrollment into Careerprise Orientation and, further, into WorldOpp Placement Seminar, and granting rights of NetAnyone, NetConsumer, CertAssociate, and CertFellow.
and (2) hire apprentices who could act as prospective members of WorldOpp Fellow Staff. One of the intentions was to organize a group of apprentices on some local site.

Deliverables of embryo phase

Projected deliverables:
  1. A software system capable to execute the User stories for the embryo;
  2. Contracts between Friends Of CNM and Careerprise vendors to run:
  3. Curricula at CNM Campus:
  4. Organizational structures:

Future phases

Third phase -- organization

CNM Enterpriseware shall be the primary deliverable of the third phase. Other deliverables may include Eventtune, CNM Calendar, CNM Videoshareware, CNM Mailware, CNM Talkware. New sprints of Opplet.net are also expected.

Fourth phase -- security

Private clouds such as Dev Cloud, Production Cloud, and Control Cloud shall be primary deliverables of the fourth phase of the Project.

Fifth phase -- federation

At the fifth phase of the Project, the initial requirements, CNM Digital by Loredana C, shall be revised and tested on the completion. This phase is also reserved for any developments, especially federations, that haven't been accomplished in the previous phases.

Current state

Team

Three team members are currently working on the Project:
  1. Romanof. As the PHP sub-project manager and developer, Romanof developed all working parts of the existing technology. Romanof also documented in Fixett a deal of the work done;
  2. Gary Ihar. As the product owner, Gary is drafting documentation in CNM Wiki on every software included in the second phase;
  3. Natalia. As a vendor liaison, Natalia is working on CNM Wikiware documentation.

Completion rates

The DADI is the development cycle that includes 4 components: (1) discover, (2) analyze, (3) design, and (4) implement. 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 DADI component
Discover Analyze Design Implement
Platform Infrastructure (temporarily, outsourced) Second (requirements and designs are drafted in Russian in Fixett; DigitalOcean is temporarily used for implementations) 90% 90% 90% 90%
Middleware Opplet.net Fourth (requirements and designs are drafted in Russian in Fixett; Opplet.net handles user management for CNM Cloud) 75% 75% 75% 75%
Apps
Productware Fixett Second (requirements and designs are drafted in Russian in Fixett; the current implementation is located at a classified URL) 50% 50% 50% 50%
Courseware Campus Second (requirements and designs are drafted in Russian in Fixett and English in CNM Wiki; the current implementation is located at https://campus.ksacerts.com) 25% 25% 25% 25%
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.ksacerts.com/ru) 90% 90% 90% 90%
Contentware CNM website Second (requirements and designs are drafted in English in CNM Wiki; some implementations launched in the first sprint include worldopp.org and careernetworkministry.org) 25% 10% 10% 0%

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.