Skip to content

Manage software maintenance #61

@benoit74

Description

@benoit74

Issues like #13 and #17 have proven that we do not achieve to perform regular maintenance of our software despite having opened issues. And I feel like this is true of mostly all software, at least we are not good at managing this. Sometimes we push hard on one system upgrade (like we just did on Zimfarm) but we miss a systematic and systemic approach.

And we also fail to update these issue with precise information as situation evolve.

I feel like a dashboard with all our maintained software and its maintenance status would help.

It would list scrapers, libraries, readers, container images used to run production (e.g. do not forget about PostgreSQL version upgrades), ...

Depending on context, it could list things like:

  • language (Node.JS, Python, ...) version used and expected (according to policies / process / goals)
  • OS version used and expected
  • core dependencies (e.g. for scrapers scraperlib / libzim / browsertrix crawler / wombat / ... ; for frontend Vue.JS and Vuetify ; Django ; ...) version used and expected
  • last release date
  • last dependencies upgrade
  • list of pinned issues and severity typically

I feel like building an automated system to update this dashboard might be tricky, but a quarterly manual update seems feasible. Especially since it leads to a quarterly review and action plan. This review should also lead to determine the effort we want to push to maintain.

Having such dashboard could also help better understand if the situation is getting better or worse. For instance I have the feeling it is getting much worse, but I'm convinced this is only a gut feeling and would deserve a real measurement.

WDYT? I intend to build such a dashboard for my "perimeter" anyway, but would like to gather feedback before doing so and have the opportunity to scale this beyond my "perimeter".

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions