@misc{162,
  author       = {{Zhang, Guangli}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Program Slicing: A Way of Separating WHILE Programs into Precise and Approximate Portions}}},
  year         = {{2016}},
}

@misc{164,
  author       = {{Czech, Mike}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Predicting Rankings of Software Verification Tools Using Kernels for Structured Data}}},
  year         = {{2016}},
}

@misc{133,
  abstract     = {{.}},
  author       = {{Dewender, Markus}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Verifikation von Service Kompositionen mit Spin}}},
  year         = {{2016}},
}

@misc{134,
  abstract     = {{.}},
  author       = {{Heinisch, Philipp}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Verifikation von Service Kompositionen mit Prolog}}},
  year         = {{2016}},
}

@inproceedings{250,
  abstract     = {{Before execution, users should formally validate the correctness of software received from untrusted providers. To accelerate this validation, in the proof carrying code (PCC) paradigm the provider delivers the software together with a certificate, a formal proof of the software’s correctness. Thus, the user only checks if the attached certificate shows correctness of the delivered software.Recently, we introduced configurable program certification, a generic, PCC based framework supporting various software analyses and safety properties. Evaluation of our framework revealed that validation suffers from certificate reading. In this paper, we present two orthogonal approaches which improve certificate validation, both reducing the impact of certificate reading. The first approach reduces the certificate size, storing information only if it cannot easily be recomputed. The second approach partitions the certificate into independently checkable parts. The trick is to read parts of the certificate while already checking read parts. Our experiments show that validation highly benefits from our improvements.}},
  author       = {{Jakobs, Marie-Christine}},
  booktitle    = {{Proceedings of the 13th International Conference on Software Engineering and Formal Methods (SEFM)}},
  pages        = {{159----174}},
  title        = {{{Speed Up Configurable Certificate Validation by Certificate Reduction and Partitioning}}},
  doi          = {{10.1007/978-3-319-22969-0_12}},
  year         = {{2015}},
}

@inproceedings{283,
  abstract     = {{Today, software verification is an established analysis method which can provide high guarantees for software safety. However, the resources (time and/or memory) for an exhaustive verification are not always available, and analysis then has to resort to other techniques, like testing. Most often, the already achieved partial verification results arediscarded in this case, and testing has to start from scratch.In this paper, we propose a method for combining verification and testing in which testing only needs to check the residual fraction of an uncompleted verification. To this end, the partial results of a verification run are used to construct a residual program (and residual assertions to be checked on it). The residual program can afterwards be fed into standardtesting tools. The proposed technique is sound modulo the soundness of the testing procedure. Experimental results show that this combinedusage of verification and testing can significantly reduce the effort for the subsequent testing.}},
  author       = {{Czech, Mike and Jakobs, Marie-Christine and Wehrheim, Heike}},
  booktitle    = {{Fundamental Approaches to Software Engineering}},
  editor       = {{Egyed, Alexander and Schaefer, Ina}},
  pages        = {{100--114}},
  title        = {{{Just test what you cannot verify!}}},
  doi          = {{10.1007/978-3-662-46675-9_7}},
  year         = {{2015}},
}

@inproceedings{285,
  abstract     = {{We propose an incremental workflow for the verification of parameterized systems modeled as symmetric networks of timed automata. Starting with a small number of timed automata in the network, a safety property is verified using IC3, a state-of-the-art algorithm based on induction.The result of the verification, an inductive strengthening, is reused proposing a candidate inductive strengthening for a larger network.If the candidate is valid, our main theorem states that the safety property holds for all sizes of the network of timed automata. Otherwise the number of automata is increased and the next iteration is started with a new run of IC3.We propose and thoroughly examine optimizations to our workflow, e.g. Feedback mechanisms to speed up the run of IC3.}},
  author       = {{Isenberg, Tobias}},
  booktitle    = {{Proceedings of the 15th International Conference on Application of Concurrency to System Design (ACSD)}},
  pages        = {{1--9 }},
  title        = {{{Incremental Inductive Verification of Parameterized Timed Systems}}},
  doi          = {{10.1109/ACSD.2015.13}},
  year         = {{2015}},
}

@phdthesis{246,
  author       = {{Besova, Galina}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Systematic Development and Re-Use of Model Tranformations}}},
  year         = {{2015}},
}

@inproceedings{262,
  abstract     = {{Programs from Proofs" is a generic method which generates new programs out of correctness proofs of given programs. The technique ensures that the new and given program are behaviorally equivalent and that the new program is easily verifiable, thus serving as an alternative to proof-carrying code concepts. So far, this generic method has one instantiation that verifies type-state properties of programs. In this paper, we present a whole range of new instantiations, all based on data ow analyses. More precisely, we show how an imprecise but fast data ow analysis can be enhanced with a predicate analysis as to yield a precise but expensive analysis. Out of the safety proofs of this analysis, we generate new programs, again behaviorally equivalent to the given ones, which are easily verifiable" in the sense that now the data ow analysis alone can yield precise results. An experimental evaluation practically supports our claim of easy verification.}},
  author       = {{Jakobs, Marie-Christine and Wehrheim, Heike}},
  booktitle    = {{Proceedings of the 30th Annual ACM Symposium on Applied Computing}},
  pages        = {{1729--1736}},
  title        = {{{Programs from Proofs of Predicated Dataflow Analyses}}},
  doi          = {{10.1145/2695664.2695690}},
  year         = {{2015}},
}

@article{290,
  abstract     = {{Model transformation is a key concept in model-driven software engineering. The definition of model transformations is usually based on meta-models describing the abstract syntax of languages. While meta-models are thereby able to abstract from uperfluous details of concrete syntax, they often loose structural information inherent in languages, like information on model elements always occurring together in particular shapes. As a consequence, model transformations cannot naturally re-use language structures, thus leading to unnecessary complexity in their development as well as in quality assurance.In this paper, we propose a new approach to model transformation development which allows to simplify the developed transformations and improve their quality via the exploitation of the languages׳ structures. The approach is based on context-free graph grammars and transformations defined by pairing productions of source and target grammars. We show that such transformations have important properties: they terminate and are sound, complete, and deterministic.}},
  author       = {{Besova, Galina and Steenken, Dominik and Wehrheim, Heike}},
  journal      = {{Computer Languages, Systems & Structures}},
  pages        = {{116--138}},
  publisher    = {{Elsevier}},
  title        = {{{Grammar-based model transformations: Definition, execution, and quality properties}}},
  doi          = {{10.1016/j.cl.2015.05.003}},
  year         = {{2015}},
}

@article{3162,
  author       = {{Ziegert, Steffen and Wehrheim, Heike}},
  journal      = {{Computer Science - R & D}},
  number       = {{3-4}},
  pages        = {{303----320}},
  title        = {{{Temporal plans for software architecture reconfiguration}}},
  doi          = {{10.1007/s00450-014-0259-7}},
  year         = {{2015}},
}

@inproceedings{3163,
  author       = {{Meyer, Roland and Wehrheim, Heike}},
  booktitle    = {{Correct System Design - Symposium in Honor of Ernst-R{\"{u}}diger Olderog on the Occasion of His 60th Birthday, Oldenburg, Germany, September 8-9, 2015. Proceedings}},
  editor       = {{Meyer, Roland and Platzer, Andr{\'{e}} and Wehrheim, Heike}},
  pages        = {{3----4}},
  title        = {{{From Program Verification to Time and Space: The Scientific Life of Ernst-R{\"{u}}diger Olderog}}},
  doi          = {{10.1007/978-3-319-23506-6_1}},
  year         = {{2015}},
}

@inproceedings{3164,
  author       = {{Derrick, John and Dongol, Brijesh and Schellhorn, Gerhard and Travkin, Oleg and Wehrheim, Heike}},
  booktitle    = {{{FM} 2015: Formal Methods - 20th International Symposium, Oslo, Norway, June 24-26, 2015, Proceedings}},
  editor       = {{Bj{\o}rner, Nikolaj and S. de Boer, Frank}},
  pages        = {{161----177}},
  title        = {{{Verifying Opacity of a Transactional Mutex Lock}}},
  doi          = {{10.1007/978-3-319-19249-9_11}},
  year         = {{2015}},
}

@inproceedings{3165,
  author       = {{Wehrheim, Heike and Travkin, Oleg}},
  booktitle    = {{Hardware and Software: Verification and Testing - 11th International Haifa Verification Conference, {HVC} 2015, Haifa, Israel, November 17-19, 2015, Proceedings}},
  editor       = {{Piterman, Nir}},
  pages        = {{104----119}},
  title        = {{{{TSO} to {SC} via Symbolic Execution}}},
  doi          = {{10.1007/978-3-319-26287-1_7}},
  year         = {{2015}},
}

@proceedings{3166,
  editor       = {{Meyer, Roland and Platzer, Andr{\'{e}} and Wehrheim, Heike}},
  isbn         = {{978-3-319-23505-9}},
  title        = {{{Correct System Design - Symposium in Honor of Ernst-R{\"{u}}diger Olderog on the Occasion of His 60th Birthday, Oldenburg, Germany, September 8-9, 2015. Proceedings}}},
  doi          = {{10.1007/978-3-319-23506-6}},
  year         = {{2015}},
}

@inproceedings{336,
  abstract     = {{Today, service compositions often need to be assembled or changed on-the-fly, which leaves only little time for quality assurance. Moreover, quality assurance is complicated by service providers only giving information on their services in terms of domain specific concepts with only limited semantic meaning. In this paper, we propose a method to construct service compositions based on pre-verifiedtemplates. Templates, given as workflow descriptions, are typed over a (domain-independent) template ontology defining concepts and predicates. Templates are proven correct using an abstract semantics, leaving the specific meaning of ontology concepts open, however, only up to given ontology rules. Construction of service compositions amounts to instantiation of templates with domain-specific services.Correctness of an instantiation can then simply be checked by verifying that the domain ontology(a) adheres to the rules of the template ontology, and (b) fulfills the constraints of the employed template.}},
  author       = {{Walther, Sven and Wehrheim, Heike}},
  booktitle    = {{Proceedings of the 11th International Symposium on Formal Aspects of Component Software (FACS)}},
  editor       = {{Lanese, Ivan and Madelaine, Eric}},
  pages        = {{31--48}},
  title        = {{{Verified Service Compositions by Template-Based Construction}}},
  doi          = {{10.1007/978-3-319-15317-9_3}},
  year         = {{2014}},
}

@misc{340,
  author       = {{Korth, Philipp}},
  publisher    = {{Universität Paderborn}},
  title        = {{{Untersuchung transitiver Eigenschaften der Technik "Programs from Proofs"}}},
  year         = {{2014}},
}

@inproceedings{344,
  author       = {{Becker, Matthias and Becker, Steffen and Besova, Galina and Walther, Sven and Wehrheim, Heike}},
  booktitle    = {{Proceedings of the 40th Euromicro Conference on Software Engineering and Advanced Applications (Work in Progress Session)}},
  title        = {{{Towards Systematic Configuration for Architecture Validation}}},
  year         = {{2014}},
}

@inproceedings{353,
  abstract     = {{There are many technologies for the automation of processesthat deal with services; examples are service discovery and composition.Automation of these processes requires that the services are described semantically. However, semantically described services are currently not oronly rarely available, which limits the applicability of discovery and composition approaches. The systematic support for creating new semanticservices usable by automated technologies is an open problem.We tackle this problem with a template based approach: Domain independent templates are instantiated with domain specific services andboolean expressions. The obtained services have semantic descriptionswhose correctness directly follows from the correctness of the template.Besides the theory, we present experimental results for a service repository in which 85% of the services were generated automatically.}},
  author       = {{Mohr, Felix and Walther, Sven}},
  booktitle    = {{Proceedings of the 14th International Conference on Software Reuse (ICSR)}},
  pages        = {{188--203}},
  title        = {{{Template-based Generation of Semantic Services}}},
  doi          = {{10.1007/978-3-319-14130-5_14}},
  year         = {{2014}},
}

@inproceedings{383,
  abstract     = {{Proof-carrying code approaches aim at safe execution of untrusted code by having the code producer attach a safety proof to the code which the code consumer only has to validate. Depending on the type of safety property, proofs can however become quite large and their validation - though faster than their construction - still time consuming. In this paper we introduce a new concept for safe execution of untrusted code. It keeps the idea of putting the time consuming part of proving on the side of the code producer, however, attaches no proofs to code anymore but instead uses the proof to transform the program into an equivalent but more eﬃciently veriﬁable program. Code consumers thus still do proving themselves, however, on a computationally inexpensive level only. Experimental results show that the proof eﬀort can be reduced by several orders of magnitude, both with respect to time and space.}},
  author       = {{Wonisch, Daniel and Schremmer, Alexander and Wehrheim, Heike}},
  booktitle    = {{Proceedings of the Software Engineering Conference (SE)}},
  pages        = {{67--68}},
  title        = {{{Programs from Proofs -- Approach and Applications}}},
  year         = {{2014}},
}

