20. OOPSLA 2005: San Diego, CA, USA - Companion
Ralph E. Johnson, Richard P. Gabriel (Eds.): Companion to the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2005, October 16-20, 2005, San Diego, CA, USA. ACM 2005 ISBN 1-59593-193-7
Robert Hass: Creativity. 2
Mary Beth Rosson: The end of users. 3
Martin Fowler: Finding good design. 4
Jimmy Wales: Wikipedia in the free culture revolution. 5
Gerald J. Sussman: Why programming is a good medium for expressing poorly understood and sloppily formulated ideas. 6
David P. Reed: Designing croquet's TeaTime: a real-time, temporal environment for active object cooperation. 7
Grady Booch: On creating a handbook of software architecture. 8
Onward!
David Ungar, Adam Spitz, Alex Ausch: Constructing a metacircular Virtual machine in an exploratory programming environment. 11-20
Jessie Dedecker, Tom Van Cutsem, Stijn Mostinckx, Theo D'Hondt, Wolfgang De Meuter: Ambient-oriented programming. 31-40
Oliver Imbusch, Falk Langhammer, Guido von Walter: Ercatons and organic programming: say good-bye to planned economy. 41-52
Russell Holt: Living structure and the software garden. 53-54
Ramesh K. Karne, Karthick V. Jaganathan, Nelson Rosa Jr., Tufail Ahmed: DOSC: dispersed operating system computing. 55-62

Christian Einfeldt, Adam Doxtater, Dorothee Weiler, Doris Waizmann, Paul Donahue, Holden Aust, Alexandro Colorado, Lars Noodén, Linda Worthington, Ursula Schmidt, Diane Mackay, Danese Cooper, Dominik Hierl, Ben Horst, Sky Christopherson, Justin Flint, Josh Berkus, Cooper Stevenson, Kass Stevenson, Rufus Laggren: The digital tipping point. 73
Rebeca Roe Dunn-Krahn, Jessica Maple, Yvonne Coady: The crisis in systems code maintenance: sourceforge, we have a problem. 75
James Coplien, Brian Foote, Richard P. Gabriel, Dave A. Thomas, Cristina Videira Lopes, Brian Marick, Bonnie A. Nardi, Rob Tow, Andrew Hunt, Glenn Vanderburg: Breakthrough ideas. 76-86
Posters
Chris Allan, Pavel Avgustinov, Aske Simon Christensen, Bruno Dufour, Christopher Goard, Laurie J. Hendren, Sascha Kuzins, Jennifer Lhoták, Ondrej Lhoták, Oege de Moor, Damien Sereni, Ganesh Sittampalam, Julian Tibble, Clark Verbrugge: abc the aspectBench compiler for aspectJ a workbench for aspect-oriented programming language and compilers research. 88-89
Dean Mackie, Gifford Louie, Jason Rogers, Niall Shaw: Agile environments...: for the rest of us. 90-91
Stijn Mostinckx, Tom Van Cutsem, Jessie Dedecker, Wolfgang De Meuter, Theo D'Hondt: Ambient-oriented programming in ambientTalk. 92-93
Marcílio Mendonça, Paulo S. C. Alencar, Toacy Cavalcante de Oliveira, Donald D. Cowan: Assisting aspect-oriented framework instantiation: towards modeling, transformation and tool support. 94-95
Roly Perera, Russ Freeman: Beyond the language workbench: a runtime platform for practical semantic computing. 96-97
Emerson R. Murphy-Hill, Chuan-Kai Lin, Andrew P. Black, Jonathan Walpole: Can infopipes facilitate reuse in a traffic application? 100-101
Elnar Hajiyev, Mathieu Verbaere, Oege de Moor, Kris De Volder: CodeQuest: querying source code with datalog. 102-103
Yuehua Lin, Jeff Gray: A comprehensive model transformation approach to automated model construction and evolution. 104-105
Haitham S. Hamza: Developing business object models with patterns and ontologies. 106-107

Michael Gorbovitski, Tom Rothamel, Yanhong A. Liu, Scott D. Stoller: Implementing incrementalization across object abstraction. 112-113
Roberta Coelho, Uirá Kulesza, Arndt von Staa: Improving architecture testability with patterns. 114-115
Vineet Sinha, Rob Miller, David R. Karger: Incremental exploratory visualization of relationships in large codebases for program comprehension. 116-117
Marko van Dooren, Eric Steegmans: Language constructs for improving reusability in object-oriented software. 118-119
Wade Holst: Meta: a universal meta-language for augmenting and unifying language families, featuring meta(oopl) for object-oriented programming languages. 120-121
Federico Balaguer: Model checking the behavior of frameworks extended with other frameworks. 122-123
Krzysztof Czarnecki, Michal Antkiewicz, Chang Hwan Peter Kim, Sean Lau, Krzysztof Pietroszek: Model-driven software product lines. 126-127
Hiroshi Wada, Junichi Suzuki, Katsuya Oba: Modeling turnpike: a model-driven framework for domain-specific software development. 128-129
Roberta Coelho, Esther Brasileiro, Arndt von Staa: Not so eXtreme programming: agile practices for R&D projects. 130-131

Uirá Kulesza, Cláudio Sant'Anna, Carlos José Pereira de Lucena: Refactoring the JUnit framework using aspect-oriented programming. 136-137
Aleksander B. Demko, Rodrigo A. Vivanco, Nicolino J. Pizzi: Scopira: an open source C++ framework for biomedical data analysis applications -- a research project report. 138-139
Seunghak Lee, Iryoung Jeong: SDD: high performance code clone detection system for large scale source code. 140-141
Munawar Hafiz: Security patterns and evolution of MTA architecture. 142-143
Mauro Marinilli: Self-designing software. 144-145
Ellen Van Paesschen, Wolfgang De Meuter, Maja D'Hondt: SelfSync: a dynamic round-trip engineering environment. 146-147
Dragos-Anton Manolescu, Boris Lublinsky: Service orchestration patterns: graduating from state of the practice to state of the art. 148-149
Gan Deng: Supporting configuration and deployment of component-based DRE systems using frameworks, models, and aspects. 152-153
Ben Stephenson, Wade Holst: A technique for utilizing optimization potential during multicode identification. 154-155
Hani Z. Girgis, Bharat Jayaraman, Paul V. Gestwicki: Visualizing errors in object oriented programs. 156-157
Koichi Sasada: YARV: yet another RubyVM: innovating the ruby interpreter. 158-159
OOPSLA demonstrations
Larry L. Constantine, Pedro Campos: CanonSketch and TaskSketch: innovative modeling tools for usage-centered design. 162-163
Neeraj Sangal, Ev Jordan, Vineet Sinha, Daniel Jackson: Using dependency models to manage software architecture. 164-165
Steve Dekorte: Io: a small programming language. 166-167
Adam Kiezun, Robert M. Fuhrer, Frank Tip, Markus Keller: Generics-related refactorings in eclipse. 170
Liming Zhu, Yan Liu, Ian Gorton, Ngoc Bao Bui: MDAbench: a tool for customized benchmark generation using MDA. 171-172
Rajesh Bordawekar, Michael G. Burke, Igor Peshansky, Mukund Raghavachari: XJ: robust XML processing in Java. 175
Peter Weißgerber, Stephan Diehl, Carsten Görg: An interactive visualization of refactorings retrieved from software archives. 176-177
Hector G. Pérez-González, Jugal K. Kalita, Alberto Salvador Núñez Varela, Richard S. Wiener: GOOAL: an educational object oriented analysis laboratory. 180-181
Christian Schwarz, Stein Kåre Skytteren, Trond Marius Øvstetun: AutAT: an eclipse plugin for automatic acceptance testing of web applications. 182-183
Thomas Zimmermann, Valentin Dallmeier, Konstantin Halachev, Andreas Zeller: eROSE: guiding programmers in eclipse. 186-187
Scott E. Spetka, George O. Ramseyer, Richard W. Linderman: Using globus grid objects to extend a corba-based object-oriented system. 188-189
Ellen Van Paesschen, Wolfgang De Meuter, Maja D'Hondt: SelfSync: a dynamic round-trip engineering environment. 190-191
Salleh Diab, Yeh Diab: TableCode: defining, extending and deploying object-oriented programs directly from databases. 192-193
Jessie Dedecker: Ambient-oriented programming in AmbientTalk: combining mobile hardware with simplicity and expressiveness. 196-197
Vineet Sinha, Rob Miller, David R. Karger: Incremental exploratory visualization of relationships in large codebases for program comprehension. 198-199
Krzysztof Czarnecki, Michal Antkiewicz, Chang Hwan Peter Kim, Sean Lau, Krzysztof Pietroszek: fmp and fmp2rsm: eclipse plug-ins for modeling features using model templates. 200-201
Student research competition
John Bergin: Autonomous optimisation of application servers. 206-207
Hui Wu: Grammar-driven generation of domain-specific language testing tools. 210-211
Faizan Javed: Inferring context-free grammars for domain-specific languages. 212-213
Jing Zhang: Metamodel-driven model interpreter evolution. 214-215
Ruth G. Lennon: Optimisation of service provision for composite web services. 216-217
Xiaoqing Wu: Pattern transformation for two-dimensional separation of concerns. 218-219
Haitham S. Hamza: A semi-automated approach for analyzing, separating, and modeling of concerns in evolving systems. 220-221
David Janzen: Software architecture improvement through test-driven development. 222-223
Shih-Hsi Liu: A software product line architecture for distributed real-time and embedded systems: a separation of concerns approach. 224-225
Uri Dekel: Towards distributed software design meetings: what can we learn from co-located meetings? 226-227
Danny Dig: Using refactorings to automatically update component-based applications. 228-230
Doctoral symposium

Danny Dig: Using refactorings to automatically update component-based applications. 234-235
Sofie Goderis: High-level declarative user interfaces. 236-237
Miguel Goulão: Component-based software engineering: a quantitative approach. 238-239
David Janzen: Software architecture improvement through test-driven development. 240-241
Faizan Javed: Inferring context-free grammars for domain-specific languages. 242-243
Feng Xian, Witawas Srisa-an, Hong Jiang: Fortune teller: improving garbage collection performance in server environment using live objects prediction. 246-248
Practitioner reports

Edward R. Carroll: Estimating software based on use case points. 257-265
Jeff Patton: Finding the forest in the trees. 266-274
John Kuriakose: "Honey, i shrunk the types": how behavioral types loose relevance on the edges on OO applications and why a core data fabric is useful for adaptability. 275-281
Emerson R. Murphy-Hill, Philip J. Quitslund, Andrew P. Black: Removing duplication from java.io: a case study using traits. 282-291
Hernán Wilkinson, Maximo Prieto, Luciano Romeo: Arithmetic with measurements on dynamically-typed object-oriented languages. 292-300
Olaf Zimmermann, Vadim Doubrovski, Jonas Grundler, Kerard Hogg: Service-oriented architecture and business process choreography in an order management scenario: rationale, concepts, lessons learned. 301-312
Kurt Madsen: Agility vs. stability at a successful start-up: steps to progress amidst chaos and change. 313-318
Shay Artzi, Michael D. Ernst: Using predicate fields in a highly flexible industrial control system. 319-330
Educator's symposium
Axel Schmolitzky: A laboratory for teaching object-oriented language and design concepts with teachlets. 332-337
E. Frank Barry, Christopher C. Ellsworth, Barry L. Kurtz, James T. Wilkes: Teaching OO methodology in a project-driven CS2 course. 338-343
Robert S. Rist: Modeling object-oriented design. 344-349
Pauli Byckling, Petri Gerdt, Jorma Sajaniemi: Roles of variables in object-oriented programming. 350-355
Jürgen Börstler: Improving CRC-card role-play with role-play diagrams. 356-364
Grigori Melnik, Frank Maurer: The practice of specifying requirements using executable acceptance tests in computer science courses. 365-370
Panels
Adrian M. Colyer, Jack Greenfield, Ivar Jacobson, Gregor Kiczales, Dave A. Thomas: Aspects: passing fad or new foundation? 376-377
Steven Fraser, Djenana Campara, Carl Chilley, Richard P. Gabriel, Richard Lopez, Dave A. Thomas, Greg Utas: Fostering software robustness in an increasingly hostile world. 378-380
Linda Rising, Mary Lynn Manns, Kevlin Henney, Angela Martin, Alan O'Callaghan, Rebecca Wirfs-Brock: The agile panel. 381-382
Steven Fraser, Kent Beck, Grady Booch, Larry L. Constantine, Brian Henderson-Sellers, Steve McConnell, Rebecca Wirfs-Brock, Edward Yourdon: Echoes?: structured design and modern software practices. 383-386
Steve Berzcuk, Michael C. Feathers, Steven Fraser, Dennis Mancl, Bill Opdyke: Living with legacy: love it or leave it? 387-388



