Katascope Studio

last modified: August 12, 2006

Software Features

Development Features:

API Layers:

Working:


I thought about a new project - To log the entire experience of writing a real program using the ExtremeProgrammingCorePractices. Since it is a LoneDeveloper project, I might call it "ExtremeProgramming for the LoneDeveloper"

The timeline is:

User Stories/Requirements:

Developer Requirements:

* Code & Projects
* Documentation and notes
* Artwork
* IssueBase
* CVS
* Freemind
* Context
* Perl
* EddiesWiki
* CppUnit
* DoxyGen

So here's how I plan to apply the 12 XpTudes # Fine scale feedback

* TestDrivenDevelopment - Strong testing, and TestFirst development
* PlanningGame - Per flow chart
* WholeTeam - Countered by LoneDeveloper
* PairProgramming  - Countered by LoneDeveloper

# Continuous process rather than batch

* ContinuousIntegration DailyBuild and AutomatedUnitTests through the AutomatedConfigurationManagementEnvironment
* DesignImprovement/RefactorMercilessly - Applied per iteration
* SmallReleases - Applied per iteration

# Shared understanding

* SimpleDesign/OnceAndOnlyOnce - Per Refactoring cycle
* SystemMetaphor - From the PlanningGame
* CollectiveCodeOwnership - Via CVS, countered by LoneDeveloper
* CodingStandard or CodingConventions - Will establish ahead of time

# Programmer welfare

* SustainablePace (original name: FortyHourWeek) - Applied as 1 hour per day pace

Logbook of Xp practices I like:

Logbook of Xp practices I don't like or haven't used:

Planning:

Designing

Coding

Testing


An optimal balanced meta-model - try and be somewhat universal in context-get a good enough model to be able to maintain.

Write code, documentation and documentation code, but never code documentation.

Local ErrorControl:

All tests follow this rule.

Date/time Module causing error/Source file/Line Error ID & Human readable string Extra data

Assert should be used liberally in debugging, but should not make it to release versions unless the assert logs instead of exists.

Errors should throw exceptions of a few types (severe, moderate, mundane) and have a filter that catches them and does the appropriate action - based on program preferences.

Unsorted:

Whether by ConfigurationManagement or AutomatedScript - Know your codestate when you get into work

Allows simulation of a user including a timed startup and shutdown.

Whether by Backdoor, network port, or script file - Allow diagnostic viewing of internal live data

Replace all malloc/free/new/delete calls with a chokepoint and use it to detect memory leaks.


Visuals Research:

Public Software:


LayneThomas


Loading...