3947
2010
eng
conferenceobject
0
2010-02-26
--
--
How Often do Experts Make Mistakes?
Large open-source software projects involve developers with a wide variety of backgrounds and expertise. Such software projects furthermore include many internal APIs that developers must understand and use properly. According to the intended purpose of these APIs, they are more or less frequently used, and used by developers with more or less expertise. In this paper, we study the impact of usage patterns and developer expertise on the rate of defects occurring in the use of internal APIs. For this preliminary study, we focus on memory management APIs in the Linux kernel, as the use of these has been shown to be highly error prone in previous work. We study defect rates and developer expertise, to consider e.g., whether widely used APIs are more defect prone because they are used by less experienced developers, or whether defects in widely used APIs are more likely to be fixed.
urn:nbn:de:kobv:517-opus-41327
4132
Proceedings of the 9th Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS '10) / Bram Adams, Michael Haupt, Daniel Lohmann (Hrsg.). - Potsdam : Universitätsverlag Potsdam, 2010. - ISBN 978-3-86956-043-4. - S. 9 - 17
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
Nicolas Palix
Julia L. Lawall
Gaël Thomas
Gilles Muller
eng
uncontrolled
History of pattern occurrences
eng
uncontrolled
bug tracking
eng
uncontrolled
Herodotos
eng
uncontrolled
Coccinelle
Datenverarbeitung; Informatik
Metrics (D.4.8)
Language Constructs and Features (E.2)
open_access
Session 1: Adepts of Code and the Wizards of OS
Hasso-Plattner-Institut für Digital Engineering gGmbH
Universität Potsdam
https://publishup.uni-potsdam.de/files/3947/tbhpi33_S9_15.pdf
3948
2010
eng
conferenceobject
0
2010-02-26
--
--
Preface
Aspect-oriented programming, component models, and design patterns are modern and actively evolving techniques for improving the modularization of complex software. In particular, these techniques hold great promise for the development of "systems infrastructure" software, e.g., application servers, middleware, virtual machines, compilers, operating systems, and other software that provides general services for higher-level applications. The developers of infrastructure software are faced with increasing demands from application programmers needing higher-level support for application development. Meeting these demands requires careful use of software modularization techniques, since infrastructural concerns are notoriously hard to modularize. Aspects, components, and patterns provide very different means to deal with infrastructure software, but despite their differences, they have much in common. For instance, component models try to free the developer from the need to deal directly with services like security or transactions. These are primary examples of crosscutting concerns, and modularizing such concerns are the main target of aspect-oriented languages. Similarly, design patterns like Visitor and Interceptor facilitate the clean modularization of otherwise tangled concerns. Building on the ACP4IS meetings at AOSD 2002-2009, this workshop aims to provide a highly interactive forum for researchers and developers to discuss the application of and relationships between aspects, components, and patterns within modern infrastructure software. The goal is to put aspects, components, and patterns into a common reference frame and to build connections between the software engineering and systems communities.
urn:nbn:de:kobv:517-opus-41338
4133
Proceedings of the 9th Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS '10) / Bram Adams, Michael Haupt, Daniel Lohmann (Hrsg.). - Potsdam : Universitätsverlag Potsdam, 2010. - ISBN 978-3-86956-043-4. - S. 1 - 7
ST 230
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
deu
uncontrolled
Aspektorientierte Softwareentwicklung
deu
uncontrolled
Systemsoftware
deu
uncontrolled
Middleware
deu
uncontrolled
Virtuelle Maschinen
deu
uncontrolled
Betriebssysteme
eng
uncontrolled
systems software
eng
uncontrolled
middleware
eng
uncontrolled
virtual machines
eng
uncontrolled
operating systems
Datenverarbeitung; Informatik
open_access
Preface
Hasso-Plattner-Institut für Digital Engineering gGmbH
Universität Potsdam
https://publishup.uni-potsdam.de/files/3948/tbhpi33_S1_7.pdf
3949
2010
eng
conferenceobject
0
2010-02-26
--
--
Towards reusable aspects: the callback mismatch problem
Because software development is increasingly expensive and timeconsuming, software reuse gains importance. Aspect-oriented software development modularizes crosscutting concerns which enables their systematic reuse. Literature provides a number of AOP patterns and best practices for developing reusable aspects based on compelling examples for concerns like tracing, transactions and persistence. However, such best practices are lacking for systematically reusing invasive aspects. In this paper, we present the ‘callback mismatch problem’. This problem arises in the context of abstraction mismatch, in which the aspect is required to issue a callback to the base application. As a consequence, the composition of invasive aspects is cumbersome to implement, difficult to maintain and impossible to reuse. We motivate this problem in a real-world example, show that it persists in the current state-of-the-art, and outline the need for advanced aspectual composition mechanisms to deal with this.
urn:nbn:de:kobv:517-opus-41347
4134
Proceedings of the 9th Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS '10) / Bram Adams, Michael Haupt, Daniel Lohmann (Hrsg.). - Potsdam : Universitätsverlag Potsdam, 2010. - ISBN 978-3-86956-043-4. - S. 17 - 20
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
Maarten Bynens
Dimitri Van Landuyt
Eddy Truyen
Wouter Joosen
eng
uncontrolled
reusable aspects
eng
uncontrolled
invasive aspects
eng
uncontrolled
aspect adapter
Datenverarbeitung; Informatik
open_access
Session 1: Adepts of Code and the Wizards of OS
Hasso-Plattner-Institut für Digital Engineering gGmbH
Universität Potsdam
https://publishup.uni-potsdam.de/files/3949/tbhpi33_S17-25.pdf
https://publishup.uni-potsdam.de/files/3949/tbhpi33_S17_25.pdf
3971
2010
eng
conferenceobject
Gesellschaft für Logische Programmierung e.V.
0
2010-03-04
--
--
A tool for generating partition schedules of multiprocessor systems
A deterministic cycle scheduling of partitions at the operating system level is supposed for a multiprocessor system. In this paper, we propose a tool for generating such schedules. We use constraint based programming and develop methods and concepts for a combined interactive and automatic partition scheduling system. This paper is also devoted to basic methods and techniques for modeling and solving this partition scheduling problem. Initial application of our partition scheduling tool has proved successful and demonstrated the suitability of the methods used.
urn:nbn:de:kobv:517-opus-41556
4155
Proceedings of the 23rd Workshop on (Constraint) Logic Programming 2009 / Geske, Ulrich; Wolf, Armin (Hrsg.). - Potsdam : Universitätsverlag, 2010. - S. 167 - 176
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
Hans-Joachim Goltz
Norbert Pieth
Datenverarbeitung; Informatik
open_access
Practice of Logic Programming
Extern
Universität Potsdam
https://publishup.uni-potsdam.de/files/3971/wlp09_S167_176.pdf
3983
2010
eng
doctoralthesis
1
2010-03-09
--
2010-02-23
Architecture synthesis for adaptive multiprocessor systems on chip
Architektursynthese adaptiver On-Chip Multiprozessor-Systeme
This thesis presents methods for automated synthesis of flexible chip multiprocessor systems from parallel programs targeted at FPGAs to exploit both task-level parallelism and architecture customization. Automated synthesis is necessitated by the complexity of the design space. A detailed description of the design space is provided in order to determine which parameters should be modeled to facilitate automated synthesis by optimizing a cost function, the emphasis being placed on inclusive modeling of parameters from application, architectural and physical subspaces, as well as their joint coverage in order to avoid pre-constraining the design space. Given a parallel program and a set of an IP library, the automated synthesis problem is to simultaneously (i) select processors (ii) map and schedule tasks to them, and (iii) select one or several networks for inter-task communications such that design constraints and optimization objectives are met. The research objective in this thesis is to find a suitable model for automated synthesis, and to evaluate methods of using the model for architectural optimizations. Our contributions are a holistic approach for the design of such systems, corresponding models to facilitate automated synthesis, evaluation of optimization methods using state of the art integer linear and answer set programming, as well as the development of synthesis heuristics to solve runtime challenges.
Aktuelle Technologien erlauben es komplexe Multiprozessorsysteme auf einem Chip mit Milliarden von Transistoren zu realisieren. Der Entwurf solcher Systeme ist jedoch zeitaufwendig und schwierig. Diese Arbeit befasst sich mit der Frage, wie On-Chip Multiprozessorsysteme ausgehend von parallelen Programmen automatisch synthetisiert werden können. Die Implementierung der Multiprozessorsysteme auf rekonfigurierbaren Chips erlaubt es die gesamte Architektur an die Struktur eines vorliegenden parallelen Programms anzupassen. Auf diese Weise ist es möglich die aktuellen technologischen Unzulänglichkeiten zu umgehen, insbesondere die nicht weitersteigende Taktfrequenzen sowie den langsamen Zugriff auf Datenspeicher. Eine Automatisierung des Entwurfs von Multiprozessorsystemen ist notwendig, da der Entwurfsraum von Multiprozessorsystemen zu groß ist, um vom Menschen überschaut zu werden. In einem ersten Ansatz wurde das Syntheseproblem mittels linearer Gleichungen modelliert, die dann durch lineare Programmierungswerkzeuge gelöst werden können. Ausgehend von diesem Ansatz wurde untersucht, wie die typischerweise langen Rechenzeiten solcher Optimierungsmethoden durch neuere Methode aus dem Gebiet der Erfüllbarkeitsprobleme der Aussagenlogik minimiert werden können. Dabei wurde die Werkzeugskette Potassco verwendet, in der lineare Programme direkt in Logikprogramme übersetzt werden können. Es wurde gezeigt, dass dieser zweite Ansatz die Optimierungszeit um bis zu drei Größenordnungen beschleunigt. Allerdings lassen sich große Syntheseprobleme auf diese weise wegen Speicherbegrenzungen nicht lösen. Ein weiterer Ansatz zur schnellen automatischen Synthese bietet die Verwendung von Heuristiken. Es wurden im Rahmen diese Arbeit drei Heuristiken entwickelt, die die Struktur des vorliegenden Syntheseproblems ausnutzen, um die Optimierungszeit zu minimieren. Diese Heuristiken wurden unter Berücksichtigung theoretischer Ergebnisse entwickelt, deren Ursprung in der mathematische Struktur des Syntheseproblems liegt. Dadurch lassen sich optimale Architekturen in kurzer Zeit ermitteln. Die durch diese Dissertation offen gewordene Forschungsarbeiten sind u. a. die Berücksichtigung der zeitlichen Reihenfolge des Datenaustauschs zwischen parallelen Tasks, die Optimierung des logik-basierten Ansatzes, die Integration von Prozessor- und Netzwerksimulatoren zur funktionalen Verifikation synthetisierter Architekturen, sowie die Entwicklung geeigneter Architekturkomponenten.
urn:nbn:de:kobv:517-opus-41316
4131
CCS-Klassifikation: C.3 , C.1.4 , C.0
ST 195
ST 190
ishebabi@uni-potsdam.de | harold.ishebabi@ieee.org
Harold Ishebabi
deu
uncontrolled
Multiprozessor
deu
uncontrolled
rekonfigurierbar
deu
uncontrolled
Synthese
deu
uncontrolled
Parallelrechner
deu
uncontrolled
Exploration
eng
uncontrolled
Multiprocessor
eng
uncontrolled
Reconfigurable
eng
uncontrolled
High-Level Synthesis
eng
uncontrolled
Parallel Programming
eng
uncontrolled
Exploration
Datenverarbeitung; Informatik
open_access
Institut für Informatik und Computational Science
Universität Potsdam
Universität Potsdam
https://publishup.uni-potsdam.de/files/3983/ishebabi_diss.pdf
3953
2010
eng
conferenceobject
0
2010-02-26
--
--
Malleability, obliviousness and aspects for broadcast service attachment
An important characteristic of Service-Oriented Architectures is that clients do not depend on the service implementation's internal assignment of methods to objects. It is perhaps the most important technical characteristic that differentiates them from more common object-oriented solutions. This characteristic makes clients and services malleable, allowing them to be rearranged at run-time as circumstances change. That improvement in malleability is impaired by requiring clients to direct service requests to particular services. Ideally, the clients are totally oblivious to the service structure, as they are to aspect structure in aspect-oriented software. Removing knowledge of a method implementation's location, whether in object or service, requires re-defining the boundary line between programming language and middleware, making clearer specification of dependence on protocols, and bringing the transaction-like concept of failure scopes into language semantics as well. This paper explores consequences and advantages of a transition from object-request brokering to service-request brokering, including the potential to improve our ability to write more parallel software.
urn:nbn:de:kobv:517-opus-41389
4138
Proceedings of the 9th Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS '10) / Bram Adams, Michael Haupt, Daniel Lohmann (Hrsg.). - Potsdam : Universitätsverlag Potsdam, 2010. - ISBN 978-3-86956-043-4. - S. 41 - 47
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
William Harrison
eng
uncontrolled
service-oriented
eng
uncontrolled
aspect-oriented
eng
uncontrolled
programming language
eng
uncontrolled
middleware
eng
uncontrolled
concurrency
Datenverarbeitung; Informatik
Software Architectures (NEW)
Language Constructs and Features (E.2)
open_access
Session 3: Fantastic Frameworks and Infamous Infrastructures
Hasso-Plattner-Institut für Digital Engineering gGmbH
Universität Potsdam
https://publishup.uni-potsdam.de/files/3953/tbhpi33_S41_47.pdf
3957
2010
eng
conferenceobject
Gesellschaft für Logische Programmierung e.V.
0
2010-03-03
--
--
Overview of the monadic constraint programming framework
A constraint programming system combines two essential components: a constraint solver and a search engine. The constraint solver reasons about satisfiability of conjunctions of constraints, and the search engine controls the search for solutions by iteratively exploring a disjunctive search tree defined by the constraint program. The Monadic Constraint Programming framework gives a monadic definition of constraint programming where the solver is defined as a monad threaded through the monadic search tree. Search and search strategies can then be defined as firstclass objects that can themselves be built or extended by composable search transformers. Search transformers give a powerful and unifying approach to viewing search in constraint programming, and the resulting constraint programming system is first class and extremely flexible.
urn:nbn:de:kobv:517-opus-41411
4141
Proceedings of the 23rd Workshop on (Constraint) Logic Programming 2009 / Geske, Ulrich; Wolf, Armin (Hrsg.). - Potsdam : Universitätsverlag, 2010. - S. 1 - 15
ST 304
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
Tom Schrijvers
Datenverarbeitung; Informatik
open_access
Invited Talks
Extern
Universität Potsdam
https://publishup.uni-potsdam.de/files/3957/wlp09_S1_15.pdf
4204
2010
eng
81
book
Universitätsverlag Potsdam
Potsdam
1
2010-07-07
--
--
Pattern Matching for an object-oriented and dynamically typed programming language
Pattern matching is a well-established concept in the functional programming community. It provides the means for concisely identifying and destructuring values of interest. This enables a clean separation of data structures and respective functionality, as well as dispatching functionality based on more than a single value. Unfortunately, expressive pattern matching facilities are seldomly incorporated in present object-oriented programming languages. We present a seamless integration of pattern matching facilities in an object-oriented and dynamically typed programming language: Newspeak. We describe language extensions to improve the practicability and integrate our additions with the existing programming environment for Newspeak. This report is based on the first author’s master’s thesis.
urn:nbn:de:kobv:517-opus-43035
4303
978-3-86956-065-6
ST 230
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
Felix Geller
Robert Hirschfeld
Gilad Bracha
Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam
36
deu
uncontrolled
Pattern Matching
deu
uncontrolled
Musterabgleich
deu
uncontrolled
Muster
deu
uncontrolled
Objekt-Orientiertes Programmieren
deu
uncontrolled
Dynamische Typ Systeme
eng
uncontrolled
Pattern Matching
eng
uncontrolled
Patterns
eng
uncontrolled
Object-Oriented Programming
eng
uncontrolled
Dynamic Type System
Datenverarbeitung; Informatik
open_access
Hasso-Plattner-Institut für Digital Engineering gGmbH
Universitätsverlag Potsdam
Universität Potsdam
https://publishup.uni-potsdam.de/files/4204/tbhpi36.pdf
42934
2010
2020
eng
17
854
postprint
1
2020-03-18
2020-03-18
--
Biomarker discovery in heterogeneous tissue samples
Background: For heterogeneous tissues, such as blood, measurements of gene expression are confounded by relative proportions of cell types involved. Conclusions have to rely on estimation of gene expression signals for homogeneous cell populations, e.g. by applying micro-dissection, fluorescence activated cell sorting, or in-silico deconfounding. We studied feasibility and validity of a non-negative matrix decomposition algorithm using experimental gene expression data for blood and sorted cells from the same donor samples. Our objective was to optimize the algorithm regarding detection of differentially expressed genes and to enable its use for classification in the difficult scenario of reversely regulated genes. This would be of importance for the identification of candidate biomarkers in heterogeneous tissues.
Results: Experimental data and simulation studies involving noise parameters estimated from these data revealed that for valid detection of differential gene expression, quantile normalization and use of non-log data are optimal. We demonstrate the feasibility of predicting proportions of constituting cell types from gene expression data of single samples, as a prerequisite for a deconfounding-based classification approach. Classification cross-validation errors with and without using deconfounding results are reported as well as sample-size dependencies. Implementation of the algorithm, simulation and analysis scripts are available.
Conclusions: The deconfounding algorithm without decorrelation using quantile normalization on non-log data is proposed for biomarkers that are difficult to detect, and for cases where confounding by varying proportions of cell types is the suspected reason. In this case, a deconfounding ranking approach can be used as a powerful alternative to, or complement of, other statistical learning approaches to define candidate biomarkers for molecular diagnosis and prediction in biomedicine, in realistically noisy conditions and with moderate sample sizes.
Postprints der Universität Potsdam : Mathematisch-Naturwissenschaftliche Reihe
taking the in-silico deconfounding approach
10.25932/publishup-42934
urn:nbn:de:kobv:517-opus4-429343
1866-8372
BMC Bioinformatics 11 (2010) 27 DOI: 10.1186/1471-2105-11-27
27
Dirk Repsilber
Sabine Kern
Anna Telaar
Gerhard Walzl
Gillian F. Black
Joachim Selbig
Shreemanta K. Parida
Stefan H. E. Kaufmann
Marc Jacobsen
Zweitveröffentlichungen der Universität Potsdam : Mathematisch-Naturwissenschaftliche Reihe
854
eng
uncontrolled
differential gene expression
eng
uncontrolled
quantile normalization
eng
uncontrolled
heterogeneous tissue
eng
uncontrolled
gene expression matrix
eng
uncontrolled
homogeneous cell population
eng
uncontrolled
selection
eng
uncontrolled
microdissection
Datenverarbeitung; Informatik
Biowissenschaften; Biologie
Medizin und Gesundheit
open_access
Mathematisch-Naturwissenschaftliche Fakultät
Referiert
Open Access
Universität Potsdam
https://publishup.uni-potsdam.de/files/42934/pmnr854.pdf
6189
2010
deu
13
22
10
4
article
Universitätsverlag Potsdam
Potsdam
0
--
--
--
Vorkurse in objektorientierter Programmierung
Die Studienanfänger der Informatik haben in Deutschland sehr unterschiedliche Grundkenntnisse in der Programmierung. Dies führt immer wieder zu Schwierigkeiten in der Ausrichtung der Einführungsveranstaltungen. An der TU München wird seit dem Wintersemester 2008/2009 nun eine neue Art von Vorkursen angeboten. In nur 2,5 Tagen erstellen die Teilnehmer ein kleines objektorientiertes Programm. Dabei arbeiten sie weitestgehend alleine, unterstützt von einem studentischen Tutor. In dieser Arbeit sollen nun das Konzept der sogenannten „Vorprojekte“ sowie erste Forschungsansätze vorgestellt werden
Commentarii informaticae didacticae : (CID)
urn:nbn:de:kobv:517-opus-64299
6429
1868-0844
2191-1940
HDI2010 – Tagungsband der 4. Fachtagung zur „Hochschuldidaktik Informatik“/Engbring et al. (Hrsg.)/ Potsdam: Universitätsverlag Potsdam, 2010/ S. 13-22
SR 910
Keine öffentliche Lizenz: Unter Urheberrechtsschutz
Marc Berges
Peter Hubwieser
Datenverarbeitung; Informatik
open_access
CID (2010) 04
Institut für Informatik und Computational Science
Universität Potsdam
https://publishup.uni-potsdam.de/files/6189/13_22_berges_hubwieser.pdf