RSC 2009 – What to expect
I’m not attending the IBM Rational Software Conference (what used to be RSDC, RUC etc. etc.) this year however since it started today for partners and tomorrow for delegates so I thought I’d cast my opinion on what to expect this year. Of course I could be wrong since it’s just assumption but I suspect the main themes will be:
A vision of one notion of process for all Rational tools, made explicit in the relevant tools, surfaced through process rules and defined in practice libraries allowing easily composable and customisable processes based on the Jazz Process architectural elements.
So to tie it all together the Process Library (which of course is practice based probably driven by Rational Asset Manager) feeds definition of processes in RMC, which is measured by MCIF and delivered by the Rational Software Development Platform. So what does that really mean:
Rational Team Concert 2 beta – because it’s a lot better than RTC 1 which was pretty good to begin with!
Rational Tara - a Jazz based PPM (Project Portfolio Management) tool. Think MS Project by IBM on Jazz with better Resource Management stuff. It’s part of the replacement suite for Rational Portfolio Manager (RPM). Should be interesting to see how it ties into the other products (inc. some of the Telelogic ones). I expect this one to be big news – it should be. Gantts, bubble charts, resource utilisation views, agile dashboards etc. will abound. (Now known as Focal Point for Project Management)
Rational Insight – used to be codenamed Vega and is a data warehousing and RTL solution on top of Jazz. Cross project reporting goodness. Of course I’m sure there will also be integration through to the “classic” rational tools. Interestingly I read a bit of blurb recently from somwhere that referred to their old tools as the “classic rational toolset” I wonder if they borrowed that from me
MCIF – Measured Capability Improvement Framework – It’s been around for a while but with more emphasis from IBM now on practice based process the story between a more practice orientated Rational Method Composer, Health Assessment tools and Self Check tools is a bit tighter.
Telelogic – I expect there to be some announcements about the integration of the Rational and Telelogic brands. Especially around FocalPoint.
I’d also expect some stuff on other Jazz based tools like Requirements Composer, Quality Manager, Ensemble, Governor and stuff like that.
As I said due to other commitments I’m not there myself, but if you are there then please stop by the Ivar Jacobson International stand in the Exhibit Hall downstairs when they let you in. Grab a free beer and talk to my colleagues about how to achieve tangible process improvement with the use of effective practices in a proven framework. Also talk to them about achieving “Agile for Grown Ups” (TM of the MacDaddy) in your organisation. Ivar, Ian Spence, Kurt Bittner are all speaking at the conference and a bunch of other IJIers will be there so go along and say hi.
And ask for a free bag, they’re great for carrying around your exhibit hall swag
Simple Rules for web site design
- Frequency of web content change is inversely proportional to publishing control
- Frequency of web content change is proportional to number of people able to publish
- Content quality is inversely proportional to frequency of change
- Engagement is proportional to ability to comment and track replies
Thoughts?
How to avoid Fragile Agile, Flexibility in Context
A presentation I gave at the UK RUG Annual Meeting on what can make agile development fragile and how to avoid that fragility.
Unfortunately animations don’t work and slideshare’s screwed up the agenda slides but you can still follow it
How to avoid Fragile Agile
So I’ve not blogged for a while. It’s twitter’s fault. Well that and I’ve been super busy with some other projects and work stuff that isn’t blog worthy.
So what is blog worthy? I’m giving a talk at the UK RUG next week called “How to avoid Fragile Agile” subtitled “Flexibility in Context”. I can’t take credit for the super title, one of my colleagues came up with the name, but it should be a good talk. It includes content from various IJI folk so come along and say hi if you’re there.
http://www.rational-ug.org/groups.php?groupid=20
Here come the slides from my presentation
Rational, Telelogic and Jazz roadmap
There’s a lot of interest in the IBM Rational space about the future roadmap of Telelogic products like DOORS and Rational Requisite Pro and some murmurings of new shiny future things like Tara, Vega, MCIF, FocalPoint, Rational Change Management etc. etc.
I’m sure as the year continues we’ll learn a lot more about these things (or at least be able to talk about what we already know under NDA as IBM Rational and Telelogic are bound to make some statements and showcase the future at RSDC09. This year the RSDC is combined with the Telelogic User Conference (Innovation) which is a public sign of how integrated IBM want the Rational and Telelogic brands to become in the future.
All of this is very important for existing Telelogic and Rational customers, as well as people interested in Jazz or using Jazz. So I noticed a presentation from RSDC in Italy that covers some high level information on the joint product roadmap:
How to deal with Telemarketers
Cold calling telemarketers typically have a script which is used to draw you in and sell, sell, sell. Time to turn the tables one them!
Bwahahahahaha!
Why do people still waterfall their development process?
Generally the software development industry has caught on to the fact that iterative development is a good thing. Only people that don’t believe in common sense think it’s a great idea to leave all of your testing to the end and hope for the best. With that in mind then why do people still have a waterfall mentality to their software development processes?
At the beginning of a project you can’t possibly know everything about it, that’s one of the many reasons it makes sense to iterate, so you can do some work and then refine your plans based on your work. For some odd reason though a lot of projects, even though they might develop iteratively, seem to think they should define their process at the beginning of a project in great detail and then stick to it regardless of the facts due to some misguided need for process alignment or similar.
That attitude just doesn’t make sense. A view of what practices will be followed is necessary at the beginning so that everyone’s on the same page and now what they’re meant to be doing, but even the formally defined iterative processes like RUP say that the process should be examined and refined each iteration.
In my experience an extremely detailed formal process is difficult to change. If you’ve got a 50 page development case. huge stack of xml files in your favourite process authoring tool or similar it’s very hard to make useful changes to a process. Of course you can change the review requirements of the Use Case Specifications from Formal-Internal to Formal-External, but it’s not so easy to scale down the formality of business modelling while adding a practice to address user experience issues.
Software development process can (and should) be thought of as a collection of practices. Each practice should address a particular aspect of software development in a complete fashion. Every small technique is not a practice (in coding terms every idiom is not a pattern). Using Use Cases, being Iterative, using Component Based Development are all good examples of practices. They can be added or removed to your project’s way of working and the level of formality can be scaled up or down on each practice. Practices are the natural unit of adoption for processes.
It’s always best to start small and simple. At the beginning of a project just do what you can see. It might initially make sense to think about using Use Cases as a common way of managing requirements for your project and it clearly makes sense to iterate in most cases. Then as the project progresses and more understanding is reached more practices can be added as necessary. This is an iterative approach to software development process, it’s just common sense.
At IJI we’ve been doing this sort of practice based way or working for ages – in fact it’s what the company was created around as the fine brains we have created this approach and brought it to life in EssWork and EssUP which is a kernel and a collection of practices.
Anyway, enough of the company blurb, more about practices. I think everyone can agree that this is a sensible approach to software development as it applies the lessons the industry has learnt about software development back onto the problem. It doesn’t matter which vendors tools are used, or what process frameworks are used this is just a sensible approach, and the best thing is it is compatible with whatever you’re already doing that is successful or necessary in your organisation. I work with organisations helping them to change and adopt their processes and in every organisation I’ve been to is doing at least one thing well. Using practices to work with process improvement means that we can just add to what’s already working, incorporate the necessary governance or operational activities in an organisation, add SCRUM if that’s what’s wanted and have it all work together in a cohesive way of working.
To achieve this adding together of practices in a way that works you need to have a foundation that provides a common understanding of the basic concepts of software development so that practices can fit together neatly. This is intellectually quite tricky to achieve but necessary. It should also be practically invisible to the people doing projects – they don’t want to think about process geeky things like the process architecture that can support practice composition in a seamless way. At IJI we call this the kernel – which I think is a suitably geeky term. We have also built it both conceptually and in software (that’s what EssWork is) along with what we think are the “essential practices” (that’s what EssUP is) and now the big vendors are following suit and packaging their processes this way.
Maybe one day we can get away from branded processes by vendors and just have a software development community using, sharing and collaborating on practices.
Oh yeah, and they should be in tools not websites, and free!
Microsoft VSTS, Camano and UML
I recently had the pleasure of going to visit the Microsoft Technology Centre to learn about all things MS for software engineering. Having long been a Visual Studio user and a VSTS (Visual Studio Team System) user since it turned up I was really pleased to see VSTS 2008 and some interesting stuff coming in 2010.
VSTS seems to be really maturing and now has a nive new non-sharepoint web UI. It will be interesting to see what happens in terms of Microsoft VSTS vs. IBM Jazz. I’ve written about Jazz before on this blog and haven’t gotten around to a detailed comparison yet but I was excited to see how mature VSTS is now looking and how nice it is to use. It’s designed to make developing easier and use the tools people already have in many cases. For example, using MS Project, Excel, Word, SharePoint etc.
Things of special note were the automated testing support (including coming soon recording and playback of GUIs other than web), the upcoming cool manual test runner, Camano for test management and test execution by proper testers not just developers doing unit tests etc. etc. Also checking out the project + project server for portfolio and project management views was interesting.
What I really really liked are the VSTS 2010 architecture tools. Microsoft has seen the light and embraced UML + DSLs (or DSLs + UML if you prefer) as the pragmatic modelling solution. I really like the idea of being able to do just enough modelling, using the most appropriate language such as a high level architecture diagram that then imposes constraints on the code through things like check in policies!
I think this stuff is going to be really powerful and I can’t wait to get my hands on it properly (and somehow conjure the time from somewhere) to do some detailed analysis and also a comparison against competing products/toolsets.
Of course if you are using Visual Studio (or Eclipse) you can still use EssWork to use practices and processes directly inside your IDE
Plan the Plan’s Planny Plan

Planny plan
Dilbert’s Daily strip is always worth checking out, this one in particular caught my eye
RSDC 2009 Call for papers
So it seems like RSDC 2008 has only just finished. In fact RSDC 2008 UK was only a few weeks ago! But things are starting up for RSDC 2009 already. I hear that call for the papers will open tomorrow. The website isn’t up yet so I don’t know what the theme will be but you can expect more stuff turning up at www.ibm.com/rational/rsdc over the next few months.
This will be the 4th year in a row for the Rational Software Development Conference (May 31 – June 4) at the Swan and Dolphin in Orlando, and I heard somewhere that the next 6 will be as well! Not surprising really as it’s a great venue for the conference.
It seems call for papers starts earlier every year, but that’s no surprise seeing as there are more people submitting and going every year. Technically I expect this year to be about the maturation of the Jazz platform, and I would speculate that we will see some cool things like the Visual Studio integration (since screenshots have already been released). There should be some interesting uses of RTC out there (I’m planning to talk about this myself). I’d like to see something about Bluehouse, Focalpoint, Telelogic and Rational Jazz stuff.
I think that the words Tara, Vega and MCIF will be extremely prominent



