Difference between revisions of "CNM Cloud Project"

From CNM Wiki
Jump to: navigation, search
(First phase)
 
(480 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[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''.
+
[[File:Cnm-cloud.png|400px|thumb|right|[[Opplet]]]][[CNM Cloud Project]] (hereinafter, the ''Project'') is the endeavor undertaken to create [[Opplet]]. [[Educaship fellow]]s are responsible and members of [[CNMCyber Workforce]] (hereinafter, the ''Team'') shall be accountable for this ''Project''.
  
  
==Requirements==
+
==Project-wide requirements==
  
 
===Business requirements===
 
===Business requirements===
::''Main wikipage: [[CNM Digital]]''
+
::''Main wikipage: [[CNMCyber requirements]]''
  
===Technical requirements===
+
===Solution requirements===
::''Main wikipage: [[CNM Cloud]]''
+
::''Main wikipage: [[CNM Cloud requirements]]''
:A big portion of technical requirements is also published in Russian -- https://wiki.ksacerts.com/ru/Брацко_Облако
+
:[[CNM Cloud requirements]] is the best wikipage to overview general [[solution requirement]]s; however, different parts of the ''Cloud'' have their specific requirements that are or shall be published on their wikipages. A big portion of [[solution requirement]]s is also published in Russian -- https://wiki.friendsofcnm.org/ru/Брацко_Облако
  
==First phase==
+
==Phases==
===First user stories===
+
Five phases are identified as of December of 2018. The first two phases have been accomplished and the third is the current one.
:Three [[user story|user stori]]es shall describe completion of the first phase:
 
:*'''(first user story)''' As a [[NetAnyone]], I shall be able to:
 
:*#Click the button ''Get employed'' at some website and get to some registration page;
 
:*#Fill in my login name, password, and, optionally, email address;
 
:*#Submit the info, automatically (a) become a [[NetConsumer]], (b) obtain user's rights for [[CNM Wiki]], and (c) obtain student's rights for [[CNM Campus]], as well as get enrolled into [[Careerprise Orientation]];
 
:*#Complete [[Careerprise Orientation]] and automatically become a [[CertAssociate]].
 
:*'''(second user story)''' As a [[CertAssociate]], I shall be able to:
 
:*#Get enrolled into [[WorldOpp Developer Seminar]];
 
:*#Complete [[WorldOpp Developer Seminar]], automatically become a [[CertDeveloper]] and obtain user's rights for [[Fixett]].
 
:*'''(third user story)''' As a [[CertAssociate]], I shall be able to:
 
:*#Get enrolled into [[WorldOpp Placement Seminar]];
 
:*#Complete [[WorldOpp Placement Seminar]], automatically become a [[CertFellow]] and obtain sysop's rights for [[CNM Wiki]], and get enrolled into [[Septem Artes Administrativi]].
 
  
===First applications===
+
===Beginnings -- first (completed) phase===
:{|class="wikitable" width=100% style="text-align:center;"
+
::''Main wikipage: [[CNM Cloud Beginnings]]''
!colspan="2"|CNM software!!Description
 
|[[Careerprise service|Service]]
 
!Base(s)
 
|-
 
|[[CNM Platform|Platform]]
 
|[[CNM Middleware|Middleware]]||[[User management software]] that manages authorization of users and their access to [[CNM app]]s
 
![[Opplet]]
 
|Written specifically for the ''Cloud'' using [[YII]] framework
 
|-
 
|rowspan="5"|[[CNM app|Apps]]
 
|[[CNM Productware|Productware]]||Studio for [[CNM vendor]]s to document their developments and store developed files
 
![[Fixett]]
 
|[[Redmine]], [[SVN]], [[container]]s
 
|-
 
|[[CNM Courseware|Courseware]]||[[Learning management software]] to accommodate learning processes
 
![[CNM Campus|Campus]]
 
|[[Moodle]]
 
|-
 
|[[CNM Wikiware|Wikiware]]||[[Knowledge management software]] to develop corporate knowledge collaboratively and access the results
 
![[CNM Wiki|Wiki]]
 
|[[MediaWiki]]
 
|-
 
|[[CNM Usernetware|Usernetware]]||[[User interface]] to allow end-users to interact with [[CNM Middleware]]
 
![[Opplet.net]]
 
|Written specifically for the ''Cloud'' using [[YII]] framework
 
|-
 
|[[CNM Websiteware|Websiteware]]||[[Content management software]] to empower [[CNM website]]s
 
![[FriendsOfCNM.org]]
 
|[[WordPress]]
 
|}
 
  
==Second phase==
+
:[[CNM Cloud Beginnings]] is the first phase of the ''Project''. It was accomplished by the beginning of 2018. The beginnings could be characterized by three factors:
===Second user stories===
+
:#Many experiments including software ventures and examinations of both technology and various organizational structures designed to support that technology;
:Three [[user story|user stori]]es shall describe completion of the second phase:
+
:#Unbalanced and often disruptive availability of resources. Although the ''Team'' enjoyed assistance of a number of volunteers, donor's money, software subscriptions, and venues, the ''Team's'' inability to pay for technology sustainability ultimately led to several adverse events including the major technology crash in 2017 and further necessity to destroy the first cloud.
:*'''(first user story)''' As a [[NetAnyone]], I shall be able to:
+
:#Poor recording, documenting, and storage facilities. For instance, just few training materials were saved and just a couple of videos were taken at hundreds of training sessions. As a result, volunteer time could be utilized way more efficiently.
:*#Click the button ''Get employed'' at some website and get to some registration page;
+
:Nonetheless, a few significant concepts, lessons learned, lines of code, and the [[CNMCyber by Loredana C]] requirements were developed during this initiating phase of the ''Project''.
:*#Fill in my login name, password, and, optionally, email address;
 
:*#Submit the info, automatically (a) become a [[NetConsumer]], (b) obtain user's rights for [[CNM Wiki]], and (c) obtain student's rights for [[CNM Campus]], as well as get enrolled into [[Careerprise Orientation]];
 
:*#Complete [[Careerprise Orientation]] and automatically become a [[CertAssociate]].
 
:*'''(second user story)''' As a [[CertAssociate]], I shall be able to:
 
:*#Get enrolled into [[WorldOpp Developer Seminar]];
 
:*#Complete [[WorldOpp Developer Seminar]], automatically become a [[CertDeveloper]] and obtain user's rights for [[Fixett]].
 
:*'''(third user story)''' As a [[CertAssociate]], I shall be able to:
 
:*#Get enrolled into [[WorldOpp Placement Seminar]];
 
:*#Complete [[WorldOpp Placement Seminar]], automatically become a [[CertFellow]] and obtain sysop's rights for [[CNM Wiki]], and get enrolled into [[Septem Artes Administrativi]].
 
  
===Second applications===
+
===Embryo -- second (completed) phase===
:{|class="wikitable" width=100% style="text-align:center;"
+
::''Main wikipage: [[CNM Cloud Embryo]]''
!colspan="2"|CNM software!!Description
 
|[[Careerprise service|Service]]
 
!Base(s)
 
|-
 
|[[CNM Platform|Platform]]
 
|[[CNM Middleware|Middleware]]||[[User management software]] that manages authorization of users and their access to [[CNM app]]s
 
![[Opplet]]
 
|Written specifically for the ''Cloud'' using [[YII]] framework
 
|-
 
|rowspan="5"|[[CNM app|Apps]]
 
|[[CNM Productware|Productware]]||Studio for [[CNM vendor]]s to document their developments and store developed files
 
![[Fixett]]
 
|[[Redmine]], [[SVN]], [[container]]s
 
|-
 
|[[CNM Courseware|Courseware]]||[[Learning management software]] to accommodate learning processes
 
![[CNM Campus|Campus]]
 
|[[Moodle]]
 
|-
 
|[[CNM Wikiware|Wikiware]]||[[Knowledge management software]] to develop corporate knowledge collaboratively and access the results
 
![[CNM Wiki|Wiki]]
 
|[[MediaWiki]]
 
|-
 
|[[CNM Usernetware|Usernetware]]||[[User interface]] to allow end-users to interact with [[CNM Middleware]]
 
![[Opplet.net]]
 
|Written specifically for the ''Cloud'' using [[YII]] framework
 
|-
 
|[[CNM Websiteware|Websiteware]]||[[Content management software]] to empower [[CNM website]]s
 
![[FriendsOfCNM.org]]
 
|[[WordPress]]
 
|}
 
  
==Development==
+
:[[File:Cnm-digital.png|400px|thumb|right|[[CNMCyber suite]]s]][[CNM Cloud Embryo]] is the second phase of the ''Project''. Several concepts, lessons learned, and pieces of software that was developed in the [[CNM Cloud Beginnings]] have been utilized in the 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'':
===History===
+
:#Identified:
:'''Initial learning systems'''. Initial works that later contributed to the project were started as early as in 2007. The initial development team consisted of [[Mina Nizhnih]] as the code developer and product owner and Romanof as the PHP developer. Until 2015, solutions were presented by various combinations of [[MediaWiki]] and [[Moodle]]. A special solution to integrate those, called [[Opplet]], was initiated by [[Mina Nizhnih]] in 2014 and its first sprint was completed in 2015 after revisions of Zlomovsky. [[SimpleSAMLphp]] was used as its authentication tool.  
+
:#*[[Business need]]s. These needs are expressed in User stories for the embryo;
 +
:#*System architecture including the core package of technology that would support User stories for the embryo;
 +
:#Designed and is implementing a new recruitment process based on the core package of developed technology;
 +
:#Dramatically increased funding for both technology development and recruitment.
  
:'''First CNM systems'''. In 2015-2016, Alexandrovich joined the team as the team architect and Natalia did so as the solution architect. In addition, Loredana C. developed initial requirements for a more complex system to serve patrons of [[Career Network Ministry]] ([[Career Network Ministry|CNM]]). Later, the requirements were posted at [[CNM Digital by Loredana C]]. To implement those, 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 and moved the initial code of [[Opplet]] to the [[Yii]] framework. In 2016, the platform collapsed and all developments, but [[Opplet]] and [[Redmine]], were lost. At the moment of crash, [[Opplet]] and [[Redmine]] were still stored at [[DigitalOcean]].
+
===Minimal -- third (completed) phase===
 +
: ''Main wikipage: [[CNM Cloud Minimal]]''
  
:'''First cloud'''. In 2016-2017, several projects 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 [https://careernetworkministry.org careernetworkministry.org], [https://theeconomicgroup.org theeconomicgroup.org], and [https://worldopp.org worldopp.org]. However, the main development was the private cloud based on [[OpenStack]]. However, inability to integrate installations on a single platform and, particularly, Wushnevska's move from the project, led the developments to be postponed. The cloud was destroyed in order to cut expenses, but [[Odoo]] instances are still alive.
+
: [[Educaship Odoo]] based on an [[Odoo]] instance shall be the primary deliverable of the third phase. Other deliverables may include [[CNM Calendar]], [[CNM Tubeware]], [[CNM Mailware]], [[Educaship Jitsi]]. New sprints of [[Opplet.net]] are also expected.
  
:'''WorldOpp initiative'''. Recruitment of administrators had been the greatest challenge since the project's inception. In 2016-2018, several endeavors to bring new administrators on the board were attempted primarily in Ukraine and Kenya. No candidates were found in Ukraine. Dozens of candidates from Kenya were tried, but no one has been brought on the board so far. The overwhelming majority of most motivated candidates were concentrated on their efforts instead of getting the results. Consequently, no candidate has accomplished more than a dozen of actions on [[CNM Wiki]] so far. The lack of recruitment and onboarding process is considered being the main challenge. Thus, the initiative was postponed until the process based on renewed technology is developed and, particularly, [[Careerprise Orientation]], [[WorldOpp Placement Seminar]], and [[Septem Artes Administrativi]] are launched and operational.
+
===Usable -- fourth (current) phase===
 +
:''Main wikipage: [[CNMCyber Usable]]''
  
:'''Second cloud initiation'''. In 2018, Romanof, [[Mina Nizhnih]], and Natalia initiated a new cloud endeavor. Instead of [[SimpleSAMLphp]], Romanof now implemented [[OpenLDAP]] for authentications. A new instance of [[MediaWiki]] is used for [[CNM Wikiware]], an instance of [[Moodle]] is used for [[CNM Courseware]], instances of [[SVN]] and [[Redmine]] are for [[CNM Productware]]. No private cloud itself is going to be launched in the second phase of the project.
+
:Private clouds such as [[Dev Cloud]], [[Production Cloud]], and [[Control Cloud]] shall be primary deliverables of the fourth phase of the ''Project''.
  
===Current state===
+
===Marketable -- fifth (future) phase===
:The [[DADI]] is the development cycle that includes 4 [[DADI component|component]]s: (1) [[discover component|discover]], (2) [[analyze component|analyze]], (3) [[design component|design]], and (4) [[implement component|implement]].
+
:At the fifth phase of the ''Project'', the initial requirements, [[CNMCyber 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.
  
:{|class="wikitable" width=100% style="text-align:center;"
+
==See also==
!colspan="2" rowspan="2"|CNM software
+
 
|rowspan="2"|Service
+
===Related lectures===
!rowspan="2"|[[Sprint phase|Sprint]]
+
:*[[CNMCyber Projects]].  
|colspan="4" style="background-color:#e6e6e6;"|'''[[DADI component|Component]]'''
+
 
|-
+
[[Category: CNM Cyber Orientation]][[Category: Articles]]
![[Discover component|Discover]]!![[Analyze component|Analyze]]!![[Design component|Design]]!![[Implement component|Implement]]
 
|-
 
|rowspan="2"|[[CNM Platform|Platform]]||[[CNM Infrastructure|Infrastructure]]
 
!Not available
 
|Second (requirements and designs are drafted in Russian in [[Fixett]]; services are temporarily outsourced to [[DigitalOcean]])||90%||90%||90%||90%
 
|-
 
|[[CNM Middleware|Middleware]]
 
![[Opplet]]
 
|Fourth (requirements and designs are drafted in Russian in [[Fixett]])||75%||75%||75%||75%
 
|-
 
|rowspan="5"|[[CNM app|Apps]]||[[CNM Productware|Productware]]
 
![[Fixett]]
 
|Second (requirements and designs are drafted in Russian in [[Fixett]])||50%||50%||50%||50%
 
|-
 
|[[CNM Courseware|Courseware]]
 
![[CNM Campus|Campus]]
 
|Second (requirements and designs are drafted in Russian in [[Fixett]] and English in [[CNM Wiki]])||25%||25%||25%||25%
 
|-
 
|[[CNM Wikiware|Wikiware]]
 
![[CNM Wiki|Wiki]]
 
|Second (requirements and designs are drafted in Russian in [[Fixett]] and English in [[CNM Wiki]])||90%||90%||90%||90%
 
|-
 
|[[CNM Usernetware|Usernetware]]
 
![[Opplet.net]]
 
|Fourth (requirements and designs are drafted in Russian in [[Fixett]])||75%||75%||75%||75%
 
|-
 
|[[CNM Websiteware|Websiteware]]
 
![[CNM website|CNM website]]
 
|Second (requirements and designs are drafted in English in [[CNM Wiki]]; some implementations launched in the first sprint include [http://worldopp.org worldopp.org] and [http://careernetworkministry.org careernetworkministry.org])||25%||10%||10%||0%
 
|}
 

Latest revision as of 15:22, 14 April 2024

CNM Cloud Project (hereinafter, the Project) is the endeavor undertaken to create Opplet. Educaship fellows are responsible and members of CNMCyber Workforce (hereinafter, the Team) shall be accountable for this Project.


Project-wide requirements

Business requirements

Main wikipage: CNMCyber requirements

Solution requirements

Main wikipage: CNM Cloud requirements
CNM Cloud requirements is the best wikipage to overview general solution requirements; however, different parts of the Cloud have their specific requirements that are or shall be published on their wikipages. A big portion of solution requirements is also published in Russian -- https://wiki.friendsofcnm.org/ru/Брацко_Облако

Phases

Five phases are identified as of December of 2018. The first two phases have been accomplished and the third is the current one.

Beginnings -- first (completed) phase

Main wikipage: CNM Cloud Beginnings
CNM Cloud Beginnings is the first phase of the Project. It was accomplished by the beginning of 2018. The beginnings could be characterized by three factors:
  1. Many experiments including software ventures and examinations of both technology and various organizational structures designed to support that technology;
  2. Unbalanced and often disruptive availability of resources. Although the Team enjoyed assistance of a number of volunteers, donor's money, software subscriptions, and venues, the Team's inability to pay for technology sustainability ultimately led to several adverse events including the major technology crash in 2017 and further necessity to destroy the first cloud.
  3. Poor recording, documenting, and storage facilities. For instance, just few training materials were saved and just a couple of videos were taken at hundreds of training sessions. As a result, volunteer time could be utilized way more efficiently.
Nonetheless, a few significant concepts, lessons learned, lines of code, and the CNMCyber by Loredana C requirements were developed during this initiating phase of the Project.

Embryo -- second (completed) phase

Main wikipage: CNM Cloud Embryo
CNM Cloud Embryo is the second phase of the Project. Several concepts, lessons learned, and pieces of software that was developed in the CNM Cloud Beginnings have been utilized in the 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:
    • Business needs. These needs are expressed in User stories for the embryo;
    • System architecture including the core package of technology that would support User stories for the embryo;
  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.

Minimal -- third (completed) phase

Main wikipage: CNM Cloud Minimal
Educaship Odoo based on an Odoo instance shall be the primary deliverable of the third phase. Other deliverables may include CNM Calendar, CNM Tubeware, CNM Mailware, Educaship Jitsi. New sprints of Opplet.net are also expected.

Usable -- fourth (current) phase

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

Marketable -- fifth (future) phase

At the fifth phase of the Project, the initial requirements, CNMCyber 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.

See also

Related lectures