Kellen Donohue

Kellen Donohue

San Francisco Bay Area
773 followers 500+ connections

About

• 10+ years at Palantir and Google leading teams on real-time analytics and…

Experience

  • Postman Graphic

    Postman

    San Francisco, California, United States

  • -

    San Francisco Bay Area

  • -

  • -

  • -

    Mountain View, California

  • -

    Greater Seattle Area

  • -

  • -

    Seattle, Wa

  • -

    Greater Seattle Area

  • -

  • -

  • -

Education

Licenses & Certifications

Publications

  • Case Studies and Tools for Contract Specifications

    International Conference on Software Engineering

    Contracts are a popular tool for specifying the functional behavior of software. This paper characterizes the contracts that developers write, the contracts that developers could write, and how a developer reacts when shown the difference.

    This paper makes three research contributions based on an investigation of open-source projects' use of Code Contracts. First, we characterize Code Contract usage in practice. For example, approximately three-fourths of the Code Contracts are basic…

    Contracts are a popular tool for specifying the functional behavior of software. This paper characterizes the contracts that developers write, the contracts that developers could write, and how a developer reacts when shown the difference.

    This paper makes three research contributions based on an investigation of open-source projects' use of Code Contracts. First, we characterize Code Contract usage in practice. For example, approximately three-fourths of the Code Contracts are basic checks for the presence of data. We discuss similarities and differences in usage across the projects, and we identify annotation burden, tool support, and training as possible explanations based on developer interviews. Second, based on contracts automatically inferred for four of the projects, we find that developers underutilize contracts for expressing state updates, object state indicators, and conditional properties. Third, we performed user studies to learn how developers decide which contracts to enforce. The developers used contract suggestions to support their existing use cases with more expressive contracts. However, the suggestions did not lead them to experiment with other use cases for which contracts are better-suited.

    In support of the research contributions, the paper presents two engineering contributions: (1) Celeriac, a tool for generating traces of .NET programs compatible with the Daikon invariant detection tool, and (2) Contract Inserter, a Visual Studio add-in for discovering and inserting likely invariants as Code Contracts.

    Other authors
    See publication

Patents

  • Integrated Data Authentication System with an Interactive User Interface

    Issued US US10628002B1

Courses

  • Artificial Intelligence

    CSE 573

  • Compilers

    CSE 501

  • Distributed Computing

    CSE P 552

  • Parallel Computation

    CSE P 505

  • Programming Languages

    CSE 505

  • Security

    CSE 584

Projects

Languages

  • English

    -

View Kellen’s full profile

  • See who you know in common
  • Get introduced
  • Contact Kellen directly
Join to view full profile

Other similar profiles

Explore top content on LinkedIn

Find curated posts and insights for relevant topics all in one place.

View top content

Add new skills with these courses