683 research outputs found
A Quality Model for Actionable Analytics in Rapid Software Development
Background: Accessing relevant data on the product, process, and usage
perspectives of software as well as integrating and analyzing such data is
crucial for getting reliable and timely actionable insights aimed at
continuously managing software quality in Rapid Software Development (RSD). In
this context, several software analytics tools have been developed in recent
years. However, there is a lack of explainable software analytics that software
practitioners trust. Aims: We aimed at creating a quality model (called
Q-Rapids quality model) for actionable analytics in RSD, implementing it, and
evaluating its understandability and relevance. Method: We performed workshops
at four companies in order to determine relevant metrics as well as product and
process factors. We also elicited how these metrics and factors are used and
interpreted by practitioners when making decisions in RSD. We specified the
Q-Rapids quality model by comparing and integrating the results of the four
workshops. Then we implemented the Q-Rapids tool to support the usage of the
Q-Rapids quality model as well as the gathering, integration, and analysis of
the required data. Afterwards we installed the Q-Rapids tool in the four
companies and performed semi-structured interviews with eight product owners to
evaluate the understandability and relevance of the Q-Rapids quality model.
Results: The participants of the evaluation perceived the metrics as well as
the product and process factors of the Q-Rapids quality model as
understandable. Also, they considered the Q-Rapids quality model relevant for
identifying product and process deficiencies (e.g., blocking code situations).
Conclusions: By means of heterogeneous data sources, the Q-Rapids quality model
enables detecting problems that take more time to find manually and adds
transparency among the perspectives of system, process, and usage.Comment: This is an Author's Accepted Manuscript of a paper to be published by
IEEE in the 44th Euromicro Conference on Software Engineering and Advanced
Applications (SEAA) 2018. The final authenticated version will be available
onlin
Modelling the Strategic Alignment of Software Requirements using Goal Graphs
This paper builds on existing Goal Oriented Requirements Engineering (GORE)
research by presenting a methodology with a supporting tool for analysing and
demonstrating the alignment between software requirements and business
objectives. Current GORE methodologies can be used to relate business goals to
software goals through goal abstraction in goal graphs. However, we argue that
unless the extent of goal-goal contribution is quantified with verifiable
metrics and confidence levels, goal graphs are not sufficient for demonstrating
the strategic alignment of software requirements. We introduce our methodology
using an example software project from Rolls-Royce. We conclude that our
methodology can improve requirements by making the relationships to business
problems explicit, thereby disambiguating a requirement's underlying purpose
and value.Comment: v2 minor updates: 1) bitmap images replaced with vector, 2) reworded
related work ref[6] for clarit
Software development: A paradigm for the future
A new paradigm for software development that treats software development as an experimental activity is presented. It provides built-in mechanisms for learning how to develop software better and reusing previous experience in the forms of knowledge, processes, and products. It uses models and measures to aid in the tasks of characterization, evaluation and motivation. An organization scheme is proposed for separating the project-specific focus from the organization's learning and reuse focuses of software development. The implications of this approach for corporations, research and education are discussed and some research activities currently underway at the University of Maryland that support this approach are presented
A Deployment Process for Strategic Measurement Systems
Explicitly linking software-related activities to an organisation's
higher-level goals has been shown to be critical for organizational success.
GQM+Strategies provides mechanisms for explicitly linking goals and strategies,
based on goal-oriented strategic measurement systems. Deploying such strategic
measurement systems in an organization is highly challenging. Experience has
shown that a clear deployment strategy is needed for achieving sustainable
success. In particular, an adequate deployment process as well as corresponding
tool support can facilitate the deployment. This paper introduces the
systematical GQM+Strategies deployment process and gives an overview of
GQM+Strategies modelling and associated tool support. Additionally, it provides
an overview of industrial applications and describes success factors and
benefits for the usage of GQM+Strategies.Comment: 12 pages. Proceedings of the 8th Software Measurement European Forum
(SMEF 2011
Identifying Potential Problems and Risks in GQM+Strategies Models Using Metamodel and Design Principles
Although GQM+Strategies®1 assures that business goals and strategies are aligned throughout an organization and at each organizational unit based on the rationales to achieve the overall business goals, whether the GQM+Strategies grid is created correctly cannot be determined because the current definition of GQM+Strategies allows multiple perspectives when aligning goals with strategies. Here we define modeling rules for GQM+Strategies with a metamodel specified with a UML class diagram. Additionally, we create design principles that consist of relationship constraints between GQM+Strategies elements, which configure GQM+Strategies grids. We demonstrate that the GQM+Strategies grids can be automatically determined with the help of design principles described in OCL. In fact, an experiment is implemented using these approaches in order to show that this method helps identify and improve potential problems and risks. The results confirm that our approaches help create a consistent GQM+Strategies grid
DETERMINING THE IMPACT OF BUSINESS STRATEGIES USING PRINCIPLES FROM GOAL-ORIENTED MEASUREMENT
In practice, the success or failure of business strategies is often determined by management as a gut feeling without taking into account quantitative information. If data is collected, it is often unclear how the data contributes to higher-level goals of the organization. GQM+Strategies® provides mechanisms for explicitly linking measurement goals to higher-level goals, and also to goals and strategies at the level of the entire business. It is based on experiences with software-related organizations, but is intended to be applicable in all kinds of businesses. This article gives an overview of the basic concepts and presents a practical case
Explorar performance com Apollo Federation
The growing tendency in cloud-hosted computing and availability supported a shift in soft ware architecture to better take advantage of such technological advancements. As Mono lithic Architecture started evolving and maturing, businesses grew their dependency on soft ware solutions which motivated the shift into Microservice Architecture.
The same shift is comparable with the evolution of Monolithic GraphQL solutions which,
through its growth and evolution, also required a way forward in solving some of its bot tleneck issues. One of the alternatives, already chosen and proven by some enterprises, is
GraphQL Federation. Due to its nobility, there is still a lack of knowledge and testing on
the performance of GraphQL Federation architecture and what techniques such as caching
strategies, batching and execution strategies impact it.
This thesis aims to answer this lack of knowledge by first contextualizing the different as pects of GraphQL and GraphQL Federation and investigating the available and documented
enterprise scenarios to extract best practices and to better understand how to prepare such
performance evaluation.
Next, multiple alternatives underwent the Analytic Hierarchy Process to choose the best
way to develop a scenario to enable the performance analysis in a standard and structured
way. Following this, the alternative base solutions were analysed and compared to deter mine the best fit for the current thesis. Functional and non-functional requirements were
collected along with the rest of the design exercise to enhance the solution to be tested for
performance.
Finally, after the required development and implementation work was documented, the so lution was tested following the Goal Question Metric methodology and utilizing tools such
as JMeter, Prometheus and Grafana to collect and visualize the performance data. It was
possible to conclude that indeed different caching, batching and execution strategies have
an impact on the GraphQL Federation solution. These impacts do shift between positive
(improvements in performance) and negative (performance hindered by strategy) for the
different tested strategies.A tendência de crescimento da computação cloud-hosted apoiou uma mudança na arquite tura do software para tirar maior proveito desses avanços tecnológicos. Com a evolução
e amadurecimento das arquiteturas monolíticas, as empresas aumentaram sua dependência
nas soluções software que motivou a mudança e adoção de arquiteturas de micro serviços.
O mesmo se verificou com a evolução das soluções monolíticas GraphQL que, com o seu
crescimento e evolução, também requeriam soluções para resolver algumas das suas novas
complexidades. Uma das alternativas de resolução, já aplicado e provado na indústria, é
o GraphQL Federation. Devido ao seu recente lançamento, ainda não existe um conhecimento sólido na performance de uma arquitetura de GraphQL Federation e que técnicas
como estratégias de caching, batching e execution tem impacto sobre a mesma.
Esta tese tem como intuito responder a esta falha de conhecimento através de, primeira mente, contextualizar os diferentes aspetos de GraphQL e GraphQL Federations com a
investigação de casos de aplicação na indústria, para a extração de boas práticas e compreender o necessário ao desenvolvimento de uma avaliação de performance.
De seguida, múltiplas alternativas foram sujeitas ao Analytic Hierarchy Process para escolher
a melhor forma de desenvolver um cenário/solução necessária a uma análise de performance
normalizada e estruturada. Com isto em mente, as duas soluções base foram analisadas
e comparadas para determinar a mais adequada a esta tese. Requisitos funcionais e não funcionais foram recolhidos, assim como todo o restante exercício de design necessário ao
desenvolvimento da solução para testes de performance.
Finalmente, após a fase de desenvolvimento ser concluída e devidamente documentada, a
solução foi testada seguindo a metodologia Goal Question Metric, e aplicando ferramentas
como JMeter, Prometheus e Grafana para recolher e visualizar os dados de performance.
Foi possível concluir que, de facto, as diferentes estratégias de caching, batching e execution
tem impacto numa solução GraphQL Federation. Tais impactos variam entre positivos (com
melhorias em termos de performance) e negatives (performance afetada por estratégias) para
as diferentes estratégias testadas
- …