WebUI implementation of design patterns for drilling mining machine control system
Hämäläinen, Eveliina (2023)
Hämäläinen, Eveliina
2023
Teknisten tieteiden kandidaattiohjelma - Bachelor's Programme in Engineering Sciences
Tekniikan ja luonnontieteiden tiedekunta - Faculty of Engineering and Natural Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2023-06-07
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202305306324
https://urn.fi/URN:NBN:fi:tuni-202305306324
Tiivistelmä
Design patterns are generic solutions to commonly occurring problems in software engineering. Design patterns are a means for capturing best practices of implementations and provide a guide for implementing solutions in a consistent manner. This work examines underground drilling mining machines’ control systems and software architecture and presents used web technologies. Additionally, the work includes collection of software requirements and study of different design patterns for drilling mining machines’ web user interfaces. Design patterns are used to document best practices for web application development for the target company. The target of this work is to select and document various design patterns for drilling mining machines’ web user interfaces.
Two software- and control system specialists of target company were interviewed for collection of requirements in March 2023. The interviews highlight specific requirements for drilling mining machines, which are related to, for example, the long-life cycle and high safety demands of the machines. Additionally, two different perspectives were highlighted in the interviews: what requirements software architecture sets and what are the customer demands for web user interfaces in drilling mining machines. Requirements were divided in to the three categories based on interview material.
A new web application for Sandvik battery-electric mining jumbo was developed for this work. To find design patterns for drilling mining machines’ web applications, new web application and several already existing web applications were studied. Various design patterns were studied from literature.
Three different design patterns were discovered as a result of this work. Numerous design patterns were found from literature, and one was selected for this work. This design pattern offers a solution for state management of large web applications, when application contains large amount of same data, that multiple different parts of the application use. Two different design patterns were found by studying the web application developed for this work and old application implementations. First discovered pattern is related to reusability of various web components and their storing in a way that they are easily accessible from the component library. Same components are regularly used in various projects, and by implementing this pattern the need to copy code to multiple different projects is not required. Second discovered pattern offers a solution to efficient web testing by defining a mandatory and unique id for each web component. Suunnittelumallit ovat ohjelmistotekniikassa käytettäviä yleisiä ratkaisuja usein toistuviin ongelmiin. Suunnittelumalleilla voidaan dokumentoida hyväksi todettuja käytäntöjä ja ne tarjoavat apua erilaisten ongelmien ratkaisujen johdonmukaiseen toteutukseen. Tässä työssä tutkitaan maanalaisten poralaitteiden ohjausjärjestelmiä ja ohjelmistoarkkitehtuuria sekä esitellään niissä käytettyjä web-teknologioita. Lisäksi poralaitteiden web-käyttöliittymille kerätään ohjelmistovaa-timuksia ja etsitään erilaisia suunnittelumalleja, joiden tarkoituksena on dokumentoida parhaita käytänteitä kohdeyrityksen web-sovellusten kehitykseen. Tämän työn tavoitteena on löytää ja dokumentoida erilaisia suunnittelumalleja poralaitteiden web-käyttöliittymille.
Web-käyttöliittymien vaatimustenkeruuta varten haastateltiin kahta kohdeyrityksen ohjelmisto- ja ohjausjärjestelmäasiantuntijaa maaliskuussa 2023. Haastatteluissa korostettiin yleisten oh-jelmistovaatimusten lisäksi poralaitteille erityisiä vaatimuksia kuten laitteiden pitkää käyttöikää ja korkeita turvallisuusvaatimuksia. Lisäksi haastatteluissa korostuivat kaksi eri näkökulmaa: mitä vaatimuksia ohjelmistoarkkitehtuuri asettaa ja mitä vaatimuksia asiakkaat asettavat web-käyttöliittymille poralaitteissa. Vaatimukset jaettiin haastatteluaineiston perusteella kolmeen eri kategoriaan.
Tätä työtä varten toteutettiin uusi web-käyttöliittymä Sandvikin sähkökäyttöiseen poralaitteeseen. Poralaitteiden web-käyttöliittymille etsittiin erilaisia suunnittelumalleja uutta käyttöliittymää sekä vanhoja käyttöliittymätoteutuksia tutkimalla. Erilaisia suunnittelumalleja tutkittiin myös kirjallisuudesta.
Työn tuloksena löydettiin kolme erilaista suunnittelumallia. Kirjallisuudesta löytyi kymmeniä suunnittelumalleja, joista tähän työhön valittiin yksi. Tämä suunnittelumalli tarjoaa ratkaisun suurien web-sovellusten tilan hallintaan, kun sovelluksessa on paljon samaa tietoa, jota sovelluksen usea eri osa käyttää. Kaksi muuta suunnittelumallia löydettiin tutkimalla tätä työtä varten toteutettua web-sovellusta ja vanhoja sovellustoteutuksia. Ensimmäinen löydetty malli liittyy erilaisten web-komponenttien uudelleenkäyttöön ja niiden varastointiin niin, että ne ovat saatavilla kootusti komponenttikirjastossa. Usein samoja komponentteja käytetään useissa eri projekteis-sa, jolloin tätä mallia käyttämällä tarve kopioida koodia useisiin eri projekteihin poistuu. Toinen löydetty malli tarjoaa ratkaisun tehokkaaseen web-testaukseen määrittelemällä jokaiselle web-komponentille pakollisen ainutlaatuisen tunnisteen.
Two software- and control system specialists of target company were interviewed for collection of requirements in March 2023. The interviews highlight specific requirements for drilling mining machines, which are related to, for example, the long-life cycle and high safety demands of the machines. Additionally, two different perspectives were highlighted in the interviews: what requirements software architecture sets and what are the customer demands for web user interfaces in drilling mining machines. Requirements were divided in to the three categories based on interview material.
A new web application for Sandvik battery-electric mining jumbo was developed for this work. To find design patterns for drilling mining machines’ web applications, new web application and several already existing web applications were studied. Various design patterns were studied from literature.
Three different design patterns were discovered as a result of this work. Numerous design patterns were found from literature, and one was selected for this work. This design pattern offers a solution for state management of large web applications, when application contains large amount of same data, that multiple different parts of the application use. Two different design patterns were found by studying the web application developed for this work and old application implementations. First discovered pattern is related to reusability of various web components and their storing in a way that they are easily accessible from the component library. Same components are regularly used in various projects, and by implementing this pattern the need to copy code to multiple different projects is not required. Second discovered pattern offers a solution to efficient web testing by defining a mandatory and unique id for each web component.
Web-käyttöliittymien vaatimustenkeruuta varten haastateltiin kahta kohdeyrityksen ohjelmisto- ja ohjausjärjestelmäasiantuntijaa maaliskuussa 2023. Haastatteluissa korostettiin yleisten oh-jelmistovaatimusten lisäksi poralaitteille erityisiä vaatimuksia kuten laitteiden pitkää käyttöikää ja korkeita turvallisuusvaatimuksia. Lisäksi haastatteluissa korostuivat kaksi eri näkökulmaa: mitä vaatimuksia ohjelmistoarkkitehtuuri asettaa ja mitä vaatimuksia asiakkaat asettavat web-käyttöliittymille poralaitteissa. Vaatimukset jaettiin haastatteluaineiston perusteella kolmeen eri kategoriaan.
Tätä työtä varten toteutettiin uusi web-käyttöliittymä Sandvikin sähkökäyttöiseen poralaitteeseen. Poralaitteiden web-käyttöliittymille etsittiin erilaisia suunnittelumalleja uutta käyttöliittymää sekä vanhoja käyttöliittymätoteutuksia tutkimalla. Erilaisia suunnittelumalleja tutkittiin myös kirjallisuudesta.
Työn tuloksena löydettiin kolme erilaista suunnittelumallia. Kirjallisuudesta löytyi kymmeniä suunnittelumalleja, joista tähän työhön valittiin yksi. Tämä suunnittelumalli tarjoaa ratkaisun suurien web-sovellusten tilan hallintaan, kun sovelluksessa on paljon samaa tietoa, jota sovelluksen usea eri osa käyttää. Kaksi muuta suunnittelumallia löydettiin tutkimalla tätä työtä varten toteutettua web-sovellusta ja vanhoja sovellustoteutuksia. Ensimmäinen löydetty malli liittyy erilaisten web-komponenttien uudelleenkäyttöön ja niiden varastointiin niin, että ne ovat saatavilla kootusti komponenttikirjastossa. Usein samoja komponentteja käytetään useissa eri projekteis-sa, jolloin tätä mallia käyttämällä tarve kopioida koodia useisiin eri projekteihin poistuu. Toinen löydetty malli tarjoaa ratkaisun tehokkaaseen web-testaukseen määrittelemällä jokaiselle web-komponentille pakollisen ainutlaatuisen tunnisteen.
Kokoelmat
- Kandidaatintutkielmat [8683]