3 research outputs found

    Bisnesmetriikan kerääminen ja visualisointi pilvipohjaisessa kehitysympäristössä

    Get PDF
    Monitoring cloud computing resources is a straightforward and common task for any cloud application developer. The problem with current monitoring solutions is that they only focus on infrastructure resources. Many companies on the other hand would need data about the business side of their applications. This thesis extends the current monitoring solutions to capture business metrics from within applications. The metrics are then visualized to quickly allow for better analysis of the data. The tool is composed of three main components. The metrics are captured with a Node.js library that is imported in the monitored application. The library sends the captured data to InfluxDB timeseries database. The data is visualized with Grafana which implements tables, graphs, and gauges. The provided command-line tool creates a file that can be imported in Grafana to create a new dashboard with graphs in it. The requirements for the tool were created through the needs of software developers and clients of web- and mobile-developer Codemate. An architectural design was made based on the requirements and then implemented on the AWS cloud platform on top of Kubernetes. The implementation was evaluated by testing it in a real production server. The tool is functional and it works as intended. The results from the evaluation prove that the tool created in this thesis can help companies gain better information about their products. Future work includes adding the metrics capture for other languages such as Go and Ruby as well as integrating the tool to Codemate’s new development environment. Further research can be done especially in improving performance of the solution in large systems.Pilviresurssien monitorointi on selkeä ja yleinen tehtävä jokaiselle pilvipalvelun kehittäjälle. Monitorointisovellukset keskittyvät vain infrastruktuuriresursseihin, vaikka monet nykyajan yritykset tarvitsisivat tarkempaa tietoa sovellusten bisnespuolesta. Tämä diplomityö laajentaa nykyisiä monitorointisovelluksia kattamaan bisnesmetriikan keräämisen applikaatioiden sisältä sekä visualisoi datan paremman analyysin mahdollistamiseksi. Diplomityössä kehitetty työkalu koostuu kolmesta osasta. Metriikat kerätään sovelluksista Node.js-kirjaston avulla, joka lisätään sovelluksen koodiin. Kirjasto lähettää dataa InfluxDB-tietokantaan, josta se visualisoidaan Grafanalla interaktiivisten kuvaajien sekä taulukoiden avulla. Grafanaan voidaan lisäksi luoda työpöytiä diplomityötä varten luodulla ohjelmalla. Bisnesmetriikan keräämiseen ja visualisointiin luotu työkalu määriteltiin ohjelmistokehittäjä Codematen ohjelmistoinsinöörien sekä asiakkaiden tarpeiden mukaan. Määrittelyä käytettiin työkalun arkkitehtuurin luomiseen, joka ohjasi käytännön toteutusta. Työkalu rakennettiin Amazonin AWS-palveluun Kuberneteksen päälle. Toteutetun työkalun toimivuus testattiin lopuksi asiakasympäristössä tuotantopalvelimella. Työkalun todettiin toimivan tarkoituksenmukaisesti. Testauksesta saadut tulokset osoittavat, että työkalu voi auttaa yrityksiä saamaan parempaa informaatiota ohjelmistotuotteistaan sekä niiden käytöstä. Työkalun kehitystä voidaan jatkaa laajentamalla sen toimintaa Go- ja Ruby-kielille sekä integroimalla se tiiviimmin Codematen uuteen kehitysympäristöön. Lisätutkimus erityisesti suorituskyvyn parantamiseen laajoissa järjestelmissä on tarpeen

    A Requirements Measurement Program for Systems Engineering Projects: Metrics, Indicators, Models, and Tools for Internal Stakeholders

    Get PDF
    Software engineering (SE) measurement has shown to lead to improved quality and productivity in software and systems projects and, thus, has received significant attention in the literature, particularly for the design and development stages. In requirements engineering (RE), research and practice has recognized the importance of requirements measurement (RM) for tracking progress, identifying gaps in downstream deliverables related to requirements, managing requirements-related risks, reducing requirements errors and defects, and project management and decision making. However, despite the recognized benefits of RM, research indicates that only 5\% of the literature on SE measurement addresses requirements. This small percentage is reflected in the lack of well-defined and ready to use requirements metrics, approaches, tools, and frameworks that would enable the effective implementation and management of a RM program. Such a program would, in turn, provide the various internal stakeholders with various quantitative requirements-driven information (e.g., measures, indicators, and analytics, etc.) in order for them to better manage, control, and track their respective process activities. This shortage makes the process of RM, at best, complicated and, at worst, non-existent in most projects. The RM process is further complicated in large systems engineering projects due to large project sizes, numerous internal stakeholders, time pressure, large numbers of requirements, other software artifacts, to name a few. This integrated-article thesis aims to address the aforementioned problem through the following main contributions that have been researched and validated within the context of a large systems engineering project in the rail-automation domain: (i) an empirically derived and validated structured requirements metric suite; (ii) an approach for deriving and organizing requirements metrics and related information; (iii) a requirements-centric, measurement-based health assessment framework; (iv) a meta-model for managing requirements -driven information for internal stakeholders; (v) a prototype requirements dashboard that builds upon and automates the concepts in i, ii, iii, and iv. These contributions have implications for research on RM through extending the body of work on RM and promulgating further research. For practice, the results of this thesis are anticipated to facilitate the implementation and management of RM programs in real-world projects
    corecore