SlideShare una empresa de Scribd logo
1 de 39
Rethinking system design
elmsln.org
@btopro
Come get a sticker like this one
In dribs and drabs
we will change the world
Project Lead
ELMS Initiative
Instructional Systems Architect
E-Learning Institute
College of Arts & Architecture
Penn State University
@btopro (aka Bryan Ollendyke)
Rethinking system architecture
• Review different patterns
• Examples through ELMS: LN
• This doesn’t place blame, these are just
different examples
https://github.com/elmsln/elmsln
https://elmsln.org
Star, Follow and Fork!
ELMSLN is a series of networked Drupal sites per course.
Automation / DevOps keep the process manageable
New fully configured Drupal-based RESTful networks are built on demand.
Networks are formed of Services (per course) and Authorities (per learning network)
New idea New Distribution New domain New tool
What is it?
Today
Today…
and the last 20 years
Build things doing too much
Buy things doing too much
*cough* LMS *cough*
Today: Buy
• Pros:
• Single system / address
• Easy to promote / point to
• Pay the bill, be done
• Uniformity
• Cons:
• Lack of control
• $$$$$$$$$$$$
• Customization difficult
• Lengthy contracts (years at time)
• Direction set by vendor (Mediacore’s great!)
• Institutional concepts wrapped into system design
Today: Build
• Pros:
• Easy to promote / point to
• Easy to put out fire (one location)
• Easier to support
• Uniformity
• Cons:
• Lack of flexibility
• People / $$$$$$
• Uniformity
• Building institutional concepts into system design
Building institutional concepts
• Replicated in every system purchased or created
• Hierarchy
• Institution, College, Department
• Roles
• Student, faculty, staff, instructional designer, etc
• Concepts
• Course, Section, Offering, Semesters
How many employees did ____ hire?
• To support our institution, how many employees do they hire when we buy in?
• zero or close to zero
• A sales person probably clicks a button,
fills out our “tokens” and “deploys” to a new domain
• Deployment architecture taken into account to
segment their clients
Deployments of today
Deployment architecture
• Tokenize criteria
• Replicate applying tokens 1,000s of times
• Scale capacity 1,000s of times through replication
Jenkins example
Deployments of today
Middleware approach
collegeD.url.com
url.com
collegeE.url.com
collegeF.url.com
collegeC.url.com
collegeB.url.com
collegeA.url.com
Characteristics
• Load / risk distributed across servers mirroring institutional concept
• Possibility for local control / contribution / resource sharing in process
• Central IT can still push out standardized security, design, as needed
• Vanity URLs now possible
• Simplified user management (1 less structure to account for)
• Robots / automation keep it from chaos
• More options / flexibility
Pattern based system automation
• Abstraction at upper layers can always be applied deeper
• Just ask Docker community
• Break system goal into discrete functions
• Utilize REST and automation to unify experience
• Deploy as multiple pieces
ELMSLN Deployments
sciences.psu.edu
jenkins
smeal.psu.edu
hhd.psu.edu
aanda.psu.edu
ag.psu.edu
stem-researchethics.org
One of those deployments
media.site.com
courses.site.com
blog.site.com
analytics.site.com
studio.site.com
online.site.com
interact.site.com
Deployment 2
media.site.com
courses.site.com
blog.site.com
studio.site.com
online.site.com
Deployment 3
media.site.com
courses.site.com
analytics.site.com
online.site.com
interact.site.com
Buttercups UK Med Training
The day after tomorrow
Organic architecture
• System is a fractal of other systems
• Cloning
• REST and SSH handshakes to unify / self-distribute
• DNA
• Networks then can replicate, peel off, morph to scale
• Evolution
• Automation applied to single instance to replicate
• Gene Splicing
• Virtual Networks of networks
• Gene pool
Simple Life
DNA
Simple to simple
Simple to simple to simple
Cool idea + 1
Graduated Cool idea
Complexity from simplicity
Future proofing w/o sacrifice
Characteristics
• Start deployments small, scale out as they grow
• Deployment architecture matches needs of area deploying
• Possibility for local control / contribution / resource sharing in process
• Central IT can still push out standardized security, design, as needed
• Robots / automation keep it from chaos
• More options / flexibility
ELMS:LN current runs on
• Cloud Servers (Digital Ocean, AWS EC2)
• TravisCI (cloud based test bed)
• VMHost Servers (7 at PSU)
• Laptops (via Vagrant, same as
• Soon ChromeBit (anything w/ 2 gigs of ram)
Redecentralization
Questions
@btopro
elmsln.org

Más contenido relacionado

Similar a Rethinking system design

Docker-N-Beyond
Docker-N-BeyondDocker-N-Beyond
Docker-N-Beyond
santosh007
 
How to build a better mousetrap final
How to build a better mousetrap finalHow to build a better mousetrap final
How to build a better mousetrap final
Jeannie Castro
 
Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...
Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...
Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...
Lucidworks
 

Similar a Rethinking system design (20)

From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015
 
No BS Guide to Deep Learning in the Enterprise
No BS Guide to Deep Learning in the EnterpriseNo BS Guide to Deep Learning in the Enterprise
No BS Guide to Deep Learning in the Enterprise
 
Kubeflow.pptx
Kubeflow.pptxKubeflow.pptx
Kubeflow.pptx
 
Lessons Learned from Continuous Delivery
Lessons Learned from Continuous DeliveryLessons Learned from Continuous Delivery
Lessons Learned from Continuous Delivery
 
Docker-N-Beyond
Docker-N-BeyondDocker-N-Beyond
Docker-N-Beyond
 
The Tale of Two Deployments: Greenfield and Monolith Apps with Docker Enterpr...
The Tale of Two Deployments: Greenfield and Monolith Apps with Docker Enterpr...The Tale of Two Deployments: Greenfield and Monolith Apps with Docker Enterpr...
The Tale of Two Deployments: Greenfield and Monolith Apps with Docker Enterpr...
 
USG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 DaysUSG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 Days
 
DevOps in the Enterprise
DevOps in the EnterpriseDevOps in the Enterprise
DevOps in the Enterprise
 
EBSCO Digital Transformation with AWS
EBSCO Digital Transformation with AWS EBSCO Digital Transformation with AWS
EBSCO Digital Transformation with AWS
 
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
 
Cloud Foundry Summit 2015: Devops, microservices and platforms, oh my!
Cloud Foundry Summit 2015: Devops, microservices and platforms, oh my!Cloud Foundry Summit 2015: Devops, microservices and platforms, oh my!
Cloud Foundry Summit 2015: Devops, microservices and platforms, oh my!
 
devops, microservices, and platforms, oh my!
devops, microservices, and platforms, oh my!devops, microservices, and platforms, oh my!
devops, microservices, and platforms, oh my!
 
Software Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableSoftware Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuable
 
How to build a better mousetrap final
How to build a better mousetrap finalHow to build a better mousetrap final
How to build a better mousetrap final
 
DevOps in the Real World
DevOps in the Real WorldDevOps in the Real World
DevOps in the Real World
 
20111110 how puppet-fits_into_your_existing_infrastructure_and_change_managem...
20111110 how puppet-fits_into_your_existing_infrastructure_and_change_managem...20111110 how puppet-fits_into_your_existing_infrastructure_and_change_managem...
20111110 how puppet-fits_into_your_existing_infrastructure_and_change_managem...
 
Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...
Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...
Where Search Meets Machine Learning: Presented by Diana Hu & Joaquin Delgado,...
 
Architectural Decisions: Smoothly and Consistently
Architectural Decisions: Smoothly and ConsistentlyArchitectural Decisions: Smoothly and Consistently
Architectural Decisions: Smoothly and Consistently
 
Architectural Decisions: Smoothly and Consistently
Architectural Decisions: Smoothly and ConsistentlyArchitectural Decisions: Smoothly and Consistently
Architectural Decisions: Smoothly and Consistently
 
Lucene/Solr Revolution 2015: Where Search Meets Machine Learning
Lucene/Solr Revolution 2015: Where Search Meets Machine LearningLucene/Solr Revolution 2015: Where Search Meets Machine Learning
Lucene/Solr Revolution 2015: Where Search Meets Machine Learning
 

Más de Bryan Ollendyke

Más de Bryan Ollendyke (20)

Lecture 14 - OER final project
Lecture 14 - OER final projectLecture 14 - OER final project
Lecture 14 - OER final project
 
Lecture 12 - Docker
Lecture 12 - DockerLecture 12 - Docker
Lecture 12 - Docker
 
Lecture 11 - Web components
Lecture 11 - Web componentsLecture 11 - Web components
Lecture 11 - Web components
 
EdTechJoker Spring 2020 - Lecture 10 HAXTheWeb
EdTechJoker Spring 2020 - Lecture 10 HAXTheWebEdTechJoker Spring 2020 - Lecture 10 HAXTheWeb
EdTechJoker Spring 2020 - Lecture 10 HAXTheWeb
 
EdTechJoker Spring 2020 - Lecture 8 Drupal again
EdTechJoker Spring 2020 - Lecture 8 Drupal againEdTechJoker Spring 2020 - Lecture 8 Drupal again
EdTechJoker Spring 2020 - Lecture 8 Drupal again
 
EdTechJoker Spring 2020 - Lecture 7 Drupal intro
EdTechJoker Spring 2020 - Lecture 7 Drupal introEdTechJoker Spring 2020 - Lecture 7 Drupal intro
EdTechJoker Spring 2020 - Lecture 7 Drupal intro
 
EdTechJoker Spring 2020 - Lecture 6 - WordPress
EdTechJoker Spring 2020 - Lecture 6 -   WordPressEdTechJoker Spring 2020 - Lecture 6 -   WordPress
EdTechJoker Spring 2020 - Lecture 6 - WordPress
 
EdTechJoker Spring 2020 - Lecture 5 grav cms
EdTechJoker Spring 2020 - Lecture 5 grav cmsEdTechJoker Spring 2020 - Lecture 5 grav cms
EdTechJoker Spring 2020 - Lecture 5 grav cms
 
EdTechJoker Spring 2020 - Lecture 4 - HTML
EdTechJoker Spring 2020 - Lecture 4 - HTMLEdTechJoker Spring 2020 - Lecture 4 - HTML
EdTechJoker Spring 2020 - Lecture 4 - HTML
 
EdTechJoker Spring 2020 - Lecture 2 - Git
EdTechJoker Spring 2020 - Lecture 2 - GitEdTechJoker Spring 2020 - Lecture 2 - Git
EdTechJoker Spring 2020 - Lecture 2 - Git
 
EdTechJoker Spring 2020 - Lecture 1 - Welcome
EdTechJoker Spring 2020 - Lecture 1 - WelcomeEdTechJoker Spring 2020 - Lecture 1 - Welcome
EdTechJoker Spring 2020 - Lecture 1 - Welcome
 
Apereo 2018 - NGDLE, OER, Cost reduction, accessibility and decentralization
Apereo 2018 - NGDLE, OER, Cost reduction, accessibility and decentralizationApereo 2018 - NGDLE, OER, Cost reduction, accessibility and decentralization
Apereo 2018 - NGDLE, OER, Cost reduction, accessibility and decentralization
 
Apereo 2018 - Webcomponents and building a unified authoring experience for a...
Apereo 2018 - Webcomponents and building a unified authoring experience for a...Apereo 2018 - Webcomponents and building a unified authoring experience for a...
Apereo 2018 - Webcomponents and building a unified authoring experience for a...
 
Apereo 2018 - HAX lightning talk
Apereo 2018 - HAX lightning talkApereo 2018 - HAX lightning talk
Apereo 2018 - HAX lightning talk
 
Apereo 2018 - NGDLE efforts
Apereo 2018 - NGDLE effortsApereo 2018 - NGDLE efforts
Apereo 2018 - NGDLE efforts
 
Apereo 2018 - Polymer training
Apereo 2018 - Polymer trainingApereo 2018 - Polymer training
Apereo 2018 - Polymer training
 
Building and Envisioning a Next Generation Digital Learning Environment
Building and Envisioning a Next Generation Digital Learning EnvironmentBuilding and Envisioning a Next Generation Digital Learning Environment
Building and Envisioning a Next Generation Digital Learning Environment
 
History of the web as a platform from 1996 to 2017
History of the web as a platform from 1996 to 2017History of the web as a platform from 1996 to 2017
History of the web as a platform from 1996 to 2017
 
Drupal Govcon 2017 Polymer workshop slides
Drupal Govcon 2017 Polymer workshop slidesDrupal Govcon 2017 Polymer workshop slides
Drupal Govcon 2017 Polymer workshop slides
 
Web components, polymer and aligning drupal's destiny
Web components, polymer and aligning drupal's destinyWeb components, polymer and aligning drupal's destiny
Web components, polymer and aligning drupal's destiny
 

Último

Último (20)

How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 

Rethinking system design