Skip to content

Motivations and philosophy

Charles T. Betz edited this page Mar 2, 2015 · 16 revisions

There are multiple motivations for the Calavera and broader InsanIT projects.

First, IT education needs to keep pace with DevOps, Agile, and Cloud trends. Given the easy availability of computing power and the great flexibility of technologies such as Vagrant, it is straightforward to create virtual systems demonstrating key concepts of the new style of IT.

Second, teaching higher level concepts such as IT service management and enterprise architecture to students without industrial experience is very difficult. Presentations and books are too abstract; a simulation is critical.

Finally, architectural work (such as IT4IT) too easily becomes abstract and "religious" when not grounded in a concrete reality. Calavera was inspired in part by the IT4IT efforts to define a DevOps toolchain; a reference implementation is helpful in ensuring the architecture is well grounded.

This is the ultimate goal of the InsanIT project, to create a full simulation of a large scale enterprise with multiple DevOps pipelines interacting against shared services. Eventually this will include simulations of the higher order processes and functions such as service desk, ticketing, project and release management, and ultimately architecture and portfolio management.

In fall 2014 I undertook leading the DevOps workstream for the IT4IT standard. In doing the IT4IT work, I am continually reminded of how IETF and W3C do standards, with "rough consensus and running code." More abstract standards like IT4IT are challenging, because we get into so many subjective debates. It is my hope that an open simulation test bed might help ground such standards efforts.

Also, while it was easy to develop a high level "ivory tower" architecture for DevOps, I was not satisfied - it felt too superficial. I wanted to be sure that the abstractions I was developing were based in reality. This implementation proves out what will be published as the IT4IT DevOps / Agile scenario.

More generally, IT management has struggled for many years with silo thinking and fruitless, subjective debates around the best way to organize and manage the IT capability. While systemic simulations cannot overcome all such obstacles, they are intended to provide helpful insights that may eliminate some of the less profitable arguments.

In more depth, the following passage from a recent CACM article on computationally modeling human emotion reflects some of the motivations and aspirations for InsanIT:

On an empirical level, computational models facilitate an expanded range of predictions compared to conventional theory. Computer simulations are a way to explore the temporal dynamics of ... processes and form predictions about the source and time course of those dynamics. Manipulations of experimental conditions may be explored more extensively first with a computational model, as in [understanding] functionalities or testing responses under adverse conditions that may be costly, risky, or raise ethical concerns in vivo. Simulations can reveal unexpected model properties that suggest further exploration. Additionally, models of emotion ... have been incorporated into virtual humans, software artifacts that look and act like humans, capable of interacting with people in a virtual world they cohabit. These systems essentially allow for the study of emotion in a virtual ecology.

See also A DevOps Simulation for Education.

Clone this wiki locally