aalto1 untyped-item.component.html
Automated configuration of industrial crane applications: A software product line approach
Loading...
URL
Journal Title
Journal ISSN
Volume Title
Sähkötekniikan korkeakoulu |
Master's thesis
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
Date
Department
Major/Subject
Mcode
ELEC3025
Language
en
Pages
77
Series
Abstract
To be successful in large-scale and complex software development business, systematic reuse of software is essential. This requires careful management of commonalities and variabilities among software variants. However, in industrial automation, this approach is not yet widespread, and non-systematic software reuse approaches, such as clone-and-own, are more commonly used due to their simplicity and availability.
This thesis aims to implement a prototype of an easy-to-use configurator tool that takes an industrial crane application specification as an input and automatically configures a common control software platform to meet customer requirements. The tool adheres to the concept of Software Product Line Engineering (SPLE) as a mechanism for mass customization, providing benefits, such as reduced time to market, improved software quality, and cost-effectiveness.
This study applied Design Science Research methodology as an iterative problem-solving approach for finding solutions to the identified practical problems in crane application development. The study consisted of four iterations, each consisting of five phases of the regulative cycle. Qualitative data about solution requirements and feedback were collected through focus group discussions and by analyzing software artifacts.
The developed tool successfully addresses issues related to industrial crane application development, such as time-consuming and laborious manual configuration tasks, lack of harmonization between applications, and difficulties in efficiently utilizing reusable software artifacts. As crane control software is becoming increasingly more complex due to constant safety and productivity improvements, the tool acts as an extendable platform that supports efficient reuse and variability management to enhance software development.
Menestyäkseen laajamittaisessa ja monimutkaisessa ohjelmistokehitysliiketoiminnassa ohjelmistojen järjestelmällinen uudelleenkäyttö on välttämätöntä. Tämä vaatii huolellista ohjelmistoversioiden yhteisten ja vaihtelevien piirteiden hallintaa. Teollisuusautomaatiossa tämä lähestymistapa ei kuitenkaan ole vielä levinnyt laajalle, ja ei-järjestelmällisiä ohjelmistojen uudelleenkäyttömenetelmiä, kuten kloonaa-ja-omaa, käytetään yleisemmin niiden yksinkertaisuuden ja käytettävyyden vuoksi.
Tämän diplomityön tavoitteena on toteuttaa prototyyppi helppokäyttöisestä konfigurointityökalusta, joka ottaa teollisuusnosturisovelluksen spesifikaation syötteenä ja automaattisesti konfiguroi yhteisen ohjausohjelmistoalustan vastaamaan asiakkaiden vaatimuksia. Työkalu noudattaa konseptia ohjelmistotuotelinjan kehittämisestä mekanismina massaräätälöintiin, joka tarjoaa etuja, kuten lyhyempi markkinoilletuontiaika, ohjelmistojen korkeampi laatu ja kustannustehokkuus.
Tässä tutkimuksessa sovellettiin suunnittelutieteellistä tutkimusmetodologiaa iteratiivisena ongelmanratkaisutapana löytää ratkaisuja nosturien sovelluskehityksessä havaittuihin käytännön ongelmiin. Tutkimus koostui neljästä iteraatiosta, joista jokainen koostui viidestä sääntelevän syklin vaiheesta. Laadullista tietoa ratkaisun vaatimuksista ja palautteesta kerättiin fokusryhmäkeskusteluilla ja analysoimalla ohjelmistoartefakteja.
Kehitetty työkalu ratkaisee onnistuneesti teollisuusnosturisovellusten kehitykseen liittyviä ongelmia, kuten aikaa vievät ja hankalat manuaaliset konfigurointitehtävät, sovellusten välisen yhdenmukaisuuden puute, ja vaikeus hyödyntää tehokkaasti uudelleenkäytettäviä ohjelmistoartefakteja. Koska nosturin ohjausohjelmisto on yhä monimutkaisempi johtuen jatkuvasta turvallisuuden ja tuottavuuden parantamisesta, työkalu toimii laajennettava alustana, joka tukee tehokasta uudelleenkäyttöä ja vaihtelevuuden hallintaa tehostaen ohjelmistokehitystä.