|
Introduction to the Qoole-AID
Development Documentation and Guidelines
Development project standards, guidelines, and documentation can be
extremely crucial to any software project - even those that are
Open-Source. This section will attempt to outline the documentation
related to Qoole-AID that can be found on this site. Because this project
is still in it's early stages (11/06/2001), much of the documentation is
incomplete. Over the next few weeks this will be rectified and the
majority of the documentation, architecture designs, and guidelines will
be finished.
You may be asking yourself why so much effort is being put into
documentation instead of just doing the code. For starters, it is
sometimes difficult to get from point A to point B without knowing how to
get there or what not to do along the way. It also becomes much easier for
additional developers to enter in the middle of the development process.
In short, because of the amount of power we wish to include in this
application, having it mapped out ahead of time allows for a shorter
development cycle; that means you get the application faster.
Document briefs
Coding Style Guidelines
Due to the project being object oriented as well as written in C++,
this document plays a strong role in ensuring that the development and
coding of the application is consistent. This document covers type
declarations, type safe styles, naming conventions, advantages, and
pitfalls to avoid. It also provides a roadmap as to how the code
should look (indents, alignment, and the oh-so religious placement of
code block braces). This will allow new Qoole-AID project developers,
and those who wish to extend the application of their own devices to
quickly navigate and distinguish the various coding methodologies.
Design Documents
Design documents for Qoole-AID will come in two flavors; Functional
Design Specifications and System Architecture Designs. While each
flavor may have it's own variations (detailed vs. complimentary) both
play a very important role in describing how the application will be
built.
Function Specifications play the role of describing how the
functionality of a specific code collection or GUI component should
operate. This allows the developers to analyze and collect the exact
requirements needed or expected in order to implement the topic of
the specification.
System Architecture Designs allow the developers to visually see
the components, their relations and inheritance models, and the
entire structure of the application from a highly technical
perspective. These designs are used for implementing, knowing the
full interface model, and extending the functionality of object
classes used within the application.
Application Development Standards
Although the exact extend of what this category will contain is
still being discussed, some topics have been initially agreed upon.
The following topics will exist under this category:
Terminology and Definitions.
Application Usage (tools used for design and development).
Plug-in SDK documentation.
Class documentation (may move to Design Documents).
Hopefully these documents will be finished in the very near future.
|