Product focused software process improvement : SPI in the embedded software domain

Conceptualization Concrete Experience Divergent learning Accommodative learning Convergent learning Assimilative learning Figure 6-1: Experiential Learning [Kolb 1984] Following the different classes of experience and transformation, four different modes of learning are distinguished. These modes are: • ‘divergent learning’ during which observations are analysed • ‘assimilative learning’ during which models are built • ‘convergent learning’ during which models are tested in practice • ‘accommodative learning’ during which experiments are observed According to Kolb, the combination of these four modes of learning produces the highest level of learning. The combination requires the learning process to include: ‘ observing phenomena, analysing them, developing models and theories about them and testing these theories and models in practice’ [Kolb 1984]. In fact this is what was identified in chapter 5: product quality control in practice is enabled through model building and model testing of process product relationships. 6.1. 2 Group learning When considering learning in software process improvement, it is important to realise that work is performed in an industrial environment. An industrial environment demands group learning. Software development and process improvement is carried out within teams, projects, departments or companies; it always concerns a group of people. The improvement objectives and learning processes are therefore shared. The term ‘group learning’ indicates that a set of people, over a period of time, share the same learning goals and learning process. In such a situation, knowledge has to be shared 82 PRODUCT FOCUSED SOFTWARE PROCESS IMPROVEMENT among organisational members and to contribute to the synergy of the organisation [Jelinek 1979]. This is also often termed: ‘organisational learning’. Organisational learning is defined as skilled process in which knowledge is created, acquired, and transferred, and through which behaviour is modified based on the new knowledge and insights [Garvin 1993]. It is important to note that organisations cannot learn: the individual people can learn and learn together [Weggeman 1997]. This definition reflects that learning happens when new insights arise. Sometimes they are newly created, sometimes they arrive from outside the organisation or are communicated by knowledgeable insiders. Such new insights are, however, not enough. Without accompanying changes in the way that work gets done, only the potential for improvement exists [Garvin 1993]. George Huber states similarly that learning occurs when ‘the potential behaviours are changed’ [Huber 1991]. Behaviour does not need to be changed for every situation, but the potential ways of working need to be expanded. So, effective learning results in altering (potential) behaviour. If behaviour is not changed, learning has apparently not occurred. Argyris and Schön make a distinction between two modes of learning: single loop and double loop [Argyris and Schön 1978]: • Single loop learning. This is learning in which the actor only learns within the confines of his or her theory in use. There is a focus on the operational level: based on detecting and correcting errors, competencies and routines. • Double loop learning. Double loop learning starts when an event is diagnosed as incompatible with the actor’s current theory in use. With double loop learning current theory and models are altered through new insights. In practice most organisations are only focussed on single loop learning [Argyris 1993]. Optimisation is only done within the current way of working. This in itself is not wrong. Through repetitive experiences, organisations get skilled in their work, and create competitive advantages based on these skills. Sometimes new approaches become available that an organisation has no experience with. In such cases it might be better to switch to such a new approach, because it fits better than the historic approaches. This is double loop learning, which many organisations tend to see as a threat because it conflicts with existing and established habits. It is also dangerous for an organisation to constantly adopt new ways of working, because all knowledge gained until then might immediately become outdated. ‘ The known can be in many situations be preferred over the unknown’ [March 1991]. A balance should be found in optimising the current processes (single loop learning) and experimenting with new theories and approaches to find out whether those are much better than existing ones (double loop learning). So, learning theory promotes a parallel application of optimisation LEARNING: THE BASIS OF IMPROVEMENT 83 of current practices and experimentation with new ones. This idea should be considered for the RPM conceptual model. The skills and capabilities of learning organisations are divided over three classes [Senge 1990]: • ‘aspiration’: the capacity of individuals, teams, and eventually larger organisations to orient toward what they truly care about, and to change because they want to, not just because they need to • ‘reflection and conversation’: the capacity to reflect on patterns of behaviour and assumptions deeply hidden in a persons behaviour, both individually and collectively • ‘conceptualisation’: the capacity to see larger systems and forces at play and to construct public, testable ways of expressing these views According to Senge, there are three groupings of learning skills. Firstly, there is the motivation to learn and improve. This includes having time for learning, learning objectives, interest in learning, etc. Management commitment for learning tasks is also one of the aspects that falls under aspiration. Secondly, there is the willingness to discuss deep assumptions. This is what Argyris and Schön call ‘double loop learning’. Finally, there is conceptualisation, which corresponds with model building and testing of the experiential learning theory [Kolb 1984]. These three skills and capabilities for establishing learning need to be addressed by the RPM conceptual model. Learning theory supports that a learning method should specify learning goals explicitly [Garvin 1993]. Defining these goals is difficult, but in a business environment it makes sense to base them on business goals. These goals can be different for different organisations. Differences include the market in which an organisation operates, the type of product that is delivered, the organisation of the development teams, or the country in which the products will be used. Learning practices should be directed to goals of the organisation, which can be made operational by, for example, managing on performance indicators [Garvin 1993]. Goals for learning always vary between organisations, because of different strategies [Agarwal et al.1997]. So, learning theory indicates that learning objectives should be situational, depending on the specific needs of an organisation. In chapter 5 it was indicated that the RPM conceptual model does not prescribe generic process improvement goals for all organisations. This is different from current SPI approaches that prescribe a generic set of priorities and sequence in which improvements should be implemented. In chapter 5 it was discussed that defining organisation specific improvement objectives is probably better. Learning theory appears to support this decision. The way in which these goals are reached is not prescribed: the learning process of each organisation can be different, because the context in which learning is established is also different. 84 PRODUCT FOCUSED SOFTWARE PROCESS IMPROVEMENT The final aspect of organisational learning relevant for this thesis is based on a phenomenon called ‘creative tension’ [Senge 1990]. This is the difference between current reality and a desired future. The gap between the current reality and the desired future should not be too large, because the objectives of the people become too abstract and concrete actions towards improvement are not clearly visible. On the other hand the gap between current reality and the desired future should not be too small either, because this will result in no action at all, since the need for action might seem unnecessary. Note the resemblance between ‘creative tension’ and ‘assessment based’ improvement programmes for software engineering, in which yearly benchmarks are used to set next years objectives. This creative tension principle will be adopted, because it appears practical to steer learning towards reachable objectives. So an improvement method for embedded product development should focus on goals that are reachable and within the principle of ‘creative tension’. Beside general guidelines on implementing organisational learning, learning theory also provides several criteria for successful learning. Such ‘learning enablers’ are also relevant for this thesis and are therefore be handled in the next section. 6.1. 3 Proposed incorporation of learning concepts in the RPM conceptual model Based on the foregoing analysis of learning theory, the time has come to summarise which concepts need to be incorporated in the RPM conceptual model for product focused SPI, which was presented in chapter 5. The following learning concepts will be incorporated: 1. Learning is the process by which existing knowledge is enriched or new knowledge is created [Weggeman 1997]. Knowledge is the personal ability that enables a person to perform a certain task [Weggeman 1997]. Transferring implicit (tacit) knowledge is not addressed in this thesis. 2. Organisational learning is defined as a skilled process in which knowledge is created, acquired, and transferred, and through which (potential) behaviour is modified based on new knowledge [Garvin 1993]. Organisational learning is done within groups of people. Organisations do not learn, but the people in those organisations are learning. 3. During learning experiences are transformed into