-
Edge-weighted balanced connected partitions: Hardness and formulations
Authors:
Morteza Davari,
Phablo F. S. Moura,
Hande Yaman
Abstract:
The balanced connected $k$-partition problem (BCP) is a classic problem which consists in partitioning the set of vertices of a vertex-weighted connected graph into a collection of $k$ sets such that each of them induces a connected subgraph of roughly the same weight. There exists a vast literature on BCP that includes hardness results, approximation algorithms, integer programming formulations,…
▽ More
The balanced connected $k$-partition problem (BCP) is a classic problem which consists in partitioning the set of vertices of a vertex-weighted connected graph into a collection of $k$ sets such that each of them induces a connected subgraph of roughly the same weight. There exists a vast literature on BCP that includes hardness results, approximation algorithms, integer programming formulations, and a polyhedral study. We investigate edge-weighted variants of BCP where we are given a connected graph $G$, $k \in \mathbb{Z}_\ge$, and an edge-weight function $w \colon E(G)\to\mathbb{Q}_\ge$, and the goal is to compute a spanning $k$-forest $\mathcal{T}$ of $G$ (i.e., a forest with exactly $k$ trees) that minimizes the weight of the heaviest tree in $\mathcal{T}$ in the min-max version, or maximizes the weight of the lightest tree in $\mathcal{T}$ in the max-min version. We show that both versions of this problem are $\mathsf{NP}$-hard on complete graphs with $k=2$, unweighted split graphs, and unweighted bipartite graphs with $k\geq 2$ fixed. Moreover, we prove that these problems do not admit subexponential-time algorithms, unless the Exponential-Time Hypothesis fails. Finally, we devise compact and non-compact integer linear programming formulations, valid inequalities, and separation algorithms.
△ Less
Submitted 3 April, 2025;
originally announced April 2025.
-
Compact formulations and valid inequalities for parallel machine scheduling with conflicts
Authors:
Phablo F. S. Moura,
Roel Leus,
Hande Yaman
Abstract:
The problem of scheduling conflicting jobs on parallel machines consists in assigning a set of jobs to a set of machines so that no two conflicting jobs are allocated to the same machine, and the maximum processing time among all machines is minimized. We propose a new compact mixed integer linear formulation based on the representatives model for the vertex coloring problem, which overcomes a num…
▽ More
The problem of scheduling conflicting jobs on parallel machines consists in assigning a set of jobs to a set of machines so that no two conflicting jobs are allocated to the same machine, and the maximum processing time among all machines is minimized. We propose a new compact mixed integer linear formulation based on the representatives model for the vertex coloring problem, which overcomes a number of issues inherent in the natural assignment model. We present a polyhedral study of the associated polytope, and describe classes of valid inequalities inherited from the stable set polytope. We describe branch-and-cut algorithms for the problem, and report on computational experiments with benchmark instances. Our computational results on the hardest instances of the benchmark set show that the proposed algorithms are superior (either in running time or quality of the solutions) to the current state-of-the-art methods. We find that our new method performs better than the existing ones especially when the gap between the optimal value and the trivial lower bound (i.e., the sum of all processing times divided by the number of machines) increases.
△ Less
Submitted 3 April, 2025; v1 submitted 22 December, 2023;
originally announced December 2023.
-
Polyhedral approach to weighted connected matchings in general graphs
Authors:
Phillippe Samer,
Phablo F. S. Moura
Abstract:
A connected matching in a graph G consists of a set of pairwise disjoint edges whose covered vertices induce a connected subgraph of G. While finding a connected matching of maximum cardinality is a well-solved problem, it is NP-hard to determine an optimal connected matching in an edge-weighted graph, even in the planar bipartite case. We present two mixed integer programming formulations and a s…
▽ More
A connected matching in a graph G consists of a set of pairwise disjoint edges whose covered vertices induce a connected subgraph of G. While finding a connected matching of maximum cardinality is a well-solved problem, it is NP-hard to determine an optimal connected matching in an edge-weighted graph, even in the planar bipartite case. We present two mixed integer programming formulations and a sophisticated branch-and-cut scheme to find weighted connected matchings in general graphs. The formulations explore different polyhedra associated to this problem, including strong valid inequalities both from the matching polytope and from the connected subgraph polytope. We conjecture that one attains a tight approximation of the convex hull of connected matchings using our strongest formulation, and report encouraging computational results over DIMACS Implementation Challenge benchmark instances. The source code of the complete implementation is also made available.
△ Less
Submitted 9 October, 2023;
originally announced October 2023.
-
Approximations for the Steiner Multicycle Problem
Authors:
Cristina G. Fernandes,
Carla N. Lintzmayer,
Phablo F. S. Moura
Abstract:
The Steiner Multicycle problem consists of, given a complete graph, a weight function on its vertices, and a collection of pairwise disjoint non-unitary sets called terminal sets, finding a minimum weight collection of vertex-disjoint cycles in the graph such that, for every terminal set, all of its vertices are in a same cycle of the collection. This problem generalizes the Traveling Salesman pro…
▽ More
The Steiner Multicycle problem consists of, given a complete graph, a weight function on its vertices, and a collection of pairwise disjoint non-unitary sets called terminal sets, finding a minimum weight collection of vertex-disjoint cycles in the graph such that, for every terminal set, all of its vertices are in a same cycle of the collection. This problem generalizes the Traveling Salesman problem and therefore is hard to approximate in general. On the practical side, it models a collaborative less-than-truckload problem with pickup and delivery locations. Using an algorithm for the Survivable Network Design problem and T -joins, we obtain a 3-approximation for the metric case, improving on the previous best 4-approximation. Furthermore, we present an (11/9)-approximation for the particular case of the Steiner Multicycle in which each edge weight is 1 or 2. This algorithm can be adapted to obtain a (7/6)-approximation when every terminal set contains at least 4 vertices. Finally, we devise an O(lg n)-approximation algorithm for the asymmetric version of the problem.
△ Less
Submitted 14 August, 2023;
originally announced August 2023.
-
RobôCIn Small Size League Extended Team Description Paper for RoboCup 2023
Authors:
Aline Lima de Oliveira,
Cauê Addae da Silva Gomes,
Cecília Virginia Santos da Silva,
Charles Matheus de Sousa Alves,
Danilo Andrade Martins de Souza,
Driele Pires Ferreira Araújo Xavier,
Edgleyson Pereira da Silva,
Felipe Bezerra Martins,
Lucas Henrique Cavalcanti Santos,
Lucas Dias Maciel,
Matheus Paixão Gumercindo dos Santos,
Matheus Lafayette Vasconcelos,
Matheus Vinícius Teotonio do Nascimento Andrade,
João Guilherme Oliveira Carvalho de Melo,
João Pedro Souza Pereira de Moura,
José Ronald da Silva,
José Victor Silva Cruz,
Pedro Henrique Santana de Morais,
Pedro Paulo Salman de Oliveira,
Riei Joaquim Matos Rodrigues,
Roberto Costa Fernandes,
Ryan Vinicius Santos Morais,
Tamara Mayara Ramos Teobaldo,
Washington Igor dos Santos Silva,
Edna Natividade Silva Barros
Abstract:
RobôCIn has participated in RoboCup Small Size League since 2019, won its first world title in 2022 (Division B), and is currently a three-times Latin-American champion. This paper presents our improvements to defend the Small Size League (SSL) division B title in RoboCup 2023 in Bordeaux, France. This paper aims to share some of the academic research that our team developed over the past year. Ou…
▽ More
RobôCIn has participated in RoboCup Small Size League since 2019, won its first world title in 2022 (Division B), and is currently a three-times Latin-American champion. This paper presents our improvements to defend the Small Size League (SSL) division B title in RoboCup 2023 in Bordeaux, France. This paper aims to share some of the academic research that our team developed over the past year. Our team has successfully published 2 articles related to SSL at two high-impact conferences: the 25th RoboCup International Symposium and the 19th IEEE Latin American Robotics Symposium (LARS 2022). Over the last year, we have been continuously migrating from our past codebase to Unification. We will describe the new architecture implemented and some points of software and AI refactoring. In addition, we discuss the process of integrating machined components into the mechanical system, our development for participating in the vision blackout challenge last year and what we are preparing for this year.
△ Less
Submitted 19 July, 2023;
originally announced July 2023.
-
Automatically Categorising GitHub Repositories by Application Domain
Authors:
Francisco Zanartu,
Christoph Treude,
Bruno Cartaxo,
Hudson Silva Borges,
Pedro Moura,
Markus Wagner,
Gustavo Pinto
Abstract:
GitHub is the largest host of open source software on the Internet. This large, freely accessible database has attracted the attention of practitioners and researchers alike. But as GitHub's growth continues, it is becoming increasingly hard to navigate the plethora of repositories which span a wide range of domains. Past work has shown that taking the application domain into account is crucial fo…
▽ More
GitHub is the largest host of open source software on the Internet. This large, freely accessible database has attracted the attention of practitioners and researchers alike. But as GitHub's growth continues, it is becoming increasingly hard to navigate the plethora of repositories which span a wide range of domains. Past work has shown that taking the application domain into account is crucial for tasks such as predicting the popularity of a repository and reasoning about project quality. In this work, we build on a previously annotated dataset of 5,000 GitHub repositories to design an automated classifier for categorising repositories by their application domain. The classifier uses state-of-the-art natural language processing techniques and machine learning to learn from multiple data sources and catalogue repositories according to five application domains. We contribute with (1) an automated classifier that can assign popular repositories to each application domain with at least 70% precision, (2) an investigation of the approach's performance on less popular repositories, and (3) a practical application of this approach to answer how the adoption of software engineering practices differs across application domains. Our work aims to help the GitHub community identify repositories of interest and opens promising avenues for future work investigating differences between repositories from different application domains.
△ Less
Submitted 30 July, 2022;
originally announced August 2022.
-
Definition and Implications of the Digital Near-Death Experience: A Theoretical Essay on Preliminary Empiricism
Authors:
Pedro Jacome de Moura Jr
Abstract:
Purpose: People are increasingly adhering to social networking platforms (SNP), and this adhesion is often unreflective, which makes them alienate data, actions, and decisions to tech giants. This essay discusses what happens when, eventually, someone chooses to cancel their participation in a large SNP. Methodology/design: This is a theoretical essay, whose narrative resembles a theoretical-empir…
▽ More
Purpose: People are increasingly adhering to social networking platforms (SNP), and this adhesion is often unreflective, which makes them alienate data, actions, and decisions to tech giants. This essay discusses what happens when, eventually, someone chooses to cancel their participation in a large SNP. Methodology/design: This is a theoretical essay, whose narrative resembles a theoretical-empirical manuscript, grounded on the author's experience and his subjective perceptions regarding being out of the WhatsApp network (nowadays, the main SNP instance in the world). Findings/highlights: This study proposes a definition and implications of the supposedly new "digital near-death experience" concept, a metaphor for the classic near-death experience (NDE). A research agenda is also proposed. Limitations: The resulting propositions are grounded on a set of assumptions, that if falsified, make the findings invalid.
△ Less
Submitted 1 August, 2022; v1 submitted 22 October, 2021;
originally announced October 2021.
-
Approximation and parameterized algorithms to find balanced connected partitions of graphs
Authors:
Phablo F. S. Moura,
Matheus J. Ota,
Yoshiko Wakabayashi
Abstract:
Partitioning a connected graph into $k$~vertex-disjoint connected subgraphs of similar (or given) orders is a classical problem that has been intensively investigated since late seventies. Given a connected graph $G=(V,E)$ and a weight function $w : V \to \mathbb{Q}_\geq$, a connected $k$-partition of $G$ is a partition of $V$ such that each class induces a connected subgraph. The balanced connect…
▽ More
Partitioning a connected graph into $k$~vertex-disjoint connected subgraphs of similar (or given) orders is a classical problem that has been intensively investigated since late seventies. Given a connected graph $G=(V,E)$ and a weight function $w : V \to \mathbb{Q}_\geq$, a connected $k$-partition of $G$ is a partition of $V$ such that each class induces a connected subgraph. The balanced connected $k$-partition problem consists in finding a connected $k$-partition in which every class has roughly the same weight. To model this concept of balance, one may seek connected $k$-partitions that either maximize the weight of a lightest class $(\text{max-min BCP}_k)$ or minimize the weight of a heaviest class $(\text{min-max BCP}_k)$. Such problems are equivalent when $k=2$, but they are different when $k\geq 3$. In this work, we propose a simple pseudo-polynomial $\frac{k}{2}$-approximation algorithm for $\text{min-max BCP}_k$ which runs in time $\mathcal{O}(W|V||E|)$, where $W = \sum_{v \in V} w(v)$. Based on this algorithm and using a scaling technique, we design a (polynomial) $(\frac{k}{2} +\varepsilon)$-approximation for the same problem with running-time $\mathcal{O}(|V|^3|E|/\varepsilon)$, for any fixed $\varepsilon>0$. Additionally, we propose a fixed-parameter tractable algorithm based on integer linear programming for the unweighted $\text{max-min BCP}_k$ parameterized by the size of a vertex cover.
△ Less
Submitted 23 August, 2021;
originally announced August 2021.
-
Refactoring the Whitby Intelligent Tutoring System for Clean Architecture
Authors:
Paul S. Brown,
Vania Dimitrova,
Glen Hart,
Anthony G. Cohn,
Paulo Moura
Abstract:
Whitby is the server-side of an Intelligent Tutoring System application for learning System-Theoretic Process Analysis (STPA), a methodology used to ensure the safety of anything that can be represented with a systems model. The underlying logic driving the reasoning behind Whitby is Situation Calculus, which is a many-sorted logic with situation, action, and object sorts. The Situation Calculus i…
▽ More
Whitby is the server-side of an Intelligent Tutoring System application for learning System-Theoretic Process Analysis (STPA), a methodology used to ensure the safety of anything that can be represented with a systems model. The underlying logic driving the reasoning behind Whitby is Situation Calculus, which is a many-sorted logic with situation, action, and object sorts. The Situation Calculus is applied to Ontology Authoring and Contingent Scaffolding: the primary activities within Whitby. Thus many fluents and actions are aggregated in Whitby from these two sub-applications and from Whitby itself, but all are available through a common situation query interface that does not depend upon any of the fluents or actions. Each STPA project in Whitby is a single situation term, which is queried for fluents that include the ontology, and to determine what pedagogical interventions to offer.
Initially Whitby was written in Prolog using a module system. In the interest of a cleaner architecture and implementation with improved code reuse and extensibility, the initial application was refactored into Logtalk. This refactoring includes decoupling the Situation Calculus reasoner, Ontology Authoring framework, and Contingent Scaffolding framework into third-party libraries that can be reused in other applications. This extraction was achieved by inverting dependencies via Logtalk protocols and categories, which are reusable interfaces and components that provide functionally cohesive sets of predicate declarations and predicate definitions. In this paper the architectures of two iterations of Whitby are evaluated with respect to the motivations behind the refactor: clean architecture enabling code reuse and extensibility.
△ Less
Submitted 10 August, 2021;
originally announced August 2021.
-
Music Tempo Estimation via Neural Networks -- A Comparative Analysis
Authors:
Mila Soares de Oliveira de Souza,
Pedro Nuno de Souza Moura,
Jean-Pierre Briot
Abstract:
This paper presents a comparative analysis on two artificial neural networks (with different architectures) for the task of tempo estimation. For this purpose, it also proposes the modeling, training and evaluation of a B-RNN (Bidirectional Recurrent Neural Network) model capable of estimating tempo in bpm (beats per minutes) of musical pieces, without using external auxiliary modules. An extensiv…
▽ More
This paper presents a comparative analysis on two artificial neural networks (with different architectures) for the task of tempo estimation. For this purpose, it also proposes the modeling, training and evaluation of a B-RNN (Bidirectional Recurrent Neural Network) model capable of estimating tempo in bpm (beats per minutes) of musical pieces, without using external auxiliary modules. An extensive database (12,550 pieces in total) was curated to conduct a quantitative and qualitative analysis over the experiment. Percussion-only tracks were also included in the dataset. The performance of the B-RNN is compared to that of state-of-the-art models. For further comparison, a state-of-the-art CNN was also retrained with the same datasets used for the B-RNN training. Evaluation results for each model and datasets are presented and discussed, as well as observations and ideas for future research. Tempo estimation was more accurate for the percussion only dataset, suggesting that the estimation can be more accurate for percussion-only tracks, although further experiments (with more of such datasets) should be made to gather stronger evidence.
△ Less
Submitted 19 July, 2021;
originally announced July 2021.
-
Polyhedral study of the Convex Recoloring problem
Authors:
Manoel Campêlo,
Phablo F. S. Moura,
Joel C. Soares
Abstract:
A coloring of the vertices of a connected graph is convex if each color class induces a connected subgraph. We address the convex recoloring (CR) problem defined as follows. Given a graph $G$ and a coloring of its vertices, recolor a minimum number of vertices of $G$ so that the resulting coloring is convex. This problem, known to be NP-hard even on paths, was firstly motivated by applications on…
▽ More
A coloring of the vertices of a connected graph is convex if each color class induces a connected subgraph. We address the convex recoloring (CR) problem defined as follows. Given a graph $G$ and a coloring of its vertices, recolor a minimum number of vertices of $G$ so that the resulting coloring is convex. This problem, known to be NP-hard even on paths, was firstly motivated by applications on perfect phylogenies. In this work, we study CR on general graphs from a polyhedral point of view. First, we introduce a full-dimensional polytope based on the idea of connected subgraphs, and present a class of valid inequalities with righthand side one that comprises all facet-defining inequalities with binary coefficients when the input graph is a tree. Moreover, we define a general class of inequalities with righthand side in $\{1, \ldots, k\}$, where $k$ is the amount of colors used in the initial coloring, and show sufficient conditions for validity and facetness of such inequalities. Finally, we report on computational experiments for an application on mobile networks that can be modeled by the polytope of CR on paths. We evaluate the potential of the proposed inequalities to reduce the integrality gaps.
△ Less
Submitted 25 November, 2019;
originally announced November 2019.
-
Integer Programming Approaches to Balanced Connected $k$-Partition
Authors:
Flávio K. Miyazawa,
Phablo F. S. Moura,
Matheus J. Ota,
Yoshiko Wakabayashi
Abstract:
We address the problem of partitioning a vertex-weighted connected graph into $k$ connected subgraphs that have similar weights, for a fixed integer $k\geq 2$. This problem, known as the \emph{balanced connected $k$-partition problem} ($BCP_k$), is defined as follows. Given a connected graph $G$ with nonnegative weights on the vertices, find a partition $\{V_i\}_{i=1}^k$ of $V(G)$ such that each c…
▽ More
We address the problem of partitioning a vertex-weighted connected graph into $k$ connected subgraphs that have similar weights, for a fixed integer $k\geq 2$. This problem, known as the \emph{balanced connected $k$-partition problem} ($BCP_k$), is defined as follows. Given a connected graph $G$ with nonnegative weights on the vertices, find a partition $\{V_i\}_{i=1}^k$ of $V(G)$ such that each class $V_i$ induces a connected subgraph of $G$, and the weight of a class with the minimum weight is as large as possible. It is known that $BCP_k$ is $NP$-hard even on bipartite graphs and on interval graphs. It has been largely investigated under different approaches and perspectives. On the practical side, $BCP_k$ is used to model many applications arising in police patrolling, image processing, cluster analysis, operating systems and robotics. We propose three integer linear programming formulations for the balanced connected $k$-partition problem. The first one contains only binary variables and a potentially large number of constraints that are separable in polynomial time. Some polyhedral results on this formulation, when all vertices have unit weight, are also presented. The other formulations are based on flows and have a polynomial number of constraints and variables. Preliminary computational experiments have shown that the proposed formulations outperform the other formulations presented in the literature.
△ Less
Submitted 13 November, 2019;
originally announced November 2019.
-
Linked Open Data Validity -- A Technical Report from ISWS 2018
Authors:
Tayeb Abderrahmani Ghor,
Esha Agrawal,
Mehwish Alam,
Omar Alqawasmeh,
Claudia D'amato,
Amina Annane,
Amr Azzam,
Andrew Berezovskyi,
Russa Biswas,
Mathias Bonduel,
Quentin Brabant,
Cristina-iulia Bucur,
Elena Camossi,
Valentina Anita Carriero,
Shruthi Chari,
David Chaves Fraga,
Fiorela Ciroku,
Michael Cochez,
Hubert Curien,
Vincenzo Cutrona,
Rahma Dandan,
Danilo Dess,
Valerio Di Carlo,
Ahmed El Amine Djebri,
Marieke Van Erp
, et al. (46 additional authors not shown)
Abstract:
Linked Open Data (LOD) is the publicly available RDF data in the Web. Each LOD entity is identfied by a URI and accessible via HTTP. LOD encodes globalscale knowledge potentially available to any human as well as artificial intelligence that may want to benefit from it as background knowledge for supporting their tasks. LOD has emerged as the backbone of applications in diverse fields such as Natu…
▽ More
Linked Open Data (LOD) is the publicly available RDF data in the Web. Each LOD entity is identfied by a URI and accessible via HTTP. LOD encodes globalscale knowledge potentially available to any human as well as artificial intelligence that may want to benefit from it as background knowledge for supporting their tasks. LOD has emerged as the backbone of applications in diverse fields such as Natural Language Processing, Information Retrieval, Computer Vision, Speech Recognition, and many more. Nevertheless, regardless of the specific tasks that LOD-based tools aim to address, the reuse of such knowledge may be challenging for diverse reasons, e.g. semantic heterogeneity, provenance, and data quality. As aptly stated by Heath et al. Linked Data might be outdated, imprecise, or simply wrong": there arouses a necessity to investigate the problem of linked data validity. This work reports a collaborative effort performed by nine teams of students, guided by an equal number of senior researchers, attending the International Semantic Web Research School (ISWS 2018) towards addressing such investigation from different perspectives coupled with different approaches to tackle the issue.
△ Less
Submitted 26 March, 2019;
originally announced March 2019.
-
An Adaptable Maturity Strategy for Information Security
Authors:
Gliner Dias Alencar,
Hermano Perrelli de Moura,
Ivaldir Honório de Farias Júnior,
José Gilson de Almeida Teixeira Filho
Abstract:
The lack of security in information systems has caused numerous financial and moral losses to several organizations. The organizations have a series of information security measures recommended by literature and international standards. However, the implementation of policies, actions, and adjustment to such standards is not simple and must be addressed by specific needs identified by the Informat…
▽ More
The lack of security in information systems has caused numerous financial and moral losses to several organizations. The organizations have a series of information security measures recommended by literature and international standards. However, the implementation of policies, actions, and adjustment to such standards is not simple and must be addressed by specific needs identified by the Information Security Governance in each organization. There are many challenges in effectively establishing, maintaining, and measuring information security in a way that adds value. Those challenges demonstrate a need for further investigations which address the problem. This paper presents a strategy to measure the maturity in information security aiming, also, to assist in the application and prioritization of information security actions in the corporate environment. For this, a survey was used as the main methodological instrument, reaching 157 distinct companies. As a result, it was possible to classify the ISO/IEC 27001 and 27002 controls in four stages according to the importance given by the companies. The COBIT maturity levels and a risk analysis matrix were also used. Finally, the adaptable strategy was successfully tested in a company
△ Less
Submitted 16 July, 2018;
originally announced July 2018.
-
Agile Governance Theory: conceptual development
Authors:
Alexandre J. H. de O. Luna,
Philippe Kruchten,
Hermano P. de Moura
Abstract:
Context: Competitiveness is the key to a sustainable development and it demands agility at the business and organizational levels, which in turn requires a flexible and customizable IT environment and effective and responsive governance in order to deliver value to the business. Objective: This paper describes the conceptual development of a theory for analyze and describe agile governance in orde…
▽ More
Context: Competitiveness is the key to a sustainable development and it demands agility at the business and organizational levels, which in turn requires a flexible and customizable IT environment and effective and responsive governance in order to deliver value to the business. Objective: This paper describes the conceptual development of a theory for analyze and describe agile governance in order to increasing the success rate of their practice, achieving organizational performance and business competitiveness. Method: We adopt a multi-method research, framing the theory conceptual development using Dubin's method of theory building. Results: We have developed a conceptual framework of the theory encompassing its constructs, laws of interaction, boundaries and system states. Conclusion: This theory can provide a better understanding of the nature of agile governance, by mapping of its constructs, mediators, moderators and disturbing factors, in order to help organizations reach better results.
△ Less
Submitted 25 May, 2015;
originally announced May 2015.
-
Agile governance in Information and Communication Technologies: shifting paradigms
Authors:
Alexandre J. H. de O. Luna,
Cleyverson P. Costa,
Hermano P. de Moura,
Magdala A. Novaes,
Cesar A. D. C. do Nascimento
Abstract:
This paper presents the basis of the Agile Governance in Information and Communication Technology (ICT), which is based on Agile Software Engineering Methodologies principles and values. Its development was done through a systematic review process, supported by Bibliometrics and Scientometrics methods and techniques, where the Critical Success Factors (CSF) of ICT Governance projects and the princ…
▽ More
This paper presents the basis of the Agile Governance in Information and Communication Technology (ICT), which is based on Agile Software Engineering Methodologies principles and values. Its development was done through a systematic review process, supported by Bibliometrics and Scientometrics methods and techniques, where the Critical Success Factors (CSF) of ICT Governance projects and the principles of the Agile Manifesto were analyzed. Next, through an inductive approach, focused on the convergence between the concepts involved, it was analyzed how agile principles could help to minimize the gap between ICT and business. Evidences of their occurrence were taken through a Conceptual Survey Research. As a result, the foundations and concepts of Agile Governance in ICT were defined and, finally, the development of a reference model was proposed as a future work.
△ Less
Submitted 10 November, 2014;
originally announced November 2014.
-
Systematic Review on Project Actuality
Authors:
S. C. B. Sampaio,
M. L. M. Marinho,
H. P. Moura
Abstract:
Nowadays much is written about how to manage projects, but too little on what really happens in project actuality. Project Actuality came out in the Rethinking Project Management (RPM) agenda in 2006 and it aims at understanding what really happens at project context. To be able to understand project actuality phenomenon, we first need to get a better comprehension on its definition and discover h…
▽ More
Nowadays much is written about how to manage projects, but too little on what really happens in project actuality. Project Actuality came out in the Rethinking Project Management (RPM) agenda in 2006 and it aims at understanding what really happens at project context. To be able to understand project actuality phenomenon, we first need to get a better comprehension on its definition and discover how to observe it and analyse it. This paper presents the results of the systematic review conducted to collect evidence on Project Actuality. The research focused on four search engines, in publications from 1994 to 2013. Among others, the study concludes that project actuality has been analysed by several methods and techniques, mostly on large organization and public sectors, in Northern Europe. The most common definitions, techniques, and tips were identified as well as the intent of transforming the results in knowledge.
△ Less
Submitted 7 November, 2014;
originally announced November 2014.
-
State of the Art of Agile Governance: A Systematic Review
Authors:
Alexandre J. H. de O. Luna,
Philippe Kruchten,
Marcello L. G. do E. Pedrosa,
Humberto R. de Almeida Neto,
Hermano P. de Moura
Abstract:
Context: Agility at the business level requires Information Technology (IT) environment flexible and customizable, as well as effective and responsive governance in order to deliver value faster, better, and cheaper to the business. Objective: To understand better this context, our paper seeks to investigate how the domain of agile governance has evolved, as well as to derive implications for rese…
▽ More
Context: Agility at the business level requires Information Technology (IT) environment flexible and customizable, as well as effective and responsive governance in order to deliver value faster, better, and cheaper to the business. Objective: To understand better this context, our paper seeks to investigate how the domain of agile governance has evolved, as well as to derive implications for research and practice. Method: We conducted a systematic review about the state of art of the agile governance up to and including 2013. Our search strategy identified 1992 studies in 10 databases, of which 167 had the potential to answer our research questions. Results: We organized the studies into four major groups: software engineering, enterprise, manufacturing and multidisciplinary; classifying them into 16 emerging categories. As a result, the review provides a convergent definition for agile governance, six meta- principles, and a map of findings organized by topic and classified by relevance and convergence. Conclusion: The found evidence lead us to believe that agile governance is a relatively new, wide and multidisciplinary area focused on organizational performance and competitiveness that needs to be more intensively studied. Finally, we made improvements and additions to the methodological approach for systematic reviews and qualitative studies.
△ Less
Submitted 7 November, 2014;
originally announced November 2014.
-
A Guide To Deal With Uncertainties In Software Project Management
Authors:
M. L. M. Marinho,
S. C. B. Sampaio,
T. L. A. Lima,
H. P. Moura
Abstract:
Various project management approaches do not consider the impact that uncertainties have on the project. The identified threats by uncertainty in a projec day-to-day are real and immediate and the expectations in a project are often high. The project manager faces a dilemma: decisions must be made in the present about future situations which are inherently uncertain. The use of uncertainty managem…
▽ More
Various project management approaches do not consider the impact that uncertainties have on the project. The identified threats by uncertainty in a projec day-to-day are real and immediate and the expectations in a project are often high. The project manager faces a dilemma: decisions must be made in the present about future situations which are inherently uncertain. The use of uncertainty management in project can be a determining factor for the project success. This paper presents a systematic review about uncertainties management in software projects and a guide is proposed based on the review. It aims to present the best practices to manage uncertainties in software projects in a structured way including techniques and strategies to uncertainties containment.
△ Less
Submitted 7 November, 2014;
originally announced November 2014.
-
Tabling, Rational Terms, and Coinduction Finally Together!
Authors:
Thepfrastos Mantadelis,
Ricardo Rocha,
Paulo Moura
Abstract:
To appear in Theory and Practice of Logic Programming (TPLP). Tabling is a commonly used technique in logic programming for avoiding cyclic behavior of logic programs and enabling more declarative program definitions. Furthermore, tabling often improves computational performance. Rational term are terms with one or more infinite sub-terms but with a finite representation. Rational terms can be gen…
▽ More
To appear in Theory and Practice of Logic Programming (TPLP). Tabling is a commonly used technique in logic programming for avoiding cyclic behavior of logic programs and enabling more declarative program definitions. Furthermore, tabling often improves computational performance. Rational term are terms with one or more infinite sub-terms but with a finite representation. Rational terms can be generated in Prolog by omitting the occurs check when unifying two terms. Applications of rational terms include definite clause grammars, constraint handling systems, and coinduction. In this paper, we report our extension of YAP's Prolog tabling mechanism to support rational terms. We describe the internal representation of rational terms within the table space and prove its correctness. We then use this extension to implement a tabling based approach to coinduction. We compare our approach with current coinductive transformations and describe the implementation. In addition, we present an algorithm that ensures a canonical representation for rational terms.
△ Less
Submitted 15 May, 2014; v1 submitted 9 May, 2014;
originally announced May 2014.
-
Customisable Handling of Java References in Prolog Programs
Authors:
Sergio Castro,
Kim Mens,
Paulo Moura
Abstract:
Integration techniques for combining programs written in distinct language paradigms facilitate the implementation of specialised modules in the best language for their task. In the case of Java-Prolog integration, a known problem is the proper representation of references to Java objects on the Prolog side. To solve it adequately, multiple dimensions should be considered, including reference repr…
▽ More
Integration techniques for combining programs written in distinct language paradigms facilitate the implementation of specialised modules in the best language for their task. In the case of Java-Prolog integration, a known problem is the proper representation of references to Java objects on the Prolog side. To solve it adequately, multiple dimensions should be considered, including reference representation, opacity of the representation, identity preservation, reference life span, and scope of the inter-language conversion policies. This paper presents an approach that addresses all these dimensions, generalising and building on existing representation patterns of foreign references in Prolog, and taking inspiration from similar inter-language representation techniques found in other domains. Our approach maximises portability by making few assumptions about the Prolog engine interacting with Java (e.g., embedded or executed as an external process). We validate our work by extending JPC, an open-source integration library, with features supporting our approach. Our JPC library is currently compatible with three different open source Prolog engines (SWI, YAP} and XSB) by means of drivers. To appear in Theory and Practice of Logic Programming (TPLP).
△ Less
Submitted 29 May, 2014; v1 submitted 12 May, 2014;
originally announced May 2014.
-
L-FLAT: Logtalk Toolkit for Formal Languages and Automata Theory
Authors:
Paulo Moura,
Artur Miguel Dias
Abstract:
We describe L-FLAT, a Logtalk Toolkit for teaching Formal Languages and Automata Theory. L-FLAT supports the definition of \textsl{alphabets}, the definition of \textsl{orders} over alphabet symbols, the partial definition of \textsl{languages} using unit tests, and the definition of \textsl{mechanisms}, which implement language generators or language recognizers. Supported mechanisms include \tex…
▽ More
We describe L-FLAT, a Logtalk Toolkit for teaching Formal Languages and Automata Theory. L-FLAT supports the definition of \textsl{alphabets}, the definition of \textsl{orders} over alphabet symbols, the partial definition of \textsl{languages} using unit tests, and the definition of \textsl{mechanisms}, which implement language generators or language recognizers. Supported mechanisms include \textsl{predicates}, \textsl{regular expressions}, \textsl{finite automata}, \textsl{context-free grammars}, \textsl{Turing machines}, and \textsl{push-down automata}. L-FLAT entities are implemented using the object-oriented features of Logtalk, providing a highly portable and easily extendable framework. The use of L-FLAT in educational environments is enhanced by supporting Mooshak, a web application that features automatic grading of submitted programs.
△ Less
Submitted 16 December, 2011;
originally announced December 2011.
-
Optimal k-fold colorings of webs and antiwebs
Authors:
Manoel Campêlo,
Ricardo C. Corrêa,
Phablo F. S. Moura,
Marcio C. Santos
Abstract:
A k-fold x-coloring of a graph is an assignment of (at least) k distinct colors from the set {1, 2, ..., x} to each vertex such that any two adjacent vertices are assigned disjoint sets of colors. The smallest number x such that G admits a k-fold x-coloring is the k-th chromatic number of G, denoted by χ_k(G). We determine the exact value of this parameter when G is a web or an antiweb. Our result…
▽ More
A k-fold x-coloring of a graph is an assignment of (at least) k distinct colors from the set {1, 2, ..., x} to each vertex such that any two adjacent vertices are assigned disjoint sets of colors. The smallest number x such that G admits a k-fold x-coloring is the k-th chromatic number of G, denoted by χ_k(G). We determine the exact value of this parameter when G is a web or an antiweb. Our results generalize the known corresponding results for odd cycles and imply necessary and sufficient conditions under which χ_k(G) attains its lower and upper bounds based on the clique, the fractional chromatic and the chromatic numbers. Additionally, we extend the concept of χ-critical graphs to χ_k-critical graphs. We identify the webs and antiwebs having this property, for every integer k <= 1.
△ Less
Submitted 29 August, 2011;
originally announced August 2011.
-
Towards a Study of Meta-Predicate Semantics
Authors:
Paulo Moura
Abstract:
We describe and compare design choices for meta-predicate semantics, as found in representative Prolog module systems and in Logtalk. We look at the consequences of these design choices from a pragmatic perspective, discussing explicit qualification semantics, computational reflection support, expressiveness of meta-predicate declarations, safety of meta-predicate definitions, portability of meta-…
▽ More
We describe and compare design choices for meta-predicate semantics, as found in representative Prolog module systems and in Logtalk. We look at the consequences of these design choices from a pragmatic perspective, discussing explicit qualification semantics, computational reflection support, expressiveness of meta-predicate declarations, safety of meta-predicate definitions, portability of meta-predicate definitions, and meta-predicate performance. Our aim is to provide useful insight for debating meta-predicate semantics and portability issues based on actual implementations and common usage patterns.
△ Less
Submitted 20 September, 2010;
originally announced September 2010.
-
Signatures of small-world and scale-free properties in large computer programs
Authors:
Alessandro P. S. de Moura,
Ying-Cheng Lai,
Adilson E. Motter
Abstract:
A large computer program is typically divided into many hundreds or even thousands of smaller units, whose logical connections define a network in a natural way. This network reflects the internal structure of the program, and defines the ``information flow'' within the program. We show that, (1) due to its growth in time this network displays a scale-free feature in that the probability of the…
▽ More
A large computer program is typically divided into many hundreds or even thousands of smaller units, whose logical connections define a network in a natural way. This network reflects the internal structure of the program, and defines the ``information flow'' within the program. We show that, (1) due to its growth in time this network displays a scale-free feature in that the probability of the number of links at a node obeys a power-law distribution, and (2) as a result of performance optimization of the program the network has a small-world structure. We believe that these features are generic for large computer programs. Our work extends the previous studies on growing networks, which have mostly been for physical networks, to the domain of computer software.
△ Less
Submitted 24 June, 2003;
originally announced June 2003.