Entry MacDonald:2009:DDP from toplas.bib

Last update: Tue May 1 02:05:46 MDT 2012                Valid HTML 3.2!

Index sections

Top | Symbols | Math | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

BibTeX entry

@Article{MacDonald:2009:DDP,
  author =       "Steve MacDonald and Kai Tan and Jonathan Schaeffer and
                 Duane Szafron",
  title =        "Deferring design pattern decisions and automating
                 structural pattern changes using a design-pattern-based
                 programming system",
  journal =      j-TOPLAS,
  volume =       "31",
  number =       "3",
  pages =        "9:1--9:49",
  month =        apr,
  year =         "2009",
  CODEN =        "ATPSDT",
  DOI =          "http://doi.acm.org/10.1145/1498926.1498927",
  ISSN =         "0164-0925 (print), 1558-4593 (electronic)",
  ISSN-L =       "0164-0925",
  bibdate =      "Thu Apr 16 14:08:54 MDT 2009",
  bibsource =    "http://www.acm.org/pubs/contents/journals/toplas/;
                 http://www.math.utah.edu/pub/tex/bib/toplas.bib",
  abstract =     "In the design phase of software development, the
                 designer must make many fundamental design decisions
                 concerning the architecture of the system. Incorrect
                 decisions are relatively easy and inexpensive to fix if
                 caught during the design process, but the difficulty
                 and cost rise significantly if problems are not found
                 until after coding begins. Unfortunately, it is not
                 always possible to find incorrect design decisions
                 during the design phase. To reduce the cost of
                 expensive corrections, it would be useful to have the
                 ability to defer some design decisions as long as
                 possible, even into the coding stage. Failing that,
                 tool support for automating design changes would give
                 more freedom to revisit and change these decisions when
                 needed. This article shows how a design-pattern-based
                 programming system based on {\em generative design
                 patterns\/} can support the deferral of design
                 decisions where possible, and automate changes where
                 necessary. A generative design pattern is a
                 parameterized pattern form that is capable of
                 generating code for different versions of the
                 underlying design pattern. We demonstrate these ideas
                 in the context of a parallel application written with
                 the CO$_2$ P$_3$ S pattern-based parallel programming
                 system. We show that CO$_2$ P$_3$ S can defer the
                 choice of execution architecture (shared-memory or
                 distributed-memory), and can automate several changes
                 to the application structure that would normally be
                 daunting to tackle late in the development cycle.
                 Although we have done this work with a pattern-based
                 parallel programming system, it can be generalized to
                 other domains.",
  acknowledgement = ack-nhfb,
  articleno =    "9",
  fjournal =     "ACM Transactions on Programming Languages and
                 Systems",
  keywords =     "design decisions; Design patterns; object-oriented
                 frameworks; parallel programming; software
                 maintenance",
}

Related entries