BIGDSE 2016: International Workshop on BIG Data Software Engineering – Austin, Texas, USA

Please submit to the 2nd International Workshop on BIG Data Software Engineering (BIGDSE 2016), a workshop in conjunction with ICSE 2016 in Austin, Texas, USA. The submission deadline is January 22, 2016 (as always, please check the webpage for any extensions). I’m a co-organizer of the workshop.

Big Data is about extracting valuable information from data to use it in intelligent ways such as to revolutionize decision-making in businesses, science and society.

Big Data analytics is able to handle data volume (large data sets), velocity (data arriving at high frequency), variety (heterogeneous and unstructured data) and veracity (data uncertainty) – the so called four Vs of Big Data. Research on software analytics and mining software repositories has delivered promising results mainly focusing on data volume. However, novel opportunities may arise when leveraging the remaining three Vs of Big Data. Examples include using streaming data (velocity), such as monitoring data from services and things, and combining a broad range of heterogeneous data sources (variety) to take decisions about dynamic software adaptation.

BIGDSE’16 aims to explore opportunities that Big Data technology offers to software engineering, both in research and practice (“big data for software engineering”). In addition, BIGDSE’16 will look at the software engineering challenges imposed by building Big Data software systems (“software engineering for big data”).

GAS 2016: International Workshop on Games and Software Engineering – Austin, Texas, USA

Please submit to the Fifth International Workshop on Games and Software Engineering (GAS 2016), a workshop in conjunction with ICSE 2016 in Austin, Texas, USA. The submission deadline is January 22, 2016 (as always, please check the webpage for any extensions). I’m a member of the Program Committee.

GAS 2016 explores issues that crosscut the software engineering and the game engineering communities. Modern games entail the development, integration, and balancing of software capabilities drawn from algorithm design and complexity, artificial intelligence, computer graphics, computer-supported cooperative work/play, database management systems, human-computer interaction and interface design, operating systems and resource/storage management, networking, programming/scripting language design and interpretation, performance monitoring, and more. Few other software system application arenas demand such technical mastery and integration skill. Yet game development is expected to rely on such mastery, and provide a game play experience that most users find satisfying, fun, and engaging. Computer games are thus an excellent domain for which to research and develop new ways and means for software engineering.

BRIDGE 2016: International Workshop on Bringing Architecture Design Thinking into Developers’ Daily Activities – Austin, Texas, USA

Please submit to the First International Workshop on Bringing Architecture Design Thinking into Developers’ Daily Activities (BRIDGE 2016), a workshop in conjunction with ICSE 2016 in Austin, Texas, USA. The submission deadline is January 22, 2016 (as always, please check the webpage for any extensions). I’m a member of the Program Committee.

In software engineering there has traditionally been a distinction between high-level architecting and low-level implementation activities such as coding. Those who are developing and maintain the software are often not engaged in early design phases of the software; junior software programmers tend to lack design thinking and architectural skills. On the other hand, architects are often blamed for not knowing how to write good code or not being engaged in low-level (often technical) challenges of implementing a software system. This causes a knowledge gap which results in software quality issues such as an implementation that is drifted from initial design, missing architectural choices in the code or incorrect implementation of architectural decisions.

The continuous shift towards reducing upfront architecture design efforts, and the popularity of practices such as test-first development, highlight the importance of bridging the software implementation practices with new architecting notions, practices and tools. BRIDGE’16 aims to bring the community of architects, developers, and testers together to identify and formulate challenges related to designing, implementing and maintaining the architecture.

Research, position, and experience papers are invited on any topic that addresses the intersection of architecture and implementation.

The Lenses of Empirical Software Engineering – ESEM 2015 Keynote

I presented the following keynote at the International Symposium on Empirical Software Engineering and Measurement (ESEM 2015).

We live in the golden age of data. In industry, data science is more popular than ever. People with data science skills are in high demand. In this talk, I will shed light on the emerging roles of data scientists. I will distill some of the lessons learned from doing empirical research at Microsoft as well as observing successful data scientists into what I call the lenses of empirical software engineering. You haven’t seen anything until you’ve seen everything.

Ramp-up Journey of New Hires: Tug of War of Aids and Impediments – ESEM 2015

The slides for the paper Ramp-up Journey of New Hires: Tug of War of Aids and Impediments, presented at ESEM 2015.

Data Ninja III: The Rise of Data Scientists in the Software Industry – SBES 2015 Keynote

I presented the following keynote at the Brazilian Software Engineering Symposium (SBES 2015).

There is a new kid in town. Data scientists now help software teams to infer actionable insights from large amounts of data about the development process and the customer usage. To understand this new role, we interviewed and surveyed data scientists across several product groups at Microsoft. In this talk, I will motivate the need for data analytics, introduce questions for data scientists, and characterize how data scientists work in a large software companies such as Microsoft. I will highlight opportunities for researchers, practitioners, and educators.

Belief & Evidence in Empirical Software Engineering – ICSE 2016

Empirical software engineering has produced a steady stream of evidence-based results concerning the factors that affect important outcomes such as cost, quality, and interval. However, programmers often also have strongly-held a priori opinions about these issues. These opinions are important, since developers are highly-trained professionals whose beliefs would doubtless affect their practice. As in evidence-based medicine, disseminating empirical findings to developers is a key step in ensuring that the findings impact practice. In this paper, we describe a case study, on the prior beliefs of developers at Microsoft, and the relationship of these beliefs to actual empirical data on the projects in which these developers work. Our findings are that a) programmers do indeed have very strong beliefs on certain topics b) their beliefs are primarily formed based on personal experience, rather than on findings in empirical research and c) beliefs can vary with each project, but do not necessarily correspond with actual evidence in that project. Our findings suggest that more effort should be taken to disseminate empirical findings to developers and that more in-depth study the interplay of belief & evidence in software practice is needed.

[click for more details…]