978 resultados para agile software development


Relevância:

90.00% 90.00%

Publicador:

Resumo:

Diplomityössä käsitellään Nokia Mobile Phonesin matkapuhelimien käyttöliittymäohjelmistojen suunnittelu-ja testausympäristön kehitystä. Ympäristöön lisättiin kaksi ohjelmistomodulia avustamaan simulointia ja versionhallintaa. Visualisointityökalulla matkapuhelimen toiminta voidaan jäljittää suunnittelu- kaavioihin tilasiirtyminä, kun taas vertailusovelluksella kaavioiden väliset erot nähdään graafisesti. Kehitetyt sovellukset parantavat käyttöliittymien suunnitteluprosessia tehostaen virheiden etsintää, optimointia ja versionhallintaa. Visualisointityökalun edut ovat merkittävät, koska käyttöliittymäsovellusten toiminta on havaittavissa suunnittelu- kaavioista reaaliaikaisen simuloinnin yhteydessä. Näin virheet ovat välittömästi paikannettavissa. Lisäksi työkalua voidaan hyödyntää kaavioita optimoitaessa, jolloin sovellusten kokoja muistintarve pienenee. Graafinen vertailutyökalu tuo edun rinnakkaiseen ohjelmistosuunnitteluun. Eri versioisten suunnittelukaavioiden erot ovat nähtävissä suoraan kaaviosta manuaalisen vertailun sijaan. Molemmat työkalut otettiin onnistuneesti käyttöön NMP:llä vuoden 2001 alussa.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Jatkuvasti lisääntyvä matkapuhelinten käyttäjien määrä, internetin kehittyminen yleiseksi tiedon ja viihteen lähteeksi on luonut tarpeen palvelulle liikkuvan työaseman liittämiseksi tietokoneverkkoihin. GPRS on uusi teknologia, joka tarjoaa olemassa olevia matka- puhelinverkkoja (esim. NMT ja GSM) nopeamman, tehokkaamman ja taloudellisemman liitynnän pakettidataverkkoihin, kuten internettiin ja intranetteihin. Tämän työn tavoitteena oli toteuttaa GPRS:n paketinohjausyksikön (Packet Control Unit, PCU) testauksessa tarvittavat viestintäajurit työasemaympristöön. Aidot matkapuhelinverkot ovat liian kalliita, eikä niistä saa tarvittavasti lokitulostuksia, jotta niitä voisi käyttää GPRS:n testauksessa ohjelmiston kehityksen alkuvaihessa. Tämän takia PCU-ohjelmiston testaus suoritetaan joustavammassa ja helpommin hallittavassa ympäristössä, joka ei aseta kovia reaaliaikavaatimuksia. Uusi toimintaympäristö ja yhteysmedia vaativat PCU:n ja muiden GPRS-verkon yksiköiden välisistä yhteyksistä huolehtivien ohjelman osien, viestintäajurien uuden toteutuksen. Tämän työn tuloksena syntyivät tarvittavien viestintäajurien työasemaversiot. Työssä tarkastellaan eri tiedonsiirtotapoja ja -protokollia testattavan ohjelmiston vaateiden, toteutetun ajurin ja testauksen kannalta. Työssä esitellään kunkin ajurin toteuttama rajapinta ja toteutuksen aste, eli mitkä toiminnot on toteutettu ja mitä on jätetty pois. Ajureiden rakenne ja toiminta selvitetään siltä osin, kuin se on oleellista ohjelman toiminnan kannalta.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

En este TFM se detallan las mejoras realizadas a la aplicación eXeLearning.net, así como otras aportaciones a la comunidad realizadas durante el proyecto de fin de máster de Software libre. eXeLearning.net es una aplicación de software libre para la creación de materiales educativos digitales, desarrollada en Python, con una interfaz web (HTML + JavaScript). En este proyecto se desarrollaron entre otras cosas: un repositorio de estilos en la web oficial de la aplicación, disponibles para su descarga desde la aplicación de escritorio, la creación y mantenimiento de un repositorio en Launchpad y una funcionalidad para publicar los contenidos creados con eXeLearning.net directamente en Google Drive.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

L’organització de la producció és sempre un factor clau en qualsevol empresa. No hi ha cap fórmula magistral que pugui servir per a tothom, perquè aquesta és molt depenent del sector i de la mida. Softvic S.A., l’empresa on treballo, em va demanar que implantés un sistema d’organització adequat a una empresa de desenvolupament de Software. Les empreses d’aquesta tipologia tenen dues característiques diferenciadores respecte una empresa de fabricació: les feines es fan una única vegada i es redefineixen freqüentment els projectes a fer al futur. És a dir, els requisits són inestables i requereixen rapidesa i flexibilitat. Actualment, Softvic S.A. ja té la ISO 9001:2008 al departament de programació. Aquesta ISO contempla com es creen les ordres de programació (OP) i ordres d’incidència (OI) i com es registra i avalua la feina realitzada. L’objectiu és implantar una metodologia que s’encarregui de la part anterior a aquesta, és a dir, definir les feines a fer en un període. Això s’ha d’integrar perfectament amb la part ja recolzada per la ISO. Per aquest fet es va escollir la metodologia Scrum que complia tots els requisits esmentats i estava contrastada per diferents empreses del món del Software. Primerament es van fer proves en les quals es guardava la informació en un Excel i s’imprimien manualment les feines a realitzar. Un cop es va haver decidit quina informació era útil i quina no en el cas de Softvic, es va crear una base de dades amb les taules i camps necessaris. Per treballar de forma més còmoda es va fer posteriorment un programa per a mantenir les dades i un formulari per imprimir etiquetes. A mesura que hem anat utilitzant la metodologia Scrum, hem anat ajustant aspectes cap on hem cregut convenient pel nostre cas en particular.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Tämän tutkimuksen tavoitteena on selvittää, miten erityyppisissä organisaatioissa ohjelmistotestaus on organisoitu, sekä mitä ongelmia ja etuja testauksen toimenpieteissä on käytännössä havaittu. Tutkimuksessa kiinnitetään huomiota myös testausresurssien määrään ja asiakkaan toimintaan ohjelmistokehitysprojekteissa. Tässä tutkimuksessa keskityttiin selvittämään ketterien menetelmien vaikutusta ohjelmistotestauksen toteuttamiseen, sekä miten ketterät menetelmät vaikuttavat asiakkaiden toimintaan ohjelmistokehitysprojekteissa. Tutkimus toteutettiin laadullisena tutkimuksena, jossa tutkimusmenetelmänä käytettiin aineistopohjaista menetelmää. Tutkimusaineisto on kerätty haastattelemalla 12 organisaatioyksikön edustajia. Tutkimuksessa havaittiin, että ketterien menetelmien käytöllä voidaan järjestää lisää aikaa ohjelmistotestauksen toteuttamiseen. Ketterissä menetelmissä testaus sidotaan kehitysprosessiin tiiviisti, jolloin testaustoimenpiteet tulee huomioida jo kehitystyön alkaessa. Tällainen lähtökohta tasaa testausresurssien tarvetta, koska testaustoimenpinteitä voidaan suorittaa projektin alusta lähtien. Ketterien menetelmien havaittiin vaikuttavan myös asiakkaan toimintaan. Ketteriä menetelmiä varten toimittajaorganisaation on lisättävä yhteistyön ja kommunikoinnin määrää asiakkaan kanssa. Lisäksi asiakkaalta vaaditaan jatkuvaa läsnäoloa sekä ymmärrystä ketterästä kehityksestä, jotta kehittäjät saavat jatkuvasti palautetta nopean ja joustavan kehityksen takaamiseksi.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Yritysohjelmistojen kehittäminen on monesti aikataulukriittistä ja tuottavuusvaatimukset ovat korkeita. Työssä kehitettiin tyypillisen web-käyttöliittymän omaavan J2EE-sovelluksen koontiin soveltuva koontimenetelmä, joka hyödyntää XP:n (Extreme Programming) sovelluskehityskäytäntöjä. Tärkeimpiä näistä on automatisoitu testaus, jonka päätyypit ovat automatisoitu yksikkö- ja integrointitestaus. Työn aikana asetettiin tavoitteet koontimenetelmälle sekä evaluointiin ja valittiin markkinoilla olevista työkaluista toimeksiantajan ympäristöön sopiva joukko. Koontimenetelmän toteutuksen tarkastelussa havaittiin, että XP:n käytännöt soveltuvat J2EE-sovelluskehitykseen ja tarpeelliset työkalut tähän ovat olemassa.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Kandidaatin työmme tarkoitus on tutkia voisiko ketteriä ohjelmistokehitysmenetelmiä soveltaa innovaatioprosessiin. Innovaatioprosessissa on hyvin samankaltaiset vaiheet kuin perinteisessä ohjelmistokehitysprosessissa eli vesiputousmallissa. Vesiputousmallin ongelmia on ratkaistu ketterien menetelmien keinoin, joten päätimme lähteä tutkimaan löytyisikö perinteisen ohjelmistokehitysprosessin ja innovaatioprosessin ongelmista yhteneviä piirteitä. Oletimme, että jos ongelmat yhtenevät tarpeeksi, voisi ketteristä menetelmistä löytyä keinoja innovaatioprosessin ongelmien ratkaisemiseen. Tavoitteena on löytää innovaatioprosessin parannuskohteita, joihin ketteristä menetelmistä löytyisi ratkaisu joko kokonaan tai osittain. Aluksi tarkastellaan innovaatioprosessin historiaa, kehitystä ja ongelmia. Innovaatioprosessin tutkimisen jälkeen käydään läpi järjestelmäkehitysprosessin historiaa, kehitystä ja ongelmia. Järjestelmäkehitysprosessin jälkeen käydään läpi merkittävimmät ketterät menetelmät, jotka ovat ratkaisseet perinteisen ohjelmistokehitysprosessin keskeisiä ongelmia. Työmme lopussa on innovaatioprosessin ja järjestelmäkehitysprosessin synteesi. Synteesissä tutkitaan ongelmien yhtenevyyttä ja ketterien menetelmien ratkaisuja ongelmiin. Synteesissä myös pohdimme, mitä ketterien menetelmien työkaluista voisi soveltaa innovaatioprosessin. Työn johtopäätös on, että ketteristä menetelmistä löytyy sovellettavia työtapoja innovaatioprosessiin. Työn laajuus estää soveltamisen mahdollisuuksien tarkemman tutkimisen ja yksittäisten ketterien työtapojen soveltaminen osaksi innovaatioprosessia olisikin hyvä jatkotutkimuksen aihe.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

This Master’s thesis studies the possibilities that social media tools can bring to help knowledge management in software development companies. It will introduce the most popular tools of social media and their usage possibilities in companies, not forgetting the possible downsides. One relevant aspect in this study is to investigate the possibilities of social media to help converting existing tacit knowledge into explicit. The purpose of the work is to create a proposal of social media utilization for a mid-sized software company, which has not utilized social media tools before. To be able to create the proposal, employees of the company are interviewed and a survey is executed to analyze the current situation. In addition a pilot project for trying out new social media tools is executed. The final result of this thesis introduces a tailored solution for the target company to start utilizing social media in its documentation and knowledge sharing processes. This new solution consists of multiple individual suggestions that are categorized and prioritized based on the significance and benefit that they bring to the company.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Nowadays software testing and quality assurance have a great value in software development process. Software testing does not mean a concrete discipline, it is the process of validation and verification that starts from the idea of future product and finishes at the end of product’s maintenance. The importance of software testing methods and tools that can be applied on different testing phases is highly stressed in industry. The initial objectives for this thesis were to provide a sufficient literature review on different testing phases and for each of the phases define the method that can be effectively used for improving software’s quality. Software testing phases, chosen for study are: unit testing, integration testing, functional testing, system testing, acceptance testing and usability testing. The research showed that there are many software testing methods that can be applied at different phases and in the most of the cases the choice of the method should be done depending on software type and its specification. In the thesis the problem, concerned to each of the phases was identified; the method that can help in eliminating this problem was suggested and particularly described.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Ketterien menetelmien käyttö on yleistymässä ohjelmistotuotannossa. Tämän vuoksi ketteriltä menetelmiltä vaaditaan hyvää laadunhallintaa. Ketteriä menetelmiä on olemassa useita erilaisia, mutta ne kaikki jakavat samanlaiset perusarvot ja periaatteet. Tässä työssä tutkitaan kolmea eri ketterää menetelmää: Scrum, eXtreme Programming (XP) sekä Dynamic Systems Development Method (DSDM). Jokaisesta menetelmästä selvitetään, miten niissä hoidetaan laadunhallinta. Työssä otetaan myös kantaa ketterien ja perinteisten menetelmien eroihin sekä siihen, millaisissa projekteissa ketteriä menetelmiä kannattaa käyttää.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Software systems are expanding and becoming increasingly present in everyday activities. The constantly evolving society demands that they deliver more functionality, are easy to use and work as expected. All these challenges increase the size and complexity of a system. People may not be aware of a presence of a software system, until it malfunctions or even fails to perform. The concept of being able to depend on the software is particularly significant when it comes to the critical systems. At this point quality of a system is regarded as an essential issue, since any deficiencies may lead to considerable money loss or life endangerment. Traditional development methods may not ensure a sufficiently high level of quality. Formal methods, on the other hand, allow us to achieve a high level of rigour and can be applied to develop a complete system or only a critical part of it. Such techniques, applied during system development starting at early design stages, increase the likelihood of obtaining a system that works as required. However, formal methods are sometimes considered difficult to utilise in traditional developments. Therefore, it is important to make them more accessible and reduce the gap between the formal and traditional development methods. This thesis explores the usability of rigorous approaches by giving an insight into formal designs with the use of graphical notation. The understandability of formal modelling is increased due to a compact representation of the development and related design decisions. The central objective of the thesis is to investigate the impact that rigorous approaches have on quality of developments. This means that it is necessary to establish certain techniques for evaluation of rigorous developments. Since we are studying various development settings and methods, specific measurement plans and a set of metrics need to be created for each setting. Our goal is to provide methods for collecting data and record evidence of the applicability of rigorous approaches. This would support the organisations in making decisions about integration of formal methods into their development processes. It is important to control the software development, especially in its initial stages. Therefore, we focus on the specification and modelling phases, as well as related artefacts, e.g. models. These have significant influence on the quality of a final system. Since application of formal methods may increase the complexity of a system, it may impact its maintainability, and thus quality. Our goal is to leverage quality of a system via metrics and measurements, as well as generic refinement patterns, which are applied to a model and a specification. We argue that they can facilitate the process of creating software systems, by e.g. controlling complexity and providing the modelling guidelines. Moreover, we find them as additional mechanisms for quality control and improvement, also for rigorous approaches. The main contribution of this thesis is to provide the metrics and measurements that help in assessing the impact of rigorous approaches on developments. We establish the techniques for the evaluation of certain aspects of quality, which are based on structural, syntactical and process related characteristics of an early-stage development artefacts, i.e. specifications and models. The presented approaches are applied to various case studies. The results of the investigation are juxtaposed with the perception of domain experts. It is our aspiration to promote measurements as an indispensable part of quality control process and a strategy towards the quality improvement.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Object-oriented programming is a widely adopted paradigm for desktop software development. This paradigm partitions software into separate entities, objects, which consist of data and related procedures used to modify and inspect it. The paradigm has evolved during the last few decades to emphasize decoupling between object implementations, via means such as explicit interface inheritance and event-based implicit invocation. Inter-process communication (IPC) technologies allow applications to interact with each other. This enables making software distributed across multiple processes, resulting in a modular architecture with benefits in resource sharing, robustness, code reuse and security. The support for object-oriented programming concepts varies between IPC systems. This thesis is focused on the D-Bus system, which has recently gained a lot of users, but is still scantily researched. D-Bus has support for asynchronous remote procedure calls with return values and a content-based publish/subscribe event delivery mechanism. In this thesis, several patterns for method invocation in D-Bus and similar systems are compared. The patterns that simulate synchronous local calls are shown to be dangerous. Later, we present a state-caching proxy construct, which avoids the complexity of properly asynchronous calls for object inspection. The proxy and certain supplementary constructs are presented conceptually as generic object-oriented design patterns. The e ect of these patterns on non-functional qualities of software, such as complexity, performance and power consumption, is reasoned about based on the properties of the D-Bus system. The use of the patterns reduces complexity, but maintains the other qualities at a good level. Finally, we present currently existing means of specifying D-Bus object interfaces for the purposes of code and documentation generation. The interface description language used by the Telepathy modular IM/VoIP framework is found to be an useful extension of the basic D-Bus introspection format.

Relevância:

90.00% 90.00%

Publicador:

Resumo:

Open source and open source software development have been interesting phenomena during the past decade. Traditional business models do not apply with open source, where the actual product is free. However, it is possible to make business with open source, even successfully, but the question is: how? The aim of this study is to find the key factors of successfully making business out of commercial open source software development. The task is achieved by finding the factors that influence open source projects, finding the relation between those factors, and find out why some factors explain the success more than others. The literature review concentrates first on background of open innovation, open source and open source software. Then business models, critical success factors and success measures are examined. Based on existing literature a framework was created. The framework contains categorized success factors that influence software projects in general as well as open source software projects. The main categories of success factors in software business are divided into community management, technology management, project management and market management. In order to find out which of the factors based on the existing literature are the most critical, empirical research was done by conducting unstructured personal interviews. The main finding based on the interviews is that the critical success factors in open source software business do not differ from those in traditional software business or in fact from those in any other business. Some factors in the framework came out in the interviews that can be considered as key factors: establishing and communicating hierarchy (community management), localization (technology management), good license know-how and IPR management (project management), and effective market management (market management). The critical success factors according to the interviewees are not listed in the framework: low price, good product and good business model development.