SNESCM

Scandinavian Network of Excellence
in
Software Configuration Management


Scandinavian SCM day

Presentation abstracts:

SCM as a service - what do our customers want? - panel moderator (Otto Vinter) / panel participants (Claus Jepsen), (Henrik Andersson), (Mikael Piotrowski), (Ulf Asklund):
What if SCM was a service to be purchased by its users? What would they be asking for? Which services would you most want to sell them? What would be most important to them - considering their widely differing needs: developers, testers, QA, project managers, higher level management, and product end-users? What issues could be argued to be the most important from a business point of view, i.e: Can we make a business case for SCM solutions?

Managing product variants in a component-based system (Jacob Gradén), (Anna Stĺhl):
Today's markets are fast-paced, with many different customers and requirements on products. More than ever before, it is necessary to be able to provide each customer with a tailor-made product, corresponding to just that customer's needs. At the same time, maintaining different products is costly and strains resources. By reusing code and producing tailored variants of the same basic product, the customer's requirements can be met while keeping costs under control.
Component-based systems are becoming a popular way of managing product variants and promoting code reuse. Component-based systems are based on stand-alone components which can be combined in various ways to produce different product variants - essentially using the same building blocks to construct different products.
However, the many different requirements and product variants introduce complexity which needs to be managed while retaining flexibility, so that creating product variants is facilitated. This means that not only components and products must be managed, but also information pertaining to them, such as technical relationships between components and business requirements on products.
This presentation suggests a support tool to help in creating and managing the different components and products, and outlines the capabilities such a tool should have and the opportunities it would present.

Teaching SCM - the essential and the full Monty (Lars Bendix):
My guess is that most of the participants in the SCM day have no or very little formal education in SCM - and that their "users" know even less about SCM. It seems pointless to talk about "delegating" some of the SCM work to those "users" if they have virtually no knowledge about what and how to do. This presentation will show what goes on (or not) in the academic world for teaching SCM to those who are going to be future employees in your company - and give a few tips for what and how you could educate your own "users" so they could relieve you from some of your work (and/or come to appreciate its importance).

A Tool with No Branching (Tomas Lundström):
The audience will become acquainted with an SCM tool that does not have labels, branches or even a 'checkout' command, but still provides an excellent solution to complex SCM problems.

Branch by abstraction - what is it and how can it be implemented (Bengt Johansson):
Branch by abstraction is not a new thing. It is something that has been done for many years. But it has finally gotten a name. The idea is to implement changes in the code without use of the SCM systems branching feature. Using this approach the need for merges disappears and the new code is always up to date with the mainline. To achieve this, code and software build system is implemented in a way that allows development of new features without interfering with older already developed code. This presentation will discuss some pros and cons of Branch by abstraction and also the experience I have had with introducing it, both the technical and human perspective.

So What Is This Distributed Version Control I Keep Hearing About? (Mikael Piotrowski):
Since people started to work with software code in some form, there has been a need to keep track of who-wrote-what-and-when. This is commonly done by programmers by using a centralized version control system. However in recent years a shift has been made, most notably by the open source community, to use a decentralized approach instead.
Here comes a presentation about the profound and newfangled concept called Distributed Version Control System (DVCS) told from a programmer's perspective. It will briefly introduce you to two of the most common DVCS tools (git and Mercurial), present how they are used in practice together with other CM-processes, and give some pointers on how programmers can learn it. Expect some myth busting to be done!

A Day in the Life of a CM Person (Lennart Kjellén):
At Scania Lean thinking is fundamental for all operations within the automotive industry. For the increasingly important area of software development in general and especially Software Configuration Management Lean thinking becomes the foundation for defining a corporate SCM framework. The SCM framework presented has version control by Perforce, issue management by JIRA and Continuous Integration as its corner stones. The presentation will describe how this SCM framework is defined, built and used in practice as well as highlight challenges and opportunities in relation to important aspects such as agile working practices, test-driven development, connection to various development environments and multiple hardware configurations.


Maintained by bendix@cs.lth.se