SWEE 2012

 

SEMAT Workshop on Evaluation of Essence in

Stockholm Nov 8-9, 2012

Report of workshop at KTH Royal Institute of Technology

Arne J. Berre, Ivar Jacobson

Organizer's: Arne J. Berre, SINTEF, Ivar Jacobson, Ivar Jacobson International.

Participants:  Jan Bosch, Chalmers Institute of Technology, Jörgen Hansson, Chalmers Institute of Technology, Shihong Huang, Florida Atlantic University, Ingvar Hybinette, Ericsson, Mira Kajko-Mattsson, KTH Royal Institute of Technology, Kristian Sandahl, Linköpings Institute of Technology, Ian Spence, Ivar Jacobson International, Arne J. Berre, SINTEF, Ivar Jacobson, Ivar Jacobson International

Special comments from: Pekka Abrahamsson, Free University of Bozen Bolzano, Pontus Jonson, KTH Royal Institute of Technology, Per Runeson, Lund Institute of Technology.

Introduction

The workshop was structured into the following topics with corresponding presentations and discussions:

  1. Introduction to SEMAT and Essence,

  2. Essence principles and concepts,

  3. Essence tooling,

  4. Essence usage within research, education, and industry,

  5. SEMAT moving forward.

The presentations given are listed in the reference section in this report.

The report will focus on the discussions.

Discussion on Essence

The workshop participants discussed the key ideas on which the Essence proposal rests:

  • The Essence is based on the idea of a common ground manifest as a kernel of essential elements.

  • The Kernel includes alphas, fundamental constructs defined by Semat.

  • The Kernel includes activity spaces and competencies.

  • A key principle is ‘separation of concerns'.

  • Another key principle is ‘agile in working with methods', not to be confused with ‘agile in software development'.

  • Practices are composed on top of the kernel.

  • Adding a practice adds new alphas, work products, etc on top of the kernel.

  • Methods are defined as compositions of Practices.  Methods are used by development teams.

  • Evolutionary change of methods by mixing and matching practices.

All the participants agreed on the above-summarized approach.

Here some individual comments:

Pekka Abrahamsson: "I am fully on board on SEMAT and I want to participate in making it a success. I think the current state of work offers a solid starting point for the application in academia and industry."

Jan Bosch: "Excellent approach.  I ask myself if Essence is the only way to achieve these results."  [Organizer's response: "Probably not, but we are not aware of any published approach searching for the same results."]

Jorgen Hansson: "I appreciate the wealth of experience that has been going into the design SEMAT, and that it addresses an industrially very relevant problem that is challenging for many companies and the software industry at large. Indeed, the problem also presents numerous scientific challenges that would benefit from the attention of researchers. I would very much like to see a scientific foundation strengthening the case and value of SEMAT. One aspect, e.g, is the issue of scalability, specifically how it can be used when developing large-scale systems involving many subcontractors. " [Organizer's comment: "The approach has been designed with scalability as a key criteria."]

Pontus Jonson: " The first benefit of Semat is the central role that I believe it can play in the development of a general theory of software engineering. I believe that such a theory is very important for the future of the software engineering discipline. The second aspect of Semat that I particularly appreciate is its active stance for a rational and scientific approach to software development, and against the trends, fashions and religions of software engineering methodology. I feel that Semat's rational approach to software engineering is much needed in a young discipline that still has some way to go before reaching the maturity we are used to in many other engineering disciplines."

Per Runeson: "I would state that a generally accepted framework for software engineering would be very much appreciated, to base communication, teaching and research on. In that sense, I am very much in favor of the initiative. I can see that you have managed to combine a lot of good principles and practices, both for the engineering as such, and for the presentation and communication of work practices. I especially appreciate the "light-weight" approach, with the strive to reduce rather than add complexity. The "cards" approach is an outcome of that strive, which I think can be very useful. The story telling approach used in the book may also be useful for teaching purposes; I have thought about using such an approach, but never worked through an example.

SEMAT is based on expert knowledge, not scientific research, which is a significant weakness from my point of view. It does not mean it is bad, or less useful, but limits the role it may have in continued scientific research." [Organizer's comment: "Empirical research is needed."]

Kristian Sandahl: "The kernel has great practical potential and I would be happy to participate in working out a research agenda to achieve more empirical evidence."

Essence Usage within Research, Education and Industry

Research presented by Shihong Huang

The general research issues and some examples have been presented during the workshop including the following items:

  • Development of empirical assessment methods to compare software engineering practices and methods – using principles from experience-based, evidence-based and empirical software engineering.

  • The SEMAT fosters the advancement of formal foundations of software engineering, and it provides a 
fundamental understanding of software engineering concepts.  In parallel with this workshop another workshop was going on – a General Theory in Software Engineering.

  • Provision of a research infrastructure serving as a test-bed and fast deployment of new ideas.

  • Use Essence language and develop kernels for related/other/extended domains, for instance, systems engineering, hardware engineering, service engineering any engineering, business modeling, service innovation, creative work, adaptive case management Evaluate and extend Essence for use in global distributed teams, i.e. networked enterprises.

  • Extended tool support for enactment–integration with social media and collaboration tools.

  • Conduct industrial case studies of applying the kernel and language in a real-world environments and evaluate the efficacy and effectiveness of Essence.

Presently, KTH Royal Institute of Technology, University of Oslo and Florida Atlantic University are investigating the opportunities for getting funds for doing research on the above-listed research topics. The funding organizations to be contacted are Vinnova, EU, KK-Stiftelsen, Stiftelsen för Strategisk Forskning and other organizations. Applying for funds is in progress and it is estimated that the firsth SEMAT project will start in 2013.

 

Education presented by Mira Kajko-Mattson

The Essence has already been introduced within education at several universities in the world. The pioneering universities are KTH Royal Institute of Technology, University of Oslo and Florida Atlantic University. KTH Royal Institute of Technology has used it on one first-year and two second-year project courses. On the first-year project course, the students got acquainted with the Essence concepts whereas on the second-year project courses, the students used the Essence as a tool for evaluating the progress of the course projects and for evaluating their own ways of working.

The experiences from teaching the Essence were very positive. The Essence kernel provides a good foundation for presenting and discussing various software engineering practices.  Different techniques and practices can be introduced to the students, and then contrasted and compared based on their relationship to the Essence kernel.

SEMAT expects that more universities will adopt the Essence within their software engineering curricula.  To enable its smooth adoption, some effort is required to create educational aid in form of guidelines, lectures and even books.

 

Industry presented by Ivar Jacobson

The work on Essence has strived to support the professional developer, the team or project lead and the executives in the industry. Below, we list the top objectives when developing Essence.

  • Professional developer

–        Facilitate education in different practices by describing practices using a common ground – the kernel.

–        Support usage of selected practices in the daily work (not just education)

–        Being able to move from one organization to another without having to relearn what already has been in use.

  • Team or project lead

–        Being able to measure health and progress in a project or in an iteration.  (Kernel alphas are dimensions to progress).

–        Being able to identify with high accuracy where you are in your work and where you need to go next.

  • Executives

–        Ensure that the entire organization can systematically learn from one another and improve its way of working (without enforcing any standard method on the teams).

–        Being able to move people from one organization to another with low upstart costs.

Experience from using a similar approach was presented.  Success described with Rule Financials and Munich RE.  Several other companies' experience were presented.

Essence – Next steps

The discussion centered around research, education, training and industrial use of Essence and funding opportunities for further scientific work on empirical evaluation.

Getting industrial take up of Essence and practical use and experiences is viewed as the most important step to address now – as the base material of book, simple tools and draft standard are in place.  The ability to validate the experiences from an empirical software engineering point of view is also a top priority. Thus, this will be the focus of SEMAT from now on.

Concerning funding for empirical evaluation and validation as well as for further development, there should be funding sources in Sweden by Vinnova and KKS, and from EU through the EU Framework programme, including research for SMEs. Mira Kajko-Mattsson agreed to take a lead in developing a report for funding.  Shihong Huang would work with her.  Other participants agreed to help, and the work on this is in progress.

References

The following presentations were given.

Jacobson Ivar, The Essence, SEMAT Introduction

Berre Arne, Essence – Kernel and Language for Software Engineering Methods

Spence Ian, SEMAT: The Universals Track, A Brief Introduction to the Kernel and the Universals Track

Huang Shihong, Research Challenges and Opportunities

Kajko-Mattsson Mira, SEMAT at KTH

Ng, Pan Wei, Experiences on Using the Kernel