CRC Tool Version 1.0 Beta Release Notes

This is the beta release for a Class-Responsibility-Collaboration (CRC) Object-
Oriented Design Tool, CRC Tool. This release has the basic functionality to do
responsibility driven design as described in Designing Object-Oriented Software by
Wirfs-Brock, Wilkerson and Wiener. However, it lacks refinement and a few features
which would be nice to have in such a tool. For example, collaboration diagrams
drawn from the specification are not supported in this release. Hierarchy diagrams
are supported; but there is no way to print or output them to the design document in
this release. In addition, multiple inheritance in hierarchy diagrams is not handled
very well.

This release is intended to solicit input on the usefulness and usability of the tool as
it now exists. No features have been crippled. Output file upwards compatibility, for
files created with this release, with the production release output files is guaranteed.
Assertions are enabled in this release; any assertions encountered should be
written down and reported. It is recommended that a save of the data file to a new
file be attempted after an assertion, since a program crash may be imminent.

The Win32 version of this program requires the ctl3d32.dll to be installed in the
system directory. The winnt directory contains the file for Windows NT 3.5.
The win31 directory contains the file for Windows 3.1. To run the Win32 version of
CRC Tool under Windows 3.1 requires Win32s 1.2. This can be obtained from
Compuserve or from ftp.microsoft.com on the Internet. The Windows 3.1 version of
this program does not use the ctl3d.dll to create a 3d look, since it was found to be
incompatible.

This beta release will expire on May 1, 1995. This program will be offered as
shareware in the production version. This program is not freeware. Tentative pricing
for the shareware production version is $40. A corporate license is $200.

Contact Stan Mitchell with input regarding problems or requests for this program at:
phone:		(206)-277-6007
e-mail:		stanm@users.compumedia.com.
US mail:	Stan Mitchell
		3107 Smithers Ave S
		Renton, WA 98055

Known problems:
 an anemic help file
 inconsistent keyboard accelerators in dialogs
 not all controls in dialogs have accelerators
 the behavior of nested subsystems is untested
 the only way to select which subsystems or classes to print is by page number
 redraw of views is not optimized
 there is no way to get from Responsibility View to System View and vice versa via
the keyboard

Features to be added as time permits:
 page numbers on print out
 commands to expand and contract the hierarchical tree in the System View list
 collaboration graphs
 allow selection of classes in hierarchy diagram views
 undo delete
 exception handling
 save views and window status for a design on close
 merge input design files
 option to display WYSIWYG size cards with scrollbars in card views
 consistency check; e.g. contracts have responsibilities, contracts have clients,
abstract classes don't inherit from concrete classes, etc.
 selection of classes and subsystems for printing of cards
 statistics/cross-reference: e.g. what classes use a given contract, etc.
 hypertext design document in html output format
 hypertext design document in winhelp rtf format
 drag 'n drop between all views
 add font selection, card size, line height, and print backs option to print preview
toolbar
 write design to a database
 provide scripting language to extract information from design
(Comments on the prioritization of features are welcome)


Differences between 16 and 32 bit versions of CRC
Tool:

1. 32-bit version supports long filenames.
2. 32-bit version under Win32s does not work with all printer drivers, e.g. HP 520.
3. 16-bit version does not have 3-D look on controls in dialogs.


Installation:

For Windows NT
1. Create a directory for CRC Tool.
e.g.
md c:\crctool

2. Use pkunzip to unzip the crctol32.zip file into the directory created.
e.g.
cd c:\crctool
pkunzip -d a:crctol32.zip

3. Use program manager to create a new group and an icon for CRC Tool.

4. If necessary, copy the winnt\ctl3d32.dll to the winnt\system32 directory.
e.g.
copy c:\crctool\winnt\ctl3d32.dll c:\winnt\system32



For Window 3.1 (16-bit version)
1. Create a directory for CRC Tool.
e.g.
md c:\crctool

2. Use pkunzip to unzip the crctol16.zip file into the directory created.
e.g.
cd c:\crctool
pkunzip a:crctol16.zip

3. Use program manager to create a new group and an icon for CRC Tool.



For Window 3.1 (32-bit version)
1. Obtain and install Win32s 1.2.

2. Follow steps 1-3 of Windows NT installation

3. If necessary, copy the win31\ctl3d32.dll to the windows\system directory.
e.g.
copy c:\crctool\win31\ctl3d32.dll c:\windows\system


For Windows 95 Beta (untested)
Follow instructions for Windows NT.
If Windows 95 version is 4 or greater the ctl3d32.dll should not be necessary.
