This is a fascinating new ebook by Doug Rosenberg (with some minor input from me) which provides a slice of IT history. It's written from Doug's perspective, describing how he got involved training the team producing software for the Large Synoptic Survey Telescope (LSST), and before that the Large Binocular Telescope (LBT). The bulk of the book is about how the ICONIX Process was adapted to help design the LSST's Image Processing Pipeline software. This system, and the story surrounding it, are about as geek-heavy as it gets - but as detail-rich narratives go, this one's compelling and accessible.
An OOAD method like the ICONIX Process is driven by use cases; and use cases by their nature are all about describing the interaction between people and UIs. So it's fascinating to read about how the ICONIX Process was adapted to the analysis and design of a system which consists almost entirely of non-UI components. (The result has been turned into a variant of the process called "ICONIX Process for Algorithms").
One of the biggest challenges in creating the LSST software is the sheer amount of data processing it'll need to perform when the telescope "goes live" in a few years' time.
From the book:
There are a couple of things that Jeff and Tim do have working in their favor: plenty of brains (not only their own, but a widespread and largely brilliant team of astrophysicists that are experts on various pieces of the problem), and a fair amount of time (LSST is scheduled to go operational in 2015, and is currently in an R&D phase). However, it’s safe to say that most of the astrophysicists on the team wouldn’t consider themselves software engineers, although most of them are programmers. In this situation, a good strategy is to make extensive use of rapid prototyping (in this case algorithm development via prototyping) in addition to the UML modeling. So a two‐pronged strategy of prototyping and modeling has been underway on LSST for a few years now.
The LSST prototyping strategy involves annual Data Challenges (see Figure 2). These Data Challenges are development efforts with a limited functional and performance scope, and somewhat relaxed modeling requirements. During LSST’s Construction Phase, prototyping will switch to incremental development, where the actual system will be developed in a sequence of incremental releases, and somewhat more modeling will be expected.
The ebook was produced by Sparx Systems, creators of the superb Enterprise Architect modeling tool, and is downloadable for free from their website. More ebooks from Doug (again in collaboration with Sparx) are in the pipeline...