Bristlecone: Language Support for Robust Software Applications

Demsky, Brian; Sundaramurthy, Sivaji
January 2011
IEEE Transactions on Software Engineering;01/01/2011, Vol. 37 Issue 1, p4
Academic Journal
We present Bristlecone, a programming language for robust software systems. Bristlecone applications have two components: a high-level organization specification that describes how the application's conceptual operations interact and a low-level operational specification that describes the sequence of instructions that comprise an individual conceptual operation. Bristlecone uses the high-level organization specification to recover the software system from an error to a consistent state and to reason how to safely continue the software system's execution after the error. We have implemented a compiler and runtime for Bristlecone. We have evaluated this implementation on three benchmark applications: a Web crawler, a Web server, and a multiroom chat server. We developed both a Bristlecone version and a Java version of each benchmark application. We used injected failures to evaluate the robustness of each version of the application. We found that the Bristlecone versions of the benchmark applications more successfully survived the injected failures. The Bristlecone compiler contains a static analysis that operates on the organization specification to generate a set of diagrams that graphically present the task interactions in the application. We have used the analysis to help understand the high-level structure of three Bristlecone applications: a game server, a Web server, and a chat server.


Related Articles

  • Is VB Dead? Oley, Michael // SQL Server Magazine;Aug2004, Vol. 6 Issue 8, p5 

    The article presents information on Visual Basic. The adoption rate for .Net technologies released more than 2 years ago, continues to lag behind Microsoft expectations. The set of .NET-based development tools that Microsoft launched in February 2002 included an IDE, the ASP.NET Web-development...

  • Freaks and geeks. Rapoza, Jim // eWeek;4/3/2006, Vol. 23 Issue 14, p50 

    The article re-examines the report on the alleged failure of computer programming language, Java. In defense to the allegations, the author has pointed out how Java has become one of the leading choices of the enterprise when it comes to high-end Web applications, middleware and Service Oriented...

  • Java still boiling.  // Australian Personal Computer;Mar2001, Vol. 22 Issue 3, p101 

    Deals with the relevance of Java programming language in 2001. Media hype over the language in late 1995; Introduction of version 1.2 of the Java2 Enterprise edition.

  • By the numbers. Battey // InfoWorld;12/13/99, Vol. 21 Issue 50, p40 

    Presents graphs showing trends in Java and Jini computer program language development. Includes a forecast on the development of Jini as a key technology for network applications; Extensive use of the Java computer program language in the banking and financial services industries; Popularity of...

  • WEB 2.0 ESCAPES THE INTERNET.  // APC (Bauer Media Group);Jul2007, Vol. 27 Issue 7, p11 

    The article highlights several web application technologies working to improve online services. Adobe's Apollo is a cross-platform system that is capable of combining technologies like PDF, Flash, HTML and JavaScript into one universally running application. Joyent's Slingshot offers the ability...

  • Investigations on Hierarchical Web service based on Java Technique. Bora, A.; Bhuyan, M. K.; Bezboruah, T. // Proceedings of the World Congress on Engineering & Computer Scie;Jul2013, Vol. 1, p1 

    We have designed, developed and implemented a hierarchical web service using Java as programming language, apache tomcat as web server, MySQL as database server to study the performance of the web service. The web service has been tested by deploying it on Mercury Load Runner to study various...

  • MULTI-PURPOSE MODULAR SOFTWARE PLATFORM FOR RAPID DEVELOPMENT OF WEB APPLICATIONS. Kristaly, Dominic-Mircea; Moraru, Sorin-Aurel; Grigorescu, Costin-Marius // Annals of DAAAM & Proceedings;Jan2011, p325 

    This paper presents the architecture, techniques and mechanisms of a software platform designed to facilitate the rapid development of complex web applications based on Java technologies. The paper details, from the MVC's architectural pattern perspective, every element of the platform –...

  • Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implications for Software Defects. Subramanyam, Ramanath; Krishnan, M.S. // IEEE Transactions on Software Engineering;Apr2003, Vol. 29 Issue 4, p297 

    To produce high quality object-oriented (OO) applications, a strong emphasis on design aspects, especially during the early phases of software development, is necessary. Design metrics play an important role in helping developers understand design aspects of software and, hence, improve software...

  • PROGRAM UPDATES.  // Certification Magazine;Nov2005, Vol. 7 Issue 11, p14 

    The article provides computer program updates as of November 1, 2005. The Certified Wireless Networking Professional program released the Wireless# certification. Sun's new exam, #CX-310-019, Sun Certified Associate for the Java Platform, provides an entry point for IT professionals interested...


Read the Article


Sorry, but this item is not currently available from your library.

Try another library?
Sign out of this library

Other Topics