Ohjelmistoatomi on käsite, artefakti, joka kuvaa formaalien rakenteiden käsittelyä ja tulkintaa tietokoneessa. Ohjelmistoatomin sisäisenä määrittelynä toimii pelkästään yksi atomistinen kaava (myös atomistinen sääntö). Sen takia ohjelmistoatomeista syntyvä malli on formaali ja tietokoneella täysin tulkittavissa ilman moniselitteisyyksiä. Ohjelmistoatomi liittyy symboliseen analyysiin, missä symboleita ja niiden taustalla olevia objekteja tulkitaan kuvatun logiikan mukaisesti.

Ohjelmistoatomin taustaa

muokkaa

Ohjelmistoatomi on kehittynyt fysiikan atomin ja atomismin muodostamista esikuvista. Loogisen atomismin teoriaa ovat kehittäneet Ludwig Wittgenstein ja Bertrand Russell, jotka kuvaavat myös molekyläärisiä käsitemalleja ajattelun pohjana atomeja käyttäen. Ohjelmistoatomi on menetelmätekninen ratkaisu, jossa symbolisen analyysin ja semiotiikan keskeinen käsite eli objekti saadaan toteutettua.

Ohjelmistoatomin soveltaminen koodin analysoimiseen

muokkaa

Symbolisessa ohjelma-analyysissa ohjelmistoatomin sisäisenä atomistisena sääntönä toimii vastaavasta ohjelmasta sen kieliopin mukaan johdettu kielioppitermi. Tämä muodostaa ohjelmistoatomin semantiikan. Koodista kehitetty atomistinen malli sisältää joukon ohjelmistoatomeita, jotka kytkeytyvät keskenään samaan tapaan kuin vastaavat kielioppitermit esimerkiksi Java- tai C++-koodissa. Ohjelmistoatomia simuloidaan vastaavalla simulointimetodilla, joka ohjelmoidaan ohjelmistoatomia vastaavan olioon. Simulointimetodin käyttäytyminen vastaa alkuperäisen kielen käyttäytymistä, mikä voidaan kuvata tilasiirtymäkaaviona (tilakaavio).

Katso myös

muokkaa

Kirjallisuutta

muokkaa
  • Atomistic Design Pattern for Programming in Prolog. St.Petersburg 17-19.6.2008. Vip Alc’08- conference (Atomistinen suunnittelumalli (Arkistoitu – Internet Archive) (en) sivut 98-105)
  • Symbolic Hybrid Programming Tool for Software Understanding. 3rd International Workshop on Hybrid Artificial Intelligence Systems (HAIS) 2008, Burgos, Spain, Springer LNAI 5271, pp. 499-506.

Aiheesta muualla

muokkaa
  • Klement, Kevin: Russell's Logical Atomism The Stanford Encyclopedia of Philosophy. The Metaphysics Research Lab. Stanford University. (englanniksi)
  • Proops, Ian: Wittgenstein's Logical Atomism The Stanford Encyclopedia of Philosophy. The Metaphysics Research Lab. Stanford University. (englanniksi)