Mike MacDonagh's Blog

Somewhere in the overlap between software development, process improvement and psychology

Tag Archives: esswork

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 :)

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 :)

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

EssWork in Visual Studio

EssWork in Visual Studio

RSDC UK 2008 Review

So RSDC UK is over and I’m finally getting a chance to blog about it. It was cool to meet so many old friends and new make new connections. There were even some blog readers that were able to recognise me IRL by mentally adding 6 years and a beard on to my blog picture :D Very impressive!

I think it was the best UK Rational event for a long time, and there were some great speakers. Unfortunately the chairs were uncomfortable, some of the rooms too small and the venue would do well to invest in some air conditioning. I suspect that going to an event at the Royal College of Phyicians in the height of summer (assuming we ever have one in this country again) would be enough cause to need a doctor. Regardless of that, and the amount of walking up and down stairs I did, I think it was a great event. The buzz was mainly about the Jazz platform and associated tools (RTC, RQM, RRC).

Day 1

The conference was opened by Graham Spittle (IBM SWG UKISA VP) and Danny Sabbah (IBM Rational Worldwide VP) who set the scene well for Erich Gamma (in real life) and Grady Booch (in Second Life). Unfortunately the Second Life link went belly up and we did’t get all of Grady’s keynote. Which must have been extremely annoying for Grady since it was 3:30am for him! Erich then took over and gave an excellent Rational Team Concert demo (RTC). When he started his demo I was a bit worried he was going to cover all of my planned demo too, but fortunately it didn’t overlap completely. Since he did the Monday keynote and I did the last slot on Tuesday there was enough time and quantity of information for the delegates so a little overlap didn’t hurt. Erich also did a panel discussion on Agile development in the context of Geographically Distributed Development along with Scott Ambler and Julian Holmes moderated by Anthony Kesterton.

The great TQ (Terry Quatrani) was also present speaking on Agile Modelling, I had a meeting to attend so unfortunately didn’t get to see her speak which is a shame because she’s always great. I did speak to people that did go who just confirmed that I’d have rather gone than have a meeting!

Following the break it was then time for me to speak along with Linda Weedon of PwC and Matt Archer (also of IJI) on “CUPID – Implementing the IBM Rational Unified Process at PricewaterhouseCoopers” which is all about our experiences in deploying UP using a practice based approach. I think the session went really well, we had some pertinent questions which is always a good sign of people staying awake and listening :P To close the day Ian Spence gave an excellent (as usual) talk on “Conversations in Context: Using Use Cases on Agile Projects”. Following an excellent dinner and a few glasses of wine kindly provided by a competitor it was time to commute home and eventually get to sleep at around 1am. It’s much easier at conferences when you’re staying at or really close to the venue! During the dinner there was a caricature artist or two wondering around who came to our table. Naturally we volunteered Ian to be caricatured and I managed to take a quick pic with my phone of him with his Mad Scientist caricature.

Ian Spence - the Mad Scientist

Ian Spence - the Mad Scientist

It’s a little known fact that Ian is also a Kung Fu master which is why his hand appears blurred in this pic. Fractions of a second later my phone was whisked from my hand at the speed of lightening.

Day 2

Day 2 was for some peculiar reason started 30mins earlier than day 1. This didn’t impress me, especially since like most people I hadn’t noticed until I was texted while on the train on the way in. Fortunately I was early enough anyway to get there on time. Mike O’Rourke opened the day with some description of the Rational 2.0 Roadmap (Jazz and future products). Rumours were confirmed about Rational Project Management and Rational Enterprise Reporting being released Q1 next year.

Ivar Jacobson then gave an excellent keynote on “Back to basics: Getting Good Software Quickly and at Low Cost” which focussed on using practices in a smart way, not following processes. I’ve seen Ivar speak many times, and many times on practice based development, which isn’t that surprising since I work for him but it’s always entertaining to hear the man speak.

I also had some meetings on Day 2 but the sessions that really stood out for me were Peter Eeles talking on “The Rise of the Development Environment Architect” which was based on his paper on DevelopWorks. This is an excellent formalisation of something that has been part of my job for some time. I also enjoyed Derek Holt’s talk on “RTC and the Agile Development Strategy”.

Finally to wrap up Day 2 I presented on own this time on “Live Jazz: Process Execution in IBM Rational Team Concert”. This started off with a demo of EssWork in Eclipse, shell sharing with RTC and creating a new process by composing practices as described in Ivar’s slideware at morning keynote. I then started executing my new process in RTC. It was the end of a long two days in a really hot room so I kept it quite light and I think it went well – and hopefully the audience got something different and new from the talk. If you are now kicking yourself that you missed this talk, fear not I’ll be repeating most of it as part of a webinar I’m doing in October – more details here.

Thanks to all those who attended my talks and came and said hello, especially those that read the Mac Daddy! :D I’ll post the slides in a few days :)

Screenshots of new IBM Rational Jazz products

[EDIT: This post is from 2008 if you want a preview of the new 2011 product suite see here]

 

I recently put together a presentation for IJI on IBM Rational Jazz and the new, and future, Jazz -based products. Rather than present bullet points about products I like to show demos where possible and screenshots otherwise as like many people I find that I need to see a tool to gain an understanding of it. This presented me with a bit of a problem because most of these tools aren’t released yet, and some are only ideas from Rational Labs rather than actual listed products. But I managed to get screenshots or at least spy shots for the presentation so I thought I’d share.

You can download the whole presentation here, it’s in PDF form though so you don’t get the animation or Rational Team Concert demo vids (if you’re an IJIer just drop me an email if you want the full demo videos) Download

Here’s some screenshots and spy shots of some of the new tools:

Rational Team Concert

Rational Team Concert (RTC) is a collaborative project execution environment providing source control, work item tracking, build management and reporting capabilities as well as supporting agile planning. RTC is the first Jazz based product and at the moment the best known. The demo includes some early integration between Esswork and RTC.

Early access packages of RTC are available now from jazz.net

Rational Quality Manager

Rational Quality Manager (RQM) is a business-driven software quality portal for people seeking a collaborative and customizable solution for test planning, workflow control, tracking and metrics reporting capable of quantifying how project decisions and deliverables impact and align with business objectives.

RQM should be available around the 7th of July

Rational Requirements Composer

Rational Requirements Composer (RRC) is a requirements definition solution that enables organizations to enhance their requirements processes with easy-to-use elicitation and definition capabilities and provides various visualisation, documentation and collaboration capabilities.

Open Beta pre-registration (Available in July hopefully)


The following are currently Rational Labs projects and may not make future products in their current form

Rational Tempo

Improve estimation through:

  • Tracking probabilities
  • Schedule extrapolation
  • Risk management

Rational Ensemble

Improve team collaboration

  • Awareness of similar work
  • Tracks historic assignments
  • Links team members

There is also business partner collective called IBM Rational Ensemble which is not the same thing as this Rational Labs project!

Rational Governor

Improve Governance

  • Specify Governance Solutions
  • Manage Roles and Decisions
  • Automate processes

Rational Financier

Improve Financial Management

  • Specify Governance Solutions
  • Manage Roles and Decisions
  • Automate processes

RSDC 2008 Day 1: Jazz, Sushi, Wallflowers

Today was day 1 of the RSDC 2008. I’ve already been busy for a couple of days but today was the proper first day. Unfortunately I spent the beginning a little hung over. I turned up to the keynote presentation at 8am local time with a bit of a headache – after watching the acrobatics and suffering the loud noise I had an even worse headache – oops :) With only myself to blame I soldiered on to experience many cool things today:

Lots of Jazz stuff

Today IBM Rational officially announced both Rational Requirements Composer and Rational Quality Manager. Also Rational Team Concert has got a lot of press. I blogged a while ago about RRC and RQM (here) so it was good to finally see these products.

Rational Composer is especially interesting to me as it a new Jazz based tool that allows you to manage requirements, create process flow diagrams, GUI mock-ups, manage glossary terms, create traceability and even create Use Case Docs in a single environment. Of course there is integration with Requisite Pro but it seems clear to me that in the long-ish term the products will converge until ReqPro is no longer necessary. I’m looking forward to the GA release of Requirements Composer, and especially the future release that is fully Jazz enabled, making use of Jazz SCM for requirements management and integrating deeply into the other Jazz products. I said previously on my blog that Reqiurements Composer was due for open beta today, but the word is that it will be next week! I’m impressed by this product and I think it will really help people that want to elicit requirements – all the way from organisational business analysts to project business analysts and system analysts. It’s a cool product.

I also saw today the Microsoft Visual Studio client for Rational Team Concert. As a .Net developer myself and someone that works with clients that have heterogeneous environments this is particularly important to me. So far there are some VS native windows for Jazz views such as Team Artifacts and Work Items but I’ve not really seen what the relationship to TFS/VSTS is. Also at the moment some of the views (particularly of work item details) are through the web interface in a html pane inside Visual Studio rather than in a native VS plugin interface – although I’m assured this is to come soon. It’s good to see IBM Rational focussing on integrating with other platform and vendors. As most users would probably say though – I want it now!

Other interesting elements included the news about Rational Project Management and Rational Enterprise Reporting, not to mention the new governance tools from IBM Research including

  • IBM Rational Financier – gives project and program managers insight into the financial value of one ore more projects to help identify and manage risks
  • IBM Rational Governor – helps IT organisations manage project roles and associates decision rights including managing the polices that constrain decisions and promote compliance with processes
  • IBM Rational Tempo – lets project managers understand and mange the variability of schedule overruns, a key source of risk in software development projects
  • IBM Rational Ensemble – reduces risks incurred by communication failures by promoting communication between developers doing related work

All of the above are native Jazz tools and indicate the bright shiny new Jazz future. It seems obvious to me that these tools and will be the future path in the long term for Rational Portfolio Manager

Rational Team Concert will be the first generally available product and will be released towards the end of this month – here’s a screenshot of IJI EssWork in Team Concert just because I’ve been playing with it:

(cliccy piccy)

Many other things caught my eye today – including an excellent presentation on RPM by Scott Craig that happened to include some ideas that I think will seed solutions for some of the problems faced by my own RPM implementation at the moment at my favourite client.

I also liked the look of IBM Rational Self Check as it’s a good tool for supporting what I and my team have been doing manually for years. In fact the Self Check screenshots look remarkably like the measurements slides in my RUP implementation case study! If only this tool had been available 4 years ago! Rational Self Check is part of the focus on measuring practice adoption and the IBM Rational Measured Capability Improvement Framework (MCIF) – of course practice adoption and measurement is something that we know rather a lot about at IJI ;)

The hat

image shamefully nicked from kelly

Met Kelly and Ferdy

It was cool to meet up with some folks who I’ve previously only interacted with online. I think we need to setup a group photo of us all :)

The Wallflowers gig

More gratuitous photo stealing from kelly:

Ian (Spence) had to point out to me that the lead singer (Jakob Dylan) was the son of Bob Dylan – which once he’d told me it was actually pretty obvious. Clearly I need to be more in touch! There were sparkly cups at the wallflowers gig too, obviously I grabbed a couple to take home for my boys (clicky piccy):

Sushi with the Wallflowers

After the exhibition centre and after the wallflowers gig we went over to Kimonos in the Swan for some Sushi and cocktails, the Wallflowers took the table next to us and it wasn’t long before our group and there’s were intermingled. They were kind enough, after getting hassled by Bryon Baker, to sign some autographs for Garth’s kids 8)

Bryon (and others) at karaoke

Speaking of Bryon, he did a funnygreat rendition of Coca Cabana with Gina, I got the vid on my phone so I’ll upload it and post it tomorrow :D

The ribbons

And here’s an updated pic of the copious number of ribbons I have this year. They’re a good conversation starter though :D

6 days to RSDC 2008

Just 6 days to go until the IBM Rational Software Developers Conference 2008. Those of us going fromIvar Jacobson International (IJI) (and there’s a few of us!) had a conference call on Friday to discuss our plan for the Conference. IJI is a silver sponsor this year and as well as our 7 presentations we’re going to be doing something special that will turn all of the conference attendees into R-Heroes :D

It’s a big secret until the Tuesday of the conference though so I can’t say anything about it here. Make sure you come and visit our stand at booth #713. You can’t miss it, it’s the one at the bottom of the main escalators into the exhibition hall when you’re coming from the hotel lobby. You can come and talk to people like Ivar Jacobson, Ian Spence, Kurt Bittner, Robert Maksimchuk, David West, Eric Naiburg, and a bunch of others, including me of course. We also have two hand held GPS systems to give away if you register at our booth.

There’s going to be a lot of interesting announcements especially around Jazz at the conference, and for business partners there’s going to be a preview this Wednesday – but that will also be secret until the conference! At the conference you’ll be able to see demos of EssWork integrated with Eclipse, Visual Studio Team System or even Jazz Team Concert if you catch me. Our Team Concert integration is likely to be an exciting direction in the future as I think Team Concert is an ideal execution environment for EssUP.

Ivar Jacobson International

RSDC

Follow

Get every new post delivered to your Inbox.

Join 319 other followers

%d bloggers like this: