Software Configuration Management for developments with a high variability of hardware
Research information Author: Date:
R.C.P.A. Houtackers August 31, 2007
SCM for developments with a high variability of hardware
SUMMARY The complexity of products increases, and the role of software in these products changes. Collaboration between hardware and software is increasingly important. A high variability of hardware or software induces extra requirements on the hardware-software interface (HSI). This project consists of an investigation how to handle hardware variability in a Software Configuration Management (SCM) system. The research objective of this project is: “To contribute to the recommendations for the customization of a version control system within the current SCM system at ASML by analyzing the current software configuration management system of ASML and comparing that with the latest developments described in literature and with tooling available on the market.” Based upon this knowledge, recommendations will be formulated how to manage this variability. This research is performed in an industrial setting: a case study will be performed in the development environment of ASML, a world leader in the manufacture of advanced technology systems for the semiconductor industry. The management team of the department “Embedded Software Development” considers the problems within the project context to be: • Development of a new product, or to change one, takes too long before this product is available on the market. • Current uptime of the product will not meet next years specification. • The number of faults distributed to the field is too high (KPI: patch hit percentage). The solutions that are being considered are: • Separating product data (“data”) from the rest of the software (“control”), eventually making it possible to separately release these parts. • Introduction of a System Configuration Management process, which will bridge the gap between product data management (PDM) for hardware on one side, and software configuration management (SCM) on the other. This research project is initiated in order to contribute knowledge to these possible solutions. Research material is retrieved from content analysis of literature and media, complemented with data from face-to-face interviews and from analysis of the development environment in the case study. First PDM system concepts and SCM system concepts are analyzed using literature and media as research material. The purpose of this analysis is to determine the similarities and differences between them. Both system concepts are alike, but there are important technical differences (see chapter 2). The most important differences in view of this research are: • Version Management and Concurrent Development • Release Management • Process Management and Role Management. Besides the technical differences, there are cultural differences between the users of both tools: • Lack of identification • Non-uniform terminology • Physically different worlds. To determine the evaluation criteria for the version control system of an SCM, the system concepts of Configuration Management (CM), PDM and SCM systems are investigated in scientific literature and media. Besides an analysis of the tools, the systems that these tools are part of are evaluated. The results of this analysis are two sets of evaluation criteria: 1. criteria on the tools, and 2. criteria on the usage of these tools. This last set is determined in interviews with domain experts at ASML. After the evaluation criteria are determined, integration of a PDM with an SCM is investigated. Section 3.2.3 describes the (dis)advantages of this interface between both systems.
© ASML 2008
Public Version
Page 2 of 5
SCM for developments with a high variability of hardware
Information gathered from literature, media and interviews is used to analyze the current situation (ist) and design an improved situation (soll). In industrial system manufacturing, specifically in the area of the hardware-software interface, which is the subject area of this research, the following three trends can be observed: 1. Complexity of products increases. 2. Role of software changes to a primary part. 3. Technologies converge. All these trends have impact on the hardware-software interface of complex systems. A high variability of hardware components will influence the PDM and the SCM systems, because the contents of these tools must be redesigned (“control” and “hardware related data” must be separated) and this new interface between them must be designed. If this interface does not facilitate easy adding of new hardware related data (after this data is separated and moved to the PDM), it is likely that the hardware related data will be (partly) re-introduced in the SCM, resulting in entanglements with “control” software again. Therefore the requirements on this interface are: stability and support of new hardware (support for growth). In order to create such an interface, redesigning the contents of the systems is necessary. Based upon these requirements, the new situation (soll) is designed. In chapter 3 the set of evaluation criteria (from chapter 2) is applied to both the ist and the soll situation at ASML. The currently used SCM tool (ClearCase) fulfills all requirements as SCM tool for the soll situation. With that in mind and because a change of SCM tool introduces a lot of costs, it is likely that in the soll situation ASML will prefer to use the current SCM tool. In this research, it is assumed that the SCM tool in the soll situation will be the same as in the ist situation. As a result, the evaluation criteria related to the SCM tool itself are not used, since the score of both situations is identical. Instead only evaluation criteria related to the usage of the SCM tool will be used. Based upon these criteria, it can be concluded that the designed situation (soll) is more beneficial for ASML than the current situation (ist). Chapter 4 contains the recommendations to achieve this desired situation given the criteria mentioned earlier, they are: • Transfer of hardware related data from the SCM to the PDM. • Coupling of the PDM and SCM is advantageous for ASML, but the real benefits are in a tight integration of these tools. • Carefully plan the migration, since a large part of the ASML organization will be affected: both departments and projects. The main conclusion is that this research has contributed to plotting a direction for system development. This research has also contributed in emphasizing the need for integration of PDM and SCM, and the importance to create a multi-disciplinairy common model at the system level. General recommendations are: • Develop the designed situation (soll): integration of PDM and SCM. • Align and extend the roadmaps of the projects with the designed situation from this research: hardware related data should be moved from the SCM to the PDM environment. • Investigate peer-companies for their solutions with respect to the support of hardware variability in software. • Investigate the tool Teamcenter 2007, that is just released (autumn 2007).
© ASML 2008
Public Version
Page 3 of 5
SCM for developments with a high variability of hardware
SAMENVATTING Producten worden steeds complexer en de rol van software in het product wijzigt. Ook wordt de samenwerking tussen hardware en software in deze producten belangrijker. Een grote variabiliteit van hardware of van software stelt extra eisen aan de hardware-software interface. Het project dat beschreven wordt in dit verslag, bestaat uit een onderzoek naar oplossingen voor het omgaan met hoge hardware variabiliteit binnen een Software Configuratie Management (SCM) systeem. De doelstelling van het onderzoek is: “Het doen van aanbevelingen voor de aanpassing van een versie controle systeem binnen het SCM systeem van ASML, door het analyseren van het huidige versie controle systeem en dat te vergelijken met de laatste ontwikkelingen uit de literatuur en met beschikbare tools op de markt.” Met deze kennis zullen ook aanbevelingen geformuleerd worden hoe men de invloed van deze hardware variabiliteit op de software kan beheersen. Het onderzoek is uitgevoerd in een industriele omgeving: een gevalstudie wordt uitgevoerd in de ontwikkelomgeving van ASML, een wereldleider in de vervaardiging van geavanceerde systemen voor de halfgeleiderindustrie. Het managementteam van de afdeling “Embedded Software Development” onderkent de volgende problemen binnen deze project context: • De doorlooptijd die nodig is voordat een nieuw of gewijzigd product op de markt beschikbaar komt, is te groot. • De huidige uptime van het ASML product voldoet niet aan de eisen die hieraan in de nabije toekomst gesteld worden. • Het aantal fouten in door ASML geleverde software-updates is te hoog (kritische succesfactor: patch hit percentage). De oplossingen die men overweegt zijn: • Splitsen van product data (“data”) van de rest van de software (“control”), waardoor het in de toekomst misschien mogelijk wordt om deze delen apart van elkaar te distribueren. • Introductie van een systeem configuratie management proces, dat tot doel heeft om een brug te slaan tussen product data management (PDM) voor hardware, en software configuratie management (SCM) voor software. Dit onderzoek heeft als doel om bij te dragen aan kennis over deze mogelijke oplossingen. Als onderzoeksmateriaal zullen worden gebruikt: inhoudsanalyse van wetenschappelijke literatuur en media, aangevuld met informatie uit face-to-face interviews. Hiernaast zal uit de gevalstudie informatie over de ontwikkelomgeving van ASML betrokken worden. Allereerst is een literatuuronderzoek uitgevoerd naar PDM systeem concepten en SCM systeem concepten, gebaseerd op de bronnen: wetenschappelijke literatuur en media. Het doel van deze analyse was om de overeenkomsten van en de verschillen tussen beide concepten te bepalen. Geconcludeerd kan worden dat beide systemen gemeenschappelijke kenmerken hebben, maar dat er ook belangrijke technische verschillen zijn (zie hoofdstuk 2). De belangrijkste verschillen in het kader van dit onderzoek zijn: • Versie management en het ondersteunen van parallelle ontwikkeling • Release management • Process management en Role Management. Naast deze technische verschillen tussen de systemen zelf, bestaan ook culturele verschillen tussen de gebruikersgroepen: • Gebrek aan inlevingsvermogen in de behoeften en problemen van de andere gebruikersgroep • Niet-uniforme terminologie • Fysiek verschillende werelden. Om de evaluatiecriteria voor het version control systeem van een SCM te bepalen, zijn de systeemconcepten van een Configuration Management (CM), een PDM en een SCM systeem onderzocht in de wetenschappelijke literatuur en media. Hierbij zijn niet alleen de tools geanalyseerd, maar het volledige systeem waarvan deze tools
© ASML 2008
Public Version
Page 4 of 5
SCM for developments with a high variability of hardware
onderdeel zijn. In totaal leverde dit twee sets van evaluatiecriteria op: 1. criteria betreffende de tools, en 2. criteria betreffende het gebruik van deze tools. Deze laatste set is bepaald in de interviews met domein experts bij ASML. Nadat de evaluatiecriteria bepaald zijn, is de integratie van een PDM systeem en een SCM systeem onderzocht. Paragraaf 3.2.3 beschrijft de voor- en nadelen van deze interface tussen beide systemen. Informatie uit wetenschappelijke literatuur, media en interviews is gebruikt om de huidige situatie (ist) te analyseren, en op basis hiervan een verbeterde situatie (soll) te ontwerpen. Op het gebied van machinebouw, en in het bijzonder op het gebied van de hardware-software interface dat de projectcontext van dit onderzoek is, worden de volgende 3 trends onderscheiden: 1. Complexiteit van producten neemt toe. 2. Software vervult steeds meer een primaire rol. 3. Toename van integratie van technologieën. Al deze trends hebben invloed op de hardware-software interface van complexe systemen. Een hoge variabilteit van hardware componenten zal zowel het PDM systeem als het SCM systeem beïnvloeden. Ten eerste als resultaat van een herontwerp van de inhoud van deze systemen (scheiding van “control” en “hardware related data”). Ten tweede omdat de interface tussen deze systemen ontworpen dient te worden. Wanneer deze interface niet het eenvoudig toevoegen van hardware related data ondersteunt (nadat deze data is geisoleerd en naar het PDM is verplaatst), dan is het waarschijnlijk dat de nieuwe hardware related data (gedeeltelijk) herintroduceerd wordt in het SCM, zodat deze data opnieuw vermengt met de “control” software. Requirements aan deze interface zijn derhalve: stabiliteit en ondersteuning van nieuwe hardware (ondersteuning van uitbreiding). Teneinde een dergelijke interface te creëren, is herontwerp van de inhoud van beide systemen noodzakelijk. Op basis van deze requirements is een nieuwe situatie (soll) ontworpen. In hoofdstuk 3 zijn de ist situatie en de soll situtatie bij ASML geëvalueerd met de in hoofdstuk 2 bepaalde evaluatiecriteria. Het huidige SCM tool (ClearCase) voldoet aan alle requirements voor het SCM tool in de soll situatie. Omdat daarnaast een verandering van SCM tool veel kosten met zich meebrengt, is het waarschijnlijk dat in de nieuwe situatie ASML het huidige SCM tool zal willen gebruiken. Binnen dit onderzoek is daar dan ook vanuit gegaan. Hierdoor zullen de evaluatiecriteria die betrekking hebben op het SCM tool niet gebruikt worden, omdat voor deze criteria de score van de ist en de soll situatie gelijk zijn. Alleen de evaluatiecriteria die betrekking hebben om het gebruik van het SCM tool zijn gebruikt. Op basis van deze criteria kan geconcludeerd worden dat de nieuwe situatie (soll) een verbetering zal zijn voor ASML. Aanbevelingen om de gewenste situatie te bereiken zijn opgenomen in hoofdstuk 4. De belangrijkste zijn: • Verplaatsen van hardware gerelateerde data van het SCM naar het PDM. • Integreren van het PDM en het SCM. Dit brengt voordelen met zich mee voor ASML, maar de meeste winst kan geboekt worden indien deze tools een “tight integration” krijgen. • Plan de migratie nauwkeurig, aangezien een groot deel van de ASML organisatie wordt geraakt: zowel de afdelingen als de projecten zullen hierdoor veranderingen ondervinden. De voornaamste conclusie is dat dit onderzoek heeft bijgedragen aan het uitzetten van een richting voor systeemontwikkeling. Hiernaast zijn in dit onderzoek de voordelen van een PDM-SCM-integratie benoemd, en is het belang van een multi-disciplinair model op systeem niveau benadrukt. Algemene aanbevelingen zijn: • Onwikkel de ontworpen situatie (soll): integratie van PDM en SCM. • Controleer de roadmaps van andere projecten op de resultaten van dit onderzoek: hardware gerelateerde data dient verplaatst te worden van het SCM naar het PDM. Breid de roadmaps indien nodig hiermee uit. • Onderzoek peer-companies op hun oplossingen voor de ondersteuning van hardware variabiliteit in software. • Onderzoek het tool Teamcenter 2007, dat onlangs werd geïntroduceerd (augustus 2007).
© ASML 2008
Public Version
Page 5 of 5