Friday, January 20, 2012

Metrolink: Highlights from the passenger's charter

The top web search result for "Metrolink Complaints" brings back Passenger Charter last updated in 2008 it has some encouraging quotes. All emphasis is my own.
The vision behind the Metrolink system is to provide a safe, efficient environmentally friendly and reliable tram system for Greater Manchester that will integrate with other transport modes and fulfill the aspirations of the Passenger Transport Authority.
Advance information on planned disruptions to service will be made available as soon as practically possible in advance. Information will be prominently displayed at all stops. We will always endeavour to minimise passenger disruption to services.
We want all passengers to have a trouble free journey and therefore ask you to consider the needs of your fellow passengers at all times.
We will continue to aim for improved standards of punctuality and reliability. We will publish our reliability and punctuality figures set against agreed target levels at Metrolink stops every four weeks. These figures will be independently advised every year.
We will provide real time information about our services by means of public address systems and information screens.
How many of screens actually work?
We recognise that passengers want to know what is happening when things go wrong. Our staff on trams and on the Metrolink system will help by providing as much information as they can to passengers.
For comments or complaints regarding general operation, maintenance and cleanliness of the Metrolink system, passengers should contact Stagecoach’s Customer Service team. For issues relating to policy, for example fares and future Metrolink expansion, passengers should contact GMPTE’s Customer Relations department.
Note Stagecoach do not run the service anymore.
If you have a complaint, we want to find out what went wrong and put it right for the future.
Senior managers carefully monitor the number and type of comments we receive. We will use this information to improve our service in the future.
This is my favourite
We do our best to give you the service you have the right to expect. Our aim is to provide customer satisfaction by improving our services in response to your comments.
We will always do our best to satisfy all complaints. If you still wish to take the matter further you can refer it to your local Passenger Focus Group, an independent public body set up by the Government to protect the interests of Britain's rail passengers. They are funded by the Department for Transport but their independence is guaranteed by an act of Parliament. They use their knowledge to influence decisions on behalf of rail passengers and work with the rail industry, other passenger groups and government to secure journey improvements. The address for Passenger Focus in the area served by Metrolink is: Passenger Focus 9th Floor Store Street Manchester M1 2RP Tel: 0870 336 6095 Fax: 0161 244 5981

Wednesday, January 18, 2012

Manchester's Metrolink: An utter disgrace.

Regular reader. Sorry not a software topic just wanted to get some thoughts out.
This morning's delayed tram
I love public transport. It's brilliant. Instead of crawling along in rush hour traffic, getting cramp in my foot as I leave the clutch at biting point I get to have a nice walk to the local public transport stop(healthy), stare vacantly into space as I wait for my carriage to arrive (meditative) and then I take a short journey where I read my book to somewhere vaguely near my destination (educational). Then I take a further walk and I'm there(even healthier). Or that's the idea. It's not quite working out that way. You see I use Manchester's Metrolink.
Metrolink is a light railway system that spans the city. When it was created it filled the need for better transport links from Bury and Altrincham to the city centre. I remember travelling on the Altrincham line for the first time. It was quick, clean and efficient. Sure there were some problems but my co-workers who used the system didn't seem to be affected too adversley. I don't know what's happened but things have got worse, much worse. I've been a commuter on the Altrincham line for 4 years and the service has degraded to such an extent that I feel that the people of Greater Manchester need answers from those who run the system. So why do I feel angry?
Price hikes.
On January 3rd prices across the system were increased on average by 6%  This price raise was described by the media as 'Inflation busting' 
This irks me on two points. I thought the point of public transport was to provide cheap, quick, links across the city to stimulate the economy, and ease the burden on the roads. What instead has happened is that by raising prices potential commuters are driven away from using the Metrolink in favour of driving or just not bothering. This price hike has been introduced at the same time as Manchester city centre begins to charge cars to park on a Sunday.
Its a 'double whammy' for Manchester residents and plays into the hands of places like the Trafford Centre which provides much better parking facilities and although there's not a Metrolink there, a reasonably efficient bus service.
Poor service.
Since the price increase I have made 26 commuter time journeys. Of those journeys, 6  of them have had some form of disruption. That's 23% of my commuting journeys have had delays. In the last 2 days 100% of my journeys have been delayed. I'm writing this after spending 76 minutes on the tram (a normal jourey tkes 20 mins).
Tonight's Journey.
This particular journey was so farcical it beggar's belief. I was travelling from Altrincham to Piccadilly to get to an event starting at 6.30. I buy a return ticket from Altrincham (more on this later)at 17.33. As soon as I set down the driver reports over the tannoy that there is a failed vehicle in the city centre and the line is suspended. Most people leave the tram, an angry few commutters are talking to the driver. I can just hear him and I'm sure he says that we shouldn't ring up to complain because that will just tie up the people trying to sort the problem out. I chance it and decide to wait - buses from Altrincham crawl up the A56 and to be fair Metrolink normally sort it within 20 mins and I've bought a ticket. After 10 mins or so the tram then starts moving. We are informed that the service will stop at Deansgate-Castlefield
Altrincham is at the end of the line and just before the stop before (Navigation Road) the track becomes single file. There is signal where trams have to wait for the other to pass. Our tram pootles to there and then doesn't move for 10 mins. The driver then informs us that the he can't contact Network Rail to get the signal changed. We wait for what seems like another 10 minutes the driver then informs good news - the service will continue to Piccadilly. Unfortunately neither he or the control room can get the signal changed. Minutes pass and eventually we move. The driver apologies once again. 
We begin thundering up the line. Angry commuters squeeze on and off  at Timperley, Sale, Dane Road, Stretford and Old Trafford but at least the thing is moving.  We then stop just past Old Trafford. There's always a delay now between Old Trafford and Trafford Bar as the Chorlton line joins the Altrincham one. This delay seems to take longer than normal thought, it couldn't be ano... The driver comes on the tannoy. "Sorry blah ... blah... there's been a backup of all the trams trying to get through Cornbrook. We're just waiting for our turn". Fair enough. (I look at my watch its 6.30. I'm now late.)  More minutes pass, I hear something over the driver's radio about telling customers of the Eccles & Chorlton lines that their tickets are valid on the buses.  Phew! I'm on the Altrincham line. Driver comes back on, apparently the computer system is overloaded at Cornbrook so they can't let us move. I am now officially livid. My normal stop, Trafford Bar, is 200 yards away and Old Trafford is about 100 yards away and I am stuck on a packed tram, missing my evening event and unable to move. 18.49, 1 hour and 16 mins later I arrive at Trafford Bar. I should be in Piccadilly Gardens, 20 mins ago. Do I risk it? Can Metrolink get me 4 stops closer? I didn't want to find out.
Dealing with delays on the Altrincham line.
I mainly travel between Trafford Bar and Altrincham. To catch up a common tactic of Metrolink is to terminate vehicles at Timperley so they can turn around. This means that commuters who want to go to Altrincham (read most of the people remaining) have to either wait or walk. Walking takes 28 mins. If most people are getting off at Altrincham why can't the service terminate at Navigation Road, 10 mins walk away?
There are 3 places on the line where trams get delayed.
1) Between Altrincham & Navigation Road
2) Between Old Trafford & Trafford Bar.
3) Between Trafford Bar & Cornbrook
Why can't trams wait in the stations for signals to change? At least then the commuters can make a decision of whether to stay on or off. Ticket inspectors over Safety Inspectors.
In a bid to reduce the number of fare dodgers there have been an increase in the number of safety officers. At one point I've been checked 3 times on a journey. At no point have safety officers been there to prevent the over-crowding that occurs or been there to provide information when a delay happens,
Poor ticket flexibility
Today I wanted to buy a ticket at Altrincham from Trafford Bar (where my season pass ends) to Piccadilly. So I have 2 options. I can either get off a Trafford Bar, buy a return from there and wait for the next tram or buy a full return from Altrincham. Today I spent £4.30 and gave up at Trafford Bar. I actually paid twice for this journey.
What the hell is going on?
It seems to be that this transport system is reeling from one cock-up to the next. I've had one person from my team at work leave due in part to the Metrolink commute. His train/tram season ticket was accepted by most inspectors but then he got slapped with a £50 fine (for his first offence!). Poor information on the train system caused this.

There's probably more I could haul out of the memory banks if I wanted to, such as the cock up of the wiring at Altrincham where you had to pay someone to stand there until someone ordered some sleeving because it was too close to the footbridge. I think you get the idea though. Metrolink is mismanaged and not fit for purpose.
I feel it's Metrolink's duty to explain its self and to sort it out!

Friday, December 09, 2011

Metaphors in software

Many Extreme Programming practices are now considered industry standard or at the very least 'worthy'.
The poor cousin of these is perhaps the idea of System Metaphor. The intention behind XP's System Metaphor practice is to have a common "story that everyone – customers, programmers, and managers - can tell about how the system works." This story often is told in the language of the problem domain, there is no metaphor. (In XP terms this is known as a naïve metaphor)

It was my guess that most systems are developed without a system metaphor (or a naïve one). So I thought I'd do an in depth study.

Less than 20% of devs use the system metaphor. The evidence is damming!

So do we even care about the system metaphor as a practice. If 80% of developers haven't used a system metaphor why would you even bother? Are developers missing a trick?
A world without metaphors.
Metaphors are everywhere and in software land they are impossible to exist without. Why? Because the mechanics of what is actually happening is so far removed from what the typical user can communicate we need to abstract to understand anything. As a software dev, I don't want to have the overhead thinking about how the electrons fly around the computers, copper wires, through the air and I probably don't need to know too much how data gets from my HD into memory for example. Developers think at one level of abstraction, their clients work at another. The divide is there.. too often do stakeholders turn around and complain about the 'jargon' the developers use.

So to allow the computer scientists to communicate with the devs they cooked up data structures. Think about the humble stack.
The stack datatype.

A tangible stack  is a set of objects placed on top of each other. To get to an item you need to remove the items above it. The last item you put on the stack is the first item you need to deal with. Now the CS boffins who were dreaming up datastructures came up with a collection of memory locations that were also to be last one in, first out. They could have called it anything (like particle physicists up, down, strange, charm, anyone?) and I bet in CS world there were some scientists that just didn't get the Stack straight away? So what's the best way of explaining a concept? Describe it in terms that explainee underderstands.
Towers of Hanoi in the cooker


A Stack data type is not vertically aligned. It has no physical dimensions. There are holes in the metaphor. As far as I know most "real" stacks don't pop either but the concept is good enough to convey the concept of how the data structure is supposed to function.

The stack is just one example and, to be fair, a stack is a very simple concept. But look around the computer/software world and metaphors are just flippin' everywhere.

In Design Patterns
  • repository
  • bridge
  • adapter
  • factory
  • decorator
  • flyweight
  • mediator
  • command
In Software Concepts
  • error
  • bug
  • loop
  • concrete class
  • file
  • queue
  • peek
  • poke
  • pointer
  • engine
  • layer
  • core
  • service
  • bus


In the os paradigm
  • file system
  • folders
  • recycle bin
  • window
  • lock
  • desktop
  • mail box
  • firewall
and that's just the first few. Human's are naturally disposed to use metaphor and simile to explain concepts. The relatively dry topic of software engineering is an ideal breeding ground for metaphors. Most concepts are abstract and have no physical tangibility - what choice do we have?  

These aren't the sort of systems I build though. I build systems for businesses that help them streamline the business process. My systems have complexity. How can metaphors help us to construct these systems?

A Common Understanding
Imagine you have two sets of people. The first set are a crack programming unit, the second are a group of domain experts. Both are knowledge specialists in their field. The project cannot fail. But when the two sets talk its like one group are from Mars and the other Venus.

You have the option of getting the Martians to speak Venusian or the Venusian's could learn Martian ways. The problem you may come across here is that it takes a lot to learn Martian well. And boy those Venusians lead complicated lives. They are completely alien to those Martians.

There's a third option: imagine if both Martians and Venusians have been observing Earthlings for a while then perhaps they could describe their problems using Earthling ideas and Earthling idioms.
 (Earthlings as we know are simple creatures with well defined funny-little habits).

But metaphors are alien to me?
I suppose its quite disconcerting to not plump for the naive metaphor. It seems easy... but is it?
Naive metaphors are a one way street. The dev team may potentially know nothing about the domain it is going to work with. The stakeholders hold all the cards.

In the short term it is probably easier for the delivery team to learn about the problem domain.
What can happen though is that there may be an incomplete transferral of knowledge to the delivery team. I suppose that this unlikely to be too much of a problem in an iterative project. Agile accepts that not everything will be right first time but that doesn't mean we should aim to close the iteration loops.

By introducing a metaphor the knowledge holders have to 'think' about how their domain is relates
to the metaphor. Processes that are 'second nature' need to be be deliberately revisited and described not only in terms of the business stakeholders but in a shared and a discovered paradigm.

This joint learning I feel has some value. It seems strange that this practice is not more popular.