Automated exchange of distributed status information of building elements

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

School of Science | Master's thesis
Checking the digitized thesis and permission for publishing
Instructions for the author

Date

2013

Major/Subject

Ohjelmistotekniikka

Mcode

T-106

Degree programme

Language

en

Pages

xi + 85

Series

Abstract

Status information of building elements in a building project is currently exchanged in a number of ways, including the document-based transfer of information and informal ways of communication. Automating the exchange of status information is expected to reduce duplicated work, save time and eliminate errors. In this thesis, a proof of concept for automating the exchange of distributed status information of building elements was implemented based on a set of selected requirements. The implementation consists of a distributed system based on the publish-subscribe paradigm. Each party in a building project can start receiving updates to status information by registering subscriptions to the status attributes he is interested in. Each party responsible for producing status attributes acts as a publisher for them, triggering automatic updates to all subscribers to those attributes. The implementation follows the constraints of Representational State Transfer (REST) for the definition of its APIs with each party having its own status exchange server accessible through a REST API. Each server has an RDF database for storing status information, subscriptions and network configuration. The status exchange server was implemented using the Python programming language and Django REST framework. The servers were deployed with virtual server images that could be easily cloned for various parties in a building project. For demonstrating the functionality of the system, an exemplary status exchange client was implemented on top of the Open API of Tekla Structures using C# and Microsoft .NET framework. The evaluation of the proof of concept showed positive results from the use of the publish-subscribe paradigm as the basis for the implementation and REST as its architectural style. While the great majority of the elicited requirements were met successfully, certain characteristics of the implementation could create undesired temporal bindings to the exchange of status information. As the identified deficiencies were likely to restrict the applicability of the implementation to different building projects, they were analysed and solutions were proposed for eliminating them.

Rakennuselementtien statustietoja vaihdetaan rakennusprojekteissa nykyisin monin eri tavoin, muun muassa dokumenttipohjaisesti ja käyttäen epämuodollisempia yhteydenpitomuotoja. Statustietojen vaihdon automatisoimisen odotetaan vähentävän moneen kertaan suoritettua työtä, säästävän aikaa ja karsivan virheitä. Diplomityössä kehitettiin valikoitujen vaatimusten pohjalta järjestelmä statustietojen vaihdon automatisoimiseksi rakennusprojektin osapuolten välillä ja osoitettiin tällaisen järjestelmän toteutettavuus. Toteutus muodostuu julkaise-tilaa (publish-subscribe) -malliin perustuvasta hajautetusta järjestelmästä. Kukin rakennusprojektin osapuoli voi rekisteröidä tilauksia häntä kiinnostaviin statusattribuutteihin. Kukin statusattribuutteja tuottava osapuoli toimii kyseisten tietojen julkaisijana, jolloin näiden attribuuttien tilaajat saavat automaattiset päivitykset tietoihin. Toteutus noudattaa Representational State Transfer (REST) -arkkitehtuurityylin määrittelemiä rajoitteita siten, että kullakin osapuolella on statustiedon vaihtoa varten oma palvelin, jonka kanssa viestitään REST-ohjelmointirajapinnan kautta. Palvelimen yhteydessä on RDF-tietokanta statustiedon, tilausten ja verkkokonfiguraation tallettamiseksi. Statuspalvelimen toteuttamiseen käytettiin Python-ohjelmointikieltä ja Django REST frameworkia. Palvelimet otettiin käyttöön virtuaalipalvelinkuvilla, joita voidaan helposti monistaa rakennusprojektin eri osapuolille. Järjestelmän toiminnan havainnollistamiseksi toteutettiin esimerkinomainen asiakasohjelma Tekla Structuresin Open API:lle käyttäen C#:ia ja Microsoftin .NET -kehitysympäristöä. Toteutetun järjestelmän arviointi osoitti, etta julkaise-tilaa -malli soveltuu hyvin toteutuksen perustaksi ja REST arkkitehtuurityyliksi. Toteutus täytti valtaosan järjestelmälle asetetuista vaatimuksista, mutta sen tietyt ominaisuudet saattaisivat synnyttää statustietojen vaihtoon ei-toivottuja ajallisia riippuvuuksia. Koska havaitut puutteet todennäköisesti rajoittaisivat järjestelmän soveltuvuutta erilaisiin rakennusprojekteihin, ne analysoitiin, ja niihin ehdotettiin ratkaisut.

Description

Supervisor

Saikkonen, Heikki

Thesis advisor

Törmä, Seppo
Virtanen, Mikko

Keywords

status information, statustieto, building information modeling, rakennusten tietomallinnus, BIM, BIM, interoperability, yhteentoimivuus, distributed systems, hajautetut järjestelmät, publish-subscribe, julkaise-tilaa, REST, REST

Other note

Citation