Projects
I organize my projects using the ISO/IEC/IEEE 15288:2023 Generic Life Cycle model as a guide. The Model defines the following life cycle stages:
- Concept
- Development
- Production
- Utilization
- Support
- Retirement
I maintain seven Project categories based on the Life Cycle Stages. Each category has its own webpage:
1. Project Organization
I organize my projects using the ISO/IEC/IEEE 15288:2023 Generic Life Cycle model as a guide. The Model defines the following life cycle stages:
- Concept
- Development
- Production
- Utilization
- Support
- Retirement
Organizing projects, or systems, by Life Cycle Stage is non-trivial because of three nuances:
- Stages can overlap in time
- Subsystems can simultaneously occupy different Stages
- A project can return to an earlier Stage
The nuances could, in theory, be accomodated by a tailored visualization system. My website, however, is statically generated, uses almost no Javascript, and uses hierarchical directories to store files, so I can’t create dynamic visualizations or tailor my storage of project data.
Let’s explore the nuances to see if we can reduce their impact on project organization and if my projects happen to inherently avoid the nuances in certain ways. In fact, the nuances don’t have too much impact, because:
- The Concept, Development, and Production Stages do not frequently overlap in my projects. Thus, we could have a individual webpage for each of them.
- Some of my projects become Retired and are extremely unlikely to ever enter another Life Cycle stage, e.g. a basic project for an undergrad course. Thus, we could have an individual webpage for Retired projects.
- I consider any publically available project to occupy the Support stage.
- I do not frequently return to earlier Stages.
The biggest impact is due to overlapping Production and Utilization stages, e.g. my riced window manager.
2. Completed
These projects have achieved at least most of their goals.
2.1. Software
- AwesomeWM Desktop Rice for Arch Linux, 2025: configuration and scripting for the Awesome Window Manager and other desktop environment tools for Arch Linux.