Nääsvillen oliopäivät TTY:lla 25.-26.11.2008 / OO Days at TUT

(English summary, Program)

Oliopäivät on talkoovoimin järjestettävä maksuton yleisötapahtuma, jonka Pirkanmaan tietojenkäsittely-yhdistys ja Tampereen teknillinen yliopisto järjestivät ensi kerran vuonna 1991, ja vuodesta 1994 lähtien tapahtuma on järjestetty aina parillisina vuosina. Oliopäivien suosio on jatkuvasti kasvanut, ja vuoden 2006 oliopäivillä oli jo lähes 400 osallistujaa (ilmoittautumissivu jouduttiin sulkemaan tilarajoitusten vuoksi jo muutamia viikkoja ilmoittautumisen avaamisen jälkeen).

Oliopäivien 2008 ohjelman pääteemoja ovat ketterät menetelmät sekä niitä tukevat ohjelmistonkehitysympäristöt ja työkalut.  Keynote-puhujina ovat  maailman johtava agile-asiantuntija Alistair Cockburn ja oliomenetelmien huippuasiantuntija James Coplien. Suomalainen yleisö tuntee Alistairin ehkä parhaiten hänen mainioista  käyttötapauksia ja  ketteriä menetelmiä käsittelevistä oppikirjoistaan (mm. Writing Effective Use Cases ja Agile Software Development). Jim puolestaan muistetaan jo ensimmäisestä kirjastaan (Advanced C++ Programming Styles, 1991) lähtien terävänä ja kriittisenäkin olioteknologioiden ja ohjelmistoprojektien asiantuntijana.

Oliopäiviin liittyy perinteisesti myös joukko oheistapahtumia: 
  • MetaCase, Microsoft ja  IBM esittelevät tuotteitaan luentosalin lähellä olevissa erillisissä tiloissa.
  • Vietä mukava tutkimushenkinen perjantaipäivä 28.11. Jim Coplien esittelee MVC-mallin korvaajaksi uuden DCI-mallin esitelmässään Model-View-Controller: The Other Shoe Drops pe klo 9-11 salissa TB222 (Slides 0,2Mb), ja Johannes Koskinen väittelee samassa salissa klo 12:15 alkaen aiheesta Behavioral Profiles in Software Engineering: Motivations, Definitions, and Applications. (Väitös suomeksi.)
  • Tiistaina 26.11.Tekesin Tampereen palveluiden edustaja Manu Setälä on paikalla koko päivän. Hänen kanssaan voi keskustella  T&K-hankkeiden rahoittamisesta.
  • Talentum pystyttää salin ulkopuolelle kirjanäyttelyn tiistain ajaksi.

Oliopäivien tapahtumapaikkana on Tampereen teknillinen yliopisto,
Korkeakoulunkatu 1,  Tietotalon sali TB103

Kampusalueen kartta/Map of the TUT campus
Ajoreitit Hervantaan/Driving instructions to Hervanta

Tilaisuus on maksuton, mutta ilmoittautumista edellytetään tila- ja ruokailujärjestelyjen takia.

Tervetuloa:   Ilkka Haikala, tilaisuuden isäntä


Ohjelma / Program

Tuesday the 25th of Nov

Session chairman in the morning sessions: prof. Ilkka Haikala, Tampere University of Technology (TUT)

9:00 - 9:15 Opening, Ilkka Haikala, TUT (bi-lingually)

9:15 - 10:45 Keynote by Dr. Alistair Cockburn: Effective Software Development In The 21st Century: The New Face Of Software Engineering. (Slides 0,35Mb)
What are the foundations for improving delivery of software? In this talk, Dr. Alistair Cockburn, one of the founders of the Agile Software Development movement, lays out three foundations for effective software development in the next century: Craft, Cooperative games, and Lean processes. These three not only explain the success of effective teams, they provide good advice to busy project teams and create a sound basis for educating our next generations of developers.
Picture of the opening session

10:45 - 11:15 Coffee break

11:15-12:00 prof. Pekka Abrahamsson, VTT: The Good, Bad and the Ugly of Agile Methods (in English)    (Slides 0,74Mb)
 - Agile is in the mainstream?
 - Grand failure: a Case study
 - 30 more recipes to fail in Scrum (and agile)
 - Why are we missing a reference framework?; Yet, IEEE standard should be up and running shortly
 - Future: Rethinking Toyota Production System and lean

12:00 - 13:00 Lunch break


Session chairman in the afternoon sessions: Professor Ilkka Haikala

13:00 - 13:20 TUT/Software Systems Laboratory diploma thesis awards delivered by Seppo Väisänen Pitky ry, Risto Metsälä, Solteq Oy (in Finnish)

13:20-14:10 Juha-Pekka Tolvanen, MetaCase: Domain-Specific Modeling for Full Code Generation (presentation in English or Finnish depending on audience)   (Slides 0,64Mb)
Everybody would like the productivity benefits of modeling with full code generation, but the upgrade path from coding to modeling seems a closely guarded secret. This session will show which bits of Model-Driven Development (MDD) work, which might work, and which don´t, and explain where they can be applied, and where not. Most importantly, we will show the steps to define your own modeling languages and generators to start using models effectively, road-tested in dozens of projects over a decade.

14:10 - 14:30 Coffee break

14:30 - 15:10  Fredrik Ferm, IBM Rational Software, ECAT Team Leader: How Jazz Team Server makes global software development a joy -- IBM's view of software development environment (in English) (Slides 1,6Mb)

15:10 - 15:30  Team Leader, Roman Smirak, TietoEnator: Our Jazz Band Rocks (in English) (Slides 1,9Mb)

15:30 - 16:10  Matti Antila, Microsoft: Visual Studio Team System -- the (one and only) tried and true software development environment (in English). (Slides, set 1,  4,1Mb)  (Slides, set 2,  9,9Mb)
16:10 - 16:30  Mika Berglund, TietoEnator Oyj: Visual Studio Team System/Team Foundation Server - Real people and real projects. (Slides 0,8Mb)

Wednesday the 26th of Nov.

Session chairman in the morning sessions: Professor Kai Koskimies

9:00 - 9:10 Opening, Kai Koskimies, Tampere University of Technology

9:10 - 10:40 Keynote by Dr. James CoplienTo Those who were Agile before Agile was cool.
The presentation looks at the culmination of many schools of thought into what we call Agile today:  open source, patterns, etc., and looks at where modern roll-outs of  Agile (such as XP and Scrum) are missing the mark, and even questions some of  the most basic principles of agile methods. (Slides 0,8Mb)
Jim Coplien opens the keynote

10:40 - 11:00 Coffee break

11:00 - 12:00 Software Engineering Research and Industry co-Operation at  TUT (in English)
- Prof. Tarja Systä, SWE research directions at Software Systems Institute (Slides  0,03Mb)
- Prof. Kai Koskimies, Industry as a laboratory: Architecture Evaluation
of Embedded Control Systems (Slides 0,1Mb)
- Prof. Tommi Mikkonen,  Dr. Antero Taivalsaari, Sun Labs: Like it or not, web applications
and mashups will be hot. (Slides 0,5Mb)
- End-user software is moving to the Web
- The web browser will become _the_ application platform
- Beyond Rich Internet Applications -- what's next?

12:00 - 13:00 Lunch break


Session chairman in the afternoon sessions: Professor Tommi Mikkonen

13:00 - 14:00
Juha-Markus Aalto, Nokia: Making the impossible happen: a few hundred synchronized Scrums -- setup and experiences (in Finnish)  (Slides 0,6Mb)
- What's common with nesting Russian dolls and scaling Scrum?
- Scaling up the teams
- Scaling up the sprints
- Scaling up the backlogs
- Scaling up the Definition of Done
- Scaling up the tools

14:00 - 14:30 Coffee break

14:30 - 15:20 Ahti Haukilehto, FC Sovelto: Year 2018: do we still need Microsoft technologies? (in Finnish) (Slides 2,4Mb)
- .NET pilvessä, mäskissä ja Oslossa
- .NET ja UML: yllättävä naimakauppa?
- .NET multi-corettaa?

15:20 - 16:10 Jouko Ruuskanen, IBM Finland: JxEE meets the challenges of Silverlight, Google, Flash, Microsoft and others (in Finnish) (Slides 2,3Mb)
- Java in the GUI: Silverlight, Flash etc... a threat to Java?
- Role of Java in the enterprise (vs. .Net)
- The good and the bad of mixed solutions
16:10 - 16:30 Closing discussion by Ilkka, Tommi, Ahti, and Jouko.


English summary

The bi-annual OO-days will be arranged for the 9th time at Tampere University of Technology on 25th and 26th of November. This year most of the presentations are in English, only the presentations on Wednesday afternoon will be in Finnish.  Participation is free of charge, but registration is required for space and lunch arrangements. In addition to the regular program, the following special events are arranged:

  • During the OO Days MetaCase, Microsoft and  IBM will demonstrate their tools in separate auditoriums. 
  • Jim Coplien will present the DCI model as a replement for the traditional MVC model in his lecture on Friday the  28th of October at 9:15-11:00:  Model-View-Controller: The Other Shoe Drops  (auditorium TB222).
Takaisin sivun alkuun/Back to top

Bios of keynote speakers

A brief bio of Alistair Cockburn
Dr. Cockburn was named one of "The All-Time Top 150 i-Technology Heroes". He designed IBM's first methodology for object technology in 1992, served as special advisor to the Central Bank of Norway in 1998, decoded the writing of effective use cases in 1999, co-authored the Manifesto for Agile Software Development in 2001, the Declaration of Interdependence in 2005, and won Jolt and Jolt Productivity book awards three times. He is the author of Agile Software Development: The Cooperative Game, Crystal Clear: A Human-Powered Methodology for Small Teams, and Writing Effective Use Cases. Much of his writings can be found at  http://Alistair.Cockburn.us.

A brief bio of Jim Coplien
Jim Coplien's career of 35 years has had broad influence on software  engineering, from early writings that shaped object-oriented design,  to his role as a co-founder of the Pattern discipline, and his seminal  research on Organizational Patterns that is acknowledged as a key  foundation of both Scrum and of XP. He has written pioneering books on  C++ programming, object-oriented design, software patterns, and Agile  software development. His current work focuses on Agile Architecture,  starting with up-front Lean architectural form to support Agile  development. Most recently, he has been working with MVC founder  Trygve Reenskaug to develop and refine the original humanistic vision  of object orientation, bringing objects into the Agile world. When he  grows up he wants to be an anthropologist.

Takaisin sivun alkuun/Back to top

Special guest lecture on Friday the 28th of  November, Auditorium TB222: Model-View-Controller: The Other Shoe Drops by Jim Coplien (Slides 0,2Mb)

The misguided, CASE-heavy practices of the 1980s fueled the proto- Agile rhetoric of the 1990s. This rhetoric survived full-force into  the advent of Agile practices such as Scrum and XP over the past  decade. Part of that rhetoric has been to go as far from the sins of  the 1980s as possible by discarding up-front requirements (instead we  have a promise for a future conversation between a developer and a  customer) and architecture (instead, we have had a succession of short- lived ideas including "metaphor" and  TDD).

Experience and recent research have both borne out the value of  architecture in software development in general, as well as its value  in sustaining high velocity and change resiliency in Agile projects. A  good Agile architecture should be able to capture the concerns not  only of the grey-haired domain experts sitting in the back room, but  should also explicitly highlight the concerns of end users -- such as  their mental model of the domain, of the roles involved in a scenario,  and of the role interactions that realize that scenario on their  behalf. While Model-View-Controller long ago solved the domain model  component of this vision, its creator Trygve Reenskaug has figured out  the rest of it now 30 years later. It's called the Data-Context- Interaction (DCI) architecture. In this talk, Agile expert Jim Coplien  will describe DCI, and other tips, for putting architecture back into  your Agile project without dragging it back into the dark ages -- and  all within the framework of the Agile Manifesto.

Takaisin sivun alkuun/Back to top

Behavioral Profiles in Software Engineering: Motivations, Definitions, and Applications

Ph.D. thesis manuscript by Johannes  Koskinen

Abstract

Software architecture contains, in addition to its structural part, interaction patterns that can be regarded as a part of the architectural solution of the system. The interaction patterns define architecturally significant behavior of the software system. This thesis proposes a visual modeling language, behavioral profiles, for specifying architecturally significant behavioral rules of an application. The language is built on Unified Modeling Language (UML), which is a visual language widely used in software development. In this thesis it is argued that behavioral profiles can be used to support software designers in creating behavioral models that conform to some predefined rules and for ensuring that an application behaves correctly with respect to the rules given in the profiles.

The thesis defines the behavioral profile language by using UML metamodel extensions, profiles. The thesis also discusses different solutions to construct behavioral profiles using the documentation or based on the behavior of existing applications. It outlines example application scenarios and  shows how the presented approach can be used in practice for different steps in a software engineering process. The examples cover designing an application or specializing a framework, and monitoring the program execution in run-time. Furthermore, the thesis shows how behavioral profiles can be used to support program comprehension by filtering out unnecessary information. In addition, using behavioral profiles to validate program execution by analyzing execution traces is discussed.

The thesis describes a set of tools for behavioral profiles. With the tool support, the behavioral profile language can be integrated with an existing software engineering process. To evaluate the approach and the tools in different application domains, they were utilized in various concrete cases. The size of the applications used in the cases varied from small to quite large software systems. The main contributions of the thesis are a) a behavioral profile language to express behavioral rules derived from software architecture in a generic way exceeding the level of concrete model elements, b) a tool support to ensure iii that the behavioral rules are followed in different steps of software process, and c) an evaluation of the approach in software development process using case studies.

Takaisin sivun alkuun/Back to top


Sivu luotu/Page created 25.9.2008
Sivua päivitetty viimeksi/Last update 14.10.2008