| CARVIEW |
|
projecttimer
|
| Summary | Plan projects, book on tasks and use various reports to control |
|---|---|
| Categories | None |
| License | GNU General Public License (GPL v. 2.0) |
| Owner(s) | wpernath |
The ProjectTimer is not only another project planning tool. It is an all-in-one java swing project planning and controlling tool with some additional nice features. Focus lies on booking and controlling. Although you are able to plan your project, you are allowed to plan the project with MS Project2003. Export your project plans to a flat XML file and import it into the ProjectTimer.
See screenshots
What it does
- Comprehensive, great looking Java Swing GUI, based on swingX, jgoodies looks and forms
- Managers are able to create and plan new projects
- Developers are able to book their work on project's tasks
- Developers have many reports to see what they have done in the past
- Managers have some more reports to control the projects
- Thanks to JFreeReport, there are many good looking exportable reports
- Projects can be exported to a xml file.
- The ProjectTimer is able to import project plans from MS Project 2003 XML file format.
- The ProjectTimer is able to synchronize all projects with a MS Project2003 Server instance. Managers are allowed to create and plan projects with Project2003, the ProjectTimer server runs a nighly job to synchronize all resources, projects and bookings.
- Thanks to the optional server part, all resources of a company may share a single database.
- The ProjectTimer has a local hsql database which is an exact copy of the remote one. Roaming users are able to work with the application allthough they are somewhere outside the company's network. The next time, the server is reachable the local database gets synchronized with the server.
What it is
The ProjectTimer is split into two parts. The optional server is an EJB-2.1 EAR with some hessian servlet interfaces.
The client part is a java 5 swing application, based on swingx and other components.
For maximum flexibility the client has its own local database which contains a copy of the server one. Client and server are replicating their data on a last-one-wins base.
What must be done
- Localization of the client part. Currently only german is fully supported. English must be edited.
- Some report files (jfree-report) must be localized for english
- The ejb-layer, the DAOs and DTOs are currently generated by a selfmade generator called EJBCreator. This should be changed to something lightwight. I want to have a fully lightwight server based on tomcat, spring-2.0 and hibernate. But I didn't have the time to do so.
Where it runs on
The ProjectTimer was tested on Windows, Linux and MacOS X and is currently used by approx. 20 users.
How to... Build the beast
- Check out all sources using subversion
- copy bin/build.properties to bin/custom-build.properties and change the properties
- Install apache ant
- Install a Java 6 JDK to build
- Run "ant dist-client" using java 6 JDK
How to... Build the server
- Install jboss-4.0.x
- Install postgreSQL-8.x
- Check values in bin/custom-build.properties for correct jboss location and correct database URL
- call "ant deploy" to copy all required files to jboss container.
- Setup postgreSQL database by creating a new database with UTF-8 encoding called "timer" owned by a user called "timer".
- Execute db/create-db.sql in new postgreSQL database for tables, views and procedures
- Execute db/create-std.sql in new postgreSQL database for some initial data.
- Start jboss with configuration
How to... Install the client application
- Run "ant dist_client" to have the required directory structure build in "build/dist/client".
- Copy all files and folders from "build/dist/client" to a folder of your own
- double-click on bin/start-timer.(sh|bat) to execute the timer.
Client-only installation
If you don't want to have a central server instance, it is not necessary to install the server part. As said somewhere above, the client has a complete infrastructure and a local hsql database.
So to quick test the client, download the current installer from Documents & files (as of this writing 1.0.0), and run it like this:
java -jar ProjectTimer-install-1.0.0.jar
Note that the installer needs to have a JRE 5 to run.
After installing, start the PT by clicking on the Icon in the start menu (Linux, Windows). Or by walking into the correct folder and typing:
start-timer.(bat|sh)
Once the login screen pops up, use admin/#admin as user name / password combination. If the Client started successfully, firstly create a new Resource by clicking into "Verwaltung --> Resources --> Neu...").
Then create a new project, create some new tasks and assign a resource to some of the tasks.
After a refresh in the main window you can see the project and the tasks you have created. Now you are able to start a timer and book some time onto the selected task / assignments.
NOTE: The GUI is currently not fully translated into english. So only german users are really happy with this beast.
Who did it / About the author
The application was developed by Wanja Pernath (w.pernath at gmx dot de) within three years on weekends and evenings. But this thing is going to be too complex for me, so I have decided to release it under the terms of the GNU General Public license.
I hope there are some developers who have time and interest in making this pice of software even better and more stable.
- Do you know swing? -- Come in and work on the GUI.
- Do you know spring / hibernate? -- Come in and work on the server part.
- Do you want to write an AJAXified web frontend? -- Come and ask for it!
- Do you speak german? Do you want to write the (online) documentation? -- Come and ask for it.
- The ProjectTimer is a localized tool. But the only supported locale is currently german. Do you speak english? French? -- Come and ask to translate it.
Thank you!
| Powered by CollabNet | Feedback |
FAQ |
Press |
Developer tools
© 1995 - 2007 CollabNet. CollabNet is a registered trademark of CollabNet, Inc. |
