views:

108

answers:

3

I have finished the user manual as suggested in the accepted answer here. However, for the developer documentation of my application, other than briefly mentioning the topics on the following:

  1. purpose of why this application needs to be made in the first place
  2. libraries, SDKs, and APIs used
  3. major components of application in terms of the windowing blocks, and types of user controls and settings offered in the application for simulation operation: details in implementation and UI
  4. major algorithms and message handling mechanisms in the application

I'm not sure if I'm missing any major items that a developer would want to know about my application, assuming no prior knowledge of this program exists. It would be great to hear some comments. Thanks in advance.

+3  A: 

I always like to see a database table diagram. It can realy cut down on the learning curve when looking at existing code.

EDIT
I always like to include a "how to debug" section. This would include any special utilities that I wrote during development that I used to debug issues. It would also include the location and info on any application/error logs.

KM
Database? Which database?
Otávio Décio
Thanks for this comment. Unfortunately, there isn't that much of a database management on the program at this point. In this scenario, what should be done?
stanigator
@stanigator, in that case, you could include a one liner (possible in #2): "no database access"
KM
@KM: Thanks for the insight. I will do that in a 1-liner in the introduction.
stanigator
+1  A: 

I like what you have so far. I'd add two things off the top of my head.

If this is a coporate application that will be supported later...

  • Where it is installed (server, end users workstations, etc)

  • exceptional decisions made in the design (for example, we did something in a way that is inefficient as far as database design is concerned because it allowed us to meet such and such a business need.

IN short, it's easy to read code and see what it does, but for anything that is not straightforward or easy to understand, busniess reasons for decisions that migh look odd later are very helpful.

David Stratton
Exceptional decisions would be mentioned in the smaller modules when appropriate. Is it suffice to say where and how the program is installed in the introduction?
stanigator
Btw, it's an academia application that would be used by resident medical doctors, and it will be continued to be supported.
stanigator
+2  A: 

"Cookbook" style examples that illustrate recommended usage for common scenarios, including unit testing.

Schemas or other format descriptions for any input or output files or data streams.

Database schema description/diagrams.

Available customization points.

JacobM