45 resultados para Computer programming language

em Doria (National Library of Finland DSpace Services) - National Library of Finland, Finland


Relevância:

100.00% 100.00%

Publicador:

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.

Relevância:

100.00% 100.00%

Publicador:

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.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

In this thesis, a computer software for defining the geometry for a centrifugal compressor impeller is designed and implemented. The project is done under the supervision of Laboratory of Fluid Dynamics in Lappeenranta University of Technology. This thesis is similar to the thesis written by Tomi Putus (2009) in which a centrifugal compressor impeller flow channel is researched and commonly used design practices are reviewed. Putus wrote a computer software which can be used to define impeller’s three-dimensional geometry based on the basic geometrical dimensions given by a preliminary design. The software designed in this thesis is almost similar but it uses a different programming language (C++) and a different way to define the shape of the impeller meridional projection.

Relevância:

100.00% 100.00%

Publicador:

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.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Ohjelmointitaito on asia, jonka oppimisesta ja opettamisesta voidaan olla montaa mieltä, eikä yhtä oikeaa tapaa toteuttaa ohjelmoinnin opetusta tunnu olevan olemassa. Se on kuitenkin selvää, että jotkin menetelmät ja työkalut tuntuvat olevan parempia kuin toiset. Lukuvuoden 2005-2006 päätteeksi Lappeenrannan teknillinen yliopisto päätti päivittää ohjelmoinnin perusopetusta, ja kokeili siirtymistä Python-ohjelmointikieleen ohjelmoinnin alkeiskursseilla. Koska kurssin varsinaiset muutokset keskittyivät tekniseen infrastruktuuriin, tutustuttiin alustavassa kirjallisuustutkimuksessa ensin erilaisiin lähestymistapoihin,aiempiin tapauksiin sekä mielekkäiden työkalujen löytämiseen. Tässä diplomityössä perehdytään ohjelmoinnin opetuksen työkaluihin sekä erityisesti Python-ohjelmointikielen hyödyntämiseen ohjelmoinnin perusopetuksessa. Diplomityö esittelee useita lähestymistapoja sekä keskittyy tutkimaan Pythonin soveltuvuutta alkeisopetuksen käyttötarkoituksiin. Diplomityö tutustuu myös Lappeenrannassa järjestetyn ohjelmoinnin perusteiden kurssin tuloksiin, ja analysoi sitä, pystyikö Python-pohjainen kurssi toteuttamaan teknisen yliopiston sille asettamat vaatimukset. Lopuksi aineistosta analysoidaan jatkotutkimuksen tarpeita sekä pyritään löytämään ne osa-alueet, joita näissä jatkotutkimuksissa tulisi vielä kehittää.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Diplomityön tarkoituksena on kehittää tietokoneohjelma putkilämmönsiirtimen vaippapuolen painehäviön laskemiseksi. Ohjelmalla voidaan varmistaa lämmönsiirtimen mitoitusvaiheessa, että vaippapuolen painehäviö ei ylitä sallittuja rajoja. Ohjelmatäydentää olemassa olevia mitoitusohjelmia. Tässä diplomityössä käsitellään ainoastaan höyryvoimalaitosprosesseissa käytettäviä putkilämmönsiirtimiä. Työn kirjallisessa osassa on selvitetty periaate höyryvoimalaitosprosessista ja siinä käytettävistä putkilämmönsiirtimistä sekä esitetty putkilämmönsiirtimien rakenne, yleinen suunnittelu ja lämpö- ja virtaustekninen mitoitus. Painehäviön laskennassa käytetyt ja lämpö- ja virtausteknistä mitoitusta käsittelevässä kappaleessa esitetyt yhtälöt perustuvat Bell-Delawaren menetelmään. Painehäviönlaskentaohjelma on toteutettu hyväksikäyttäen Microsoft Excel taulukkolaskentaa ja Visual Basic -ohjelmointikieltä. Painehäviön laskenta perustuu segmenttivälilevyillä varustetun putkilämmönsiirtimen vaippapuolen yksifaasivirtaukseen. Lämmönsiirtimen lauhdutinosan painehäviö oletetaan merkityksettömäksi, joten kokonaispainehäviö muodostuu höyryn- ja lauhteenjäähdyttimessä. Kehitetty ohjelma on suunniteltu erityisesti lauhteenjäähdyttimessä muodostuvan painehäviön laskentaan. Ohjelmalla laskettuja painehäviön arvoja on verrattu todellisesta lämmönsiirtimestä mitattuihin arvoihin. Lasketut arvotvastaavat hyvin mittaamalla saatuja, eikä tuloksissa ilmene mitään systemaattista virhettä. Ohjelma on valmis käytettäväksi putkilämmönsiirtimien mitoitustyökaluna. Diplomityön pohjalta on tehty ehdotukset ohjelman edelleen kehittämiseksi.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Software plays an important role in our society and economy. Software development is an intricate process, and it comprises many different tasks: gathering requirements, designing new solutions that fulfill these requirements, as well as implementing these designs using a programming language into a working system. As a consequence, the development of high quality software is a core problem in software engineering. This thesis focuses on the validation of software designs. The issue of the analysis of designs is of great importance, since errors originating from designs may appear in the final system. It is considered economical to rectify the problems as early in the software development process as possible. Practitioners often create and visualize designs using modeling languages, one of the more popular being the Uni ed Modeling Language (UML). The analysis of the designs can be done manually, but in case of large systems, the need of mechanisms that automatically analyze these designs arises. In this thesis, we propose an automatic approach to analyze UML based designs using logic reasoners. This approach firstly proposes the translations of the UML based designs into a language understandable by reasoners in the form of logic facts, and secondly shows how to use the logic reasoners to infer the logical consequences of these logic facts. We have implemented the proposed translations in the form of a tool that can be used with any standard compliant UML modeling tool. Moreover, we authenticate the proposed approach by automatically validating hundreds of UML based designs that consist of thousands of model elements available in an online model repository. The proposed approach is limited in scope, but is fully automatic and does not require any expertise of logic languages from the user. We exemplify the proposed approach with two applications, which include the validation of domain specific languages and the validation of web service interfaces.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

The state of the object-oriented programming course in Lappeenranta University of Technology had reached the point, where it required changes to provide better learning opportunities and thus the learning outcomes. Based on the student feedback the course was partially dated and ineffective. The components of the course were analysed and the ineffective elements were removed and new methods were introduced to improve the course. The major changes included the change from traditional teaching methods to reverse classroom method and the use of Java as the programming language. The changes were measured by the student feedback, lecturer’s observations and comparison to previous years. The feedback suggested that the changes were successful; the course received higher overall grade than before.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

The vast majority of our contemporary society owns a mobile phone, which has resulted in a dramatic rise in the amount of networked computers in recent years. Security issues in the computers have followed the same trend and nearly everyone is now affected by such issues. How could the situation be improved? For software engineers, an obvious answer is to build computer software with security in mind. A problem with building software with security is how to define secure software or how to measure security. This thesis divides the problem into three research questions. First, how can we measure the security of software? Second, what types of tools are available for measuring security? And finally, what do these tools reveal about the security of software? Measuring tools of these kind are commonly called metrics. This thesis is focused on the perspective of software engineers in the software design phase. Focus on the design phase means that code level semantics or programming language specifics are not discussed in this work. Organizational policy, management issues or software development process are also out of the scope. The first two research problems were studied using a literature review while the third was studied using a case study research. The target of the case study was a Java based email server called Apache James, which had details from its changelog and security issues available and the source code was accessible. The research revealed that there is a consensus in the terminology on software security. Security verification activities are commonly divided into evaluation and assurance. The focus of this work was in assurance, which means to verify one’s own work. There are 34 metrics available for security measurements, of which five are evaluation metrics and 29 are assurance metrics. We found, however, that the general quality of these metrics was not good. Only three metrics in the design category passed the inspection criteria and could be used in the case study. The metrics claim to give quantitative information on the security of the software, but in practice they were limited to evaluating different versions of the same software. Apart from being relative, the metrics were unable to detect security issues or point out problems in the design. Furthermore, interpreting the metrics’ results was difficult. In conclusion, the general state of the software security metrics leaves a lot to be desired. The metrics studied had both theoretical and practical issues, and are not suitable for daily engineering workflows. The metrics studied provided a basis for further research, since they pointed out areas where the security metrics were necessary to improve whether verification of security from the design was desired.

Relevância:

80.00% 80.00%

Publicador:

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.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Työssä perehdytään verkkokäyttöliittymien suunnitteluun ja toteutukseen. Erityisen huomion kohteena ovat Java-ohjelmointikieli ja ohjelmistosuunnittelussa suurta huomiota herättäneet suunnittelumallit. Java on kehittynyt lyhyen elinikänsä aikana huomattavasti, ja viimeaikaiset vakioluokkakirjastot ovat mahdollistaneet monipuolisten ja siirrettävien ohjelmistojen toteuttamisen. Vaikka Java ei sovellukaan kaikkiin tarkoituksiin, on se luotettavuutensa, siirrettävyytensä ja luokkakirjastojensa ilmaisuvoiman ansiosta hyvin houkutteleva kieli käyttöliittymien tekemiseen. Suunnittelumallit ovat merkittävä osa ammattimaista oliosuunnittelua. Ne tarjoavat valmiita ratkaisuja yleisiin suunnitteluongelmiin ja säästävät siten aikaa suunnittelu- ja toteutusvaiheissa. Suunnittelumallit voidaan jakaa kolmeen ryhmään: luontimallit, rakennemallit ja toiminnalliset mallit. Käytännön osuudessa tarkastellaan Java-käyttöliittymän toteutusta olemassa olevaan Soneran TradeXpress-tietojärjestelmään. Tässä tehtävässä Java ja suunnittelumallit ovat olleet keskeisellä sijalla. Java-käyttöliittymä, JavaGUI, koostuu kahdesta osasta: asiakasappletista ja Jrls-palvelimesta. Näiden kahden väliseen tiedonsiirtoon käytetään pääasiassa Javan RMI-yhteyskäytäntöä. Jrls-palvelin toimii asiakkaana RLS-palvelimelle erityisen RLS-yhteyskäytännön avulla.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

This thesis presents different aspects of Web Services usage in Symbian OS that is an operating system for handheld devices. The practical part of the work was to develop Symbian OS client application for Web Services. It produced four reusable software components. XML enables platform and programming language independent services. Web Services use XML to create standardized message oriented services that are accessed through HTTP. Web Services are moving towards dynamic B2B interaction. Web Services increases the amount of transferred data, which is not desirable in mobile networks where transfer speed is slower than in the traditional networks. However the modern mobile networks are able to transfer the extra payload with reasonable time. XML processing is not a big problem. Web Services can be accessed from the modern mobile devices and they can cut down the development costs.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Viime aikoina matkapuhelimet ovat alkaneet tukea Javaa matkapuhelinsovellusten ohjelmointikielenä. Javan perusajatus on, että kerran käännetty sovellus voidaan suorittaa useilla laitealustoilla ilman uudelleenkääntämisen tarvetta. Jotta sovellukset voisivat toimia uudella alustalla, niiden käyttämät kirjastot tulee siirtää uudelle alustalle. Tämä diplomityö tutkii tämänkaltaiseen siirtoprojektiin liittyviä asioita. Diplomityön aikana käyttöliittymäkirjasto siirrettiin olemassa olleelta alustalta kahdelle uudelle alustalle. Toinen uusista alustoista oli vanhan alustan uusi versio, ja toinen oli kokonaan uusi alusta. Ohjelmiston siirtämistä helpottaa jos alkuperäinen ohjelmisto on suunniteltu siirrettävyyttä silmälläpitäen. Varsinaiset ohjelmaan tehtävät muutokset ovat tällöin helppoja tehdä. Hyvälaatuisen lopputuloksen saaminen vaatii kuitenkin aina että ohjelmisto myös testataan huolellisesti.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Payment Card Industry Data Security Standard (PCI DSS) on korttiyhtiöiden kehittämä kansainvälinen tietoturvastandardi, jonka tarkoituksena on parantaa kortinhaltijoiden tietoja käsittelevien järjestelmien tietoturvaa. Standardissa määritellään vaatimukset tietojen turvalliselle tallennukselle ja käsittelylle, testaus- ja tarkastusmenetelmät sekä tarkastusvaatimukset ja tarkastuksia suorittavien tahojen sertifiointi. Standardi koskee kaikkia standardin hyväksyneiden maksukorttiyhtiöiden korttitietoja käsitteleviä tahoja. Standardin ylläpitämisestä ja kehittämisestä vastaa maksukorttiyhtiöiden perustama PCI Security Standards Council -toimielin. Syyskuussa 2006 toimielin julkaisi standardista version 1.1, joka on edelleen viimeisin versio. Tässä diplomityössä selvitettiin PCI DSS -standardin asettamat vaatimukset kortinhaltijoiden tietoja käsitteleville tahoille. Lisäksi tutkittiin mahdollisuuksia toteuttaa yksi standardin vaatimuksista, kortinhaltijoiden tietojen suojaaminen, esimerkkijärjestelmässä. Kyseinen järjestelmä on kehitetty IBM System i -palvelinympäristöön käyttäen RPG-ohjelmointikieltä.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Context awareness is emerging on mobile devices. Context awareness can be used to improve usability of a mobile device. Context awareness is particularly important on mobile devices due the limitations they have. At first in this work, a literature review on context awareness and mobile environment is made. For aiding context awareness there exist an implementation of a Context Framework for Symbian S60 devices. It provides a possibility for exchanging the contexts inside the device between the client applications of the local Context Framework. The main contribution of this thesis is to design and implement an enhancement to the S60 Context Framework for providing possibility to exchange context over device boundaries. Using the implemented Context Exchange System, the context exchange is neither depending on the type of the context nor the type of the client. In addition, the clients and the contexts can reside on any interconnected device. The usage of the system is independent of the programming language since in addition to using only Symbian C++ function interfaces it can also be utilized using XML scripts. The Meeting Sniffer application, which uses the Context Exchange System, was also developed in this work. Using this application, it is possible to recognize a meeting situation and suggest device profile change to a user.