Friday, 30 January 2009

xProcess project on Source Forge

With various announcements, activities and releases in the pipeline, you may be interested to know that there is now an xProcess projects on SourceForge. The site is http://xprocess.sourceforge.net and althought as of this moment there are no downloads available there, the forums, announcements, wikis, etc. of the project will all be moving up there soon. Why not post a message there now?!

Thursday, 8 January 2009

Calling Software Development Process experts!

Did you know that from January 2009 the xProcess project is going open source?

This means that projects worldwide will be able to download and use free process definition and project management software and, if they are so inclined, configure and improve it for their own use. At the same time we are launching a new services company OpenXprocess. This company will incorporate xProcess Europe (and xProcess US), and manage the ongoing enhancement of the product, while offering services to users of xProcess such as: training in Scrum, FDD, Agile, Iconix Process, Unified Process, Prince and other configured processes of xProcess; configuration of the product to companies’ own development processes; and a support package which includes the web server for access to project data from browsers.

This is where the software process experts come in. Would you be interested in learning about xProcess and potentially offering services to configure processes or consult with clients using existing configurations? The Scrum configuration in xProcess for example provides a number of unique features which are not available in other Scrum tools (task matching, forecasting, three-point estimating, target management, multi-dimensional prioritisation) as well as familiar Scrum tools such as burndown charts (including burndown forecasts), Gantt charts (auto-generated) and backlog management. If you would like to be involved I’d very much like to hear from you.

The process configuration capabilities of xProcess, particularly now it’s an open source product, offer important innovations for the industry, and I’m particularly keen to involve experienced software consultants in this area. In the past process definitions have been of only passing interest to project managers, useful guidance but completely separate from the plans they work on day by day. xProcess changes this relationship since it is now possible to define processes that instantiate directly into project plans and aid conformance with the process (or highlight differences) as plans are implemented.

Project processes are often described with Activity diagrams or similar notations. But these are notoriously difficult to map to the actual activities of a project. With xProcess the process is described in terms of task patterns which, when instantiated within the initial project pattern, show the trackable tasks that are required to complete that part of the process. Where aspects of the process involve activities that are below the level of trackable tasks – for example a development task may involve say, coding, testing, integrating and building – these steps may also be captured in the process definition through xProcess’s Gateways, which are defined in task patterns and are completed as questions and answers on closing a trackable task. And because task patterns may themselves contain task patterns the process definition language gives as much flexibility to define optional, repeating or iterating structures as activity diagrams do, but with the important difference that they map directly into the plan structure that projects implement.

If you’ve read this far I hope that means I’ve at least aroused your curiosity to investigate further. You can download the product from www.ivis.com (soon to be www.openxprocess.com) and I very much hope you’ll do this and encourage colleagues and clients to do likewise. But you might also be interested in getting directly involved. In Q1 2009 I’ll be conducting some training workshops for potential xProcess consultants or process engineers (probably in Denver and London). Please let me know if this might be of interest. The training will last 2 days with the opportunity for a further 3 days collaborative work on a process of your choosing – this can be carried out either immediately following the training event or remotely at your convenience, with access to me via phone, skype or teleconference. Following completion of this we will offer certification as “Certified xProcess Consultant” so that you can offer services to clients directly or through OpenXprocess. OpenXprocess will only use certified personnel for training and consulting services and will support certified consultants in the field to help ensure your success.

If you know of others who may be interested in this, or companies who you feel might want to adopt xProcess, please let me know.

Wishing you all the best for 2009.

Andy Carmichael.

Thursday, 4 December 2008

Folders are changing

There's a new spec for Folders in xProcess that should be released shortly in the v3 programme. The new feature let's you define a hierarchy of Folders and it clarifies the difference between folders with "explicit" members (the tasks are in the folder because someone put them there) and "implicit" members (the tasks are there because they fulfil the criteria for the folder - usually that they are in the appropriate category.

Email me or post a comment below if you would like a preview of this spec.

Saturday, 1 November 2008

Rescheduling tasks to the date you want

I was asked by someone recently to help them get their task to be scheduled on the date they wanted. One thing xProcess doesn't give you (except for overhead tasks whose size is defined by their duration rather than the estimated effort) is the ability to state when a task should start and stop. This is what the auto-scheduler does, based on your estimates, constraints (e.g. dependencies on other tasks or specific dates), your priorities and your available resources. So what if you have a task which is not being scheduled when you think it should?

Here's the checklist I gave my colleague:
  1. If the task being scheduled too soon you can add a constraint to the task by opening its editor (double-click) and selecting the “Constraints” where you can add the constraint (e.g. a dependency on another task or a “start after < date >” constraint).
  2. It may be though that the task is being scheduled too late and you want it scheduled sooner. A quick and easy way to achieve this is to make it “active” as then it will be scheduled immediately. (Just right-click on the task and select “Make active”. This can also be done from the web client too and it’s worth checking that the team always make the tasks they are working on active so that they are always scheduled immediately and not postponed when higher priority tasks are defined unless they make them inactive.)
  3. If it’s not currently being worked on (so not “active”), but you want it scheduled earlier (for example as soon as current active tasks are complete) then increase it's priority. Here's how:
  • If the task is not in the current sprint (assuming you're using the Scrum process) it will be scheduled after this sprint, so drag it into the current sprint from its current location
  • If it is in the current sprint but still not being scheduled soon enough, use the “Priorities” button on the tool bar, which takes you to the “priority groups” tab for the project. Maximize the window so you can see it all and select the current sprint. In the lower list you can see the relative priorities of all the tasks in the sprint. Change them so your task is near the top.
  • Check in the first tab of this window “All tasks in Schedule Order” that your task is high enough. (You will see for example all the active tasks near the top of this list.)
Finally one more thing to check. Make sure the task doesn't have constraints on it's start or end, for example a dependency on another task that won't complete for some time. This will also cause it to be scheduled later.

Monday, 27 October 2008

IT&T Conference Galway

Ireland seems to be a second home for me at present with a number of clients using my services for migrating to agile practices through partners Neueda Technologies. So it was a pleasure to be back in sunny Galway (in the gaps between the gales!) for this conference at GMIT. My tutorial was on "Agility: driving software projects for value and quality" and apart from giving an overview of agile methods, particularly Scrum, it looked at some of the key issues for scaling agile processes including design, continuous integration and team structures.

Monday, 20 October 2008

Project Home Page

xProcess allows you to define a wiki, blog or other site as your project's home page. If you can see this page from with your project in xProcess you are pointed at the default page. Why not change this to a site where you can add details of your own project and invite team members to contribute.

Some processes are configured to expect a Wiki site rather than a blog. These sites generally allow pages which do not yet exist to be referenced by url. In such processes a reference to a new page is generated when a new task or project is created, allowing the user to create the corresponding page, at the same time as and already linked to the task or project.

Thursday, 9 October 2008

New Scrum Process for v3

With the release of xProcess v3 drawing closer here's an overview of some of the improvements that are in the pipeline enabled by new features in the product. In this article we look at the steps to create Scrum projects and the backlog, then to prioritize them and allocate them to Sprints. In subsequent articles we'll consider how you can use the same features used in the Scrum process to tailor development processes for your organisation.

Here's the dialog for a new Scrum project. It shows the parameters used to set up the project including the location where Wiki pages may be created (including a home page for the project) and the Sprint duration which is used when Sprints (the timeboxes of the Scrum process) are created.

As the next screenshot shows there are now more patterns to choose from when you hit the "New" button in the project toolbar. We'll be looking at exactly what all these patterns are for in subsequent articles. For now let's just look at the "backlog items". The patterns for these are User Story, Technical Task, Defect Fix and Delivery. In fact you can see just this menu of items if you right-click on the "Backlog..." task (or a Sprint if you've created one) and select "New" there.