º Home
      º Organization
      º Travel/Venue
      º Program

Keynote and Invited Speakers


Accepted Papers and Presentations

Retrospective on Modularity




      º Important Dates
      º Call For Contributions
      º Student Rally

º Student Research Competition

      º Promote AOSD 2011
      º Student Volunteers
      º Past Conferences
      º Registration  
Keynote Speaker

Wednesday, March 23 8:30am
Mary Shaw
Friday, March 25 3:20pm
André van der Hoek
Friday, March 25 8:30am
Kirk Knoernschild

Invited Speakers

Wednesday, March 23 1:30pm
Jim Herbsleb
Thursday, March 24 8:00am
Gilad Bracha

Technical Track

Modularity for the Modern World (Slides)

Mary Shaw, Carnegie-Mellon University

Wednesday, March 23rd 08:30am | Room: Caboclinhos

Abstract: Aspect-oriented programming is motivated by the desire to design software with localized definitions of separate concerns of the system that must, because of the nature of our programming languages, be entangled in the code. This separation of concerns achieves modularity in the design, but it does so at the cost of complexity when combining the aspect definitions in the implementation. Aspect-oriented modularity grew out of limitations of conventional modular constructs of programming languages, which support modularization of functionality or of functionality jointly with data structure.Development of modern computation and information systems involves much more than moving from functional abstractions to code. As computing has become an integral part of our infrastructure, the software development task has changed as well. These changes challenge much of the conventional wisdom of software engineering, including assumptions about modularity.This talk will discuss the larger landscape of modularity in modern computing and information systems, including the motivations for introducing modularity, the sorts of information that can usefully be modularized, mechanisms that bridge from the modular abstractions to running code, generality/power tradeoffs, and examples that show this diversity.

Biography: Mary Shaw is the Alan J. Perlis Professor of Computer Science and a member of the Institute for Software Research, the Computer Science Department, and the Human Computer Interaction Institute at Carnegie Mellon University. She has been a member of this faculty since completing the Ph.D. degree at Carnegie-Mellon in 1972. From 2001 to 2006 she served as Co-Director of the Sloan Software Industry Center. From 1992 to 1999 she served as the Associate Dean for Professional Education. In 1997-98 she was a Fellow of the Center for Innovation in Learning. From 1984 to 1987 she served as Chief Scientist of CMU's Software Engineering Institute. She had previously earned a B.A (cum laude) from Rice University and worked in systems programming and research at the Research Analysis Corporation and Rice University. Her research interests in computer science lie primarily in the areas of software engineering and programming systems, particularly value-driven software design, support for everyday users, software architecture, programming languages, specifications, and abstraction techniques. Particular areas of interest and projects have included software architectures (Vitruvius, UniCon), reliable software development (everyday software, strong typing and modularity), evaluation techniques for software (predictive design evaluation, performance specification, compiler contraction, software metrics), program organization for quality human interfaces (Descartes), technology transition (SEI), abstraction techniques for advanced programming methodologies (abstract data types, generic definitions), programming language design (Alphard, Tartan), and analysis of algorithms (polynomial derivative evaluation).

Modularity Visions Track

A Design Perspective on Modularity (Slides)

André van der Hoek, University of California, Irvine

Friday, March 25th 03:20pm | Room: Caboclinhos

Abstract: Modularity is essential to software development. Without it, large software systems simply could not be realized. Designers typically strive to achieve a high degree of modularity by separating different concerns over different modules, a process called modularization. Modularity, however, is but one of the goals that the designer has. Furthermore, design does not just take place when the designer decides upon the structure of the code. Instead, design is a multi-dimensional activity that permeates the software life cycle. In this paper, we examine modularity as seen through the lens of design as it takes place across the life cycle, particularly dissecting typical activities in which designers engage to study how these activities involve and relate to modularity. The result is an affirmation that modularity is and always should be an integral part of designers' work, but that our current techniques to achieve modularity fall short in a number of critical ways. A research agenda is laid out toward overcoming these shortcomings.

Biography: André van der Hoek is a professor in the Department of Informatics of the Donald Bren School of Information and Computer Sciences and a faculty member of the Institute for Software Research, both at the University of California, Irvine. He holds a joint B.S. and M.S. degree in Business-Oriented Computer Science from the Erasmus University Rotterdam, the Netherlands, and a Ph.D. degree in Computer Science from the University of Colorado at Boulder. His research focuses on understanding and advancing the role of design, coordination, and education in software engineering. He has authored and co-authored over 80 peer-reviewed journal and conference publications, and in 2006 was a recipient of an ACM SIGSOFT Distinguished Paper Award. He is a co-author of the 2005 Configuration Management Impact Report as well as the 2007 Futures of Software Engineering Report on Software Design and Architecture. He has served on numerous international program committees, is a member of the editorial board of ACM Transactions on Software Engineering and Methodology, and is program chair of the 2010 ACM SIGSOFT International Symposium on the Foundations of Software Engineering. In 2009, he was a recipient of the Premier Award for Excellence in Engineering Education Courseware. He is the principal designer of the B.S. in Informatics at UC Irvine and was honored, in 2005, as UC Irvine Professor of the Year for his outstanding and innovative educational contributions.

Industry Track

Modularity, Agility, and Architecture's Paradox (Slides)

Kirk Knoernschild, Gartner, Inc

Friday, March 25th 08:30am | Room: Caboclinhos

Abstract: Attempt to architect more flexible software often results in the opposite - brittle software fraught with complexity. Something is missing. Complexity is the beast we must tame, and modularity is part of the answer. In this keynote, we′ll examine the challenges of traditional approaches to software architecture, probe the paradox of architecture, and explore the inextricable link between structural and temporal architectural decisions. From the highest level applications and services to the code that exists in the bowels of the system, we expose the advantages of a modular architecture. Come learn new ways that large software systems can be organized to increase flexibility, reusability, adaptability, maintainability, testability, and extensibility. Come discover the importance of modularity!

Biography: I am an industry analyst at Burton Group. For 15 years, I worked in the trenches on real software projects. I believe software development is an amazing profession. I take a keen interest in design, architecture, application development platforms, agile development, and the IT industry in general, especially as it relates to software development. I also enjoy experimenting with new technology, whether it be the the cool new framework or tethering my smartphone to my Mac via Bluetooth to get an internet connection. In 2002, I wrote the book Java Design: Objects, UML, and Process, published by Addison-Wesley. I have also written numerous whitepapers and articles, including The Agile Developer column for The Agile Journal. I am also the founder of Extensible Java, a growing resource of component design pattern heuristics for Java that can easily be applied to most other platforms, including .Net. I created the open source utilities JarAnalyzer and AssAnalyzer which help teams manage the dependencies between Java .jar files and .Net assemblies, respectively. I have trained thousands of software professionals, teaching courses on UML, Java J2EE technology, object-oriented development, component based development, software architecture, and software process. I am trapped in a software developer′s body, and to this day I continue to enjoy hacking in a variety of languages, including Java, .Net, Ruby, and PHP.

Modularity Visions Track Invited Speakers

Talking about Concerns (Slides) (PDF)

Jim Herbsleb, Carnegie Mellon University

Wednesday, March 23rd 01:30pm | Room: Caboclinhos

Abstract: The aspects community has developed a rich set of language-based mechanisms for addressing issues of scattering and tangling of concerns. In this talk, I sketch an alternative approach, where automatically collected data are analyzed to create models of concerns, which in turn are used by tools in the development environment. Data includes not only traditional repository data such as version and change logs, but also verbal data such as textual communication, meeting minutes, documentation, and even spoken conversation. I will describe some preliminary work my colleagues and I have done to explore this direction.

Biography: James Herbsleb is a Professor in the School of Computer Science at Carnegie Mellon University. His research interests focus on collaboration and coordination in software and systems engineering projects. His research iterates over empirical studies, theory development, and design and deployment of technology. Before accepting a position at CMU, Herbsleb led the Bell Labs Collaboratory project, focused on understanding and solving issues in geographically- distributed software development. He holds a PhD in psychology and a JD in law from the University of Nebraska, as well as a MS in computer science from the University of Michigan, where he also completed a post-doctoral fellowship.

Modules: Dreams and Reality (Slides)

Gilad Bracha, SAP Labs

Thursday, March 24th 08:00am | Room: Caboclinhos

Abstract: Interfaces are key to defining modularity. A working definition of module is an entity that can be changed freely as long as its interface is preserved. What then is a good notion of interface? In this talk, we'll argue for a notion of modules and interfaces that is ultimately inspired by physical reality, and contrast it with the dreams embodied in the concepts of aspect orientation. Our notions have been realized in the Newspeak language, but the concepts apply to a variety of languages.

Biography: Gilad Bracha is the creator of the Newspeak programming language. He is currently a VP at SAP Labs in Palo Alto focusing on programming models for the cloud. Previously, he was a Distinguished Engineer at Cadence, and a Computational Theologist and Distinguished Engineer at Sun. He is co-author of the Java Language Specification, and a researcher in the area of object-oriented programming languages. Prior to joining Sun, he worked on Strongtalk, the Animorphic Smalltalk System. He received his B.Sc in Mathematics and Computer Science from Ben Gurion University in Israel and a Ph.D. in Computer Science from the University of Utah.



Diamond Sponsors


Platinum Sponsors


Gold Sponsors


Silver Sponsors


Bronze Sponsors


ACM Student Research Competition Sponsor


In Cooperation With


Organizing Sponsors