Michaela Greiler

ORCID: 0000-0002-2636-0560
Publications
Citations
Views
---
Saved
---
About
Contact & Profiles
Research Areas
  • Software Engineering Research
  • Software Engineering Techniques and Practices
  • Software Testing and Debugging Techniques
  • Open Source Software Innovations
  • Software System Performance and Reliability
  • Software Reliability and Analysis Research
  • Advanced Software Engineering Methodologies
  • Service-Oriented Architecture and Web Services
  • Advanced Malware Detection Techniques
  • Innovative Approaches in Technology and Social Development
  • Big Data and Business Intelligence
  • Information Systems Theories and Implementation
  • Peer-to-Peer Network Technologies
  • Advanced Data Storage Technologies
  • Design Education and Practice
  • Spreadsheets and End-User Computing
  • Caching and Content Delivery
  • Data Visualization and Analytics
  • Human-Automation Interaction and Safety
  • Knowledge Management and Sharing
  • Team Dynamics and Performance
  • Visual and Cognitive Learning Processes

Microsoft Research (United Kingdom)
2017-2024

University of Zurich
2022-2024

Microsoft (United States)
2015-2018

Delft University of Technology
2009-2013

Institute for Interdisciplinary Studies of Austrian Universities
2008

Code review has been widely adopted by and adapted to open source industrial projects. practices have undergone extensive research, with most studies relying on trace data from tool reviews, sometimes augmented surveys interviews. Several recent research studies, along blog posts white papers, revealed additional insights code reviewing “from the trenches.” Unfortunately, lessons learned about are dispersed poorly summarized existing literature. In particular, practitioners wishing adopt or...

10.1109/ms.2017.265100500 article EN IEEE Software 2017-06-16

Over the past decade, both open source and commercial software projects have adopted contemporary peer code review practices as a quality control mechanism. Prior research has shown that developers spend large amount of time effort performing reviews. Therefore, identifying factors lead to useful reviews can benefit by increasing effectiveness quality. In three-stage mixed study, we qualitatively investigated what aspects make them developers, used our findings build verify classification...

10.1109/msr.2015.21 article EN 2015-05-01

Over the past decade, both open source and commercial software projects have adopted contemporary peer code review practices as a quality control mechanism. Prior research has shown that developers spend large amount of time effort performing reviews. Therefore, identifying factors lead to useful reviews can benefit by increasing effectiveness quality. In three-stage mixed study, we qualitatively investigated what aspects make them developers, used our findings build verify classification...

10.5555/2820518.2820538 article EN Mining Software Repositories 2015-05-16

Testing is a key element of software development processes for the management and assessment product quality. In most environments, engineers are responsible ensuring functional correctness code. However, large complex products, there an additional need to check that changes do not negatively impact other parts they comply with system constraints such as backward compatibility, performance, security etc. Ensuring these may require verification infrastructure test procedures. Although tests...

10.1109/icse.2015.66 article EN 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering 2015-05-01

Designing automated tests is a challenging task. One important concern how to design test fixtures, i.e. code that initializes and configures the system under so it in an appropriate state for running particular tests. Test designers may have choose between writing in-line fixture each or refactor can be reused other Deciding on which approach use balancing act, often trading off maintenance overhead with slow execution. Additionally, over time, quality erode smells develop, such as...

10.1109/icst.2013.45 article EN 2013-03-01

Testing is a key element of software development processes for the management and assessment product quality. In most environments, engineers are responsible ensuring functional correctness code. However, large complex products, there an additional need to check that changes do not negatively impact other parts they comply with system constraints such as backward compatibility, performance, security etc. Ensuring these may require verification infrastructure test procedures. Although tests...

10.5555/2818754.2818815 article EN International Conference on Software Engineering 2015-05-16

Testing plug-in-based systems is challenging due to complex interactions among many different plug-ins, and variations in version configuration. The objective of this paper increase our understanding what testers developers think do when it comes testing systems. To that end, we conduct a qualitative (grounded theory) study, which interview 25 senior practitioners about how they test plug-in applications based on the Eclipse architecture. outcome an overview practices currently used, set...

10.5555/2337223.2337253 article EN International Conference on Software Engineering 2012-06-02

Because of its many uses and benefits, code reviews are a standard part the modern software engineering workflow. Since they require involvement people, reviewing is often longest integration activities. Using experience gained at Microsoft with support data, we posit (1) that do not find functionality issues should block submission; (2) effective be performed by people specific set skills; (3) social aspect cannot ignored. We need to more sophisticated our guidelines for review show how...

10.1109/icse.2015.131 article EN 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering 2015-05-01

An important challenge in creating automated tests is how to design test fixtures, i.e., the setup code that initializes system under before actual testing can start. Test designers have choose between different approaches for setup, trading off maintenance overhead with slow execution. Over time, quality erode and smells develop, such as occurrence of overly general obscure inline dead fields. In this paper, we investigate fixture-related evolve over time by analyzing several thousand...

10.1109/msr.2013.6624053 article EN 2013-05-01

Developer experience is an important concern for software organizations as enhancing developer improves productivity, satisfaction, engagement and retention. We set out to understand what affects through semi-structured interviews with 21 developers from industry, which we transcribed iteratively coded. Our findings elucidate factors that affect characteristics influence their respective importance individual developers. also identify strategies employed by individuals teams improve the...

10.1109/tse.2022.3175660 article EN IEEE Transactions on Software Engineering 2022-05-31

In a traditional sense, ownership determines rights and duties in regard to an object, for example property. The owner of source code usually refers the person that invented code. However, larger artifacts, such as files, are composed by multiple engineers contributing entity over time through series changes. Frequently, with highest contribution, e.g. most number changes, is defined takes responsibility it. Thus, relates knowledge have about Lacking can reduce quality. earlier study, Bird...

10.1109/msr.2015.8 article EN 2015-05-01

Because of its many uses and benefits, code reviews are a standard part the modern software engineering workflow. Since they require involvement people, reviewing is often longest integration activities. Using experience gained at Microsoft with support data, we posit (1) that do not find functionality issues should block submission; (2) effective be performed by people specific set skills; (3) social aspect cannot ignored. We need to more sophisticated our guidelines for review show how...

10.5555/2819009.2819015 article EN International Conference on Software Engineering 2015-05-16

Testing plug-in-based systems is challenging due to complex interactions among many different plug-ins, and variations in version configuration. The objective of this paper increase our understanding what testers developers think do when it comes testing systems. To that end, we conduct a qualitative (grounded theory) study, which interview 25 senior practitioners about how they test plug-in applications based on the Eclipse architecture. outcome an overview practices currently used, set...

10.1109/icse.2012.6227189 article EN 2013 35th International Conference on Software Engineering (ICSE) 2012-06-01

In a traditional sense, ownership determines rights and duties in regard to an object, for example property. The owner of source code usually refers the person that invented code. However, larger artifacts, such as files, are composed by multiple engineers contributing entity over time through series changes. Frequently, with highest contribution, e.g. most number changes, is defined takes responsibility it. Thus, relates knowledge have about Lacking can reduce quality. earlier study, Bird...

10.5555/2820518.2820522 article EN Mining Software Repositories 2015-05-16

Service-oriented architectures (SOAs) have found their ways into industry to enable better business-to-business cooperation. With the advent of SOA, new challenges for software development and testing also appeared. In this article, we motivate need SOA online show how it can reveal faults that slipped offline testing. The paper outlines a case study in which has been implemented as proof-of-concept, but evaluated terms its effectiveness identify typical runtime reconfiguration problems...

10.1145/1808885.1808893 article EN 2010-05-01

Developer experience focuses on the lived of developers and points friction they encounter in their everyday work. In addition to improving productivity, DevEx drives business performance through increased efficiency, product quality, employee retention. This paper provides a practical framework for understanding DevEx, presents measurement that combines feedback from with data about engineering systems interact with. These two frameworks provide leaders clear, actionable insights into what...

10.1145/3595878 article EN Queue 2023-04-30

The developer-centric approach to measuring and improving productivity.

10.1145/3610285 article EN Communications of the ACM 2023-10-20

Modern Information and Communications Technology (ICT) solutions are often widely distributed highly dynamic service oriented architectures (SOA) with stringent availability requirements. Availability implies that SOA must be reconfigured, updated maintained during runtime, while retaining their overall operational integrity. This requires much of the adaptation, integration, configuration testing activities typically performed offline, development time, now have to done online, runtime....

10.1109/taicpart.2009.16 article EN 2009-01-01

Delivering a new set of capabilities for managing and improving Microsoft’s code-review process was the primary goal right from start. In course accomplishing that, much also learned about certain general principles. fact, subsequent research has offered surprising evidence just how similar impact can be when many these principles are followed at companies other than Microsoft.

10.1145/3291276.3292420 article EN Queue 2018-10-01

Plug-in architectures enable developers to build extensible software products. Such products are assembled from plug-ins, and their functionality can be enriched by adding or configuring plug-ins. The plug-ins themselves consist also of multiple offer dedicated points through which influenced. A well-known example such an architecture is Eclipse, best known for its use create a series IDEs. In order test systems built extensive automated suites. Unfortunately, current testing tools little...

10.1109/wcre.2010.16 article EN 2010-10-01

The two main topics of this dissertation are plug-in-based systems and test suite comprehension. In particular, challenges during testing revealed, reverse engineering based techniques to support developers comprehension presented.

10.4233/uuid:34a51f6a-a286-42ed-b9f1-2c9221b10ec3 article EN 2013-04-22
Coming Soon ...