I was prompted to write this post as I saw on the Sparx forum a suggestion for enhanced Gantt chart features and in that suggestion it asks for attributes such as costs and hours of various kinds – i.e. real project management attributes.
Interestingly sometime ago, following discussions with a friend who is a project manager, I wrote a small Add-In for EA to integrate with MS Project. Needless to say, what I saw as the requirement wasn’t exactly what they had in mind. Skipping a lot of the ensuing discussion it became clear that a real project manager was unlikely to be interested in using EA, instead they wanted to inspect and extract information from EA into their world. Outcome – I wrote an Add-In for MS Project that interacted with EA. So with both Add-Ins each type of user could work within the familiar context of their normal tool and get the information they sought from the other world.
In the last few weeks I’ve written another EA Add-In for a project management system – this time Team Pulse from Telerik. Once again to capture useful information into a tool that meets the users needs.
In a previous post I looked at improving productivity with EA and at the time it was clear to me that no single tool could do all the tasks I wanted and the need for the Add-Ins I’ve mentioned above just adds further supports for this argument.
Since my improving productivity post I spend some time exploring EA’s workflow. Yet again a potential area to organise and manage stuff. Before I started my understanding and experience of workflow systems were of tools that help in the management and movement of tasks through notifications, prioritisation, checking and automatic escalation as needed. But what I discovered in EA is very much a user-centric model where a person can run a script to check the status of tasks and act on them as they wish. Not what I expected, but on looking further into workflow models this is an accepted model. I see it can be really useful in assigning tasks, and getting status information and ideal for small teams managing their day to day work. Take a look at the Sparx workflow scripting example which illustrates this model – but I see it very much as a low-level detail level tool, requiring the users to set up appropriate scripts – so no out-of-the box solution – and run them. Perhaps EA could have some scheduling – ideal for a little Add-In a script scheduling tool – anybody else want it?
So back to project management. In the early 1980’s I was exposed to some project management training with all the formulas and metrics for estimating the work involved with developing software systems – which I promptly forgot at the time it really didn’t help us get the work done. However, I’ve always intrigued by project management, not least as it fits in with my approach of keeping things in order and well structured .
My experiences of project managers has been varied, and whilst trying to keep clear of project managers for much of my working life, I was heavily encouraged to go through project management training by one of my managers. The aim was to give me some insight into the challenges they face and I can say it was a bit strange spending a week as the only developer in a room of aspiring project managers!
I remain intrigued about the whole process but my view is that most plans are really guesses and, if they were accepted with that mindset it would be fine, however a problem is that management often view plans as cast in concrete statement. If you put down the real estimate the project possibly wouldn’t even get off the ground. But of course these figures wouldn’t be politically acceptable so the plan is re-worked and thereafter developers etc are set up to fail before they even start….
As a potentially interesting aside, I recently attended an interesting talk on Critical Chain Project Management which promises a completely different approach to management and especially the way that estimates are created, used and managed – perhaps there are some nuggets from that methodology that could be the link between analysts, designers, developers and the project managers.
So the idea of bringing stuff into EA and making it a project management tool is interesting. Would having estimates, costs, budgets etc within EA be useful? Who would use them? Dare I say, would the figures even be viewed and accepted.
At present, the method I’ve used for managing tasks within EA is to use the Task element (you really need a first class element if you want to interact outside of EA ) together with suitable tagged values that hold the information. Pretty easy stuff, and you could always add a profile/MDG to ensure that they are added correctly and with defined values to minimise user error. Within these task elements linked to use case, issues, changes, requirements, or in fact any element you chose, possibly with a stereotyped connector, it is possible for a those interested in the “project management” attributes to get visibility. Perhaps even having a few scripts to present the reports they need.
The one big issue I have with EA is that it uses several different task items (element tasks, task elements and project tasks) and they are not related – so the tasks that are used to produce the Gantt chart is not the task that an analyst may use – why??? A real inconsistency. Perhaps the suggestion on the forum should include rationalising EA tasks to a single task element, so that all the features within EA that use them work together. Then the use of task element tagged values, which are readily accessible could be used by both the EA user directly and the PM using MS Project or other linked project management tools.
Whatever happens in the future, I’m looking forward to seeing how my Team Pulse Add-In works with EA. Further, as an agile tool, and the need to closer cooperation between the various parties, I imagine that the barriers between the two tools should be lower. Although I also suspect that moving from two to one tool is still not an option.