Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Julian Tschannen is active.

Publication


Featured researches published by Julian Tschannen.


Proceedings of the 2011 Community Building Workshop on Collaborative Teaching of Globally Distributed Software Development | 2011

Teaching software engineering using globally distributed projects: the DOSE course

Martin Nordio; Carlo Ghezzi; Bertrand Meyer; Elisabetta Di Nitto; Giordano Tamburrelli; Julian Tschannen; Nazareno Aguirre; Vidya Kulkarni

Distributed software development poses new software engineering challenges. To prepare student for these new challenges, we have been teaching software engineering using globally distributed projects. The projects were developed in collaboration with eleven universities in ten different countries in Europe, Asia, and South America. This paper reports the experience teaching the course, describing the settings, problems faced organizing the projects and the lessons learned.


international conference on software engineering | 2011

Usable verification of object-oriented programs by combining static and dynamic techniques

Julian Tschannen; Carlo A. Furia; Martin Nordio; Bertrand Meyer

With formal techniques becoming more and more powerful, the next big challenge is making software verification practical and usable. The Eve verification environment contributes to this goal by seamlessly integrating a static prover and an automatic testing tool into a development environment. The paper discusses the general principles behind the integration of heterogeneous verification tools; the peculiar challenges involved in combining static proofs and dynamic testing techniques; and how the combination, implemented in Eve through a blackboard architecture, can improve the user experience with little overhead over usual development practices. Eve is freely available for download.


formal methods | 2014

Flexible Invariants through Semantic Collaboration

Nadia Polikarpova; Julian Tschannen; Carlo A. Furia; Bertrand Meyer

Modular reasoning about class invariants is challenging in the presence of collaborating objects that need to maintain global consistency. This paper presents semantic collaboration: a novel methodology to specify and reason about class invariants of sequential object-oriented programs, which models dependencies between collaborating objects by semantic means. Combined with a simple ownership mechanism and useful default schemes, semantic collaboration achieves the flexibility necessary to reason about complicated inter-object dependencies but requires limited annotation burden when applied to standard specification patterns. The methodology is implemented in AutoProof, our program verifier for the Eiffel programming language but it is applicable to any language supporting some form of representation invariants. An evaluation on several challenge problems proposed in the literature demonstrates that it can handle a variety of idiomatic collaboration patterns, and is more widely applicable than the existing invariant methodologies.


international conference on global software engineering | 2011

How Do Distribution and Time Zones Affect Software Development? A Case Study on Communication

Martin Nordio; H.-Christian Estler; Bertrand Meyer; Julian Tschannen; Carlo Ghezzi; Elisabetta Di Nitto

Software projects have crossed seas and continents looking for talented developers, moving from local developments to geographically distributed projects. This paper presents a case study analyzing the effect of distribution and time zones on communication in distributed projects. The study was performed in a university course during two semesters, where students developed projects jointly with teams located in ten different countries in South America, Europe, and Asia. The study compares the results of the projects distributed in two locations with projects distributed in three locations. It also analyzes projects in different time zone ranges. The initial results show that the amount of communication in projects distributed in two locations is bigger than the communication in projects distributed in three locations. We also found that projects in closer time zones have more communication than projects in farther time zones. Furthermore, we analyze the reply time for e-mails of projects distributed in different time zones, and discuss the challenges faced by the students during these projects.


TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns | 2010

Reasoning about function objects

Martin Nordio; Cristiano Calcagno; Bertrand Meyer; Peter Müller; Julian Tschannen

Modern object-oriented languages support higher-order implementations through function objects such as delegates in C#, agents in Eiffel, or closures in Scala. Function objects bring a new level of abstraction to the object-oriented programming model, and require a comparable extension to specification and verification techniques. We introduce a verification methodology that extends function objects with auxiliary side-effect free (pure) methods to model logical artifacts: preconditions, postconditions and modifies clauses. These pure methods can be used to specify client code abstractly, that is, independently from specific instantiations of the function objects. To demonstrate the feasibility of our approach, we have implemented an automatic prover, which verifies several non-trivial examples.


FoVeOOS'11 Proceedings of the 2011 international conference on Formal Verification of Object-Oriented Software | 2011

The COST IC0701 verification competition 2011

Thorsten Bormer; Marc Brockschmidt; Dino Distefano; Gidon Ernst; Jean-Christophe Filliâtre; Radu Grigore; Marieke Huisman; Vladimir Klebanov; Claude Marché; Rosemary Monahan; Wojciech Mostowski; Nadia Polikarpova; Christoph Scheben; Gerhard Schellhorn; Bogdan Tofan; Julian Tschannen; Mattias Ulbrich

This paper reports on the experiences with the program verification competition held during the FoVeOOS conference in October 2011. There were 6 teams participating in this competition. We discuss the three different challenges that were posed and the solutions developed by the teams. We conclude with a discussion about the value of such competitions and lessons learned from them.


formal methods | 2015

A Fully Verified Container Library

Nadia Polikarpova; Julian Tschannen; Carlo A. Furia

The comprehensive functionality and nontrivial design of realistic general- purpose container libraries pose challenges to formal verification that go beyond those of individual benchmark problems mainly targeted by the state of the art. We present our experience verifying the full functional correctness of Eiffel- Base2: a container library offering all the features customary in modern language frameworks, such as external iterators, and hash tables with generic mutable keys and load balancing. Verification uses the automated deductive verifier AutoProof, which we extended as part of the present work. Our results indicate that verification of a realistic container library (135 public methods, 8,400 LOC) is possible with moderate annotation overhead (1.4 lines of specification per LOC) and good performance (0.2 seconds per method on average).


LASER Summer School on Software Engineering | 2012

Automatic Verification of Advanced Object-Oriented Features: The AutoProof Approach

Julian Tschannen; Carlo A. Furia; Martin Nordio; Bertrand Meyer

Static program verifiers such as Spec#, Dafny, jStar, and VeriFast define the state of the art in automated functional verification techniques. The next open challenges are to make verification tools usable even by programmers not fluent in formal techniques. This paper discusses some techniques used in AutoProof, a verification tool that translates Eiffel programs to Boogie and uses the Boogie verifier to prove them. In an effort to be usable with real programs, AutoProof fully supports several advanced object-oriented features including polymorphism, inheritance, and function objects. AutoProof also adopts simple strategies to reduce the amount of annotations needed when verifying programs (e.g., frame conditions). The paper illustrates the main features of AutoProof’s translation, including some whose implementation is underway, and demonstrates them with examples and a case study.


verified software theories tools experiments | 2013

Program Checking with Less Hassle

Julian Tschannen; Carlo A. Furia; Martin Nordio; Bertrand Meyer

The simple and often imprecise specifications that programmers may write are a significant limit to a wider application of rigorous program verification techniques. Part of the reason why non-specialists find writing good specification hard is that, when verification fails, they receive little guidance as to what the causes might be, such as implementation errors or inaccurate specifications. To address these limitations, this paper presents two-step verification, a technique that combines implicit specifications, inlining, and loop unrolling to provide improved user feedback when verification fails. Two-step verification performs two independent verification attempts for each program element: one using standard modular reasoning, and another one after inlining and unrolling; comparing the outcomes of the two steps suggests which elements should be improved. Two-step verification is implemented in AutoProof, our static verifier for Eiffel programs integrated in EVE the Eiffel Verification Environment and available online.


tools and algorithms for construction and analysis of systems | 2015

AutoProof: Auto-Active Functional Verification of Object-Oriented Programs

Julian Tschannen; Carlo A. Furia; Martin Nordio; Nadia Polikarpova

Collaboration


Dive into the Julian Tschannen's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Christoph Scheben

Karlsruhe Institute of Technology

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge