flipturn.org - stuff. things. other stuff.
dvorak | pantera | hacks

Iteration2

Phase: Elaboration

See ProcessOverview for a description of the process I'm going to be following as I develop this project.

Management

  • Phase goal: Plan development.
  • Iteration goal: Further refine the vision and architecture. There will probably be at least 3 more iterations in the elaboration phase, because this is going to be a fairly large framework.
  • Artifacts: Business Case | Software Development Plan | Vision | Work Breakdown Structure | Status

I'm going to be expanding the Vision, Software Development Plan, and WBS during this iteration, but they aren't going to be baselined until the Architecture Lifecycle Milestone.

Environment

  • Phase goal: Install development environment and change management database.

The development environment was defined in Iteration1, and is not complicated to set up. I'm not using much in the way of automated processes at the moment, since I'm creating most of my own frameworks.

I want to set up a Trac server to satisfy the change management database, but I have to figure out how to do that in my hosting environment.

Requirements

  • Phase goal: Define architecture objectives.
  • Artifacts: Use Cases | Release Specifications | Vision

The architecture objectives are evolving and are described in the Architecture document.

For this iteration, I want to be able to handle the following use cases:

  • Files should open in a new tab
  • Updates in one view should be propogated to a view that doesn't use the STC to display
  • Perform user scripting

Design

The architecture baseline won't be complete during this iteration, but it will be evolving in the Architecture document. In a few iterations, I will have a better idea about how many iterations it is going to take to get to a stable architecture, but for now all I can see is that it is going to take several more iterations in the elaboration phase.

Implementation

  • Phase goal: Produce architecture baseline.

As noted above, it will take several more iterations before I can produce the baseline. I still am working on better models for the configuration management, menubar/toolbar, and underlying data source (currently STC-based, but needs to be abstracted).

Assessment

  • Phase goal: Assess architecture.
  • Artifacts: Release Specifications | User Manual

Work in the assessment workflow is going to determine how many iterations I need in the Elaboration phase. After every implementation of a potential architecture, I'm going to evaluate it against the vision and see where it stands. If it can satisfy the vision, it will become a candidate architecture, and will probably require one more iteration in order to fully test it.

Assessment of the code developed during this iteration:

  • hexedit now propogates both ways: it can change the underlying STC and reflects changes in the underlying STC. The updating algorithm needs optimization, but that's for later
  • files open in new tabs
  • user scripting is now possible through a configuration file that specifies plugins to load

Deployment

  • Phase goal: Define user manual.
  • Artifacts: Executables | User Manual | Developer's Guide

Milestone

  • 17 Oct 2006: completed implementation workflow for this iteration
  • 17 Oct 2006: released 0.2.0