Software design and architecture

Páginas: 53 (13182 palabras) Publicado: 1 de junio de 2010
Software Design and Architecture The once and future focus of software engineering
Richard N. Taylor Institute for Software Research University of California, Irvine Irvine, California 92697-3455 taylor@ics.uci.edu André van der Hoek Institute for Software Research University of California, Irvine Irvine, California 92697-3455 andre@ics.uci.edu

Abstract
The design of software has been afocus of software engineering research since the field’s beginning. This paper explores key aspects of this research focus and shows why design will remain a principal focus. The intrinsic elements of software design, both process and product, are discussed: concept formation, use of experience, and means for representation, reasoning, and directing the design activity. Design is presented as being anactivity engaged by a wide range of stakeholders, acting throughout most of a system’s lifecycle, making a set of key choices which constitute the application’s architecture. Directions for design research are outlined, including: (a) drawing lessons, inspiration, and techniques from design fields outside of computer science, (b) emphasizing the design of application “character” (functionalityand style) as well as the application’s structure, and (c) expanding the notion of software to encompass the design of additional kinds of intangible complex artifacts.

opment, have studied and written about software design over the past forty years and more. Fred Brooks included in his 1975 list of “promising attacks on the conceptual essence” the growing of great designers [21]. Peter Freeman,in 1976 [31], said “Design is relevant to all software engineering activities and is the central integrating activity that ties the others together.” Design will remain the focus of software engineering. Herb Simon, in his classic, The Sciences of the Artificial [75], includes a discussion of design in the context of “artificial” fields, such as software development, saying: “The artificial worldis centered precisely on this interface between the inner [the means] and outer [the task] environments; it is concerned with attaining goals by adapting the former to the latter. The proper study of those who are concerned with the artificial is the way in which that adaptation of means to environments is brought about – and central to that is the process of design itself.” Put in softwareengineering parlance, the outer environment is the world of requirements, goals, and wants; the inner environment is the set of software languages, components, and tools we have for building systems. As software engineering researchers, we are always “raising the floor” – creating new levels of infrastructure upon which new developments may be built. In Simon’s terms, the “inner environment” or the“means” is ever changing and expanding. As the floor rises, however, so do our desires and aspirations. Though achievements in improving design have been obtained over the previous decades, new challenges for design will thus continuously arise.

1. Introduction
Design is the central focus of software engineering. Design is both a verb and a noun. It is a key thing we do and that we produce. Suchcrisp statements will alternatively strike one as obvious or, perhaps, as parochial – if not incorrect. Yet if we consider what software engineering is, namely a practice directed at the production of software systems, then design is seen at its heart, as it is in any other productive enterprise, whether the creation of skyscrapers, automobiles, toasters, or urban regions. Not surprisingly, then,many software engineering researchers, or those acquainted with software devel-

Goals and Dreams "The Task"

DESIGN
"The Means" Materials, Tools, and Mechanisms

Figure 1. The continuing place of design. Nonetheless, at a suitably abstract level the challenges for software design today are the same as they were forty years ago. They are the intrinsic challenges of design: How to create...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Automobile and architecture
  • Rethoric, humanism and design
  • Graphics and design
  • Description And Design Overview
  • Curriculum analysis and syllabus design
  • Latin squares and experimental design
  • Louis Laybourne Smith School of Architecture and Design
  • Hardware and software

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS