Matemaattis-luonnontieteellinen tiedekunta

 

Nyligen publicerat

  • Korpua, Aki (Helsingfors universitet, 2008)
    Tässä työssä arvioidaan kenttätutkimusaineiston hyödyntämisen etuja käyttöliittymäsuunnittelussa. Tulokset perustuvat kahden samasta ohjelmasta eri tavalla suunnitellun käyttöliittymän arviointiin. Käytettävissä on aikaisemmin suunniteltu käyttöliittymä ja tässä työssä suunniteltava uusi käyttöliittymä, jonka suunnittelussa hyödynnetään kenttätutkimuksesta saatua aineistoa. Aluksi tässä työssä käydään läpi kenttätutkimuksen perusteet, tehdään suunnitelma kenttätutkimuksesta ja käydään tekemässä käyttäjien työtiloissa kenttätutkimusta kontekstuaalisen haastattelun menetelmän mukaisesti. Seuraavaksi käydään läpi käyttöliittymäsuunnittelun teoriaa, esitellään tässä työssä käytettävä GDDsuunnittelumenetelmä ja tehdään sen tarvitsemat tavoitepohjaiset käyttötapaukset kenttätutkimusaineiston pohjalta. Tämän jälkeen simuloidaan uusi käyttöliittymä käyttäen ainoastaan kenttätutkimuksesta saatua aineistoa. Lopuksi simuloitua ja aiemmin suunniteltua käyttöliittymää arvioidaan oikeilla käyttäjillä läpikäyntipalavereissa ja analysoidaan tulokset. Tuloksissa osoitetaan miten todellisten käyttötilanteiden simulointi tuottaa erilaisia käyttöliittymäratkaisuja verrattuna toimintojen toteuttamiseen. Käyttöliittymäratkaisujen ongelmien pohjalta todetaan, että on hyvin tärkeää ymmärtää käyttäjien todellinen työprosessi. Pelkästään kaikkien tarpeellisten toimintojen toteuttaminen ei takaa hyvää käyttöliittymää. On tärkeää miten toiminnot ja tietosisältö on aseteltu käyttöliittymään. Simuloinnissa ne suunnitellaan käyttöliittymään käyttäjien työn kannalta paremmassa järjestyksessä. Tämä nopeuttaa käyttäjien työskentelyä ja parantaa opittavuutta, koska tietoa ja toiminnallisuutta ei tarvitse etsiä käyttöliittymästä. Tekstin lopussa arvioidaan tässä työssä käytettyjen menetelmien soveltamista käytäntöön käyttöliittymäsuunnitteluprosessiin käytetyn ajan ja läpikäyntipalaverien analyysin perusteella.
  • Suominen, Kalle (Helsingfors universitet, 2013)
    Business and operational environments are becoming more and more frenetic, forcing companies and organizations to respond to changes faster. This trend reflects to software development as well, IT units have to deliver needed features faster in order to bring business benefits quicker. During the last decade, agile methodologies have provided tools to answer to this ever-growing demand. Scrum is one of the agile methodologies and it is widely used. It is said that in large-scale organizations Scrum implementation should be done using both bottom-up and top-down approaches. In big organizations software systems are complicated and deeply integrated with each other meaning that no one team can handle whole software development processes alone. Individual teams want to start to use Scrum before whole organization is ready to support it. This leads to a situation where one team is applying agile principles while most of the other teams and organizations around are continuing with old established non-agile practices. In these cases bottom-up approach is the only option. When the top-down part is missing, are the benefits also lost? In this case study, the target is to find out, did it bring benefits when implementing Scrum using only bottom-up approach. In the target unit, which was part of the large organization, Scrum based practices were implemented to replace earlier waterfall based approach. Analyses for the study were made on data, which was collected by survey and from a requirement management tool. This tool was in use during the old and new ways of working. Expression Scrum based practices are used because all of the fine flavours of Scrum could not be able to be implemented because of surrounded non-agile teams and official non-agile procedures. This was also an obstacle when trying to implement Scrum as well as it could be possible. Most of the defined targets given to the implementation of Scrum based practices were achieved and other non-targeted benefit came out. In this context we can conclude that benefits were gained. The top-down approach absence clearly made the implementation more difficult and incomplete; however, it didn't prevent to get benefits. The target unit also faced earlier mentioned difficulties in using Scrum based practices while other units around used non-agile processes. The lack of good established numerical estimations of requirements' business values lowered the power of the Scrum on a company level, because these values were relative and subjective opinions of the business representatives, In the backlog prioritization, when most of the items are so called high priority ones there is no way to evaluate which one is more valuable and prioritization is more or less a lottery
  • Vanninen, Pekka (Helsingfors universitet, 2013)
    Yritysohjelmistoja tarjotaan nykyään myös sovelluspalveluna verkossa etenkin pienille ja keskisuurille yrityksille. Syitä ovat IT-ympäristön muuttuminen, ohjelmistojen kypsyminen tuotteiksi ja kustannustehokkuuden tavoittelu ohjelmistojen toimittamisessa ja ylläpidossa. Ohjelmistojen kehittyminen ja ympäristön muutos ovat mahdollistaneet uudet toimitusmallit, joiden avulla voidaan toteuttaa ohjelmistojen entistä laajempi käytettävyys ja uudet ansaintamallit. Sovelluspalvelut perustuvat pilvipalveluihin, joiden olemassaolon mahdollistaa verkkoympäristön kehitys ja internetin laaja käytettävyys. Sovelluspalvelut ovat käytettävissä eri päätelaitteilta lähes ilman aikarajoituksia. Sovelluspalveluohjelmiston kustannustehokkuus perustuu saman ohjelmiston tarjoamiseen usealle asiakkaalle. Sovelluspalvelut mahdollistavat uuden ohjelmiston käyttöönoton ilman käytön aloittamisen kustannuksia ja käyttöönoton viiveitä. Ohjelmiston yhteiskäyttöä asiakkaiden kesken kutsutaan monivuokraajuudeksi. Monivuokraajuuden avaintekijät ovat ohjelmiston muunneltavuus, turvallisuus, skaalautuvuus ja suorituskyky. Keskeinen osa monivuokraajuuden toteuttamisessa on tietojen tallentaminen asiakkaittain eli vuokraajakohtaisesti. Tietokannassa on pystyttävä käsittelemään vuokraajatieto tehokkaasti. Tässä työssä on selvitetty yritysohjelmistojen toimittamisen muuttumista ja nykyistä ohjelmistojen toimitusmallia ja tarkasteltu mahdollisia tapoja olemassa olevan ohjelmiston muuttamiseksi sovelluspalvelumallin mukaiseksi. Sovelluspalveluohjelmistojen monivuokraajuusmalli on esitelty. Lähemmän tarkastelun kohteena oli Progress OpenEdge sovelluskehitysvälineillä toteutettu asiakas-palvelin-arkkitehtuurin mukainen Windows-työasemaohjelmisto. Ohjelmistoon tarvittavia muutoksia monivuokraajuuden toteuttamiseksi tietokannassa on selvitetty ja saavutettavia hyötyjä on arvioitu asiakkaan sovellusarkkitehtuurin strategisen kehittämisen tueksi. Monivuokraajakäsittely tietokantatasolla on lupaava ratkaisu yritysohjelmistojen edelleen kehittämiseen, resurssien säästämiseksi ja ohjelmistotuen työmäärän vähentämiseen.
  • Nikunlassi, Arvi (Helsingfors universitet, 2013)
    Internetin ja tietotekniikan yleistymisen vuoksi ohjelmistokehitys painottuu yhä enemmän yhteistyöhön ja interaktioon. Suunnitelmakeskeisyydestä ollaan siirrytty kohti ketterämpiä menetelmiä, joissa muutoksen ja kommunikaation tärkeys on tiedostettu. Asiakas ja asiakassuhde on erittäin merkittävä komponentti ohjelmistoprojektin onnistumisessa. Nykyaikaisissa ketterissä ohjelmistokehitystiimeissä asiakkaan edustaja on tiiviisti yhteydessä kehittäjiin palaverien tai muun läsnäolon kautta. Asiakkaan tiivis yhteys kehitykseen on keino tehostaa kehitystä ja saada tyydyttävämpiä tuotteita. Vähemmälle huomiolle on kuitenkin jäänyt toteutetun asiakassuhteen vaikutus kaikille projektin osapuolille. Tässä tutkielmassa tarkastellaan ohjelmistokehitystä asiakkaan ja asiakassuhteen näkökulmasta. Aluksi analysoidaan ohjelmistokehityksen peruspiirteitä ja esitellään yleisimpiä ketteriä menetelmiä. Tämän jälkeen esitellään erilaisia tutkimuksia asiakassuhteesta ja analysoidaan niiden tuloksia. Lopuksi luodaan yhteenveto havaituista ongelmista ja esitetään niihin ratkaisuehdotuksia.
  • Lindén, Joel (Helsingfors universitet, 2012)
    Mallintarkastus on järjestelmien verifiointiin käytetty menetelmä. Verifioinnilla tarkoitetaan järjestelmän mallin systemaattista läpikäyntiä, jossa tarkastetaan toteuttaako järjestelmän malli sille esitetyt vaatimusmäärittelyt. Mallintarkastuksen pääperiaatteet kehitettiin 1970-luvun lopulla ja 1980-luvun alkupuolella ja sitä käytetään laajalti teollisuudessa erilaisiin verifiointi-ongelmiin. Mallintarkastuksen keskeisenä ongelmana pidetään mallien läpikäyntiin liittyvän tilaavaruuden räjähdysmäistä kasvua, jota pyritään hallitsemaan erilaisin heuristisin menetelmin. Mallintarkastusta voidaan käyttää nykyään yhä laajempien mallien verifiointiin, mutta tilaavaruuden kasvu on edelleen keskeisin ongelma mallintarkastuksen käytössä. Tässä tutkielmassa esitellään mallintarkastuksen teoriaa ja tila-avaruuden kasvua ehkäiseviä heuristisia menetelmiä sekä käytännön sovelluksena SPIN- ja SMV-mallintarkastajien vertailua erilaisten mallien verifiointiin ja Paxos-protokollan mallinnukseen ja verifiointiin. Lopputuloksena on Promela-kielellä toteutettu malli Paxos-protokollasta, joka verifioitiin onnistuneesti määriteltyjen turvallisuus- ja elävyysvaatimusten osalta.
  • Qian, Yuchen (Helsingfors universitet, 2013)
    Collaborative applications like online markets, social network communities, and P2P file sharing sites are in popular use these days. However, in an environment where entities have had no interaction before, it is difficult to make trust decisions on a new transacting partner. To predict the quality of further interactions, we need a reputation system to help establish trust relationships. Meanwhile, motivated by financial profit or personal gain, attackers emerge to manipulate the reputation systems. An attacker may aim to slander others, promote oneself, or undermine the whole reputation system. Vulnerable components in a reputation system might bring in potential threats which might be taken advantage of by attackers. In order to give an accurate reputation estimate and better user satisfaction, a reputation system should properly reflect the behavior of the participants and should be difficult to manipulate. To resist attacks, there are various defense mechanisms, for example, mitigating the generation and spreading of false rumors, reasonably assigning an initial reputation value to newcomers, and gradually discounting old behavior. However, each defense mechanism has limitations. There is no perfect defense mechanism which can resist all attacks in all environments without any trade-offs. As a result, to make a reputation system more robust, we need to analyze its vulnerabilities and limitations, and then utilize the corresponding defense mechanisms into it. This thesis conducts a literature survey on reputation systems, inherent vulnerabilities, different kinds of attack scenarios, and defense mechanisms. It discusses the evolution of attacks and defense mechanisms, evaluates various defense mechanisms, and proposes suggestions on how to utilize defense mechanisms into reputation systems.
  • Martinmäki, Petri (Helsingfors universitet, 2013)
    The main purpose of this master's thesis is to present experiences of test automation in an industrial case, and to make recommendations of the best practices for the case. The recommendations are based on successful test automation stories found from the existing literature. The main issues that are hindering test automation seem to be similar in the case example and in the literature. The cost of implementation and maintenance combined with unrealistic expectations are perceived in almost every project. However, in the most successful projects, they have put a lot of effort to plan and implement maintainable sets of automatic tests. In conclusion, the evidence from the literature shows that successful test automation needs investments - especially in the beginning of the project. A few specific best practices are adapted to the case project, and presented in the form that they could be applied.
  • Tuohenmaa, Timi (Helsingfors universitet, 2013)
    Tutkielmassa perehdyttiin hajautetun HLA-simulointiarkkitehtuurin suorituskykyyn reaaliaikaisen simulaattorin toteutuksen kannalta. Aluksi esitellään erilaisia simulaation tyyppejä ja niihin liittyviä simulaattorijärjestelmien toteutuksia. Sen jälkeen kuvataan tarkemmin tähän tutkielmaan valitun HLA-simulointiarkkitehtuurin toimintamallia sekä sen erityispiirteitä. Työssä kerrotaan minkälaisia vaatimuksia reaaliaikaisuus ja hajautettavuus simulointijärjestelmälle aiheuttavat ja miten HLA pystyy näihin kohtiin vastaamaan. Koska HLA ei tarjoa yksiselitteisiä vastauksia moniin kohtiin, tutkielma esittelee vaihtoehtoja ja syitä valita mitäkin niistä. Joihinkin kohtiin etsitään myös kiertoteitä tai perustellaan miksi ongelma voidaan jopa jättää ratkaisematta tietynlaisissa käyttötapauksissa. Tutkielmassa esitellään myös suorituskykymittauksia, joita voi hyödyntää valitessa toteutusmalleja ja etsiessä olemassa olevan simulaattorin pullonkauloja. Case-tapauksena esitellään merenkulkusimulaattori, jossa kehitystyössä hyödynnetään tutkielmassa selvitettyjä ongelmakohtia ja hyödynnetään joitain toteuttamismalleja. ACM Computing Classification System (CCS): C.2.4 [Distributed Systems], I.6.3 [Applications], I.6.7 [Simulation Support Systems], I.6.8 [Types of Simulation]
  • Du, Mian (Helsingfors universitet, 2012)
    Pattern-based Understanding and Learning System (PULS) can be considered as one key component of a large distributed news surveillance system. It is formed by the following three parts, 1. an Information Extraction (IE) system running on the back-end, which receives news articles as plain text in RSS feeds arriving continuously in real-time from several partner systems, processes and extracts information from these feeds and stores the information into the database; 2. a Web-based decision support (DS) system running on the front-end, which visualizes the information for decision-making and user evaluation; 3. both of them share the central database, which stores the structured information extracted by IE system and visualized by decision support system. In the IE system, there is an increasing need to extend the capability of extracting information from only English articles in medical and business domain to be able to handle articles in other languages like French, Russian and in other domains. In the decision support system, several new ways of Information Visualization and user evaluation interfaces are required by users for getting better decision support. In order to achieve these new features, a number of approaches including Information Extraction, machine learning, Information Visualization, evolutionary delivery model, requirements elicitation, modelling, database design approach and a variety of evaluation approaches have been investigated and adopted. Besides, various programming languages such as Lisp, Java, Python, JavaScript/Jquery, etc. have been used. More importantly, appropriate development process has been followed. This thesis reports on the whole process followed to achieve the required improvements made to PULS.
  • Katainen, Riku (Helsingfors universitet, 2013)
    After the Human Genome Project completed the mapping of human DNA sequence in 2001, a new era began in biological and medical research. The genetic basis of various diseases, such as cancer, could be studied with higher precision than ever before. The map of human genome enabled next-generation sequencing (NGS) techniques and not only DNA sequencing got faster and cheaper to perform, also the amount of data started to increase exponentially. The field of bioinformatics, which combines both computer and life sciences, got a great challenge to handle all the data available and to dig out relevant information out of it. Various tools with heavily enhanced or completely new kinds of algorithms were developed for the demanding task of the analysis of NGS data, which are in the focus of this thesis. For the search of cancer causing mutations, NGS methods enable genome scale studies with the precision of a single molecule. However, the spectacular scale and preciseness of the data offer another challenge – how to distinguish trivial data from the non-trivial, and furthermore, how to separate reliable data from erroneous. The raw data must be put through a pipeline of various processing tools, which organize and humanize the data with the help of the map of human genome. After data processing, the data is feasible for the actual cancer specific analysis, where causative mutations can be hunted down. For this purpose, I have developed an analysis and visualization software, Rikurator, which provides various features and tools to handle the NGS data. Rikurator is designed for comparative analysis of dozens of cancer samples, quality filtering, controlling and visualization to name a few. In addition to tools in data processing pipeline, this thesis will describe features and implementation of Rikurator.
  • Chao, Chen (Helsingfors universitet, 2012)
    In recent years, content-based Publish/Subscribe (pub/sub) has become a popular paradigm to decouple content producers and consumers for Internet-scale content services. Many real applications show that the content workloads frequently follow very skewed distribution, and incur unbalanced workloads. To balance the workloads, the current content-based Publish/Subscribe systems normally adopt a migration scheme (Mis) to move (a subset of) subscription filters from overloaded brokers to underloaded brokers. In this way, the publications that successfully match the moved filters are then o oaded, leading to balanced workloads. Unfortunately, the Mis scheme cannot reduce the overall matching workloads. In the worse case, suppose that all brokers su er from heavy workloads. Mis cannot find available brokers to o oad the heavy workloads of those overloaded brokers, and fail to balance the workloads of the overloaded brokers. To overcome the issue, we develop a set of novel load balancing algorithms, namely a similarity-based replication scheme (Sir). The novelty of Sir is that it not only balances the workloads of brokers but also reduces the overall workloads. Based on both simulation and emulation results, the extensive experiments verify that Sir can achieve much better performance than Mis, in terms of 43.10% higher entropy value (i.e., more balanced workloads) and 46.39% lower workloads.
  • Mäenpää, Hanna (Helsingfors universitet, 2013)
    The change from pre-descriptive 'waterfall' software process into iterative and incremental models has created a need for redefinition of software requirements engineering. Agile methodologies have emerged to support the paradigm shift by treating the symptoms: emphasizing change management and customer collaboration to embrace volatility of requirements and priorities whilst in development. However, it has been recognized that fast-paced agile development does not provide sufficient support for initial or long-term planning of the software product. Research and practitioner literature have started to address the need with the concept of a high-level definition of the software project's outcome: the software Product Vision. In this thesis, uncertainty in new product development is studied from the perspective of Innovation Management. As a vehicle for reducing uncertainty in software projects, the concept of an software Product Vision (reason for the project's existence) is chosen to be examined from the viewpoints of New Product Development and Software Engineering literature. The work describes sources of uncertainty in software projects and explains the effects of a mutually understood software Product Vision on software project performance and end-product acceptance. Key parameters for an interdisciplinary and unified software Product Vision are identified by studying four existing and one emergent Product Vision models. Finally, a new Product Vision framework (InnCa) is created based on semantic analysis. The framework's applicability on software projects in evaluated in three participatory action research -case studies. As a result, it is concluded that common parameters of a interdisciplinary 'Product Vision' can be identified. The framework created can be used to ideate, rapidly capture, iterate and analyze vague software ideas. It is applicable for sharing knowledge about the project's high-level goals amongst the project's stakeholders. However, it is not argued in this thesis that the framework could be used in all kinds of projects and circumstances. While uncertainty in software projects is a chaotic and complex phenomenon, no 'silver bullet' can address all situations.The topic of software Product Vision may prove grounds for further research, possibly leading to practical tools for assessing and quantifying uncertainty about goals during a software project's trajectory.
  • Väänänen, Mari (Helsingfors universitet, 2013)
    Vaatimusmäärittely on tärkeää ohjelmistoprojektin menestymiselle ja siinä esiintyvät ongelmat vaikuttavat negatiivisesti ohjelmiston laatuun. Vaatimusmäärittelyn tarkoituksena on selvittää kehitettävän ohjelmiston tarkoitus ja tavoitteet, ja se jakaantuu useaan vaiheeseen. Vaatimustenkartutusvaihe on näistä ensimmäinen, ja se on vaatimusmäärittelyn tiedonkeräämisvaihe, jossa tietoa kerätään erilaisista tietolähteistä. Vaatimustenkartutukseen on kehitetty monia erilaisia tekniikoita, joiden käyttö riippuu kartutettavan tiedon laadusta. Vaatimustenkartutustekniikoiden tarkoituksena on helpottaa vaatimustenkartutusprosessia. Eri kartutustekniikat poikkeavat toisistaan, joten jokaiseen tilanteeseen on aina valittava sopiva tekniikka. Vaatimusmäärittelyssä, ja myös vaatimustenkartutuksessa, on omat ongelmansa ja vaikeutensa, joten valitsemalla tilanteeseen parhaiten sopiva tekniikka näitä ongelmia voidaan vähentää. Mikään tekniikka ei kuitenkaan yksinään poista kaikkia ongelmia, joten parhain tulos saadaan aikaan käyttämällä samanaikaisesti useampaa vaatimustenkartutustekniikkaa.
  • Song, Xin (Helsingfors universitet, 2013)
    Social networking services (SNSs) bring a new dimension to social life that helps people to easily communicate with each other. As one of the representative products of SNSs, YouTube has gained in popularity since 2005. Today, YouTube is the most well-known video delivery service on the Internet. As a result, YouTube data analysis has become increasingly important for understanding the characteristics of online video sites, which is vital in developing efficient content distribution systems. In this thesis, we examine the characteristics of YouTube data. Our analysis is based on an empirical data gathered from the live YouTube service. In addition to the basic statistics, correlational statistics have been also conducted. The results of basic statistics show an overview of YouTube data and the correlational statistics display the relationship among users and videos. Furthermore, Friend-Commenter Ratio (FCR) and Shortest Responses Time (SRT) have been measured. To the best of our knowledge, this is the first time that these two new metrics are proposed and analyzed.
  • Suominen, Pirjo (Helsingfors universitet, 2013)
    Tämä pro gradu -tutkielma käsittelee opiskelualustojen käytettävyyttä olemassa olevien tutkimusten pohjalta. Tutkimuksista on mukaan valittu ne, joissa opiskelualustoja on käytetty korkea-asteen opetuksessa (yliopisto, ammattikorkeakoulu). Tutkielmassa kartoitetaan, onko opiskelualustojen käytettävyyttä tutkittu, miten sitä on tutkittu, mitä tutkimusmenetelmiä on käytetty ja mitä tutkimukset ovat paljastaneet käytettävyyden osatekijöistä. Tutkielmassa tarkastellaan käytettävyyden arviointimenetelmistä heuristista arviointia, käytettävyystestausta ja käytettävyyskyselyjä. Arviointikriteeristöistä käytetään Nielsenin heuristiikkalistaa Shneidermanin kahdeksaa kultaista sääntöä, QUIS- ja SUMI-kyselyjen käytettävyyden osatekijöitä sekä kansainvälistä laatustandardia ISO 9241-11. Valituista arviointikriteeristä on laadittu taulukko ja tutkittu sitten opiskelualustojen käytettävyyden tutkimuksia näitä osatekijöitä etsien. Valituissa tutkimuksissa on käytetty heuristista arviointia, tehtäväpohjaisia tekniikoita ja käytettävyyskyselyitä, ei kuitenkaan mukaan valittuja QUIS- tai SUMI-kyselyitä. Kyselytutkimusten suuri osuus on merkillepantavaa. Opiskelualustojen käytettävyyden tutkimuksissa käytetyimmiksi osa-tekijöiksi paljastuivat helppokäyttöisyys ja tehokkuus. Johtopäätökseni on, että opiskelualustojen käytettävyyttä ei ole tutkittu riittävästi. Myös käytettävyyden arviointimenetelmiä on käytetty hyvin kapea-alaisesti. Käytettävyyden osatekijöistä esiin nousi helppokäyttöisyys, jota ei valituissa käytettävyyden arviointikriteereissä ollut mukana. Mukana olleista tärkeimmäksi osoittautui ymmärrettävästi tehokkuus.