The software life cycle (SLC) for theSky is based on IEEE Software Engineering Standards, which define IEEE Standard 1074 compliant Software Life Cycle Models (SLCM), notably the black box model, the spiral model, and the waterfall model.
skyBuilders SLCM is a combination of elements from the Sashimi (overlapped phases) waterfall model (IEEE 1012) and the spiral model (IEEE 1490), enhanced by more recent techniques of rapid prototyping - Extreme Programming (XP) and Pair Programming developed by Kent Beck and Ward Cunningham, among others.
The six overlapping phases (each of which feeds back to most earlier phases) of the skyBuilders SLCM are:
The proof of concept phase of the spiral cycle is accomplished by immediately releasing the earliest developments to qualified end users. Risk analysis is done in conjunction with these end user experiences.
Bugs are communicated immediately to developers via the web, and work on them is interleaved with further development.
Immediate upgrades of end-user deployments are done over the Internet with XML methods. Upgrades can come from a stable server or our developmant server.
The various build cycles of the spiral cycle become a continuous release-report-repair-release cycle. All bugs are reported (with end user comments and developer fix status) publicly on the web (skyBugs report).
skyBuilders Extreme Pair Programming uses a twin side-by-side CPU-monitor environment implemented with VGA switches and Extron boxes, so each programmer can look at the work of the other, but they can work independently as well. One programmer scans for incoming bug reports regularly.
Each phase of the SLC has a timeLined skyPage which the programmers create and end users help maintain to archive the complete software life cycle in a public space. Each of these skyPages maintains references (web links) to research and technology documentation needed to understand the particular skyBuilders serviceModule or serverPage.
Meta suggestion: Store all the SLC phase elements in a database, and generate the life cycle page? Also generate an RDF version of each life cycle page (with semantic tags), and provide a page URI for web recovery.