
!""# !" # $ % & '(() * +,-+.'/ *0 1)/.1+./-/-.).- 2 34 44 & 5 6& 7 !"#$ "!%& $& " " &"& ""#' (" )# &%& # * '+ + ", - , . / - 01 // & , / , 2- ,3 + 01 ,3 4. , , ,-- 00 / 01 / 5 67 8+ 5 9::;5 66< --5 5 '1/, 3 65 = ,+ 33 7 4 " ( 5 + 4 > & 4 / 0-> " 5 + 01 ,3 4. , , "?4 % - - . / 0 4 + - 0 /45 4 / 00 . ? 3 - + . 33 0+ 4 2-3 4 ? 0+ 5 /5 4- +- % + 4 4 +- . -8 3 0 . ?+ / 0 . - " 4. - 3 0 - 4 4. / / / @. 5 - 4 A+ - 0 . - 3 . 4. / '@ 5 + - 4-3 2 5 / 4 ? +- + . - 3 45 -, / . 0+ / 0 00 4 0 - 0 4 . - 00 4+ 3 4 00 4 3 4 @+ ? + 0+5 0 4 4 0 + + ? - 0 4 "44+ - @+ ? + 0+ 0 +4. 3 4 5 ?+ / % 2 B . +4 0 - . 0 +- - /5 . . 33 + 3 3 4 . 3? - 0 ? / - 0 /4 % - - &. - . / - 0 . - ? . + / . 2 4+ &. 4 / 4 - +4. 4 2 @ 4. 4--+ 4 5 - 3 4 - 3+ , 5 @. 4. @ - / 0 4+ " - 0 ?4 5 . - 4 4 3?? 4 4 2 4+ - A+ - &. - . 4+ +- 4 0 . / - 5 @. 4. - 4-3 . - ? . + - . ? -3 - . ? + ?. + 4 %+ 4 23 - . 4 23 - 5 @ . 3 0- @, 0 +- 4 + 0 C+- D - / - . / . - / @ . + - . 5 / 4 33 / 0 - 0 4 5 @. 4. @ 0 8 4 0 + 0 ? / &. +4. 8 4 3 0- 5 . - - +4 0 0 . 4 6E<6%9F ( G;F%G6%F<F<%;%< Svensk sammanfattning Området för denna avhandling är hållbar utveckling av befintliga industriella programvarusystem. I avhandlingen presenteras en nyutvecklad metod för att automatiskt skapa systemmodeller som bl. a. kan användas för att undersöka konsekvenser av tänkta systemutvecklingar och -förändringar. Genom tidig information om vilka förändringar som är genomförbara så ökar möjligheterna till återanvändning av existerande programvara vilket kan vara ett kostnads- effektivt alternativ till nyutveckling. För ett befintligt programvarusystem inne- bär detta hållbar utveckling, då det till en viss brytpunkt är billigare att under- hålla och vidareutveckla det befintliga systemet jämfört med att bygga om sys- temet från grunden. Metoden som presenteras i avhandlingen kan användas till att skjuta denna brytpunkt framåt i tiden och på så sätt uppnås större lönsamhet över systemets hela livscykel. Huvuddelen av underhålls- och vidareutvecklingskostnaden för industriella programvarusystem beror på att systemen är så komplexa att konsekvenserna av en planerad förändring i systemet inte går att överblicka innan förändrin- gen är genomförd. Om förändringar inte kan utvärderas innan de är imple- menterade leder detta i värsta fall till att en förändring som inte uppfyller sys- temkraven implementeras, vilket kan medföra onödiga kostnader i såväl tid som resurser. Det är alltså önskvärt att så tidigt som möjligt kunna avgöra om en förändring är möjlig eller inte med avseende på systemkraven. Ett möjligt sätt att avgöra detta är att undersöka abstrakta prototyper (modeller) av sys- temet tillsammans med en tilltänkt förändring. Detta kräver dock en modell av systemet, vilken oftast inte är tillgänglig eftersom konstruktion och uppda- tering av modeller normalt är för kostsamt att utföra manuellt och därför inte sker. Metoden för automatisk modellering som presenteras i avhandlingen byg- ger på analys av inspelningar från programvarusystem under drift. Inspel- ningarna innehåller information om systemets funktion inklusive tidsbeteende och metoden extraherar systemets struktur. Metoden har implementerats och utvärderats i en fallstudie på ett styrsystem för en industriell robot och i ett kontrollerat experiment. Experimentet har genomförts i ett ramverk som har utvecklats för detta syfte. Tanken är att ramverket i framtiden även ska kunna användas för att jämföra olika metoder för automatisk modellering. Genom detta arbete visas att modellering (till viss grad) kan automatiseras och att de genererade modellerna kan användas för att undersöka konsekvenser av sys- temförändringar. Till Rebecca This is not the end. It is not even the beginning of the end. But it is, perhaps, the end of the beginning. (Sir Winston S. Churchill, 1942.) Acknowledgments How can one man owe so much to so many? Now that this journey is coming to an end, this is a relevant question. Though, by definition, thesis writing is in large portions a one man job, it never ceases to amaze me how much help and support you need to do something on your own. There have been multiple points of failure in the conception of this thesis, meaning that there are a lot of people that I could not have done without, and I am glad that it seems as if all has worked out in the end. Thank you all! The first specific thank yous go to my supervisors and my financiers: The work presented here has been skillfully supervised by Professor Hans Hansson and Professor Sasikumar Punnekkat and carried out within the SSF projects SAVE and PROGRESS. The great quality of the supervision and co-operation has been instrumental in producing this thesis. I would like to thank them both for starting to teach me the art of weighing my written words on a silver scale, and for all the other positive effects they have had on my writing. I am not there yet, but I hope that I have improved! I would like to thank Dr. Henrik Thane for introducing me to debugging of real-time systems and valuable supervision during my first three years as a Ph.D.-student, when this subject was my focus. During the course of this work, there has been extensive co-operation with fellow Ph.D.-student Johan Kraft (formerly Andersson), resulting in co-author- ships on both accounts. Thank you Professor Christer Nordström for support during my time at the department, and as an excellent teacher during my un- dergraduate studies. A number of people have helped in reading drafts of the thesis: Professor Hans Hansson, Professor Sasikumar Punnekkat, Dr. Thomas Nolte, Professor Paul Pettersson, Professor Bengt Jonsson at Uppsala Univer- sity, Dr. Insik Shin, Dr. Cristina Seceleanu, Dr. Henrik Thane, Daniel Sund- mark, Ylva Boive, Professor Christer Nordström, Professor Mikael Nolin, and Johan Kraft. I would also like to thank my previous co-workers Daniel Sund- mark, Anders Pettersson, and Lars “Lalle” Albertsson (SICS). Daniel, Anders, and I have shared the same office space for almost my entire time at the de- partment; thanks for putting up! I have had fruitful discussions with Profes- sor Dmitrii Silvestrov and Dr. Anatoliy Malyarenko at IMa@MDH, and Olga Grinchtein and Therese Berg from Uppsala University. During the initial parts viii of my Ph.D.-studies, I was employed by the Swedish Institute of Computer Science (SICS). Thank you all at the CNA-lab at SICS! Regarding help with specific technicalities and specifics of the thesis, I would like to acknowledge the fruitful co-operation we had with Stefan Bygde concerning the comparison measure for discrete distributions (see Section 8.3), and Johan Kraft and ABB Robotics for the case study in Chapter 7. Dr. Gus- tav Öquist and I sketched the first concepts of the evaluation framework over a couple of alcohol-infused malt-beverages (see Figure 8.1, Page 113). Professor Dmitrii Silvestrov and Dr. Anatoliy Malyarenko introduced me to Classifica- tion (see Section 9.4.6). I am also very grateful to Arkitektkopia in Västerås for swift and professional printing of this thesis. From the department, I generally thank you all for creating a good envi- ronment, and especially the following: Johan Kraft, Hans Hansson, Sasiku- mar Punnekkat, Daniel Sundmark, Anders Pettersson, Thomas Nolte, Dag Ny- ström, Jonas Neander, Ewa Hansen, Harriet Ekwall (thanks for all the help and the talks), Else-Maj Silén, Monica Wasell, Ylva Boive, Johan Fredriksson, Larisa Rizvanovic, Frank Lüders, Mats Björkman, Marcus Lindgren, Marcus Nilsson; and, though he has moved on to Germany, Professor Gerhard Fohler who initiated this beginning which is, perhaps, now ending. Thank you all! During this work, I have spent a lot of time at the department of course, but since moving back to Stockholm I have found two other creative environments: the study halls of Kungliga Biblioteket (eng. National Library of Sweden) at Humlegården and the Ritorno Café by Vasaparken. In fact, Ritorno also de- serves honorable mention due to their porridge breakfast, their egg & anchovy sandwich, and last but not least their liberal views on coffee refills and use of wall sockets. Thank you all who have provided me with distractions that prevented me from, like Jack Nicholson in The Shining, writing a book filled with the proverb “All work and no play makes Joel a bad boy”: Mikael Bendtsen, Maria Engvall, Johnnie Blom, Ruth McNamara, Fredrik Mannerstedt, Gustav Öquist, Malin Hjalmarsson, Peter Vouri, Stefan Lundgren, Camilla Urgell, Daniel Osser, Elin Malmberg, Jocke Ekström, Anu Lindquist, Ingvar Åkerblad, Kotten Öquist, Livia, Malin, and Niclas Ulltin, Ann-Sofie Berg, Johan and Birgitta Kraft, Jonas Neander, Ewa Hansen, Emanuel Sparring, and Anneke Söderquist. I want to thank my large family: Morfar, Mamma, Pappa, Mia, David, Monica, Bianca, Hannes, Micha, Bengt, Jeff, Laban, Marre, Mimmi, Hasse, Kristian H, Sara, Tessan, Kimmen, Eva, Bernt, Gunnel, Mats, Emma, Mats, Ingrid, Erik, Dagmar, Ingrid, Anita, Petra, Magnus, Lotus, Kristian A, Katta, Emilia, Tore, Hanna. I want to thank Luis and Rosa for a lovely time in Ense- ix nada, it was great seeing you again in Sweden! Thank you Bengt and Jeff for the great time you showed me and Johan in Sydney during RTCSA06! Finally, I thank my wonderful wife and favorite travel companion Rebecca for being who she is! Thank you all! Joel Gustaf Huselius Ritorno in May, with spring finally here. Publications Mr. Huselius has authored or co-authored two theses, nine peer-reviewed pa- pers, and two technical reports. A subset of these publications are directly related to this thesis. Related publications 1. “Evaluating the Quality of Models Extracted from Embedded Real-Time Software”, Joel Huselius, Johan Kraft, Hans Hansson, and Sasikumar Punnekkat. In Proceedings of the 14th Annual IEEE International Con- ference and Workshop on the Engineering of Computer Based Systems, pages 577-585.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages206 Page
-
File Size-