100 resultados para Scenario Programming, Markup Languages, 3D Virtualworlds
em Doria (National Library of Finland DSpace Services) - National Library of Finland, Finland
Resumo:
Ohjelmiston kehitystyökalut käyttävät infromaatiota kehittäjän tuottamasta lähdekoodista. Informaatiota hyödynnetään ohjelmistoprojektin eri vaiheissa ja eri tarkoituksissa. Moderneissa ohjelmistoprojekteissa käytetyn informaation määrä voi kasvaa erittäin suureksi. Ohjelmistotyökaluilla on omat informaatiomallinsa ja käyttömekanisminsa. Informaation määrä sekä erilliset työkaluinformaatiomallit tekevät erittäin hankalaksi rakentaa joustavaa työkaluympäristöä, erityisesti ongelma-aluekohtaiseen ohjelmiston kehitysprosessiin. Tässä työssä on analysoitu perusinformaatiometamalleja Unified Modeling language kielestä, Python ohjelmointikielestä ja C++ ohjelmointikielestä. Metainformaation taso on rajoitettu rakenteelliselle tasolle. Ajettavat rakenteet on jätetty pois. ModelBase metamalli on yhdistetty olemassa olevista analysoiduista metamalleista. Tätä metamallia voidaan käyttää tulevaisuudessa ohjelmistotyökalujen kehitykseen.
Resumo:
Tämä kandidaatintyö tutkii tietotekniikan perusopetuksessa keskeisen aiheen,ohjelmoinnin, alkeisopetusta ja siihen liittyviä ongelmia. Työssä perehdytään ohjelmoinnin perusopetusmenetelmiin ja opetuksen lähestymistapoihin, sekä ratkaisuihin, joilla opetusta voidaan tehostaa. Näitä ratkaisuja työssä ovat mm. ohjelmointikielen valinta, käytettävän kehitysympäristön löytäminen sekä kurssia tukevien opetusapuvälineiden etsiminen. Lisäksi kurssin läpivientiin liittyvien toimintojen, kuten harjoitusten ja mahdollisten viikkotehtävien valinta kuuluu osaksitätä työtä. Työ itsessään lähestyy aihetta tutkimalla Pythonin soveltuvuutta ohjelmoinnin alkeisopetukseen mm. vertailemalla sitä muihin olemassa oleviin yleisiin opetuskieliin, kuten C, C++ tai Java. Se tarkastelee kielen hyviä ja huonoja puolia, sekä tutkii, voidaanko Pythonia hyödyntää luontevasti pääasiallisena opetuskielenä. Lisäksi työ perehtyy siihen, mitä kaikkea kurssilla tulisi opettaa, sekä siihen, kuinka kurssin läpivienti olisi tehokkainta toteuttaa ja minkälaiset tekniset puitteet kurssin toteuttamista varten olisi järkevää valita.
Resumo:
The main objective of this master's thesis is to study robot programming using simulation software, and also how to embed the simulation software into company's own robot controlling software. The further goal is to study a new communication interface to the assembly line's components -more precisely how to connect the robot cell into this new communication system. Conveyor lines are already available where the conveyors use the new communication standard. The robot cell is not yet capable of communicating with to other devices using the new communication protocols. The main problem among robot manufacturers is that they all have their own communication systems and programming languages. There has not been any common programming language to program all the different robot manufacturers robots, until the RRS (Realistic Robot Simulation) standards were developed. The RRS - II makes it possible to create the robot programs in the simulation software and it gives a common user interface for different robot manufacturers robots. This thesis will present the RRS - II standard and the robot manufacturers situation for the RRS - II support. Thesis presents how the simulation software can be embedded into company's own robot controlling software and also how the robot cell can be connected to the CAMX (Computer Aided Manufacturing using XML) communication system.
Resumo:
Programming and mathematics are core areas of computer science (CS) and consequently also important parts of CS education. Introductory instruction in these two topics is, however, not without problems. Studies show that CS students find programming difficult to learn and that teaching mathematical topics to CS novices is challenging. One reason for the latter is the disconnection between mathematics and programming found in many CS curricula, which results in students not seeing the relevance of the subject for their studies. In addition, reports indicate that students' mathematical capability and maturity levels are dropping. The challenges faced when teaching mathematics and programming at CS departments can also be traced back to gaps in students' prior education. In Finland the high school curriculum does not include CS as a subject; instead, focus is on learning to use the computer and its applications as tools. Similarly, many of the mathematics courses emphasize application of formulas, while logic, formalisms and proofs, which are important in CS, are avoided. Consequently, high school graduates are not well prepared for studies in CS. Motivated by these challenges, the goal of the present work is to describe new approaches to teaching mathematics and programming aimed at addressing these issues: Structured derivations is a logic-based approach to teaching mathematics, where formalisms and justifications are made explicit. The aim is to help students become better at communicating their reasoning using mathematical language and logical notation at the same time as they become more confident with formalisms. The Python programming language was originally designed with education in mind, and has a simple syntax compared to many other popular languages. The aim of using it in instruction is to address algorithms and their implementation in a way that allows focus to be put on learning algorithmic thinking and programming instead of on learning a complex syntax. Invariant based programming is a diagrammatic approach to developing programs that are correct by construction. The approach is based on elementary propositional and predicate logic, and makes explicit the underlying mathematical foundations of programming. The aim is also to show how mathematics in general, and logic in particular, can be used to create better programs.
Resumo:
The use of domain-specific languages (DSLs) has been proposed as an approach to cost-e ectively develop families of software systems in a restricted application domain. Domain-specific languages in combination with the accumulated knowledge and experience of previous implementations, can in turn be used to generate new applications with unique sets of requirements. For this reason, DSLs are considered to be an important approach for software reuse. However, the toolset supporting a particular domain-specific language is also domain-specific and is per definition not reusable. Therefore, creating and maintaining a DSL requires additional resources that could be even larger than the savings associated with using them. As a solution, di erent tool frameworks have been proposed to simplify and reduce the cost of developments of DSLs. Developers of tool support for DSLs need to instantiate, customize or configure the framework for a particular DSL. There are di erent approaches for this. An approach is to use an application programming interface (API) and to extend the basic framework using an imperative programming language. An example of a tools which is based on this approach is Eclipse GEF. Another approach is to configure the framework using declarative languages that are independent of the underlying framework implementation. We believe this second approach can bring important benefits as this brings focus to specifying what should the tool be like instead of writing a program specifying how the tool achieves this functionality. In this thesis we explore this second approach. We use graph transformation as the basic approach to customize a domain-specific modeling (DSM) tool framework. The contributions of this thesis includes a comparison of di erent approaches for defining, representing and interchanging software modeling languages and models and a tool architecture for an open domain-specific modeling framework that e ciently integrates several model transformation components and visual editors. We also present several specific algorithms and tool components for DSM framework. These include an approach for graph query based on region operators and the star operator and an approach for reconciling models and diagrams after executing model transformation programs. We exemplify our approach with two case studies MICAS and EFCO. In these studies we show how our experimental modeling tool framework has been used to define tool environments for domain-specific languages.
Resumo:
New emerging technologies in the recent decade have brought new options to cross platform computer graphics development. This master thesis took a look for cross platform 3D graphics development possibilities. All platform dependent and non real time solutions were excluded. WebGL and two different OpenGL based solutions were assessed via demo application by using most recent development tools. In the results pros and cons of the each solutions were noted.
Resumo:
Opinnäytteeni teososana on 3D-Kalevala projektinimellä tunnetun animaation partikkeliefektit. Tarkastelen tarkemmin elokuvan Lumi-, Kylä-, Paja- ja Luola-kohtauksia. 3D-Kalevala on tietokoneella tehty animaatio, joka kertoo Suomen kansalliseepoksen Kalevalan päähenkilöstä Väinämöisestä. Elokuvassa vanha Väinämöinen muistelee nuoruutensa tapahtumia. 3D-Kalevala-projekti käynnistettiin vuonna 2003, mutta sen alkuperäiset tekijät eivät saaneet sitä valmiiksi, ja projektin teko keskeytettiin vuonna 2005. Vuoden 2006 keväällä projektiin perustettiin uusi kahden verkkoviestinnän opiskelijan projektiryhmä, jonka tehtävänä oli saada elokuva valmiiksi vuoden 2007 kevääseen mennessä. Kun aloitimme projektin tekemisen, olin kolmiulotteisessa mallinnuksessa aloittelija. Tästä johtuen opinnäytteen kirjallinen osa on opas aloittelijoille partikkelien maailmaan. Selvitän raportissani miten elokuvan partikkeliefektit rakennettiin, mitä niiden tekeminen minulta vaati ja miten ne loppujen lopuksi mielestäni onnistuivat. Elokuvan efektit tehtiin 3D Studio Max-ohjelman versiolla 6.0, ja tämän takia kirjoitankin efektien rakentamisesta kyseisen ohjelman keinoin. Projektin suuruuden vuoksi molemmat tekijät pääsivät tekemään monenlaisia töitä, mutta päävastuualueet olivat selvät. Minun osani oli tehdä elokuvaan efektejä. Partikkeliefektit ovat proseduraalisia efektejä, joiden avulla on mahdollista tehdä aidon näköisiä luonnonilmiöitä, kuten tulta, savua, kipinöitä ja veden roiskeita. Koska partikkeliefektit mallintavat reaalimaailman ilmiöitä, on tekijän hyvä olla kiinnostunut selvittämään ilmiöiden käyttäytymistä luonnossa. Raportoin myös projektin aikana huomaamistani hyvistä tavoista opiskella itsenäisesti partikkelien rakentamiseen käytettyjä tekniikoita. On hyvä lukea 3D Studio Maxin tasokasta käyttöohjesovellusta, tutustua Internetissä löytyviin 3D-aiheisiin foorumeihin, käydä aiheesta tutoriaaleja läpi sekä tutustua ohjelman ominaisuuksiin kokeilemalla ja tutkimalla itsenäisesti. Elokuvan efektit onnistuivat mielestäni kiitettävästi ottaen huomioon lähtötasoni. Löysin tapoja kehittää itseäni ja helppoja keinoja toteuttaa realistista jälkeä efektien rakentamisessa. Toivon, että raportistani olisi jollekin 3D-partikkeliefekteistä kiinnostuneelle hyötyä.
Resumo:
Opinnäytetyöni aiheena on keskeytyneen uusmediatuotannon jatkaminen. Monimuototyön työosana toteutettiin 7-minuuttinen 3D animaatio, joka kertoo Suomen kansalliseepoksen Kalevalan taruhahmosta Väinämöisestä, muistelemassa menneitä. Projekti käynnistettiin alun perin vuonna 2003, mutta resurssien vähetessä se keskeytyi vuoden 2005 loppupuolella. Keväällä 2006 projekti käynnistettiin uuden projektiryhmän voimin, jossa olin itse mukana vastaten muun muassa tuotannonohjauksesta ja hahmoanimoinneista. Uusi projektiryhmä oli henkilöstöresursseiltaan pieni, joten vastuualueet olivat monipuolisia. Keskeytyneen projektin jatkamisen ja haltuunoton haasteellisuus sai minut kiinnostumaan tutkia aihetta tarkemmin. Tuotannonohjaajana vastasin hyvin pitkälle tuotannon uudesta käynnistämisestä ja projektin saattamisesta vihdoin loppuun. Keskeytyneen projektin haltuunotto oli tilanteena kaikille uusi, mikä heijastui vaikeuksina uudelleen käynnistettyyn tuotantoon. Raportin tarkoituksena ei ole olla projektinhallinnallinen käsikirja, sillä käsittelen vain tämän projektin jatkolle oleellisina pidettyjä asioita. Projekti toivottavasti kuitenkin antaa kuvan huolellisen projektinhallinnan ja onnistuneen tuotannonohjauksen tärkeydestä. Jokainen keskeytynyt projekti ei ole aina välttämättä elvytettävissä - ainakaan alkuperäisessä muodossaan. Projektin jatkamista tulisi katsoa aina tapauskohtaisesti. Keskeytymiseen on useimmiten syynsä, joten ongelmien selvittäminen ja niihin puuttuminen on tärkeää ennen jatkopäätöksen tekemistä. Myös projektityöskentelytavat kehittyvät ja pohdin työssäni uusien projektinhallintatapojen, kuten wikien käyttöä projektinhallinnan työkaluna ja projektiyhteisön välistä viestintää edistävänä työkaluna.