WICSA 2001 Amsterdam, 27-30 augustus 2001

Maandag 27 augustus 2001.

Meer opa’s rezien

Mijn deelname aan WICSA volgt direct naar de ALAPEDES-convention in Praag. In plaats van uit Bedum kom ik dus uit Praag in Amsterdam aan. Het Ibis-stopera is een goed, modern hotel met prima kamers, maar is alleen redelijk prijzig: dik 250 gulden per nacht. Dat is een flinke aanslag op het budget van de SE-onderzoeksgroep omdat ook Jan, Jilles en Michel hier een of meer nachten zullen doorbrengen

Dinsdag 28 augustus 2001.

Na een redelijk ontbijt (de keuze is wat beperkt) en een, relatief eenvoudige, wandeling naar het gebouw van de KNAW (het trippenhuis, waar je even moet aanbellen om binnengelaten te worden) laat ik mij inschrijven. Het materiaal voor het congres zit in een grote gele rugtas. Tijdens de inschrijving loop in Marcel Harkema (oud-afstudeerder bij mij) tegen het lijf, die de tutorial over Corba e.d. gaat volgen.

Vandaag volgt ik tutorial 1, gegeven door Robert Nord (Siemens, USA) en Christine Hofmeister (LeHigh Univ., USA) over Effective use of UML for software architecture design. De tutorial gaat voornamelijk over aanpassingen aan UML (of tekortkomingen daarvan) om een methode voor software architecture (als aanvulling/uitbreiding op OOA en OOD) te kunnen noteren. Er is geen directe uitleg over hoe je tot bepaalde keuzes komt.

De lunch bestaat uit een veelheid aan belegde broodjes. Tijdens de lunch ontmoet ik een drietal afgevaardigden van de OU (Kees Nolet, Manuele Witsiers en Frank Wester) die deze conferentie gebruiken om informatie te vergaren om zelf een OU-cursus software architecture te kunnen maken. Verder spreek ik o.a. met Bob Schwanke (Siemens) over Amsterdam en kort met Robert Nord over de gepresenteerde tutorial. Robert zal mij nog wat artikelen toesturen en geeft me een website waar ik andere artikelen kan vinden.

Op verzoek van Jan Bosch zit ik ’s middags bij zijn tutorial over design of software architectures. Jan praat, zoals gewoonlijk, op hoge snelheid en volgt grotendeels zijn boek. Na afloop loop ik nog wat door de stad en wordt dan gebeld door Jan. Hij nodigt mij uit mee te eten met een groep vooraanstaande software architecture mensen. De groep bestaat naast Jan en mij uit Christine Hofmeister (LeHigh), Chris Verhoef (VU), Philip Kruchten (Rational), Marry Shaw (Carnegie Mellon), Paul Clements (Carnegie Mellon). We hebben een rijsttafel bij een Indonesisch restaurant in de Spuistraat. Vooral de “wooden shoe” is onderwerp van gesprek en lijkt voor alles de oplossing. De kosten van de maaltijd delen we gezamelijk.

Rond acht uur begeleid Chris (als inwoner van Amsterdam) on weer terug naar ons hotel (we zitten bijna allemaal in Ibis Stopera).

Woensdag 29 augustus 2001.

Wicsa begint met een invited talk van Wojtek Kozaczynski (Rational) over “is architecture a product that can be packaged and sold?” Hij beschrijft een bij Rational gebruikte methode om, middels zg. solution stacks, architecturen te kunnen beschrijven, verpakken en hergebruiken. Hij gaat uit van drie dimensies, nl. deployment environment, family of systems (domain) en development environment. Van de 300.000 software projects in 2000 was 28% succesvol, en had 70% failures of challengers (ander woord voor “over tijd”, “over budget” e.d.). Er blijken twee dominante deployment platforms te bestaan, nl. .Net en Java, met nagenoeg dezelfde elementen.

Hij heeft het vervolgens over J2EE, een container-based deployment, en J2EE-patterns, waardoor system-structures predictable en repeatable worden. Dit is volgens de spreker de echte software architecture. Tot slot maakt hij reclame voor de rational on-line application framework, waarin assets zo lang mogelijk gescheiden worden gehouden. Lijkt me goed eens naar wat papers op dit gebied te kijken.

Na de koffie, en de melding dat alle presentaties op de website zullen worden geplaatst, volgt de eerste serie van drie praatjes over Industrial Cases en Quality Attributes. Drasko Sotirovski (Raytheon systems Canada) spreekt over fault tolerant software architectures (OO design gebruikt in een flight control system om fouten op te sporen en (door mensen) te laten repareren, gebaseerd op pre-, postcondities en invarianten en exception handling), Petri K. Laine (Nokia) over de role of software architecture in solving fundamental problems in OO-development of large embedded software systems (ofwel “how to design software so that its internal dependancies are well understood”, is meer een filosofisch verhaal) en Chang Zhang (Regina, Canada) over OO-based RBAC model for distributed systems (op sheets ipv. gebruik van laptop en nagenoeg onverstaanbaar).

Voor de lunch is er een kort extra praatje van Henk Obbink (Philips) over SARA (software architecture review and assessment) over hoe software architecture te reviewen. Henk vraagt om deelname c.q. input. Meer over SARA op de websites van Rational en Philips.

Na de lunch (dit keer broodjes en ook een kroket) is er een sessie over product lines. De sprekers zijn Liam O’Brien (Carnegie Mellon) over MAP-mining architectures for product line evaluations (van bestaande software naar productlines), onze eigen Jilles van Gurp (over variability in SPL, d.i. delayed design decisions en gebruik van feature diagrams. Hij noemt recent werk van Clauss op het gebied van improved UML-notation en feature diagrams) en Rob van Ommering (Philips) over techniques for independent deployment to build product populations (over alle vormen van compatibility (forwards, backwards, upwards, downwards en Koala; leuk praatje, moet bijbehorende artikel nog maar eens lezen).

Na de thee is de laatste sessie over Formal Approaches. Ik heb even het gevoel weer terug te zijn bij een DES-conferentie. De eerste twee sprekers gebruiken handgeschreven slides en er komen ineens weer veel formules over het scherm. De sprekers zijn Christos Kloukinas (INRIA) over SPIN-ning software architectures (hoe uit twee gegeven behavior models en property p alle gecombineerde configuraties zijn af te leiden die aan p voldoen; gebruikt allerlei niet in zijn bijbehorende artikel voorkomende symbolen), Marco Bernardo (Torino) over SA-mismatches in process algebraic descriptions (stelt een ADL voor a la Milner en Hoare en gebruikt deze formele beschrijving om mismatches op te sporen. Die mismatches zijn hier alleen de mogelijk optredende deadlock) en Alexander Egyed over statechart simulator for modelling architectural dynamics (volgens de spreker zijn er op dit moment geen goede ADL’s om software dynamics weer te geven. De spreker gebruikt de Harel state diagrammen met wat uitbreidingen (SDSL), waarmee hij ook kan simuleren (ook als delen van het systeem al zijn geimplementeerd).

Dan is het tijd voor de receptie in de Stopera, aangeboden door de gemeente Amsterdam. We krijgen een korte speech van iemand, die normaal voor een Frans publiek spreekt, en zeker geen perfect Engels spreekt. Haar grapje over de nieuwe containerterminal in Amsterdam, waarvan ze verwacht dat deze gebruikt zou kunnen worden voor shipping van containers with software, is, waarschijnlijk puur toevallig, geslaagd. Er zijn wat lekkere hapjes bij de borrel, maar na een uur is alles alweer afgelopen. Vervolgens ga ik met Jan, Jilles en Michel, in gezelschap van een Zweedse afvaardiging bestaand uit de gepensioneerde Bengt Asker, Lars Wiklorin (IT plan AB) en Inga-Lill Brattebij-Ribbing (FMV) wederom uit eten bij het zelfde Indonesisch restaurant van gisteren. Wederom is de rijsttafel lekker en is het gezellig. Lars betaald uiteindelijk de rekening. Als tegenpresentatie trakteert Jan ons allen nog op een biertje in een café in een eeuwenoud sluiswachtershuisje vlakbij het hotel. Zo rond elf uur ben ik weer terug op mijn hotelkamer.

Donderdag 30 augustus 2001.

Als eerste (invited) speaker vandaag staat Marry Shaw (Carnegie Mellon) op het programma. Ze heeft het over “when system boundaries dissolve: research opportunities in software architecture.” Voorafgaand aan haar verhaal krijgt ze van Philip Kruchten (chairman) een paar klompen uitgereikt (n.a.v. de discussies aan de rijsttafel van eergisteren: wooden shoes zijn de oplossing voor alle problemen). Mary geeft haar ideeën over de nabije toekomst: twee belangrijke veranderingen staan op stapel, nl. software via het internet (niet alle software meer in eigen hand) en mobility of programs (software dat met je meereist als je van plaats verhuist). In beide gevallen moet je uitgaan van niet fout-vrije software en zijn, in plaats van de specificatie, zg. credentials als soort van partiele specificatie van groot belang. Credentials vertellen je wat je zeker weet en naar buiten toe kunt uitdragen. Daarnaast zou sufficient correctness een grotere rol gaan spelen dat functional correctness.

Na de koffiepause is er een sessie over representations. Sprekers zijn Eric Dashofy (University of California, Irvine) over een highly-extensible, XML-based architecture description language (zijn uitbreidbare ADL zou steeds nieuwe ADL’s voor bijzondere toepassingen moeten voorkomen. In zijn artikel wordt naar een overzichtsartikel verwezen en de software is te downloaden vanaf een in het artikel genoemde website), Hans Jonkers (Philips) over interface-centric architecture descriptions (beschrijving van interfaces/interactions tussen componenten (specify interaction patterns). Zijn idee is een contract met interfaces (of roles) te kunnen uitbreiden (in zekere zin seperations of concerns). Wellicht iets voor onze aanpak?) en Jason Baragy (Norwegian Computer Center) over Why we need a different view of Software Architecture (die op een provocerende manier de analogie tussen SA en architecture uit de bouwwereld aan de kaak stelt; Hij heeft zijn praatje goed voorbereid en is zelfs in staat om Mary Shaw duidelijk en met referenties van repliek te dienen).

Na de lunch is er een sessie over Components, Connectors, Collaborations. Sprekers zijn Bob Schwanke (Siemens) over Layers, Decisions, Patterns, Styles, and Architectures (om een software architecture te kunnen beschrijven), Bridget Sptznagel (Carnegie Mellon) over a compositional approach for constructing connectors (zij gebruikt een leuk voorbeeld in de vorm van een science fiction verhaal over het op afstand via eshushi.com kunnen aanwijzen en bestellen van een vis, die dan via alian software naar de besteller kan worden “gebeamed.” Om bestaande componenten (eventueel aangepast) te koppelen aan eigen componenten kunnen connector transformations worden gebruikt) en Frank R\”oszler (Avaya labs) over Collaboration based design.

Na de thee is de laatste sessie over patterns en tools. Sprekers zijn hier Jukka Viljamaa (Helsinki) over reusable software architectures with programming patterns (legt de tool FRED uit. Er is een website: practise.cs.tut.fi/fred), Brian Mitchell (Drexel Univ.) over an architecture for distributing the computation of software clustering algorithms (over de tool Bunch, waarmee via reversed engineering een architecture kan worden gehaald uit bestaande software en vervolgens gebruikt voor reuse) en Nersad Medvidovic (Univ. of Southern California) over FOCUS, a light-weight, incremental approach to software architecture recovery and evolution (met als doel het later aanpassen/uitbreiden van al bestaande software).

Zowel Jan, Jilles, Michel als ik besluiten niet naar het congresdiner te gaan, maar per trein de thuisreis te aanvaarden. We eten nog snel een hamburger bij een hamburgertent op het centraal station en gaan per trein richting Groningen. Onderweg roddelen we nog wat over de andere leden van de informatica-groep en zijn in no-time in Groningen. Rond half tien ben ik ook weer op het station in Bedum waar Lenie en Agnes me met de fiets afhalen.