openedx / platform-roadmap

Tracking the maintenance, enhancement, and advancement of the Open edX project.
11 stars 1 forks source link

[Proposal] Move CCX to a plugin #222

Open dianakhuang opened 1 year ago

dianakhuang commented 1 year ago

Abstract

CCX is a little-used feature that is heavily integrated into the platform. We believe that to make it more maintainable, the DEPR working group believes we should make the attempt to move the work to a separate plugin, in order to both cleanup and simplify the code and help improve our plugin architecture.

Context & Background

CCX was a project done as an experiment in order to enable small, limited class reruns without enabling editing of the original course. It does not have widespread usage on edx.org, but it does have a widespread imprint on the edx-platform codebase.

CCX course author documentation

Scope & Approach

I believe the primary beneficiary of this initiative would be any developers working on the edx-platform codebase, especially anyone who is doing work on modulestore or course runs. The refactoring of the code would help simplify it greatly and make it easier to reason about.

Value & Impact

Some metrics could be:

Milestones and/or Epics

Since this is in the early proposal stage, we do not have any milestones or epics sketched out yet.

Named Release

Unknown

Timeline

Since this is in the early proposal stage, we do not have any milestones or epics sketched out yet.

Proposed By

DEPR Working Group

Additional Info

Apologies if this isn't the right place for this (yet?). If I should submit it somewhere else as a proposal, let me know.

github-actions[bot] commented 1 year ago

Thanks for your submission, @openedx/open-edx-project-managers will review shortly.

jmakowski1123 commented 1 year ago

There are community partners who rely on CCX, so it will be necessary to broadcast this proposal pretty widely, and seek feedback/perspectives. Two channels that immediately come to mind are via the forums, and via the product working group. Two things I'm sure people will be interested in are 1) more info on timeline and 2) more info on alternative/replacement.

The need for CCX-like functionality popped up a few times in the market research I did for the Modular Learning Initiative, and there is a use case for something like a Master Course/Children Course template and workflow (I was sort of thinking about it as a CCX 2.0 endeavor).

Given that use case, I'm wondering if a more structured discovery project for an alternative would be helpful. tCRIL and OC have scoped out (very early stages) a phase in the Modular Learning Initiative for creating Master Course templates, and we have user stories written. I'm wondering if we should merge further discovery on that initiative with this DEPR proposal? There are a lot of questions in my mind. Does the Master Course Template concept/user stories meet the needs of current CCX users? Is it another viable alternative to replace CCX? Do we need that and a CCX plugin?

Also, do you have a sense of the timeline for this proposal? Even general - like, 6 months from now? 1 year from now?