AADL Musings

Just got back from a course on the Architecture Analysis and Design Language (AADL) in Huntsville, AL. Stayed right next to the U.S. Space & Rocket Centre but didn’t get a chance to go visit. The Saturn V stands proudly and is visible from my hotel room window.

The AADL lets you model systems as a hierarchy of components, themselves systems. Systems are interconnected via data and event flows. You can also specify properties such as latencies, power consumption, execution time, heat, and weight - both expected and nominal values for each component. Analysis tools, such as those implemented in OSATE, can take these properties and check if the end-to-end latencies, power consumption etc. meet the expected values. Realisations of systems take the form of system implementations and it is possible to try out several different system implementations (e.g. multiprocessor, multicore, uniprocessor) and make several analyses to see which one works best. On top of that the AADL has a very well defined set of semantics for how threads are scheduled, how processes interact, the life cycle of a process, and so on. The AADL is also a standard maintained by the SAE.

I think there’s a place for the AADL in the software development realm - we haven’t done much in the way of rigorous analysis of throughput, many times only as an afterthought. I strongly encourage software system designers and developers to take a hard look at the AADL and see where we all can use the notation and properties to help us better analyse the throughput, latency, and other key performance factors in our systems.

Cycling to Work

This week is “Bike to Work Week”. I’m riding my Sirrus Sport to work tomorrow along the Cedar River Trail. Check out BikeIowa and this search on Google. It’s not only fun and healthy but also saves fuel and greenhouse gases!

Back from Iowa Code Camp

What an exciting, thought provoking and tech-infused day. Met lots of people, made new connections, revisited existing ones...

Re: my iPhone dev talk, here’s the link to the Apple Developer site’s iPhone 101 PDF file. Enjoy! Hope my talk today was useful!