in
Forums
Blogs
DevExpress.com
Client Center
Support Center
DevExpress Channel

Gary's Blog

XAF – Project Management Application

Recently I had an IM chat with the XAF team that went something like this (I paraphrase of course):

Them: Hey Gary we need a new PM app so we’re gonna write one and we want you to blog about it as we go.
Me: Cool, no problem. Just let me know what you want and I’ll get it out there on the blog.
Them: That’s great. Thanks. You know you’re the best evangelist we’ve got, right?
Me: yeah I do.
Them: The thing is…
Me: Yeeeeees?
Them: We’re kinda busy with the whole Writing-XAF-Thing, so maybe you could write the app and we’d be your customers; it’d be done agile like?
Me: You mean you’d change your mind at every turn?
Them: Yeah.
Me: And whilst this is going on, you want me to blog about it so our customers can throw in their tuppence worth too?
Them: Yeah oh, and can you ship the code too so that they can use it for reference?  
Me: By ‘reference’ you mean pick apart every line of my code and hold it up for scrutiny and public ridicule?
Them: Yeah, sucks to be you, huh?

imageAnd so our XAF Planning Application was born. Now I know what you are thinking (even you Rory Becker and frankly that’s disgusting). You’re thinking here’s another XAF RWA. Well you’re wrong, it’s not. We’ve spoken before about the fact that we’re not doing a RWA for XAF, not now, not ever, no siree Bob. What this is, is an application that will be used in the real world, and that, dear reader, is completely different. :-)

This application is going to be used by the XAF team for planning projects, and umm… holidays and gadget buying trips and… well you get the idea, and it works something like this. Well, it works something like this for this iteration, I dare say there’ll be changes prompted by the team (and you guys) for iteration 2 – N, but for now, it works like this:

When you open the application you will notice that there are two groups. The first group, labelled “Project” holds an action for Project and one for Estimate. The first will allow you to work with Projects whilst the other will allow you to work with Estimates. Projects are pretty self explanatory and Estimates will allow you to “size” a project at the “getting the budget” phase, before there’s even is a project to speak of. (Of course, being the first iteration that functionality is not complete, but we can CRUD Estimates in the meantime). Once the project has been given the go ahead, Tasks can be created from these Estimates, or they can be created manually.

Okay so let’s have a closer look at Estimates:

image

As you can see, an Estimate has a name, a summary of the work to be done, the effort required to complete the task (in days) and, optionally, the Resource who will carry out / test / manage the Task.

Now let’s have a look at the Project:

image

Our Project has name, a manager (the person we’ll all blame when it goes wrong), the percentage complete (this will be calculated from the percentage completes of the tasks attached to this project), a start date and an end date. The Project also has collections of Estimates, Tasks, Resources and Milestones for the Project.

In the second group there are actions for Project Manager and for Resource. Currently anybody working on the Project who is not a Project Manager is just a Resource, this may change in the future. Resource inherits from the built in Person class within XAF and Project Manager inherits from Resource.

As this is the first iteration I have not included the source code as it only contains the class definitions and validation rules and, as anyone who works with XAF will tell you, that is not very exciting. Having said that, if anyone desperately wants the code from this iteration just leave a comment here and I’ll publish it.

Well that is it for this post. I’m planning weekly iterations and in next week’s iteration we’ll look at creating Estimates and then adding those to a newly created Project, before using them to automatically generate Tasks for the new Project.

Published Jun 25 2009, 03:31 PM by Gary Short (Developer Express)

Comments

 

Robert Fuchs said:

Wow, I'm actually baffled about this change of mind ;-)

June 25, 2009 11:17 AM
 

bryan nehl said:

Initial thoughts re: % complete.  If you keep adding stories from the backlog you can keep the project at 90% complete!

Consider fields for est & actual as well as indicators for if this task is the result of a verification or validation issue.

You may want to check out http://www.projectcards.com/ as a possible source of inspiration.

June 25, 2009 11:26 AM
 

Rory Becker [DX-Squad] said:

> Now I know what you are thinking (even you Rory Becker and frankly that’s disgusting)

Yeah sorry ... I promise to try to refrain from thinking you should write XAF Apps in IronSmallTalk..... Smalltalk... Really awful habit :P

June 25, 2009 11:45 AM
 

Gary Short (Developer Express) said:

@Rory, touche!

@Bryan thanks for the info, I'll look into that.

June 25, 2009 12:31 PM
 

MESUT KOSUCU said:

Hello

We have just rolled out our CRM application including CRM, Project Management, Accounting modules which are being used by 150 employees in our company. We are managing 70 international exhibitions in 20 countries in this application. This application has been developed by using express application framework. and It works perfectly..

Thanks DevEx..

June 25, 2009 2:10 PM
 

CESAR F. QüEB said:

Hi, nice to read this...

Yeah... don't forget the holidays... consider the "Assigned to" field... and allow to end user choose a developer....

Attachments for the project are welcome...(this seems like a resource)..

An "State" field (Started, Dwngraded , Canceled, Finished, etc.)..

Possibility to chronometers the expended  time in an specific task.

"Details".... language, databases related, involved programmers..

Sort the tasks for priority, entered time, etc.

Nice work..

June 25, 2009 2:19 PM
 

Martin Brekhof said:

Although it is not mentioned, can one assume that it will be Windows as well as Web-based?

Great initiative by the way.

regards,

Martin

June 25, 2009 2:52 PM
 

Carsten Fich said:

Hey we also made our own project management tool in XAF. You can read about it here: www.lightweightplanner.com/lightweightplanner.pdf

All the best!

June 26, 2009 5:37 AM
 

Gary Short (Developer Express) said:

@Martin, yes there is a web app included, more on than in futures posts.

June 26, 2009 6:41 AM
 

Toby Miller said:

So not an RWA but...um....an XPA?   Ok, quick -- everyone get into the forms and update RWA references to XPA.

June 26, 2009 5:30 PM
 

Valuable Internet Information » XAF ??? Project Management Application - Gary's Blog said:

Pingback from  Valuable Internet Information » XAF ??? Project Management Application - Gary's Blog

July 5, 2009 4:56 PM
 

Project Management Procedures said:

Thanks for sharing this post

July 10, 2009 2:50 AM
 

Gary's Blog said:

Well I’m back from my holidays and raring to go, so let’s take a look at our project management application

July 27, 2009 12:18 PM
 

Gary's Blog said:

This page will serve as an index for the series of posts on creating the Project Management Application

August 12, 2009 9:42 AM

Leave a Comment

(required)  
(optional)
(required)  
Verification code: Required
   
Add
Copyright © 1998-2010 Developer Express Inc.
ALL RIGHTS RESERVED