ICGSE '20: Proceedings of the 15th International Conference on Global Software Engineering
SESSION: Agile methods
Expanding the responsibility of an offshore team and sustainably increasing business value using SAFe
The paper outlines a four-year journey of a software engineering team based in Bangalore, India, which transitioned from having the responsibility of different modules to complete engineering responsibility of the range of software products. The paper also talks about the proactive steps taken to transition to Scaled Agile Framework (SAFe) [1] successfully and discusses the challenges related to people and team culture. The paper also summarizes lessons learned from the journey.
ICOOOLPS 2021: Proceedings of the 16th ACM International Workshop on Implementation, Compilation, Optimization of OO Languages, Programs and Systems
SESSION: Paper
Naïve transient cast insertion isn't (that) bad
Transient gradual type systems often depend on type-based cast insertion to achieve good performance: casts are inserted whenever the static checker detects that a dynamically-typed value may flow into a statically-typed context. Transient gradually typed programs are then often executed using just-in-time compilation, and contemporary just-in-time compilers are very good at removing redundant computations.
ICPC 2014- Proceedings of the 22nd International Conference on Program Comprehension
SESSION: Invited Talks
Innovating in india: designing for constraint, computing for inclusion (keynote)
The MoJo family: a story about clustering evaluation (invited talk)
SESSION: Architecture
Do architectural design decisions improve the understanding of software architecture? two controlled experiments
Revealing the relationship between architectural elements and source code characteristics
SESSION: Supporting Software Engineers
Understanding LDA in source code analysis
A diagnosis-based approach to software comprehension
dsOli: data structure operation location and identification
Version history, similar report, and structure: putting them together for improved bug localization
Understanding the database manipulation behavior of programs
On mapping releases to commits in open source systems
SESSION: Collaborative and Human Aspects
Ranking crowd knowledge to assist software development
How do API changes trigger stack overflow discussions? a study on the Android SDK
Towards more accurate content categorization of API discussions
CODES: mining source code descriptions from developers discussions
Condensing class diagrams by analyzing design and network metrics using optimistic classification
An information visualization feature model for supporting the selection of software visualizations
Enabling integrated development environments with natural user interface interactions
SESSION: Recommendations
Amalgamating source code authors, maintainers, and change proneness to triage change requests
Mining unit tests for code recommendation
Recommending automated extract method refactorings
Identifying and locating interference issues in PHP applications: the case of WordPress
SESSION: Joint Session with CHASE 1
Prioritizing maintainability defects based on refactoring recommendations
SESSION: Joint Session with CHASE 2
How the evolution of emerging collaborations relates to code changes: an empirical study
SESSION: Understanding Comprehension
On the effect of code regularity on comprehension
Capturing software traceability links from developers' eye gazes
Comprehension support during knowledge transitions: learning from field
A visualization tool recording historical data of program comprehension tasks
An empirical comparison of static and dynamic type systems on API usage in the presence of an IDE: Java vs. groovy with eclipse
What is the foundation of evidence of human factors decisions in language design? an empirical study on programming language workshops
SESSION: Software Quality
Domain matters: bringing further evidence of the relationships among anti-patterns, application domains, and quality-related metrics in Java mobile apps
SCQAM: a scalable structured code quality assessment method for industrial software
Repeatedly-executed-method viewer for efficient visualization of execution paths and states in Java
A formal evaluation of DepDegree based on weyuker's properties
Hey! are you committing tangled changes?
A semiautomated method for classifying program analysis rules into a quality model
An approach for evaluating and suggesting method names using n-gram models
Cross-language bug localization
SESSION: Novel Development Tooling
Automatic documentation generation via source code summarization of method context
Improving topic model source code summarization
A code obfuscation framework using code clones
JCSD: visual support for understanding code control structure
Plagiarism detection for multithreaded software based on thread-aware software birthmarks
Redacting sensitive information in software artifacts
ICPC '18- Proceedings of the 26th Conference on Program Comprehension
SESSION: Keynote
Mining the mind, minding the mine: grand challenges in comprehension and mining
The program comprehension and mining software repository communities are, in practice, two separate research endeavors. One is concerned with what's happening in a developer's mind, while the other is concerned with what's happening in a team. And yet, implicit in these fields is a common goal to make better software and the common approach of influencing developer decisions. In this keynote, I provide several examples of this overlap, suggesting several grand challenges in comprehension and mining.
ICPC '20: Proceedings of the 28th International Conference on Program Comprehension
SESSION: NONE
On the Equivalence of Information Retrieval Methods for Automated Traceability Link Recovery: A Ten-Year Retrospective
At ICPC 2010 we presented an empirical study to statistically analyze the equivalence of several traceability recovery methods based on Information Retrieval (IR) techniques [1]. We experimented the Vector Space Model (VSM) [2], Latent Semantic Indexing (LSI) [3], the Jensen-Shannon (JS) method [4], and Latent Dirichlet Allocation (LDA) [5]. Unlike previous empirical studies we did not compare the different IR based traceability recovery methods only using the usual precision and recall metrics. We introduced some metrics to analyze the overlap of the set of candidate links recovered by each method. We also based our analysis on Principal Component Analysis (PCA) to analyze the orthogonality of the experimented methods. The results showed that while the accuracy of LDA was lower than previously used methods, LDA was able to capture some information missed by the other exploited IR methods. Instead, JS, VSM, and LSI were almost equivalent. This paved the way to possible integration of IR based traceability recovery methods [6].
ICPE '21: Proceedings of the ACM/SPEC International Conference on Performance Engineering
SESSION: Session 1: Testing, Measurement and Profiling
ConfProf: White-Box Performance Profiling of Configuration Options
Modern software systems are highly customizable through configuration options. The sheer size of the configuration space makes it challenging to understand the performance influence of individual configuration options and their interactions under a specific usage scenario. Software with poor performance may lead to low system throughput and long response time. This paper presents ConfProf, a white-box performance profiling technique with a focus on configuration options. ConfProf helps developers understand how configuration options and their interactions influence the performance of a software system. The approach combines dynamic program analysis, machine learning, and feedback-directed configuration sampling to profile the program execution and analyze the performance influence of configuration options. Compared to existing approaches, ConfProf uses a white-box approach combined with machine learning to rank performance-influencing configuration options from execution traces. We evaluate the approach with 13 scenarios of four real-world, highly-configurable software systems. The results show that ConfProf ranks performance-influencing configuration options with high accuracy and outperform a state of the art technique.
ICPE '18- Proceedings of the 2018 ACM/SPEC International Conference on Performance Engineering
SESSION: Keynote and Invited Talks
Performance Engineering for the SKA Telescope
AI Techniques in Software Engineering Paradigm
Benchmarks and Models for Blockchain
SESSION: Runtime Adaptation
FOX: Cost-Awareness for Autonomic Resource Management in Public Clouds
Adaptive Performance Optimization under Power Constraint in Multi-thread Applications with Diverse Scalability
Optimising Dynamic Binary Modification Across ARM Microarchitectures
TESS: Automated Performance Evaluation of Self-Healing and Self-Adaptive Distributed Software Systems
To Adapt or Not to Adapt?: Technical Debt and Learning Driven Self-Adaptation for Managing Runtime Performance
SESSION: High Performance Computing
Involving CPUs into Multi-GPU Deep Learning
Measuring Network Latency Variation Impacts to High Performance Computing Application Performance
Pattern-based Modeling of Multiresilience Solutions for High-Performance Computing
Energy and Performance Analysis of Parallel Particle Solvers from the ScaFaCoS Library
Characterizing the Microarchitectural Implications of a Convolutional Neural Network (CNN) Execution on GPUs
SESSION: Monitoring and Profiling
Round-Trip Time Anomaly Detection
User-defined Classification and Multi-level Grouping of Objects in Memory Monitoring
Log4Perf: Suggesting Logging Locations for Web-based Systems' Performance Monitoring
ODP: An Infrastructure for On-Demand Service Profiling
SESSION: Cloud Computing
Virtualization Techniques Compared: Performance, Resource, and Power Usage Overheads in Clouds
Investigating Performance Metrics for Scaling Microservices in CloudIoT-Environments
Evaluating Scalability and Performance of a Security Management Solution in Large Virtualized Environments
Runtime Performance Management for Cloud Applications with Adaptive Controllers
Rapid Testing of IaaS Resource Management Algorithms via Cloud Middleware Simulation
Performance Prediction of Cloud-Based Big Data Applications
SESSION: Enterprise Applications
Generating Workload for ERP Applications through End-User Organization Categorization using High Level Business Operation Data
One Size Does Not Fit All: In-Test Workload Adaptation for Performance Testing of Enterprise Applications
Performance Improvement Barriers for SAP Enterprise Applications: An Analysis of Expert Interviews
SESSION: Modeling, Prediction, and Optimization
Joint Data Compression and Caching: Approaching Optimality with Guarantees
Choice of Aggregation Groups for Layered Performance Model Simplification
Optimizing Energy-Performance Trade-Offs in Solar-Powered Edge Devices
SESSION: Load Testing and Benchmarking
A Declarative Approach for Performance Tests Execution in Continuous Software Development Environments
quiho: Automated Performance Regression Testing Using Inferred Resource Utilization Profiles
Characterizing the Performance of Concurrent Virtualized Network Functions with OVS-DPDK, FD.IO VPP and SR-IOV
Methods for Quantifying Energy Consumption in TPC-H
Using the Raspberry Pi and Docker for Replicable Performance Experiments: Experience Paper
ICPE '18- Companion of the 2018 ACM/SPEC International Conference on Performance Engineering
SESSION: Work-in-Progress & Vision Papers
The Vision of Self-aware Reordering of Security Network Function Chains
An Auto-Tuning Framework for a NUMA-Aware Hessenberg Reduction Algorithm
Towards an Efficient Benchmark Generation Engine for Garbage Collection
ABench: Big Data Architecture Stack Benchmark
Towards Scalability Guidelines for Semantic Data Container Management
A SPEC RG Cloud Group's Vision on the Performance Challenges of FaaS Cloud Architectures
DIBS: A Data Integration Benchmark Suite
SPECnet: Predicting SPEC Scores using Deep Learning
Towards Performance Engineering of Model Transformation
Performance Modelling of Smart Cyber-Physical Systems
SESSION: Posters and Demos
SPEC CPU2017: Next-Generation Compute Benchmark
Application Speedup Characterization: Modeling Parallelization Overhead and Variations of Problem Size and Number of Cores.
Criticality-aware Design Space Exploration for Mixed-Criticality Embedded Systems
Challenges in Multicore Performance Predictions
SPARK Job Performance Analysis and Prediction Tool
On the Simulation of Processors Enhanced for Security in Virtualization
SESSION: Tutorials
Tools for Declarative Performance Engineering
Measuring and Benchmarking Power Consumption and Energy Efficiency
SESSION: ENERGY-SIM Workshop
Zero-Energy Internet-of-Things: Energy-SIM'18 Workshop Keynote Abstract
Combining Energy Saving Techniques in Data Centres using Model-Based Analysis
Modular Energy Modeling using Energy/Utility
Energy-Driven Reconfiguration of Applications for Wireless Sensor Networks
Evaluation of Energy Consumption of Replicated Tasks in a Volunteer Computing Environment
SESSION: HotCloudPerf Workshop
Autoscaling Performance Measurement Tool
CAUS: An Elasticity Controller for a Containerized Microservice
Cloud-Scale Java Profiling at Alibaba
Package-Aware Scheduling of FaaS Functions
An Analysis of Workflow Formalisms for Workflows with Complex Non-Functional Requirements
A Performance Study of Big Data Workloads in Cloud Datacenters with Network Variability
SESSION: LTB Workshop
CC4CS: an Off-the-Shelf Unifying Statement-Level Performance Metric for HW/SW Technologies
Towards Automating Representative Load Testing in Continuous Software Engineering
Better Early Than Never: Performance Test Acceleration by Regression Test Selection
A Workload-Dependent Performance Analysis of an In-Memory Database in a Multi-Tenant Configuration
SESSION: PABS Workshop
Investigation of Replication Factor for Performance Enhancement in the Hadoop Distributed File System
Exploratory Analysis of Spark Structured Streaming
SESSION: QUDOS Workshop
Towards the Performance Analysis of Apache Tez Applications
Continuous Integration of Performance Model
Trace Checking of Streaming Applications through DICE-TraCT
A Cloud Benchmark Suite Combining Micro and Applications Benchmarks
Diagnosis of Privacy and Performance Problems in the Context of Mobile Applications
SESSION: WOSP-C Workshop
Software Performance Testing in Virtual Time
Challenges in Automating Performance Tool Support
Predicting the Time to Migrate Into Deadlock Using a Discrete Time Markov Chain
How to Detect Performance Changes in Software History: Performance Analysis of Software System Versions
Performance Prediction for Families of Data-Intensive Software Applications
Adaptive Dispatch: A Pattern for Performance-Aware Software Self-Adaptation
PROWL: Towards Predicting the Runtime of Batch Workloads
ICPE '19- Proceedings of the 2019 ACM/SPEC International Conference on Performance Engineering
SESSION: Keynote & Invited Talks
Software Aging and Software Rejuvenation: Keynote
The study of software failures has now become more important since it has been recognized that computer system outages are more due to software faults than due to hardware faults. The phenome- non of "software aging", in which the state of the software system degrades with time, has been reported in widely used software and also in high-availability and safety-critical systems. The primary causes of this degradation are the exhaustion of operating system resources, data corruption and numerical error accumulation. This may eventually lead to performance degradation of the software system or crash/hang failure or both. To counteract this phenome- non, a proactive approach to fault management, called "software rejuvenation" has been proposed. This essentially involves grace- fully terminating an application or a system and restarting it in a clean internal state. This process removes the accumulated errors and frees up operating system resources. This method therefore avoids or postpones unplanned and potentially expensive system outages due to software aging. In this talk, we discuss methods of evaluating the effectiveness of proactive fault management in operational software systems and determining optimal times to perform rejuvenation.
ICPE '19- Companion of the 2019 ACM/SPEC International Conference on Performance Engineering
SESSION: Work-in-Progress & Vision Papers
Concern-driven Reporting of Software Performance Analysis Results
State-of-the-art approaches for reporting performance analysis results rely on charts providing insights on the performance of the system, often organized in dashboards. The insights are usually data-driven, i.e., not directly connected to the performance concern leading the users to execute the performance engineering activity, thus limiting the understandability of the provided result. A cause is that the data is presented without further explanations.
Copyright (c) 2020 - 2025, SIGSOFT; all rights reserved.
Template by Bootstrapious. Ported to Hugo by DevCows.
