Thursday, August 26, 2010

Udaan



Has awesome soundtrack. Waiting for the release of the DVD.

Monday, August 23, 2010

Statecharts

Most of the software development that I have been involved until now has used a non-deterministic approach of solving problems. As a results some of the details are missed and I have hit some unexpected bugs. These bugs are especially expensive and painful as we get close to the release date. I have been in unpleasant situations because of such problems.

Few weeks ago I moved to the SAN (Storage Area Networks) development team at Netapp and came across some really good engineering ideas like FSM (Finite State Machines). I had studied FSMs in school but never had an opportunity to use them in real life until now. FSMs have a property of forcing developers to think about software in a more deterministic manner and seems to result in much less buggy software. There is an initial learning curve involved but once you get a hang of it, the tool is a time saver.

However being amused with this model of software design I started reading more (research papers) about it and then stumbled upon "UML statecharts" which are basically FSMs on steroids. This design model is much more powerful and reduces design complexity by adding hierarchical layers of abstraction. Also there is a very good paper "Coverting Statecharts into Java code" which explains this concept really well in practical terms. I am hoping to get a chance to use this tool someday, however I need to reckon to use the right tool for the right job.

Labels:

Sunday, August 08, 2010

Family time