Home
Documentation
Download
Screen Shots
Email

Help support
open source at

Titration
 def: a standard solution to determine the strength of another solution

Project Tracking Software

Current Stable Release 1.3.3

02/01/06

Grab it here: [download
Screenshots: [screenshots] (UPDATED)

Version 1.3.3 
If you are using version 1.3.x you will need to run this command on your database: 
ALTER TABLE USERPROJECTS ADD (HIDDEN INTEGER DEFAULT 0);

If you are going with a new install, the database will be built with this feature already enabled.

New Feature
***BUG FIX***
**User items (rows) can now be hidden for ease of use for users with a large
number of projects that are completed, paused or on-hold.

01/20/06

This release has a lot more spit and polish along with a number of new
components that are better suited for an Enterprise style use.
In doing so, the Admin feature has been beefed up a little, a percentage
completion has been added. However, in order to support multiple users
for the same project the percentage complete is stored by individual and 
not by project. To accommodate the fact that an admin will need to see
all of the projects assigned to users and/or what projects a user is 
assigned the 'Project Overview' tab was added. This new tab is supported
by three means of saving; Printing, comma delimited file and plain old
ASCII text.

During the redesigning phase of this some of the columns and tables were
altered. If you are running version 1.1 or 1.2 you will need to execute
the following SQL statements on your database. **If you are not using MYSQL
then you will want to alter the SQL statements that support these tables.

Conversion from 1.2 to 1.3

alter table USERPROJECTS add (COMPLETEDPCT INTEGER DEFAULT 0);
alter table USERPROJECTS add (PROJECTHOURS INTEGER DEFAULT 0);

The rest of the changes are done thru the software itself and will easily
accommodate the new database changes without altering a users preferences
or their settings. One note that might want to be taken into consideration is 
the updating of the hours spent from PROJECTS to USERPROJECTS. This will
more accurately reflect any hours listed in that column.

New Features:
Some minor bug fixes and the overview tab. Nothing else.

Coming in Release 1.2.3:
Saving of user data when they are no longer assigned to a project. Presently
if this happens any hours or percentage completed is removed.

A streaming exception, output log that can be viewed. Right now if the database
connect fails on initialization no exception is noted. This is tops on the list
to be corrected.

New Install:
This program is developed under the rule of -keep it simple-
All of the SQL statements are external of the application
so that different TO_DATE/DATETIME/DATE_FORMAT commands can
be massaged and used on any database. It would be nice if 
we could get a standard, accepted, DATE manipulation command.

PRIOR to using. A database will need to be established. Once
that is done, open ./conf/config.xml and put in the goodies
for the <database> xml section.
Here are a few examples for different databases:
MySql:
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://DBServer/titrationDB</url>
Oracle:
<driver>oracle.jdbc.OracleDriver</driver>
<url>jdbc:oracle:thin:@DBServer:1521:titrationDB</url>
HSQLDB:
<driver>org.hsql.jdbcDriver</driver>
<url>jdbc:HypersonicSQL:hsql://DBServer</url>
SQLServer:
<driver>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver>
<url>jdbc:microsoft:sqlserver://DBServer:1433;DatabaseName=titrationDB</url>

There are two ways for Titration to find the appropriate library (jar file).
1) Put it in the classpath prior to running
2) Simply drop it in the $TITRATION_HOME/lib folder. The application
has a built in classloader that will find any .jar or .zip files

******************** IMPORTANT ********************
Once you have this done run the command: java -jar titration.jar -initdb
This will build your database. If you're going to be using any high-
performance database you can go into ./conf/initdb.sql and change all
of your VARCHAR to VARCHAR2. 
***************************************************

**Please take note MYSQL is CASE SENSITIVE so if you change some of the tables
make sure you update them in ./conf/config.xml. 

Once you have this done you can simply double click the jar or run java -jar titration.jar

Building the project:
I have written the code so it's compatible with 1.4.2 or greater JDK (it -might- run on 
any platform). The JBuilder project is included in the source release as well as a
standard ant script. If your running windows make sure you use ant -f windows.build.xml
for build.xml is a sysV (Linux) directory structure release.
The ant file is designed to base all paths of the ROOT.DIR property. Simply change that
and you will be good to go.


12/07/05

System remains highly stable I've just updated some bugs that have been
found and pointed out.

Following code changes include:
Added logging. Output now goes to ./log/titration.client.log via the Java Logger
Fixed an sql query. There was a find/replace but that caused the word 'INSERT'
to be replaced by a tag name.
Now accepts .zip as a library. This was a -big- bug that I posted a fix for
and have since fixed with this release
Fixed an exception being throws when no projects are selected and [Load] is clicked.
added the ability to 'close' a project.

Note: This release is completely backward compatible with both the database and
code of the stable 1.2 version. However, in order to close out a project one will
need to execute the following SQL statement so the system can read it from the DB.
The code is already in place to support the database simply needs an update.

insert into PROJECTSTATUS values(4,'Closed');

Aside form these changes, all is the same.

Grab it here: [download
Screenshots: [screenshots]

11/17/05

Added the last of the goodies over this past week.  Changes in the new release [1.1] 
# Supports unique individual project priorities (as opposed to everyone having to share the same priority)
# New reporting function allows printing and exportation to a cvs file
# Administrator can now -assume- a user and change priorities

Grab it here: [download
Screenshots: [screenshots]

11/09/05

I'm rolling it out today, it's working 100%.  In the queue for this app is a web-based interface that will allow for reporting and developer project notes and status viewing.  
Grab it here: [download
Screenshots: [screenshots]
Titration, cause-and-effect It's bad enough that we architects, engineers and developers have enough to do with shoulder-tapping clients and co-workers, shovels of -priority_1- projects (Is there a priority other than 1?) and countless big-brother request ranging from 'how many hours on this project' and 'where are we on that project' that it got so bad that I slowly found myself micro-managing my own projects and spending less and less time development.

If you can't tell I wrote this app with a dash of spite and pinch of -you have to be joking me-.

Purpose This program is a multi-user, multi-project tracking system. It's simple and is designed to work with other 'Project Management' and time-tracking projects.  This application is designed to show present work load, priority and state of (closed/ongoing/queued/active) projects.  I believe if you take a quick look at the screenshots you will have a very high-understanding of what the software is capable of (and it isn't much)

What this software -is not-
This is not a micro-management package, it is not a project management tool, it is not an time-tracking software.  

It is an extension of tools that do that.
How does it work? It works in two modes, individual-stand-alone or corporate level having multiple users with multiple projects (M-M).  Each user can create a project, the admin can create a project but -only- the admin can assign users that did not create a project to that project.  I can't state enough that is not a high-level, multi-faceted management tool. It's designed by an software architect for software architects.
Database The SQL in this project is pure ANSII allowing this project to run on -ANY- JDBC compatible database.  Simply edit conf/config.xml and your off and running  Nothing special, nothing fancy
 
Author
I presently work as a Sr. Application Architect for an ATM transaction processing company.  I received my B.S. in Computer Science and a Masters in Information Technology specializing in Network Security/Computer Forensics. Linux is my operating system of choice and I work hard to keep on top of the new and exciting changes that Java brings to the development table. I am a strong advocate of the Open Source movement and remain very thankful to the SourceForge community.  New and Improved...I'm going back to college now to obtain a 'Mechanical Engineering Degree' :) This was my initial degree of choice but life led me down another path. Excited about going back!!
 

Copyright 2005 Steve Gee, All Rights Reserved