Professor Dave Bakken’s Personal Web Page

Welcome to my personal web page!  I am an assistant professor in the School of Electrical Engineering and Computer Science at Washington State University in Pullman, Washington, USA.

Below you will find the following: Research; Publications; Conferences; Teaching; Links; Students; Education and Background (CV, undergrad, Boeing, UArizona, BBN, WSU); Contact Info;  Conferences; Photos.  In general, the more interesting it is to the general reader, the earlier it is, to spare you from wading through stuff you might not want to see.  Also, you can find other non-academic stuff I’m interested in (Cougar football, etc) here.

My Research

I am involved with a number of research projects.  Most of them involve improving the state of the art in what I call infrastructure software, software that others build large distributed software systems on top of.  In particular, most of my work directly involves devising new kinds of middleware.  Many of them involve fault tolerance, because that is my core expertise.  All involve pragmatic research in systems software that involves significant prototyping activities; I have neither patience nor time for ivory tower research that has no practical application, i.e. it is strictly “academic” in the full sense of the word.

Projects I am the sole or lead PI on include:

Other collaborations I am involved with are:

Select Recent Publications

Bakken, David.  “Middleware.”  Chapter in Encyclopedia of Distributed Computing, J. Urban and P. Dasgupta, eds., Kluwer Academic Publishers, to appear.

Franz, A., Mista, R., Bakken, D., Dyreson, C, and Medidi, M.  Mr. Fusion: A Programmable Data Fusion Middleware Subsystem with a Tunable Statistical Profiling Service”, in Proceedings of the International Conference on Dependable Systems and Networks (DSN-2002), IEEE/IFIP, Bethesda, Maryland, June 23-26, 2002.

Bakken, D. and Zhan, Z. and Jones, C. and Karr, D.  “Middleware Support for Voting and Data Fusion”, in Proceedings of the International Conference on Dependable Systems and Networks (DSN-2001), IEEE/IFIP, Göteborg, Sweden, July 1-4, 2001, 453-462.

Krishnaswamy, V. and Ahamad, M. and Raynal, M. and Bakken,D.  “Shared State Consistency for Time-Sensitive Distributed Applications”, in Proceedings of the Twenty First International Conference on Distributed Computing Systems (ICDCS-21), IEEE, Tempe, Arizona, April, 2001.  (Best paper award among 217 submitted from 19 countries.)

Bakken, D. and Bose, A. and Bhowmik, S.  “Survivability and Status Dissemination in Combined Electric Power and Computer Communications Networks”, in Proceedings of the Third Information Survivability Workshop (ISW-2000), CERT, October, 2000, Boston, MA.

Zinky, John A. and Bakken, David E. and Schantz, Richard E., “Architectural Support for Quality of Service for CORBA Objects”, Theory and Practice of Object  Systems (Special Issue on CORBA and the OMG), 3:1, April 1997, 55-73.

My Teaching

I teach applied courses in distributed systems, networking, and fault tolerance, at the senior and graduate level.  Current classse (Spring 2004):

My Students

My current, former, and potential future students how have their own web page.

My Education and Background

My current CV is online (.pdf, A4 .pdf, .html).

I’m a native of the Seattle area, born in 1961 in Burien, graduated from Monroe High School  in 1979.  I wanted to be an Army officer (Special Forces), so I went to the US Military Academy at West Point.  I “walked on” the Army Wrestling Team, but unfortunately suffered a chronic back injury, and in 1981 was summarily given a medical discharge.  I hitchhiked across the country to Pullman to pick up my hot rod from my brother, then returned there to Washington State University as a student 6 months later.  I finished in 1985 with BS degrees in Computer Science and Mathematics and a minor in Electrical Engineering.

After WSU I went to work for Boeing.  I worked there until 1988.  I worked in the Flight Simulation Lab in Renton, where I initiated, designed, and built a tool called DataFlow to help parallelize legacy flight simulation code.  (DataFlow was still being maintained and used as of 2001, and was called a “major tool” by a senior engineer there.  Its obviously been extended quite a bit since I left so I cannot claim full credit!)  I also worked some on a debug monitor for the 7J7 airplane’s realtime executive.  After this airplane was cancelled due to market conditions, I finished my last 6 months at Boeing teaching classes in Ada, C, Unix, and related topics.

Next I did a MS and PhD in Computer Science at The University of Arizona in Tucson.  I started out my research working under Prof. Greg Andrews’ direction in parallel programming in general and what was informally called “portable parallelism” in particular.  As part of this, I extended the runtime system of Andrews’ parallel and distributed language, Synchronizing Resources (SR), to take advantage of a shared memory multiprocessor.  After a few years, however, I realized my heart was in distributed fault tolerance, so I started working under Prof. Rick Schlichting’s direction (now at AT&T Research).  I developed a fault-tolerant version of the language Linda, called FT-Linda, using virtually synchronous atomic multicasts.  FT-Linda featured multiple kinds of tuple spaces (scope: private, global; resilience: volatile, stable) and a guarded atomic statement allowing multiple tuple space operations to be combined and executed atomically (with a few restrictions to allow them to be delivered in one atomic message; similar to a “one-shot transaction”, I am told).  FT-Linda is related to JavaSpaces, which is part of Java’s Jini.

After Arizona I joined the Distributed Systems Department at BBN Technologies, in Cambridge, Mass. (across the river from Boston).   BBN built the first Internet, called the ARPANET, in 1969, and has been building wide-area distributed applications and middleware to program them with since shortly thereafter.  There I was one of the original co-architects of the Quality Objects (QuO) framework, along with Dr. John Zinky and Dr. Richard Schantz, and later Dr. Joe Loyall.  QuO has been very successful, and has been used to integrate research mechanisms from many universities including Cornell, Carnegie Mellon, Georgia Tech, University of Illinois at Urbana-Champaign, and others as part of the DARPA Quorum program.  QuO has also been used in experimental software in a Boeing military aircraft (see the ICDCS-21 paper and a briefing “Weapon System Open Architecture: A Quorum Technology Transition Case Study” ).  It also is being used to develop software to provide adaptive quality of service for video streams for Unmanned Aerial Vehicles (UAV) such as the Predator drone being used in Afghanistan, in Iraq, and in the Balkans.

While at BBN I was also the PI for a DARPA project, AQuA, with Prof. Bill Sanders of UIUC and Prof. Ken Birman of Cornell.  AQuA was one of the early versions of CORBA that supported replicated servers.  AQuA has been evaluated by the Navy for potential shipboard computing use, and has been used as an intgrated technology as part of the QUITE technology transfer project by The Open Group, Teknowledge Inc., and System/Technology Development Corp. I also was lead consultant on replication and caching strategies to GTE/BBN’s global ISP, BBN Planet (later Genuity).

But after five years of being back East (the “wrong coast” IMO), my wife and I decided it was time to get back home closer to family, and I always knew that I eventually wanted to be a professor.  So we “came home” and I became an Assistant Professor here at WSU in 1999.  More about what I do here at WSU is above.  While in Pullman I also have consulted to Amazon.com, on fault tolerance and scalability; to  NAI Labs (formerly “Trusted Information Systems”) on the ITDOS project (funded by DARPA), adding support for tolerating Byzantine failures (computers compromised by hackers) in CORBA; and to TriGeo Network Security quite a bit on their novel distributed security framework.

Like a number of applied experimental “systems software” researchers, I like to skirt the line between the academia and industry, because neither is perfectly satisfying.  In the academe, prototypes lead to papers but are rarely fully shaken down, released, used by others, etc.  But in industry you rarely get to look at the fundamental issues of a problem in depth.  So this skirting the line I my way to try to have it both ways!

Contact Info

David E. Bakken

School of Electrical Engineering & Computer Science

PO Box 642752 (for postal mail); or 102 EME Building (for Fedex)

Washington State University

Pullman, WA 99164-2752.

Phone: +1 509 335 2399   Fax:   +1 509 335 3818

Email: bakken@eecs.wsu.edu or dave-bakken@gocougs.wsu.edu

Conferences

Some conferences I am currently involved in some manner with organizing or assisting:

Some other interesting and useful conferences in my area or close areas:


Photos

Here are a few pictures of me, if you insist on viewing my ugly mug shot: