Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Component / Feature cohesion
  • Eliminate Deployment dependencies
  • Studio and LMS become mostly Frontend Views

5. Plugins and SOLID Principles: edx-platform becomes a Plugin Platform (

...

Decided)

Summary

To reverse the direction of the monolithic evolution of the edx-platform, it is necessary to have individual apps plugin to the platform and follow the S.O.D. of the SOLID principles as described in Django App Plugin.  Additionally, to support the varying feature requirements and experimentation by the open edX community (and within edx.org), a plugin framework provides a powerful flexibility that keeps the edX core as an invulnerable and stable platform but a welcoming enabler.

...

Motivation

...

10. API Best Practice (Todo)

11. Domain-driven Design Principles

...

  • celery-utils capabilities - LoggingTask and PersistOnFailureTask
  • Using kwargs instead of positional args
  • For real-time synchronization with management command as fallback of celery failures

13. Authorization (In Progress)