Extreme JS

JS Greenwood's WebLog on architecture, .NET, processes, and life...

  • Active and passive risk

    Attitudes towards risk are something that I've been meaning to write about for some time now.  To me, there're basically two types of risk - active and passive (I'm no risk expert in the "risk analyst"/academic sense, so ignore all of this if it's obvious)...

  • When TDD Goes Bad #2

    I've been debating whether to post another entry on this for the last couple of weeks due to another bad smell I've spotted around Agile practices.  However, it's my blog, and I think it's worth saying.  But first, the bad smell...

  • When TDD Goes Bad #1.2

    So, #1.1 was all about the "business" - people defining requirements, and how these can cause issues.  #1.2 is just a short entry about the underlying statement I was trying to make in the original post:

  • When TDD Goes Bad #1.1

    OK, so people don't seem to get what I was trying to say in my previous TDD post, to the point of claiming (on certain newsgroups) that I "don't get TDD".  There were two points I was trying to make. So, I'll try and lay out the first of these now, in a simpler manner:

  • XPStoryStudio site up: www.xpstorystudio.com

    Having registered the site a couple of weeks ago, I've got round to putting together and uploading a couple of web-pages for XPStoryStudio, in preparation for it's release in the very near future.  All that's left to do is put some installation documentation together and generate the finished installer package.  In addition to posting major news about its release, etc. here, all the details will be published on XPStoryStudio's site:

  • When TDD Goes Bad #1

    Although Test Driven Development (TDD) is one of the greatest steps forwards in software engineering, especially when combined with modern languages and testing frameworks (i.e. xUnit), there's a definite anti-pattern lurking in there - Test Oriented Development.

  • Coordinating Enterprise Website Development in .NET

    One of the favourite Enterprise development strategies for .NET websites I've come up with is that of splitting the website into logical areas along functional- (and naturally change-) boundaries; having separate areas of the site developed as separate ASP.NET controls.  I'm not talking small-scale controls like "Address entry" here, I'm talking entire 5+ page application processes as a single control (that might itself comprise further controls).  This model works well for all kinds of large organisations - an online e-commerce site could have separate basket, checkout-process, and product-search controls, for instance, each of which would be aligned against a set of services that they're consuming (in an SOA).  The current enterprise-in-question is a bank, which fits this model better than most other sites I've come across due to the sheer amount of functionality necessary on the website, and its diversity.  Application forms alone constitue a raft of controls:

  • SOA Design with Agile methodologies

    Service Oriented Architecture (SOA) and Agile - two of the current "hot topics" in IT.  The interesting thing is that even though they're fundamentally different - one being a set of architectural principles, the other a set of methodology principles, one of the key goals and benefits of both is enabling change.