31 resultados para Web, Application, WebApp, Ionic, Angular, SPA
Resumo:
Diplomityössä on kehitetty websovelluksena toteutettavan ilmastolaskuripalvelun hiilidioksidipäästöjen laskentamoduulit, joiden avulla toimistot ja yleisötapahtumat voivat arvioida omasta toiminnastaan syntyviä hiilidioksidipäästöjä sähkönkulutuksen, lämmönkulutuksen, matkustamisen, kuljetusten ja paperin kulutuksen osalta. Tavoitteena oli kehittää ilmastolaskurista mahdollisimman helppokäyttöinen ja kohderyhmälle hyödyllinen websovellus. Työn kirjallisuusosiossa käsitellään toimistojen ja yleisötapahtumien ympäristövaikutuksia etenkin ilmastonmuutoksen näkökulmasta. Toimistot ja yleisötapahtumat vaikuttavat ilmastonmuutokseen pääasiassa kiinteistöjen sähkön- ja lämmönkulutuksen sekä liikenteen energiankulutuksesta syntyvien hiilidioksidipäästöjen muodossa. Rakennusten energiankulutuksen ja liikenteen yhteys kansalliseen CO2-päästötaseeseen sekä päästöjenvähennystavoitteisiin on merkittävä päästökauppadirektiivin sovellusalan ulkopuolella. Lisäksi tarkastellaan paino- ja paperituotteiden elinkaaren aikaisia ympäristövaikutuksia energiankulutuksen kannalta, sillä paperi on toimistojen ja usein myös tapahtumien merkittävin yksittäinen materiaalivirta. Ilmastolaskuriin kuuluvien hiilidioksidipäästöjen laskentamoduulien kehittämisessä pyrittiin huomioimaan mahdollisimman pitkälle käyttäjien tarpeet ja tiedonsaantimahdollisuudet. Ilmastolaskuri suunniteltiin toimistojen ja yleisötapahtumien ympäristövaikutuksia käsittelevän tutkimustiedon, ilmastolaskuriprojektissa toteutetun esimarkkinakyselyn tulosten, käyttäjähaastatteluista saadun palautteen sekä keskeisesti suunnitteluprosessissa mukana olleen asiantuntijaryhmän antamien kehitysehdotusten perusteella. Työssä on esitetty ilmastolaskurisovelluksen laadulliset kriteerit, tekninen vaatimusmäärittely sekä hiilidioksidipäästöjen laskentaosuuden toteutussuunnitelma, joka sisältää laskentamoduulien käyttöliittymämallit sekä päästölaskentaan liittyvät hiilidioksidipäästökertoimet, oletusarvot, päästölaskentakaavat ja huomautukset.
Resumo:
Useimmiten www-sovellusten käyttöliittymien rakentamiseen käytetään ohjelmistokehyksiä. Www-sovelluskehys voidaan valita lukuisista valmiista vaihtoehdoista. Valinta on kuitenkin ongelmallista. Vaikka hyviä vaihtoehtoja on paljon, www-sovelluskehykset ovat parhaimmillaan vain tietyissä tilanteissa. Tämän työn tavoitteena oli löytää keino vertailla www-sovelluskehyksiä. Menetelmän haluttiin olevan kustannustehokas. Työssä hyödynnettiin kirjallisuudesta löytyviä ohjeita ohjelmistokomponenttien ja työkalujen valintaan. Ohjeiden avulla valittiin www-sovelluskehyksien vertailuun sopivia arviointikriteerejä. Arviointikriteerien määrittelyä varten tutkittiin ohjelmistokehysten ja www-sovelluskehysten vaatimuksia. Ohjeiden avulla suoritettiin myös vertailu käytännössä. Työn tuloksena syntyneitä www-sovelluskehysten vaatimuksia ja arviointikriteerejä voidaan käyttää suoraan vertailuissa alustasta riippumatta. Tulosten avulla voidaan vähentää www-sovelluskehysten valintaan tarvittavan työn määrää. Työhön sisältyneen vertailun suorittamiseen kului kohtuullinen määrä aikaa, ja sillä kyettiin tunnistamaan eroja www-sovelluskehysten välillä.
Resumo:
Harjoitustöiden vertaisarvioinnissa opiskelijat tarkastavat toistensa töitä ja antavat niistä palautteen annettujen ohjeiden mukaan. Yleensä opiskelijoille annetaan tätä tehtävää tukemaan tietty joukko arviointikriteereitä, joiden osalta työtä ainakin on kommentoitava. Vertaisarviointi voi antaa opiskelijoille monipuolisempaa palautetta kuin ilman sitä olisi mahdollista, mahdollisuuden tehtävien vaihtoehtoisiin ratkaisuihin tutustumiseen sekä kokemusta ongelmanratkaisun analyyttisestä ja kriittisestä tarkastelusta. Lisäksi vertaisarviointi voi tukea opettajien työtä helpottamalla riittävän palautteen antamista opiskelijoille ja antamalla jonkinlaista kuvaa opiskelijoiden näkemyksistä tehtävän aihealueeseen liittyen. Tämän työn tavoitteena on selvittää, mitä mainituista vertaisarviointiin liitetyistä hyödyistä voidaan todellisuudessa saavuttaa ohjelmointipainotteisilla kursseilla. Ohjelmointikurssin opiskelijat arvioivat kurssiin kuuluvien harjoitustöiden yhteydessä toistensa ratkaisuja yhteen tehtävistä. Opiskelijoille suunnatulla kyselyllä pyritään kartoittamaan, kuinka hyvin vertaisarvioinnille asetetut tavoitteet toteutuvat. Kokemuksia opettajan näkökulmasta selvitetään haastattelujen avulla. Testauksen toteutuksessa käytetään verkkosovellusta, johon opiskelijat tallentavat omat työnsä, josta he lataavat itselleen määrätyt työt arvioitavaksi, johon he tallentavat arvionsa ja jonka kautta he lopulta saavat palautteen omasta työstään.
Resumo:
Kuormitustestaus on osa web-sovellusten kehitystä ja käyttöönottoa. Sillä varmistetaan sovellusten toimivuus ennalta määrätyn kuorman alla. Microsoft Office SharePoint Server 2007 (MOSS) on palvelintuote nykyaikaisten web-sovellusten luontiin ja ylläpitoon. Työssä vertaillaan kahta eri uormitustestaustyökalua: SilkPerformer 2008 ja Visual Studio Team System 2008 Test Edition ja valitaan MOSS – web-sovelluksille paremmin sopiva työkalu. Työssä vertaillaan työkaluja niiden ominaisuuksien perusteella sekä suorittamalla kuormitustestausta testausta varten luodulle MOSS – web-sovellukselle. Vaikuttavien tekijöiden perusteella työkaluja arvioidaan ja tämän perusteella saadaan tulos vertailulle. Työn tuloksena Visual Studio Team System 2008 Test Edition sopii paremmin MOSS – web-sovelluksen kuormitustestausvälineeksi. Vertailussa kuitenkin havaittiin, että työkalut ovat melko tasavertaisia, ja käytännön tilanteesta riippuu, kumpi sopii paremmin. Tämä työ auttaa valinnan teossa.
Resumo:
Tiedostojen palautus erilaisissa kursseissa yleistyy. Harjoituksia ja harjoitustöitä palautetaan erilaisissa tiedostomuodoissa, yleensä sähköpostin välityksellä. Oppilaat saattavat palauttaa tiedostoja väärin nimettynä tai tiedostotyyppi on väärä, joka hankaloittaa tarkastusta. Oppilas määrän ollessa suuri, tulee palautuksia myös paljon, joka täyttää tarkastajan sähköpostin. Tämän kandidaatintyön tarkoitus on selventää mitkä ohjelmointikielet kävisivät verkkopohjaisen palautusjärjestelmän toteutukseen. Verkkopohjainen palautusjärjestelmä toteutetaan kirjallisuudesta löytyvän materiaalin perusteella.
Resumo:
Oppimistyyleillä määritellään opiskelijan mieltymykset tavoissa, joilla hän vastaanottaa ja omaksuu helpoiten uutta tietoa. Opiskelijan henkilökohtaiseen oppimistyyliin vaikuttavat opiskelijan luonteenpiirteet ja ominaisuudet. Uusien asioiden oppiminen on helpompaa, jos opettajan käyttämä opetustyyli on ainakin osittain yhteneväinen opiskelijan oppimistyylin kanssa. Tässä diplomityössä kehitetty verkkosovellus on tarkoitettu opiskelijoiden käyttöön heidän oppimistyyliensä selvittämiseksi. Opiskelijat rekisteröityvät sovelluksen käyttäjiksi ja antavat samalla itsestään taustatietoja. Tämän jälkeen opiskelijat tekevät sovelluksessa oppimistyylit selvittävän testin. Taustatiedot ja testitulokset tallennetaan tietokantaan. Testituloksen ja oppimistyyleistä tarjolla olevien lisätietojen avulla opiskelijat voivat kehittää omia opiskelutapojaan. Testi on mahdollista tehdä myöhemmin uudelleen, ja tällöin opiskelijat näkevät omassa oppimistyylissään tapahtuneen kehityksen. Opettajat voivat käyttää sovellusta opiskelijoiden testituloksista muodostettavien tilastojen seuraamiseen. Näin opettajilla on mahdollisuus nähdä mitä oppimistyyliä heidän pitämilleen kursseille osallistuvat opiskelijat edustavat. Tämä tieto auttaa opettajia opetussuunnitelman teossa. Sovelluksella voidaan myös muodostaa opiskelijoiden taustatietoihin perustuvia tilastoja tutkimustarkoituksia varten.
Resumo:
Testauksesta on tullut oleellinen, yhä tärkeämpi sovelluskehitysprojektien osa. Sovelluksilta vaaditaan luotettavuutta kaikilla niiden toiminnan osa-alueilla. Suorituskykyyn liittyvät asiat ovat keskeinen osa näitä vaatimuksia erityisesti, kun kyse on Internetissä toimivista www-sovelluksista. Aluksi työssä esitellään erilaisia sovellusten testausmenetelmiä. Siinä kerrotaan yleisimmistä menetelmistä, joiden avulla pyritään sovelluksista löytämään vääränlaiset toimintatavat suhteessa niiden määriteltyihin toimintatapoihin. Testauksen tulosten avulla pystytään keskittymään oikeisiin kohtiin sovellusten toiminnan korjaamisessa. Työssä analysoidaan www-sovellusten rakennetta yleisen kerrosarkkitehtuurin eri kerrosten ominaisuuksia ja niihin sisältyviä keskeisimpiä sovellusten suorituskykyyn vaikuttavia tekijöitä kuvaillen. Näiden, www-sovellusten eri osien suorituskykyyn vaikuttavien ominaisuuksien perusteella esitellään esimerkkejä, kuinka Java-kieleen perustuvien www-sovellusten suorituskykyä voidaan parantaa. Lisäksi työssä kuvataan, kuinka erityisesti ilmaisella Apache JMeter-sovelluksella voidaan Java-kieleen perustuvien www-sovellusten suorituskykyä mitata. Työn tuloksena esitellään lopuksi suorituskyvyn testaus- ja parannusprosessi. Sen tarkoitus on selkeyttää erityisesti Java-kieleen perustuvien www-sovellusten suorituskyvyn testauksessa ja parannuksessa huomioon otettavia asioita.
Resumo:
Poster at Open Repositories 2014, Helsinki, Finland, June 9-13, 2014
Resumo:
Presentation at Open Repositories 2014, Helsinki, Finland, June 9-13, 2014
Resumo:
Presentation at Open Repositories 2014, Helsinki, Finland, June 9-13, 2014
Resumo:
One of the main challenges in Software Engineering is to cope with the transition from an industry based on software as a product to software as a service. The field of Software Engineering should provide the necessary methods and tools to develop and deploy new cost-efficient and scalable digital services. In this thesis, we focus on deployment platforms to ensure cost-efficient scalability of multi-tier web applications and on-demand video transcoding service for different types of load conditions. Infrastructure as a Service (IaaS) clouds provide Virtual Machines (VMs) under the pay-per-use business model. Dynamically provisioning VMs on demand allows service providers to cope with fluctuations on the number of service users. However, VM provisioning must be done carefully, because over-provisioning results in an increased operational cost, while underprovisioning leads to a subpar service. Therefore, our main focus in this thesis is on cost-efficient VM provisioning for multi-tier web applications and on-demand video transcoding. Moreover, to prevent provisioned VMs from becoming overloaded, we augment VM provisioning with an admission control mechanism. Similarly, to ensure efficient use of provisioned VMs, web applications on the under-utilized VMs are consolidated periodically. Thus, the main problem that we address is cost-efficient VM provisioning augmented with server consolidation and admission control on the provisioned VMs. We seek solutions for two types of applications: multi-tier web applications that follow the request-response paradigm and on-demand video transcoding that is based on video streams with soft realtime constraints. Our first contribution is a cost-efficient VM provisioning approach for multi-tier web applications. The proposed approach comprises two subapproaches: a reactive VM provisioning approach called ARVUE and a hybrid reactive-proactive VM provisioning approach called Cost-efficient Resource Allocation for Multiple web applications with Proactive scaling. Our second contribution is a prediction-based VM provisioning approach for on-demand video transcoding in the cloud. Moreover, to prevent virtualized servers from becoming overloaded, the proposed VM provisioning approaches are augmented with admission control approaches. Therefore, our third contribution is a session-based admission control approach for multi-tier web applications called adaptive Admission Control for Virtualized Application Servers. Similarly, the fourth contribution in this thesis is a stream-based admission control and scheduling approach for on-demand video transcoding called Stream-Based Admission Control and Scheduling. Our fifth contribution is a computation and storage trade-o strategy for cost-efficient video transcoding in cloud computing. Finally, the sixth and the last contribution is a web application consolidation approach, which uses Ant Colony System to minimize the under-utilization of the virtualized application servers.
Resumo:
Ohjelmiston suorituskyky on kokonaisvaltainen asia, johon kaikki ohjelmiston elinkaaren vaiheet vaikuttavat. Suorituskykyongelmat johtavat usein projektien viivästymisiin, kustannusten ylittymisiin sekä joissain tapauksissa projektin täydelliseen epäonnistumiseen. Software performance engineering (SPE) on ohjelmistolähtöinen lähestysmistapa, joka tarjoaa tekniikoita suorituskykyisen ohjelmiston kehittämiseen. Tämä diplomityö tutkii näitä tekniikoita ja valitsee niiden joukosta ne, jotka soveltuvat suorituskykyongelmien ratkaisemiseen kahden IT-laitehallintatuotteen kehityksessä. Työn lopputuloksena on päivitetty versio nykyisestä tuotekehitysprosessista, mikä huomioi sovellusten suorituskykyyn liittyvät haasteet tuotteiden elinkaaren eri vaiheissa.
Resumo:
Ohjelmoinnin opettaminen yleissivistävänä oppiaineena on viime aikoina herättänyt kiinnostusta Suomessa ja muualla maailmassa. Esimerkiksi Suomen opetushallituksen määrittämien, vuonna 2016 käyttöön otettavien peruskoulun opintosuunnitelman perusteiden mukaan, ohjelmointitaitoja aletaan opettaa suomalaisissa peruskouluissa ensimmäiseltä luokalta alkaen. Ohjelmointia ei olla lisäämässä omaksi oppiaineekseen, vaan sen opetuksen on tarkoitus tapahtua muiden oppiaineiden, kuten matematiikan yhteydessä. Tämä tutkimus käsittelee yleissivistävää ohjelmoinnin opetusta yleisesti, käy läpi yleisimpiä haasteita ohjelmoinnin oppimisessa ja tarkastelee erilaisten opetusmenetelmien soveltuvuutta erityisesti nuorten oppilaiden opettamiseen. Tutkimusta varten toteutettiin verkkoympäristössä toimiva, noin 9–12-vuotiaille oppilaille suunnattu graafista ohjelmointikieltä ja visuaalisuutta tehokkaasti hyödyntävä oppimissovellus. Oppimissovelluksen avulla toteutettiin alakoulun neljänsien luokkien kanssa vertailututkimus, jossa graafisella ohjelmointikielellä tapahtuvan opetuksen toimivuutta vertailtiin toiseen opetusmenetelmään, jossa oppilaat tutustuivat ohjelmoinnin perusteisiin toiminnallisten leikkien avulla. Vertailututkimuksessa kahden neljännen luokan oppilaat suorittivat samankaltaisia, ohjelmoinnin peruskäsitteisiin liittyviä ohjelmointitehtäviä molemmilla opetus-menetelmillä. Tutkimuksen tavoitteena oli selvittää alakouluoppilaiden nykyistä ohjelmointiosaamista, sitä minkälaisen vastaanoton ohjelmoinnin opetus alakouluoppilailta saa, onko erilaisilla opetusmenetelmillä merkitystä opetuksen toteutuksen kannalta ja näkyykö eri opetusmenetelmillä opetettujen luokkien oppimistuloksissa eroja. Oppilaat suhtautuivat kumpaankin opetusmenetelmään myönteisesti, ja osoittivat kiinnostusta ohjelmoinnin opiskeluun. Sisällöllisesti oppitunneille oli varattu turhan paljon materiaalia, mutta esimerkiksi yhden keskeisimmän aiheen, eli toiston käsitteen oppimisessa aktiivisilla leikeillä harjoitellut luokka osoitti huomattavasti graafisella ohjelmointikielellä harjoitellutta luokkaa parempaa osaamista oppitunnin jälkeen. Ohjelmakoodin peräkkäisyyteen liittyvä osaaminen oli neljäsluokkalaisilla hyvin hallussa jo ennen ohjelmointiharjoituksia. Aiheeseen liittyvän taustatutkimuksen ja luokkien opettajien haastatteluiden perusteella havaittiin koulujen valmiuksien opetussuunnitelmauudistuksen mukaiseen ohjelmoinnin opettamiseen olevan vielä heikolla tasolla.
Resumo:
The process of developing software is a complex undertaking involving multiple stakeholders. While the intentions of these parties might vary to some extent, the ultimate goal can be seen as a satisfactory product. Lean and agile software development practices strive toward this and they place customer contentment as one of the highest aims of the process. An important aspect of any development process is the act of innovation. Without it, nothing progresses and the whole process is unnecessary. As a target domain expert, the customer is an important part of effective innovation. Problems arise, however, when the customer is not actively taking part in the activities. Lack of familiarity with software development can easily cause such issues. Unfortunately, the amount of research conducted on product innovation is unimpressive. This makes it difficult to formulate a recommended approach on stimulating the customer and encouraging a more active participation. Ultimately, a small set of high-level guidelines were identified from the available literary resources for inducing innovation. To conclude, this thesis presents the findings made during the development of a small web application and compares them to the aforementioned literature findings. While the guidelines seem to provide promising results, further empirical research is needed to attain more significant conclusions.
Resumo:
In this thesis, tool support is addressed for the combined disciplines of Model-based testing and performance testing. Model-based testing (MBT) utilizes abstract behavioral models to automate test generation, thus decreasing time and cost of test creation. MBT is a functional testing technique, thereby focusing on output, behavior, and functionality. Performance testing, however, is non-functional and is concerned with responsiveness and stability under various load conditions. MBPeT (Model-Based Performance evaluation Tool) is one such tool which utilizes probabilistic models, representing dynamic real-world user behavior patterns, to generate synthetic workload against a System Under Test and in turn carry out performance analysis based on key performance indicators (KPI). Developed at Åbo Akademi University, the MBPeT tool is currently comprised of a downloadable command-line based tool as well as a graphical user interface. The goal of this thesis project is two-fold: 1) to extend the existing MBPeT tool by deploying it as a web-based application, thereby removing the requirement of local installation, and 2) to design a user interface for this web application which will add new user interaction paradigms to the existing feature set of the tool. All phases of the MBPeT process will be realized via this single web deployment location including probabilistic model creation, test configurations, test session execution against a SUT with real-time monitoring of user configurable metric, and final test report generation and display. This web application (MBPeT Dashboard) is implemented with the Java programming language on top of the Vaadin framework for rich internet application development. The Vaadin framework handles the complicated web communications processes and front-end technologies, freeing developers to implement the business logic as well as the user interface in pure Java. A number of experiments are run in a case study environment to validate the functionality of the newly developed Dashboard application as well as the scalability of the solution implemented in handling multiple concurrent users. The results support a successful solution with regards to the functional and performance criteria defined, while improvements and optimizations are suggested to increase both of these factors.