.comment-link {margin-left:.6em;}
Books & Articles I wrote.

Thursday, September 21, 2006

 

Before you start writing code ...

After the enterprise i am doing some consultancy with spent 7 hours because of mis-configuration between development and system test, i have been asked to help them with instrumentation and tracing within their apps... something i had actually provided prototypes on (integrating MOM etc) a while back but which became less of a priority.

I got me thinking about the kinds of things that get pushed down the stack in terms of priority, but are very easily added at design time. Security, tracing and instrumentation don't offer the end user much - most of the time it's invisible to them, but the benefits are huge. So I am starting a list of things to do and think in parallel to your development process.

Security - think about the big and small. Transport, message, Code security, permission demands and so on. At least be aware and make your team aware of what is avaialble and then think about the areas that should use it. Start with key areas and get familiar and then extend to other areas.

Tracing - in ASP.Net for example, you get tracing for free. Just add some trace statements and turn it on to see the result in your environment. Put in statements for core data (connection strings is a nice example of the one that screwed people up yesterday). At least know that deploment managers can look at a simple file and compare the values with what they expect.

Instrumentation - Another of the "ah, we'll do it later" things. Make a list of 5 key areas and instrument them. Add performance metrics, such as measuring the amount of memory taken up by a particular variable (yep, stored 5k cached SOAP messages for 300 concurrent users in an Application Varible isn't a great idea!).

Versioning - If you are working with endpoints in ASMX or WCF, then think about versioning. I personally like to version the endpoint, the wsdl and the xsd, but as long as you are AWARE that you DO have to think about versioning when it comes to web services, you'll be ahead of most of the companies i go into.

This isn't complete and i'll revisit - add your comments if there are more.

It's not implementation that is key here - it is awareness!

This page is powered by Blogger. Isn't yours?

Weblog Commenting and Trackback by HaloScan.com