Wednesday, April 6, 2011

General Advice for commissioning a web service (web site)

Contract
Ensure you are clear what you are going to get for the money ! Make a tick list of what will be delivered and produce a Gantt chart to track the progress. Ask what development methodology the programmers are going to follow, agile or waterfall. Make sure they explain their methodology so you are clear when you are going to meet with them and how you can track progress.

Browser support
Define which Browsers should be supported. At a very minimum this should include:

I.E9, I.E8
Firefox 3.6 and 4
Chrome 9 and 10
Safari 4

HTML version
Define the version of HTMl you want, make sure your website validates correctly to that version. If you plumb for HTML 5 make sure it displays correctly on the supported browsers. If you use HTML 5, use roles correctly.

CSS version
Again, check the supported browsers will support the version of CSS you choice. If you use CSS3, use only features supported by all browsers.
Interface

Ensure the interface is restful. Ensure return codes are meaningful. This will help when you want to create a mobile verson of the site or create mobile apps that use the site as a service.

A restful interface should help with jQuery support as well. Make sure your interface supports returning data as JSON at a the very least and a RSS feed as an option
Security

Escape all input to avoid XSS attacks . For PHP use htmlentities, all other languages should have something similar

All input and queries to the database should either be Paramatised or better still stored procedures should be used.

Any uploaded content should be limited to known file types. The content of the file should be verified and the file should be stored outside the webserver directories. Download should be anonymous so the file system is obscured.

Version Control
What version control system will they use. If they use a public one are they aware of any copyright problems that it may bring

Testing
How are they going to test the site ? Do they propose to use unit testing, if so will it be automated ?

5 comments:

  1. Useful checklist for the technical things to think of when commissioning a website. I think this would be particularly helpful for designers commissioning a developer.

    To complement this, I've added a post to my site about the non-techincal things to consider, which might be useful to clients, in particular small businesses, who don't have a technical background (like most of mine). Have a look at http://compass-design.co.uk/blog/small-business-websites-five-things-to-tell-your-web-designer/

    ReplyDelete
  2. PS Andy next time I see you there is some serious brain-picking to be done! I'm intrigued by restful interfaces - I guess it isn't about ergonomics...

    ReplyDelete
  3. Work will be scheduled according to existing Web Services commitments. Every effort will be made to schedule work fairly and promptly, although some work is inevitable during busy periods. Deadlines will be indicated in the proposal.
    Outsourcing Software Development Services

    ReplyDelete
  4. I was browsing the internet for Web Development websites and I came across yours. Anyway, just want to say that it's been nice dropping your website. Thanks for sharing such great information here.

    ReplyDelete
  5. Nice one.Keep sharing and updating your blog with new topics.
    Hire magento designer

    ReplyDelete