Presentation: "On the Past, Presence, and Future of Patterns"
Track:
Patterns - Past, Present, and Future
Time:
Monday 16:00 - 16:45
Location:
SAS Suecia
Abstract: Patterns have become almost indispensable in modern software construction. Developers are consciously using patterns as an integral part of their daily work; architectures of successful software systems are often described -- even advertised -- in terms of their constituent patterns; pattern knowledge is considered a skill to list on CVs and question in job interviews. Yet, and despite the undoubted success of patterns, it appears that the history and evolution of patterns is not always appreciated. What are the roots of the software pattern concept? What evolutionary paths have patterns taken in the past decade? What is the current state-of-the-art in patterns? And where will patterns go in future? This talk offers answers to these questions, helping to understand patterns at a deeper level and using them more thoughtfully in your daily work.
Download slides
Presentation: "Panel of experts on the future of patterns"
Track:
Patterns - Past, Present, and Future
Time:
Monday 17:00 - 17:45
Location:
SAS Suecia
Presentation: "JUTLAND: Java Unit Testing - Light, Adaptable 'n' Discreet"
Track:
Test and Profiling Performance
Time:
Tuesday 16:00 - 16:45
Location:
SAS Nortvegia
Abstract: Test-Driven Development is a buzzword that it appears no modern developer can be without. It is more about attitude and practice than it is about specific tools, but in the Java world JUnit has become ubiquitous as the unit-testing tool of choice and for some developers is almost synonymous with TDD.
However, there is more (and less) to unit testing and test frameworks than JUnit. The talk visits some of the design ideas and deficiencies found in JUNit, NUnit and other frameworks, and outlines the anatomy and features of a minimal testing kernel that is less intrusive than JUnit and more idiomatic in its Java style.
Download slides
Presentation: "Models, Muddles and Mandalas"
Track:
Domain Specific Languages
Time:
Wednesday 16:00 - 16:45
Location:
SAS Suecia
Abstract: Whether explicit or implicit, models are integral to the way that humans perceive and reason about the world. Models are used extensively in given and designed domains, whether in physics or in electronics, and are enlisted in the worlds of software requirements and software design.
Inevitably what characterises the practice of modelling is the diversity of available modelling techniques: some models are iconic, others are schematic; some are textual, others are pictorial; some are focused on entities, others are focused on functions, and so on. On the one hand, diversity without reason or communication is frustrating, as anyone who practised OO modelling before the advent of UML will attest. On the other hand, it is all to easy to become focused on one modelling solution or style, treating it as a universal approach. Most problem domains do not successfully fit the developer-centric perception of OO without some bending, at which point models that are supposed to be analysis models become design models. Consequently, UML is not always the best and only way to understand a given problem domain, or even describe a proposed solution.
When we consider model-driven software development, we need to be careful to distinguish between the general idea of using models to represent various -- often distinct -- concepts, and the possibility of mistaking the map for the territory, assuming that a model of a problem domain is necessarily the translatable or transformable basis for a model of the solution or the solution itself, which is the premise behind the OMG's MDA initiative.
Download slides