A design perspective on modularity

  • Authors:
  • André van der Hoek;Nicolas Lopez

  • Affiliations:
  • University of California, Irvine, Irvine, CA, USA;University of California, Irvine, Irvine, CA, USA

  • Venue:
  • Proceedings of the tenth international conference on Aspect-oriented software development
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

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.