Going about SME web development |
|
|
|
Technology
|
|
Written by Gwyn Morfey, Senior Web Development Manager at New Bamboo
|
|
Thursday, 30 October 2008 |
|
Beware those web designers that follow your instructions to the letter. There is a huge difference between a simple 'code shop' and a mature development house.
If you've hired an expert team, they've probably been building web applications for more than ten years. Whatever your project, they've almost certainly done something similar before, made many of the mistakes, and learnt how to avoid making them again.
They often won't offer these insights unasked and from the outside these technical gurus can be quite intimidating. If you're asking "Can we do this?" The answer is most like to be “Yes - of course we can”.
As well as economic pragmatism, it's a matter of personal pride. For an expert programmer, anything's possible, with enough time. But if you ask "Should we do this?" You may get a different answer.
Using a heavyweight framework like Rails makes some difficult-looking things very easy, but defying certain conventions can be quite hard. This is often counterintuitive for non-technical clients who aren't aware of the relevant technical standards. And while it's probably possible to get exactly what you want, you may be better off with a solution that gives you most or all of the business value in a fraction of the time.
Agile methodologies are particularly well-placed to capitalise on this. If your web project is tied down by a formal plan, then improvements suggested by the development team will come too late.
Involving the technical team early and tackling a small part of the system at a time using Agile iterations will address this. We also find that many improvements come at the end of iteration planning: as developers begin to estimate individual engineering tasks for the next two weeks' work, someone will say "But do we really have to do that? Wouldn't it be faster to do this?" It's impossible to plan in that level of detail at the start of a project.
Maximising the benefits also requires a thorough implementation of XP's "Vision" practice - the technical team need to know what they are building, but why we are building it” Without some understanding of business value, the suggestions won't be useful.
In an Agile web project, the close relationship between the Project Manager and the customer helps to remove the psychological barriers to revising the design. Ultimately, though it is about trust, and you don't need to implement a fully Agile process straight away. If you find your tech lead muttering "of course it's possible", all you need to do is ask: "Is there a better way?"
|