The 2nd Mini-Conference

on the Synergy of Software Architecture, Process and Organization

 

May 6th, 2009

Conference Room 302, Bossone Research Center

Drexel University, Philadelphia, PA

 

 

Home Agenda Abstracts and Bios

The abstracts, titles and bios are listed in the alphabetic order of the names.

 

Dr. Alberto Avritzer, Siemens Corporate Research, Inc.

Talk Title:

Architecture Collaboration Infrastructure to Support Quantitative Analysis for the Dynamic Positioning System Project

Abstract:

We present a vision for a global architecture view across multiple sites to enable seamless collaboration. Between several physically distributed research teams. The objective of the collaboration effort is the Evaluation of several non-functional requirements (NFR) for some architecture alternatives of the Dynamic Positioning Project. We discuss the suggested approach for seamless integration of the NFR models into the project architecture modeling effort.

Biography:

Alberto Avritzer received a Ph.D. in Computer Science from the University of California, Los Angeles, an M.Sc. in Computer Science for the Federal University of Minas Gerais, Brazil, and the B.Sc. in Computer Engineering from the Technion, Israel Institute of Technology. He is currently a  Senior Member of the Technical Staff in the Software Engineering Department at Siemens Corporate Research, Princeton, New Jersey.  Before moving to Siemens Corporate Research, he spent 13 years at AT&T Bell Laboratories, where he developed tools and techniques for performance testing and analysis. He spent the summer of 1987 at IBM Research, at Yorktown Heights.  His research interests are in software engineering, particularly software testing, monitoring and rejuvenation of smoothly degrading systems, and metrics to assess software architecture, and he has published over 50 papers in journals and refereed conference proceedings in those areas. He is a member of ACM SIGSOFT, and IEEE. Dr. Avritzer can  be reached at alberto.avritzer@siemens.com.

 

 

Dr. Yuanfang Cai, Drexel University

Talk Title:

A Formal Model for Assessing Software Architecture and Predicting Coordination Requirements

Abstract:

In this talk, we present a formal model that links software architecture with coordination structure. We show how to use this model to facilitate task assignment so that tasks can be maximally parallelized and communication among teams can be minimized. We also show how to use this model to predict change impact and assess software architecture stability and modularity.

Biography:

Yuanfang Cai is an assistant professor at Drexel University. She received her M.S. and Ph.D. degrees in 2002 and 2006 respectively from the University of Virginia, advised by Kevin Sullivan. Her primary research interests include formal design modeling and automated, quantitative analysis techniques to reason about design structure and related outcomes early in the development process, as well as the synergy of software architecture and organizational structure. Dr. Cai has served on program committees for several conferences and also co-organized the Workshop on Assessment of Contemporary Modularization Techniques (ACoM) co-located with the International Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA).

  

 

Dr. Carliss Baldwin, Harvard Business School

Talk Title:

Exploring Core-Periphery Structures in Complex Software Products 

Abstract:

Prior work argues that complex technical systems typically possess a "Core-Periphery" structure, in which a group of "Core" components, which are tightly-coupled to each other, are surrounded by a group of "Peripheral" components, which are only loosely-coupled to the rest of the system.  However, little empirical work has explored the extent to which such a structure is observed in practice, the factors that dictate how large the core is in a system, or how the core evolves over time.  We examine these questions by applying dependency structure analysis to over 1,000 software systems.  We show that while Core-Periphery structures dominate, we also observe systems with no core, and systems with multiple cores.  We discuss several findings relating to the size of system cores, the spatial location of the components in these cores, and the evolution of these cores over time.

Biography:

Carliss Y. Baldwin is the William L. White Professor of Business Administration at the Harvard Business School. With Kim B. Clark, she is involved in a multi-year project to study the process of design and its impact on the structure of the computer industry. She and Clark have authored Design Rules, Volume 1: The Power of Modularity, the first of a projected two volumes on this topic. Volume 2, in progress, will focus on Architecture and Strategy.

Baldwin received a bachelor's degree in economics from MIT in 1972, and MBA and DBA degrees from Harvard Business School. She developed and taught Mergers & Acquisitions, a second-year MBA course.

She has served on numerous corporate and non-profit boards. Within Harvard University, she is a member of the Visiting Committee of the Harvard Graduate School of Design and serves on the policy and admissions committee of the joint Ph.D program in Information Technology and Management. She lives in Brookline, Massachusetts, with her husband, Randolph Hawthorne.

 

 

Dr. Murray Cantor, IBM Research

Talk Title:

A Development Economics Architecture

Abstract:

Just as software and system architecture provides a means for various technical stakeholders to  ptimally meet their separate concerns in  an integrated solution, software managers and executives need a business analytic framework that enables separation and integration of the economic concerns (costs, risks, and benefits) of a development framework. I will present such a framework, give some examples and discuss our experience with its application.

Biography:

Dr. Murray Cantor is an IBM Distinguished Engineer and the governance solutions lead on the IBM Rational Software CTO team.. His areas of expertise include IT and development governance, software and system engineering processes, and system development management. Murray was the lead architect of RUP SE, the extension of the Rational Unified Process for system and enterprise engineering. He is the author of Object-Oriented Project Management with UML (John Wiley 1998) and Software Leadership (Addison-Wesley 2001), and has been a system architect, team lead, project manager, development product manager, architecture manager, program manager, and lead consultant. He developed and currently teaches a course on Development Governance at Stevens Institute in New Jersey.

  

 

Dr. James Herbsleb, Carnegie Mellon University

Talk Title:

The Architecture of Coordination

Abstract:

Architectural decisions not only influence the technical characteristics of products, they also establish the shape and form of the coordination problems that a product development organization must solve in order to succeed. Yet there is little guidance for architects on how to think about tradeoffs that involve social engineering as well as technical engineering. There is little guidance for managers on how to organize for particular product architectures, or how to adapt the organization to architectural changes. It should come as no surprise that coordination breakdowns so often lead to errors, delay, and failure. This talk will present empirical results, new theory, and practical implications from a research program aimed at shedding light on the relationship between architectures and organizations.

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 engineering projects, in areas as diverse as software development, aerospace engineering, and robotics. Before accepting a position at CMU, Herbsleb led the Bell Labs Collaboratory project, focused on geographically-distributed software development. The Collaboratory project conducted empirical studies of distributed teams, as well as designing and deploying collaboration technologies. He holds a PhD (psychology) and a JD (law) from the University of Nebraska, and a MS (computer science) from the University of Michigan, where he also completed a post-doctoral fellowship. His early ambition was to be a 21st-century Renaissance man, until he encountered normal forms in database design, at which point he realized there were some things he didn't want to know.

 

 

Dr. Alan R. Hevner, University of South Florida

Talk Title:

The Design of Software-Intensive Systems: A Quest for Intellectual Control

Abstract:

Modern enterprises are irreversibly dependent on large-scale software-intensive systems built from components whose function and quality attributes are not necessarily known a priori. The ad hoc and network-centric nature of these systems means that a complete static analysis of such systems is difficult or impossible. These systems grow and interconnect with other systems in ways that exceed current engineering techniques for intellectual control. We propose a new engineering framework for reasoning about and developing such systems of systems: the Flow-Service-Quality (FSQ) framework. Our aim is to provide rigorous, practical engineering tools and methods to reason about system flows as first-class objects of specification, design, implementation, and operation. System flows are realized as traces of system services, and their quality attributes are treated as dynamic, changing quantities that are measured during system execution.

Biography:

Alan R. Hevner is an Eminent Scholar and Professor in the Information Systems and Decision Sciences Department in the College of Business at the University of South Florida.  He holds the Citigroup/Hidden River Chair of Distributed Technology.  Dr. Hevner's areas of research interest include information systems development, software engineering, distributed database systems, healthcare information systems, and service-oriented computing.  He has published over 150 research papers on these topics and has consulted for a number of Fortune 500 companies.  Dr. Hevner received a Ph.D. in Computer Science from Purdue University.  He has held faculty positions at the University of Maryland and the University of Minnesota.  Dr. Hevner is a member of ACM, IEEE, AIS, and INFORMS.  Recently, he served as a program manager at the National Science Foundation in the Computer and Information Science and Engineering (CISE) Directorate.

Reference:

A. Hevner, R. Linger, M. Pleszkoch, S. Prowell, and G. Walton, “Flow-Service-Quality (FSQ) Engineering: A Discipline for Developing Systems of Systems,” Chapter 2 in Systems Analysis and Design: Techniques, Methodologies, Approaches, and Architectures, Edited by R. Chiang, K. Siau, and B. Hardgrave, Advances in Management Information Systems Monograph Series, M.E. Sharpe, Inc., 2009.

 

 

Dr. Alan MacCormack, Massachusetts Institute of Technology, Sloan School of Management

Talk Title:

Conway's Law Revisited: Do Modular Organizations produce Modular Products?

Abstract:

A variety of academic work argues that there is a relationship between the structure of a development organization and the design of the products that this organization produces.   Specifically, products are often said to “mirror” the architecture of the organizations from which they come.  This dynamic occurs because an organization’s normal problem solving routines and patterns of internal communication act to constrain the space of designs within which it searches for new solutions.  We explore this relationship in the software industry by use of a technique that allows us to visualize the architectures of different software products and calculate metrics to compare their levels of modularity.  Our research takes advantage of a natural experiment in this industry, where products exist that have been developed using very different organizational modes, specifically, open source (or distributed) development versus closed source (or collocated) development.  We analyze a sample of matched-pair products – products that that fulfill the same function, but that have been developed via these contrasting modes – to explore whether they differ in levels of modularity.

Our results reveal major differences in design for products that fulfill the same function – the products we examine differ by a factor of eight, in terms of the potential for a design change to propagate to other system components.  Furthermore, in all the pairs we examine, the open, distributed team is associated with a product that is more modular, providing support for the “Mirroring” hypothesis.  The implications of this result are profound, given the resulting designs may differ significantly in performance.  They suggest we must pay much greater attention to the structure of the organizations within which development occurs, given this sets the boundaries for the types of product that can be developed.  And they also suggest efforts to move a product from one context to another (e.g., from a closed to an open environment) are likely to fail, unless changes are made to facilitate working within the new mode of organization.

Biography:

Alan MacCormack is a visiting Associate Professor at the MIT Sloan School of Management. His research examines the management of innovation and new product development in high-technology industries, with a particular focus on the software sector. His work has been published in a variety of leading journals including Management Science, The Journal of Product Innovation Management and Harvard Business Review. In addition, he has written over 50 cases and notes that explore how organizations like Intel, Microsoft and NASA structure their innovation efforts to meet the challenge of highly uncertain environments. Prior to MIT, Alan spent ten years as a Professor in the Technology and Operations Management area at The Harvard Business School.

  

 

Dr. Daniel J. Paulish, Siemens Corporate Research, Inc.

Talk Title:

Systems Requirements Engineering for Distributed Projects

Abstract:

Coordination and control become more difficult due to distance, time zones, and cultural differences as system development project teams are geographically distributed. Some tasks can be distributed among collaborating staff located far away from each other, but some tasks are better done locally at a single site or with staff sitting together in one room.

 

The initial motivation for organizations to outsource their development work was to reduce development costs. Managers realized that systems engineers living in countries such as India, China, or Slovakia were paid less than engineers living in the United States. Since systems engineering is a labor-intensive activity, in theory it should cost less to develop products using engineers in lower-cost countries. However, our experience has shown that labor cost savings can often be offset by the learning curve costs for a new remote team to develop know-how about the applications domain and by the coordination and communication overhead costs [Sangwan et al. 2007].

 

Requirements engineering for distributed development projects requires enhanced processes in two primary areas as compared to collocated projects.

·         Higher-quality artifactsOn distributed projects, many engineers will learn about the requirements for the system they are building from reading functional and other specifications. Thus, the artifacts generated from the RE process must be readable and understandable. Remote team members will not be able, as easily as in collocated projects, to ask for clarification from the domain experts that defined the requirements. For such projects, models will likely be used to describe the requirements, since some team members may not be able to easily read long specifications written in English, if their English language skills are limited. Defects introduced in requirements engineering may not be so easily discovered by remote teams working on downstream processes. When remote teams with limited domain know-how develop the product code, they may implement exactly what is described in the functional specification even though it may be incorrectly specified.

·         Improved collaborationsOn distributed projects, REs may not have the possibility for quick response communications and casual communications with distant REs. In fact, an RE working at one site may be working while another RE at a different site in a different time zone is sleeping. An example common situation is that RE A has a question about a requirement that was defined by RE B at another site. RE A e-mails his question to RE B, who is sleeping while RE A is working. RE B comes to work the next day and answers the question by e-mail when RE A is sleeping. With such asynchronous communications, one can see how responses to questions can take substantial time before the requesting engineer receives an answer to proceed with her work, thus disrupting the overall work flow. Although REs in distributed sites will adjust their work hours to allow some workday overlap, we have noticed that most REs prefer to sleep when it’s dark. Thus, collaboration tools are used to reduce the response times between question and answer communications, as well as to persist the communications content so that questions and answers (e.g., decisions) are not lost in a stack of e-mail messages.

 

This presentation discusses requirements engineering for globally distributed system development projects. It discusses some of the organizational and technical issues involved with doing global development. It describes techniques that have been successfully used to elicit and analyze requirements across multiple locations and manage the requirements after the elicitation phase is over.

 

Biography:

Daniel J. Paulish is a Distinguished Member of Technical Staff at Siemens Corporate Research in Princeton, NJ, responsible for the Siemens Software Initiative in the Americas. He is a co-author of Software Metrics: A Practitioner’s Guide to Improved Product Development, the author of Architecture-Centric Software Project Management: A Practical Guide, and a co-author of Global Software Development Handbook. He is formerly an industrial resident affiliate at the Software Engineering Institute (SEI), and he has done research on software measurement at Siemens Corporate Technology in Europe. He holds a Ph.D. in Electrical Engineering from the Polytechnic Institute of New York.

 

 

 

Dr. John Rusnak, Harvard Business School

Biography:

John Rusnak researches software structure via design structure matrices at Harvard Business School.  He received his PhD and SM degrees from Harvard and M.Eng. and S.B. degrees from MIT.

  

 

Dr. Peri Tarr, IBM Research

Talk Title:

The Value of Emergent Collaboration

Abstract:

Collaboration is not always planned; quite often, it occurs in response to changing and emerging circumstances. As a result, emergent collaboration may provide real value to software projects and organizations, by helping them adapt to, and work effectively in, creative and other unpredictable contexts.


How can we help organizations understand and manage the value of emergent collaboration? We present a new framework that utilizes measurable properties of emergent collaborations to help us to evaluate the value of emergent collaboration.

Biography:

I am a Research Staff Member at IBM's Thomas J. Watson Research Center. My research interests are in the areas of software engineering environments, aspect-oriented software development, software integration and interoperability, traceability, consistency and inconsistency management, and IT governance. In a previous life, I co-founded and co-lead the Hyper/J and Concern Manipulation Environment projects (AOSD), and I spent more time thinking about persistence, transactions, and concurrency control than I can remember (largely because as a software researcher, my brain size hasn't been able to keep pace with that of the computer storage systems that my hardware-oriented colleagues keep producing). I am a past conference chair for OOPSLA 2006 and program chair for AOSD 2005, and I have served (or am serving) on the program committees for ICSE, FSE, OOPSLA, ECOOP, AOSD, GPCE, and others.

 

 

Dr. Tao Xie, North Carolina State University

Biography:

Tao Xie is an Assistant Professor in the Department of Computer Science at North Carolina State University. He received his Ph.D. in Computer Science from the University of Washington in 2005. His research interests are in software engineering, particularly on automated software testing and mining software engineering data. Besides doing research, he has constructed and maintained various webs for the software engineering research community. He received a 2008 IBM Faculty Award and a 2008 IBM Jazz Innovation Award. His research has been supported by NSF, NIST, ARO, IBM, Microsoft Research, and ABB Research. He is a Program Co-Chair of 2009 IEEE International Conference on Software Maintenance (ICSM). He has served on program committees of various conferences and workshops, including ICSE, ASE, ISSTA, and WWW.  URL: http://www.csc.ncsu.edu/faculty/xie/

 

 

Dr. Giuseppe (Peppo) Valetto, Drexel University

Talk Title:

Can we reconcile the essential and accidental natures of SW modules?

Abstract:

 

Biography:

 I have a Laurea in Electronic Engineering from the Politecnico di Torino, and a Master of Science and Ph.D in Computer Science from Columbia University. I have worked at Xerox research Europe, CSELT-Politecnico di Milano, Telecom Italia Lab, IBM Research; I have then joined Drexel University as an Assistant Professor in Software Engineering in Fall 2007. My research interests are, on the one hand, engineering principles for self-adaptive a.k.a. autonomic software systems, and, on the other hand, the analysis of the structure and dynamics of collaboration within software development teams.

 

last updated 4/24/2009 © Copyright

Department of Computer Science