Kommerzielle Softwareentwicklung mit Haskell

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Kommerzielle Softwareentwicklung mit Haskell"

Transkript

1 Kommerzielle Softwareentwicklung mit Haskell Ein Erfahrungsbericht Stefan Wehr factis research GmbH, Freiburg im Breisgau 7. Oktober 2011, Hal6 in Leipzig

2 Viele Fragen Wer sind wir? Wer bin ich? Wie setzen wir Haskell im kommerziellen Umfeld ein? Welche Vorteile haben wir durch Haskell? Mit welchen Problemen kämpfen wir? Welche Verbesserungen wären gut? Was haben wir gelernt? 2

3 Frage: Wer sind wir? Wer bin ich? Kleine Firma aus Freiburg i. Brsg. Gegründet 2001 Vier feste, etwa sechs freie Mitarbeiter Produktentwicklung im Bereich mobiler und serverbasierter Anwendungen Über mich: Haskell seit 2003 Erfahrung mit Haskell in zahlreichen wissenschaftlichen Projekten 3

4 Frage: Wie setzen wir Haskell im kommerziellen Umfeld ein? Produkt: Checkpad MED Elektronische Krankenakte auf dem ipad In der Entwicklung seit Anfang 2010 Pilotbetrieb in mehreren Krankenhäusern Substanzieller Teil in Haskell geschrieben 4

5 Architektur von Checkpad MED Krankenhaus Mobile Gateway Haskell SQL, HL7, DICOM XML, HTTP Protocol Buffers ipads Data Server 5

6 Aufgaben des Mobile Gateways Anpassung der Daten für das ipad Workflow Synchronisation 6

7 Architektur des Mobile Gateways XML, HTTP Newswatch Workflow Derivations Sync Protocol Buffers 7

8 Frage: Welche Vorteile haben wir durch Haskell? Hohe Ausdruckskraft Bibliothek zum bidirektionalen Serialisieren/Deserialisieren Statisches Typsystem DAG-Struktur mit statischer Garantie dass nur gewisse Knotentypen verbunden sind Kontrollierte Seiteneffekte Nebenläufigkeit mit STM Test der Netzwerkkommunikation durch Abstraktion über Netzwerkoperationen siehe nächste Folie Gute Testbarkeit QuickCheck Automatische Korrektheit Haskell Community 8

9 Nebenläufigkeit mit STM STM: Software Transactional Memory Atomare Ausführung dezidierter Codeblöcke Keine Locks Atomare Blöcke sind komponierbar Zitat: Ich habe noch nie Code geschrieben der (a) so nebenläufig war und (b) weniger Fehler wegen Nebenläufigkeit enthielt. 9

10 Erfolg mit STM Möglichst kurze Transaktionen do x <- atomically $ do y1 <- readtvar v1 Control.Exception.evaluate x y2 <- readtvar v2 let y1 = expensivecomputation y1 y2 writetvar v1 y1 return y1 Aufteilung des Zustands in TVars Zu grob: hohes Konfliktpotential Zu fein: unbequem, Inkonsistenzen möglich Überwachung wie oft eine Transaktion wiederholt wird 10

11 Frage: Mit welchen Problemen kämpfen wir? Welche Verbesserungen wären gut? Lazyness Laufzeit-Monitoring Bibliotheken, cabal-install Hohe Einstiegshürde 11

12 Lazyness Schwierige Balance zwischen lazy und strikt Striktheitsgrad für das Typsystem unsichtbar Striktheitsfragen sind low-level / operationell Ketzerische Fragen: wäre eine strikte Sprache mit Lazyness-Annotation nicht besser? 12

13 Laufzeit Monitoring Was macht der Server gerade? Warum verursacht eine STM Transaktion so viele Retries? Welche Threads laufen gerade? Welche Konstruktoren werden gerade alloziert?... 13

14 I have a dream Monitoring für Java GHC Profiler offline funktioniert nicht mit mehren Cores hohe Performanzverluste 14

15 Bibliotheken, cabal-install Viele Bibliotheken auf Hackage ungeeignet Nicht skalierbar, nicht performant, nicht korrekt Erfahrung nötig welche Bibliotheken geeignet Schreibe Bibliotheken selbst Problematisch für cabal-install: mehrere Version desselben Pakets Ausweg: eigenes hackage Repository Idee: stabile Teilmenge von hackage 15

16 Einstiegshürde Wenige Programmierer können Haskell Schritt vom Gelegenheitsprogrammierer zum professionellen Haskell Programmierer ist sehr groß Andere Sprache (wie z.b. Scala) bieten einen schrittweisen Einstieg 16

17 Frage: Was haben wir gelernt? Viele positive Erfahrungen mit Haskell Wichtigste negative Erfahrungen: Hohe Einstiegshürde Unzureichendes Runtime Monitoring 17

18 Erfahrungen mit Scala Scala Teilprojekte im Rahmen von Checkpad MED: DICOM Zugriff HL7 Zugriff Webapplikation zur Projektzeiterfassung Portierung der Haskell Bibliothek roundtrip nach Scala 18

19 Vergleich mit Scala Haskell Scala Ausdruckskraft + + Statisches Typsystem + + Kontrollierte Seiteneffekte + - STM +? Testbarkeit + + Automatische Korrektheit ++ + Community +? Lazyness? + Monitoring - + Bibliotheken + ++ Einstieg - + Achtung! Subjektiver Vergleich! 19

20 Resourcen Im Web: Hackage: GHC Profiler: users_guide/profiling.html Roundtrip, Bibliothek zum bidirektionalen Serialisieren/Deserialisieren: HTF, Bibliothek zur Organisation von Unit Tests und QuickCheck Eigentschaften: STM in Haskell: Tim Harris, Simon Marlow, Simon Peyton-Jones, and Maurice Herlihy. Composable memory transactions. In Proceedings of the 10th ACM SIGPLAN symposium on Principles and practice of parallel programming, PPoPP 05, pages 48 60, New York, NY, USA, ACM. STM in Scala: David Pollack über Scala und Java (und fortgeschrittene Programmiersprachen im allgemeinen): 20

Funktionale Programmierung bringt s! Ein Ausflug mit Haskell in die Praxis

Funktionale Programmierung bringt s! Ein Ausflug mit Haskell in die Praxis Funktionale Programmierung bringt s! Ein Ausflug mit Haskell in die Praxis Stefan Wehr (wehr@factisresearch.com) factis research GmbH, Freiburg im Breisgau 17. Juli 2013 Developer MeetUp Freiburg Funktionale

Mehr

Haskell im harten Alltag

Haskell im harten Alltag Haskell im harten Alltag Stefan Wehr (wehr@cp-med.com) Twitter: @skogsbaer factis research GmbH 20. Juni 2014 Haskell im harten Alltag 1 / 39 Wer bin ich? Was machen wir? Haskell Benutzer seit 2003 Zunächst

Mehr

Rich Internet Applications Technologien. Leif Hartmann INF-M3 Anwendungen 2 - Wintersemester 2007/2008 08. Januar 2008

Rich Internet Applications Technologien. Leif Hartmann INF-M3 Anwendungen 2 - Wintersemester 2007/2008 08. Januar 2008 Rich Internet Applications Technologien Leif Hartmann INF-M3 Anwendungen 2 - Wintersemester 2007/2008 08. Januar 2008 Einleitung Inhalt Kategorisierung Technologien E c h o G o o g le W e b T o o lk it

Mehr

Microsoft.NET. InfoPoint 8. Juni 2005 Stefan Bühler

Microsoft.NET. InfoPoint 8. Juni 2005 Stefan Bühler Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler Inhalt Was ist.net Was steckt dahinter Warum ist.net so wie es ist Die Säulen von.net.net Framework 2.0 / VisualStudio 2005 Beispiel Referenzen & Links

Mehr

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Proseminar Objektorientiertes Programmieren mit.net und C# Florian Schulz Institut für Informatik Software & Systems Engineering Einführung Was hat Cross-Plattform

Mehr

Datenhaltung für Android. Model First

Datenhaltung für Android. Model First Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung

Mehr

peer-to-peer Dateisystem Synchronisation

peer-to-peer Dateisystem Synchronisation Ziel Realisierungen Coda Ideen Fazit Literatur peer-to-peer Dateisystem Synchronisation Studiendepartment Informatik Hochschule für Angewandte Wissenschaften Hamburg 30. November 2007 Ziel Realisierungen

Mehr

Microsoft SharePoint. share it, do it! www.klockwork.at

Microsoft SharePoint. share it, do it! www.klockwork.at Microsoft SharePoint share it, do it! www.klockwork.at Share it do it! Das Wissen steckt vor allem in den Köpfen unserer Mitarbeiter. Deshalb ermutigen wir sie, ihr Wissen aufzuzeichnen und zu teilen.

Mehr

Der Nutzen und die Entscheidung für die private Cloud. Martin Constam Rechenpower in der Private Cloud 12. Mai 2014

Der Nutzen und die Entscheidung für die private Cloud. Martin Constam Rechenpower in der Private Cloud 12. Mai 2014 Der Nutzen und die Entscheidung für die private Cloud Martin Constam Rechenpower in der Private Cloud 12. Mai 2014 1 Übersicht - Wer sind wir? - Was sind unsere Aufgaben? - Hosting - Anforderungen - Entscheidung

Mehr

Entwicklungswerkzeuge

Entwicklungswerkzeuge Entwicklungswerkzeuge Werner Struckmann & Tim Winkelmann 10. Oktober 2012 Gliederung Anforderungen Projekte Debugging Versionsverwaltung Frameworks Pattern Integrated development environment (IDE) Werner

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.

Mehr

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de. 26.11.2000 (c) Michael Behrendt -

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de. 26.11.2000 (c) Michael Behrendt - Herzlich Willkommen! Mit Java ins Web - eine praxisnahe Übersicht 1 Wer bin ich? Michael Behrendt, 21, Nürnberg kurzer Lebenslauf: 1991 Erster Rechner: Commodore C128 1995 Ausbildung zum Datenverarbeitungskaufmann

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

Datenbank-Service. RZ-Angebot zur Sicherstellung von Datenpersistenz. Thomas Eifert. Rechen- und Kommunikationszentrum (RZ)

Datenbank-Service. RZ-Angebot zur Sicherstellung von Datenpersistenz. Thomas Eifert. Rechen- und Kommunikationszentrum (RZ) RZ-Angebot zur Sicherstellung von Datenpersistenz Thomas Eifert Rechen- und Kommunikationszentrum (RZ) Ausgangspunkt Beobachtungen: Für Datenhaltung /-Auswertung: Verschiebung weg von eigenen Schnittstellen

Mehr

OSGi-basierte Webapplikationen Ein Erfahrungsbericht

OSGi-basierte Webapplikationen Ein Erfahrungsbericht OSGi-basierte Webapplikationen Ein Erfahrungsbericht Zürich, 18. März 2009 Pascal Nüesch, Software Engineer 1 www.namics.com Zu meiner Person» Lehre als Elektroniker mit Schwerpunkt SW-Entwicklung» Java

Mehr

PHP & Windows. Jan Burkl System Engineer, Zend Technologies. All rights reserved. Zend Technologies, Inc.

PHP & Windows. Jan Burkl System Engineer, Zend Technologies. All rights reserved. Zend Technologies, Inc. PHP & Windows Jan Burkl System Engineer, Zend Technologies Wer bin ich? Jan Burkl jan.burkl@zend.com PHP Entwickler seit 2001 Projektarbeit Bei Zend seit 2006 System Engineer Zend Certified Engineer PHP

Mehr

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase.

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase. Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG www.agentbase.de 1 Agenda Grundlagen Modernisierung Möglichkeiten mit Domino

Mehr

Existierende Systeme I Bibliotheken & Frameworks

Existierende Systeme I Bibliotheken & Frameworks Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen Existierende Systeme I Bibliotheken & Frameworks Von Christian Schneider Paderborn, den 18.06.2004 Übersicht Motivation Dynamische

Mehr

Datenbanksysteme II Architektur und Implementierung von Datenbanksystemen

Datenbanksysteme II Architektur und Implementierung von Datenbanksystemen Datenbanksysteme II Architektur und Implementierung von Datenbanksystemen Winter 2009/10 Melanie Herschel Willhelm-Schickard-Institut für Informatik Kapitel 1 Einführung Vorstellung Überblick Organisatorisches

Mehr

Bibliotheksmanagement im Netz - vernetzt

Bibliotheksmanagement im Netz - vernetzt OCLC Informationstag 12. Mai 2011 Bibliotheksmanagement im Netz - vernetzt Annette Dortmund Product Manager LBS / WMS EMEA OCLC Überblick Arbeiten im Web: Die Cloud Bibliotheksmanagement im Netz: OCLC

Mehr

Nebenläufige Programmierung

Nebenläufige Programmierung Nebenläufige Programmierung Perspektiven der Informatik 27. Januar 2003 Gert Smolka Telefon-Szenario Eine Telefonzelle Mehrere Personen wollen telefonieren Immer nur eine Person kann telefonieren Ressource

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

It's time to rethink Datenbank-Design in der schönen neuen Welt

It's time to rethink Datenbank-Design in der schönen neuen Welt It's time to rethink Datenbank-Design in der schönen neuen Welt Java User Group Hessen 2015 Version: 1.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher

Mehr

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Installation von NetBeans inkl. Glassfish Anwendungs-Server Installation von NetBeans inkl. Glassfish Anwendungs-Server Diese Anleitung führt Sie Schritt für Schritt durch die Einrichtung der Entwicklungsumgebung NetBeans, angefangen beim Download der benötigten

Mehr

0. Einführung. C und C++ (CPP)

0. Einführung. C und C++ (CPP) C und C++ (CPP) 0. Einführung Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte Wissenschaften marc.rennhard@zhaw.ch Marc Rennhard, 05.01.2010,

Mehr

Bekannte Tools in einem agilen Ansatz. Frank Schwichtenberg SourceTalkTage 2013 Göttingen, 2.10.2013

Bekannte Tools in einem agilen Ansatz. Frank Schwichtenberg SourceTalkTage 2013 Göttingen, 2.10.2013 Bekannte Tools in einem agilen Ansatz Frank Schwichtenberg SourceTalkTage 2013 Göttingen, 2.10.2013 Vorher Lange Planungszeiten und Releasezyklen Manche Features brauchten lange und wurden nicht gebraucht

Mehr

Über mich. Daniel Bälz. Softwareentwickler (inovex GmbH) github.com/dbaelz

Über mich. Daniel Bälz. Softwareentwickler (inovex GmbH) github.com/dbaelz Quo vadis Dart? Über mich Daniel Bälz Softwareentwickler (inovex GmbH) dbaelz.de plus.dbaelz.de github.com/dbaelz Agenda Was Wie Warum Wohin Was ist Dart? Übersicht Einsatzgebiet Client (Browser, CLI)

Mehr

Uwe Baumann artiso Solutions ubaumann@artiso.com

Uwe Baumann artiso Solutions ubaumann@artiso.com Uwe Baumann artiso Solutions ubaumann@artiso.com Upgrade Strategien Data/Application Tier Anpassung von Process Templates Build Test/Lab Performance TFS Version Control Workitem Tracking Build Verwaltung

Mehr

25.09.2014. Zeit bedeutet eine Abwägung von Skalierbarkeit und Konsistenz

25.09.2014. Zeit bedeutet eine Abwägung von Skalierbarkeit und Konsistenz 1 2 Dies ist ein Vortrag über Zeit in verteilten Anwendungen Wir betrachten die diskrete "Anwendungszeit" in der nebenläufige Aktivitäten auftreten Aktivitäten in einer hochgradig skalierbaren (verteilten)

Mehr

Microsoft.NET und SunONE

Microsoft.NET und SunONE Microsoft.NET und SunONE, Plattformen und Application Service Providing Agenda Einordnung.NET und SunONE Kurzvorstellung Gegenüberstellung Zusammenfassung ASP (Application( Service Providing) ) und Ausblick

Mehr

XE IDE Cloud Web. secure Data Agile. RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts. Daniel Wolf Delphi-Praxis

XE IDE Cloud Web. secure Data Agile. RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts. Daniel Wolf Delphi-Praxis RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts Daniel Wolf Delphi-Praxis Matthias Eißing Embarcadero Germany GmbH XE IDE Cloud Web 1 secure Data Agile Agenda Neues in der IDE, RTL

Mehr

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

Google Gears Offline Web?

Google Gears Offline Web? Google Gears ist eine Browsererweiterung, die es in sich hat. Dem Webanwendungsentwickler werden Dienste bereitgestellt, die es ermöglichen, Webanwendungen so zu schreiben, dass eine Offline-Arbeit möglich

Mehr

Internet Briefing. Developer Konferenz. Clientseitige Last- & Performancetesting. Namics.

Internet Briefing. Developer Konferenz. Clientseitige Last- & Performancetesting. Namics. Internet Briefing. Developer Konferenz. Clientseitige Last- & Performancetesting. Jürg Stuker. CEO. Partner. 8. Dezember 2011 Thema 1 Verstehen was zwischen User Agent und Server geschwatzt wird... 8.

Mehr

Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine. Studienleistung

Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine. Studienleistung Adressen Adressen, Termine Studienleistung Praktikum Funktionale Programmierung Organisation und Überblick Dr. David Sabel Büro und Email Raum 216, Robert-Mayer-Str. 11-15 sabel@ki.informatik.uni-frankfurt.de

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Infrastructure as a Service (IaaS) Solutions for Online Game Service Provision

Infrastructure as a Service (IaaS) Solutions for Online Game Service Provision Infrastructure as a Service (IaaS) Solutions for Online Game Service Provision Zielsetzung: System Verwendung von Cloud-Systemen für das Hosting von online Spielen (IaaS) Reservieren/Buchen von Resources

Mehr

Mobiles SAP für Entscheider. Permanente Verfügbarkeit der aktuellen Unternehmenskennzahlen durch den mobilen Zugriff auf SAP ERP.

Mobiles SAP für Entscheider. Permanente Verfügbarkeit der aktuellen Unternehmenskennzahlen durch den mobilen Zugriff auf SAP ERP. Beschreibung Betriebliche Kennzahlen sind für die Unternehmensführung von zentraler Bedeutung. Die Geschäftsführer oder Manager von erfolgreichen Unternehmen müssen sich deshalb ständig auf dem Laufenden

Mehr

Fortgeschrittenes Programmieren mit Java. Test Driven Development

Fortgeschrittenes Programmieren mit Java. Test Driven Development Fortgeschrittenes Programmieren mit Java Test Driven Development Test getriebene Programmierung Benedikt Boeck Hochschule für Angewandte Wissenschaften Hamburg 6. November 2009 B. Boeck (HAW Hamburg) Test

Mehr

Einführung in git. Ben Oswald. 27. April 2014. Im Rahmen der Vorlesung Entwicklung mobiler Anwendungen

Einführung in git. Ben Oswald. 27. April 2014. Im Rahmen der Vorlesung Entwicklung mobiler Anwendungen Einführung in git Im Rahmen der Vorlesung Entwicklung mobiler Anwendungen Ben Oswald 27. April 2014 Inhaltsverzeichnis 1 Einleitung 1 1.1 Was ist git?..................................... 1 1.2 Warum sollten

Mehr

Praktikum Funktionale Programmierung Organisation und Überblick

Praktikum Funktionale Programmierung Organisation und Überblick Praktikum Funktionale Programmierung Organisation und Überblick Dr. David Sabel Sommersemester 2013 Stand der Folien: SoSe 2013 Adressen Organisatorisches Software Projekt Adressen, Termine Studienleistung

Mehr

Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben)

Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben) Komponenten Einführung Organisatorisches 2+1 SWS Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben) Klausur 28. Februar 2013 Unterlagen

Mehr

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration Panzenböck Phillipp 13.05.2003 Der Applikationsserver wird von einer in Schweden ansässigen Firma namens Ironflare entwickelt Orion ist das einzige Produkt dieser Firma Der Orionserver ist komplett in

Mehr

Microsoft SharePoint 2013 Designer

Microsoft SharePoint 2013 Designer Microsoft SharePoint 2013 Designer Was ist SharePoint? SharePoint Designer 2013 Vorteile SharePoint Designer Funktionen.Net 4.0 Workflow Infrastruktur Integration von Stages Visuelle Designer Copy & Paste

Mehr

Funktionale Programmierung

Funktionale Programmierung Schleifen 1 Funktionale Programmierung Jörg Kreiker Uni Kassel und SMA Solar Technology AG Wintersemester 2011/2012 3 Teil I Jedem Anfang wohnt ein Zauber inne 4 Über mich Diplom in Informatik in Saarbrücken

Mehr

Reaktive Programmierung Vorlesung 13 vom : Software Transactional Memory

Reaktive Programmierung Vorlesung 13 vom : Software Transactional Memory 11:54:31 2017-06-15 1 [37] Reaktive Programmierung Vorlesung 13 vom 14.06.17: Software Transactional Memory Christoph Lüth, Martin Ring Universität Bremen Sommersemester 2017 RP SS 2017 2 [37] Fahrplan

Mehr

Oracle Database 10g Die RAC Evolution

Oracle Database 10g Die RAC Evolution Oracle Database 10g Die RAC Evolution Markus Michalewicz BU Database Technologies ORACLE Deutschland GmbH 2 Page 1 www.decus.de 1 RAC-Revolution, RAC-Evolution & Computing Oracle8i mit OPS Oracle9i Rel.

Mehr

EmplIT Web- und Mobile-Projekte in der Praxis

EmplIT Web- und Mobile-Projekte in der Praxis Seite 1 EmplIT Web- und Mobile-Projekte in der Praxis TU Dresden Dresden, 13. April 2012 Seite 2 Über mich Gründer, Projektmanager, Consultant Diplom-Medieninformatiker mit 11 Jahren Studiumserfahrung

Mehr

Wer bin ich. > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.

Wer bin ich. > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre. Copyright 2010, MATHEMA Software GmbH 1 Wer bin ich > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.Net > Schwerpunkte Software

Mehr

EPO Consulting GmbH. Ihr Partner für HTML5 und SAP UI5 Apps. www.epoconsulting.com. Stand 2015/04. EPO Consulting GmbH - 1 -

EPO Consulting GmbH. Ihr Partner für HTML5 und SAP UI5 Apps. www.epoconsulting.com. Stand 2015/04. EPO Consulting GmbH - 1 - EPO Consulting GmbH Ihr Partner für HTML5 und SAP UI5 Apps www.epoconsulting.com Stand 2015/04 EPO Consulting GmbH - 1 - EPO Mobile Apps für HTML5 und SAP UI5 Apps SAP bietet künftig für alle SAP Produkte

Mehr

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Wir automatisieren und optimieren Ihre Geschäftsprozesse DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Thomas Brandstätter 06.03.2012 www.dccs.at Agenda Theorie Was sind XPages

Mehr

OLAP und der MS SQL Server

OLAP und der MS SQL Server OLAP und der MS SQL Server OLAP und der MS SQL Server OLAP-Systeme werden wie umfangreiche Berichtssysteme heute nicht mehr von Grund auf neu entwickelt. Stattdessen konzentriert man sich auf die individuellen

Mehr

Mit OSGi Webanwendungen entwickeln Was geht, was nicht?

Mit OSGi Webanwendungen entwickeln Was geht, was nicht? Mit OSGi Webanwendungen entwickeln Was geht, was nicht? Peter Roßbach (Systemarchitekt) Gerd Wütherich (Freier Softwarearchitekt) Martin Lippert (akquinet it-agile GmbH) 2009 by P. Roßbach, G. Wütherich,

Mehr

SQL SERVER 2005 IM VERGLEICH ZU ORACLE 10G. Alexander Bittner, 07MIM Datenbanken II HTWK Leipzig, FbIMN

SQL SERVER 2005 IM VERGLEICH ZU ORACLE 10G. Alexander Bittner, 07MIM Datenbanken II HTWK Leipzig, FbIMN SQL SERVER 2005 IM VERGLEICH ZU ORACLE 10G Alexander Bittner, 07MIM Datenbanken II HTWK Leipzig, FbIMN Gliederung Rechnerarchitekturen Datenspeicherung Verbindungen / Instanzen SQL Standards Nebenläufigkeit

Mehr

w3lib - einfach Software entwickeln!

w3lib - einfach Software entwickeln! w3lib - einfach Software entwickeln! was ist die w3lib? Die w3lib ist ein kompletter Baukasten für die Entwicklung moderner Software. Zahlreiche Funktionen decken alles ab, was für das Internet-Business

Mehr

ServiceGlobe: Flexible and Reliable Web Service Execution

ServiceGlobe: Flexible and Reliable Web Service Execution ServiceGlobe: Flexible and Reliable Web Service Execution Markus Keidl, Stefan Seltzsam und Alfons Kemper Universität Passau Fakultät für Mathematik und Informatik 94030 Passau @db.fmi.uni-passau.de

Mehr

Hybride Cloud-Infrastrukturen Bereitstellung & Verwaltung mit System Center 2012

Hybride Cloud-Infrastrukturen Bereitstellung & Verwaltung mit System Center 2012 Hybride Cloud-Infrastrukturen Bereitstellung & Verwaltung mit System Center 2012 Roj Mircov TSP Datacenter Microsoft Virtualisierung Jörg Ostermann TSP Datacenter Microsoft Virtualisierung 1 AGENDA Virtual

Mehr

Einreichung zum Call for Papers

Einreichung zum Call for Papers Internet: www.aitag.com Email: info@aitag.com Einreichung zum Call for Papers Kontaktinformationen Sven Hubert AIT AG Leitzstr. 45 70469 Stuttgart Deutschland http://www.aitag.com bzw. http://tfsblog.de

Mehr

Projekte: 12/2012-01/2013: Konverter für die Diamant Software Branche:

Projekte: 12/2012-01/2013: Konverter für die Diamant Software Branche: Projekte: 03/2014-07/2014: Aktoren-System Konzeption und Entwicklung eines Aktoren-Systema zur nebenläufigen Verarbeitung innerhalb von Anwendungen. ROOTS Technik: Aktoren, Java, OSGi, Eclipse 01/2014-02/2014:

Mehr

10. OLAPLINE-Anwendertreffen

10. OLAPLINE-Anwendertreffen 10. OLAPLINE-Anwendertreffen 26. und 27. April 2017 Schloss Garath Düsseldorf Zwei Tage Weiterbildung und Networking integriert: Vorträge, Workshops und Erfahrungsaustausch rund um TM1 JAVA EXTENSIONS

Mehr

Oliver Paulus, oliver@code-project.org. 7. Februar 2006. Spring Framework Einführung. Oliver Paulus, oliver@codeproject.org. Was ist Spring?

Oliver Paulus, oliver@code-project.org. 7. Februar 2006. Spring Framework Einführung. Oliver Paulus, oliver@codeproject.org. Was ist Spring? oliver@code-project.org 7. Februar 2006 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2 3 4 5 6 7 8 9 Inhalt 1 2

Mehr

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite http://www.hp.

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite http://www.hp. Erfahrungen mit dem Insight Manager von HP Dipl. Ing. Elektrotechnik (FH) - Automatisierungs- / Regelungstechnik DV-Spezialist Landesbank Rheinland-Pfalz Abteilung 2-351 Große Bleiche 54-56 55098 Mainz

Mehr

Zuverlässige Informationsbereitstellung in energiebewussten ubiquitären Systemen (ZeuS)

Zuverlässige Informationsbereitstellung in energiebewussten ubiquitären Systemen (ZeuS) Zuverlässige Informationsbereitstellung in energiebewussten ubiquitären Systemen () Vergleich von Ansätzen zur Netzwerkanalyse in drahtlosen Sensornetzen Joachim Wilke,, Markus Bestehorn, Zinaida Benenson,

Mehr

Strategie / Zusammenfassung

Strategie / Zusammenfassung IBM Connect Comes To You Strategie / Zusammenfassung Andreas Forth, agentbase AG www.agentbase.de 1 Bitte beachten Es wurden für die Präsentation u.a. Folien der IBM verwendet. www.agentbase.de 2 Übersicht

Mehr

TELEMETRIE EINER ANWENDUNG

TELEMETRIE EINER ANWENDUNG TELEMETRIE EINER ANWENDUNG VISUAL STUDIO APPLICATION INSIGHTS BORIS WEHRLE TELEMETRIE 2 TELEMETRIE WELCHE ZIELE WERDEN VERFOLGT? Erkennen von Zusammenhängen Vorausschauendes Erkennen von Problemen um rechtzeitig

Mehr

Berater-Profil 1575. DB- und Systemadministration - Informix, Sybase - EDV-Erfahrung seit 1991. Verfügbar ab auf Anfrage.

Berater-Profil 1575. DB- und Systemadministration - Informix, Sybase - EDV-Erfahrung seit 1991. Verfügbar ab auf Anfrage. Berater-Profil 1575 DB- und Systemadministration - Informix, Sybase - Ausbildung Diplomarbeit am Institut Industriel du Nord in Lille, Frankreich Studium der Allgemeinen Informatik (FH Köln) Diplom-Informatiker

Mehr

Konsolidierung von Software-Varianten in Software-Produktlinien ein Forschungsprogramm

Konsolidierung von Software-Varianten in Software-Produktlinien ein Forschungsprogramm Konsolidierung von Software-Varianten in Software-Produktlinien ein Forschungsprogramm Rainer Koschke Universität Bremen Workshop Software-Reengineering Bad Honnef 5. Mai 2005 Bauhaus Forschungskooperation

Mehr

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de Oracle GridControl Tuning Pack best Open Systems Day April 2010 Unterföhring Marco Kühn best Systeme GmbH marco.kuehn@best.de Agenda GridControl Overview Tuning Pack 4/26/10 Seite 2 Overview Grid Control

Mehr

Markus Wichmann. Testen von Java Code mit. JUnit

Markus Wichmann. Testen von Java Code mit. JUnit Markus Wichmann Testen von Java Code mit JUnit Demotivation... Am Anfang war der Zeitdruck... Hilfe, ich habe doch keine Zeit zum Testen! Ich schreibe einfach keine Tests, dadurch werde ich schneller fertig

Mehr

System Center 2012 R2 und Microsoft Azure. Marc Grote

System Center 2012 R2 und Microsoft Azure. Marc Grote System Center 2012 R2 und Microsoft Azure Marc Grote Agenda Ueberblick Microsoft System Center 2012 R2 Ueberblick ueber Microsoft Azure Windows Backup - Azure Integration DPM 2012 R2 - Azure Integration

Mehr

SharePoint s Best Practice Was funktioniert (wirklich)? DI(FH) Chris Holubarz Teamlead SharePoint

SharePoint s Best Practice Was funktioniert (wirklich)? DI(FH) Chris Holubarz Teamlead SharePoint SharePoint s Best Practice Was funktioniert (wirklich)? DI(FH) Chris Holubarz Teamlead SharePoint Über mich DI (FH) Christopher Holubarz Teamlead SharePoint Projekte seit Beginn SharePoint 2007 Ursprung

Mehr

Festpreisprojekte in Time und in Budget

Festpreisprojekte in Time und in Budget Festpreisprojekte in Time und in Budget Wie effizient kann J2EE Softwareentwicklung sein? Copyright 2006 GEBIT Solutions Agenda Positionierung der GEBIT Solutions Herausforderung Antwort Überblick Beispielprojekt

Mehr

Software Engineering in

Software Engineering in Software Engineering in der Werkzeuge für optimierte LabVIEW-Entwicklung Folie 1 Best Practices Requirements Engineering Softwaretest Versionsmanagement Build- Automatisierung Folie 2 Arbeiten Sie im Team?

Mehr

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder Michael Greifeneder OSGi The Next Generation Java Service Platform SOA - The Java Way or My classpath is killing me Bilder von Peter Kriens W-JAX Keynote 2007 und Neil Bartletts Getting Started with OSGi

Mehr

Seminar "Ausgewählte Themen in Hardwareentwurf und Optik" im HS 2007. Transactional Memory. Vortrag von Erdin Sinanović

Seminar Ausgewählte Themen in Hardwareentwurf und Optik im HS 2007. Transactional Memory. Vortrag von Erdin Sinanović Seminar "Ausgewählte Themen in Hardwareentwurf und Optik" im HS 2007 Transactional Memory Vortrag von Erdin Sinanović Übersicht Was ist Transactional Memory (TM)? Wie programmiert man mit TM? Software

Mehr

Verteilte Systeme. Nebenläufigkeit. Prof. Dr. Oliver Haase

Verteilte Systeme. Nebenläufigkeit. Prof. Dr. Oliver Haase Verteilte Systeme Nebenläufigkeit Prof. Dr. Oliver Haase 1 Arten der Nebenläufigkeit 1-Prozessor(kern)-System quasiparallele Ausführung erhöht Interaktivität durch Umschalten zwischen Threads kann Parallelitätsgrad

Mehr

Quality Point München

Quality Point München Quality Point München Test webbasierter Applikationen - Vorgehen, Instrumente, Probleme Gestern habe ich mich wieder über eine fehlerhafte Webanwendung geärgert. Muss das sein? Test ist halt auch hier

Mehr

Entwicklung und Integration mobiler Anwendungen. <Speaker> Oracle Deutschland B.V. & Co. KG

Entwicklung und Integration mobiler Anwendungen. <Speaker> Oracle Deutschland B.V. & Co. KG Entwicklung und Integration mobiler Anwendungen Oracle Deutschland B.V. & Co. KG Global Users (Millions) Der Trend ist eindeutig. Trend zu mobilen Endgeräten Wachstum des mobilen Datenverkehrs

Mehr

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit. 07.06.2002 Grid Systeme 1

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit. 07.06.2002 Grid Systeme 1 Grid-Systeme Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit 07.06.2002 Grid Systeme 1 Gliederung Vorstellung verschiedener Plattformen Globus

Mehr

Szenarien zu Hochverfügbarkeit und Skalierung mit und ohne Oracle RAC. Alexander Scholz

Szenarien zu Hochverfügbarkeit und Skalierung mit und ohne Oracle RAC. Alexander Scholz Hochverfügbar und Skalierung mit und ohne RAC Szenarien zu Hochverfügbarkeit und Skalierung mit und ohne Oracle RAC Alexander Scholz Copyright its-people Alexander Scholz 1 Einleitung Hochverfügbarkeit

Mehr

Weboberflächen testen

Weboberflächen testen Weboberflächen testen Sind heutige Techniken adäquat? Claas Thiele manager methods & processes it-function software gmbh Möckernstr. 67, 10965 Berlin Project Lead http://molyb.org http://sf.net/projects/molybdenum

Mehr

Next generation open source BPM JBoss jbpm 4. Java Forum Stuttgart 02.07.2009 bernd.ruecker@camunda.com

Next generation open source BPM JBoss jbpm 4. Java Forum Stuttgart 02.07.2009 bernd.ruecker@camunda.com Next generation open source BPM JBoss jbpm 4 Java Forum Stuttgart 02.07.2009 bernd.ruecker@camunda.com Bernd Rücker / bernd.ruecker@camunda.com / 2 Guten Morgen Berater, Trainer, Coach Softwareentwickler

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine WWW

Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine WWW Adressen Adressen, Termine Studienleistung Praktikum Funktionale Programmierung Organisation und Überblick Dr. David Sabel Büro und Email Raum 216, Robert-Mayer-Str. 11-15 sabel@ki.informatik.uni-frankfurt.de

Mehr

Haskell, eine rein funktionale Programmiersprache

Haskell, eine rein funktionale Programmiersprache Grundlegendes Typsystem Weiteres Gemeinschaft Haskell, eine rein funktionale Programmiersprache Ingo Blechschmidt Augsburger Linux-Infotag 27. März 2010 Grundlegendes Typsystem Weiteres

Mehr

Entwicklungen bei der Linux Clustersoftware

Entwicklungen bei der Linux Clustersoftware Quo vadis Linux-HA? Entwicklungen bei der Linux Clustersoftware Michael Schwartzkopff misch@schwartzkopff.org (c) Michael Schwartzkopff, 2010 1 / 19 Linux Clustersoftware Linux Virtual Server Bietet Skalierbarkeit...

Mehr

Debugging in Magento

Debugging in Magento Debugging in Magento Nutzen Werkzeuge Demo 17.5.2011, Leipzig code4business Software GmbH Dennewartstr. 25-27 52068 Aachen Germany Agenda Wer bin ich? Nutzen eines Debuggers Live-Debugging (Demo) Installationsvarianten

Mehr

...we make the invisible visible...

...we make the invisible visible... ...we make the invisible visible... 1 Inhalt Qualitätsbegriff Fragestellungen im Zusammenhang mit innerer Softwarequalität Analysen und deren Anwendung Erfahrungen 2 Ausfallsicherheit Datensicherheit Zuverlässigkeit

Mehr

PROZESSE INTEGRIEREN leicht gemacht EFFIZIENTE PROZESSE

PROZESSE INTEGRIEREN leicht gemacht EFFIZIENTE PROZESSE PROZESSE INTEGRIEREN leicht gemacht DURCH TransConnect Geschäftsprozesse ableiten mit der Universal Worklist (UWL) Integrationsszenarien effektiver verwalten und transportieren Optimierte Personalverwaltung

Mehr

IT- und Medientechnik

IT- und Medientechnik IT- und Medientechnik Vorlesung 5: 7.11.2014 Wintersemester 2014/2015 h_da, Lehrbeauftragter Themenübersicht der Vorlesung Hard- und Software Hardware: CPU, Speicher, Bus, I/O,... Software: System-, Unterstützungs-,

Mehr

Parallelität und Nebenläufigkeit mit Haskell 1 / 68

Parallelität und Nebenläufigkeit mit Haskell 1 / 68 Parallelität und Nebenläufigkeit mit Haskell Stefan Wehr (wehr@factisresearch.com) factis research GmbH, Freiburg im Breisgau 16. Mai 2013 parallel2013, Karlsruhe Parallelität und Nebenläufigkeit mit Haskell

Mehr

Frühling für iphone-apps

Frühling für iphone-apps Spring-basierte Backends für ios-applikationen Stefan Scheidt Solution Architect OPITZ CONSULTING GmbH OPITZ CONSULTING GmbH 2010 Seite 1 Wer bin ich? Software-Entwickler und Architekt Trainer und Coach

Mehr

Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy

Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy Über Ant und Maven zu SBT und Gradle Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy 07.04.2011 Speaker Andreas Hartmann [hartmann@adesso.de] Principal Software Engineer

Mehr

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen

Mehr

Ruby on Rails. Florian Ferrano Ralf Heller Markus Nagel

Ruby on Rails. Florian Ferrano Ralf Heller Markus Nagel Ruby on Rails Florian Ferrano Ralf Heller Markus Nagel Überblick Ruby on Rails Ruby Rails Geschichte MVC allgemein MVC in Rails Scaffolding Webserver Installation Beispiele Wo wird Rails verwendet? Ausblick

Mehr

PlaceCam 3. Die Videokonferenzsoftware für Windows und Mac OS X. Jürgen Völkel Vertrieb daviko GmbH

PlaceCam 3. Die Videokonferenzsoftware für Windows und Mac OS X. Jürgen Völkel Vertrieb daviko GmbH PlaceCam 3 Die Videokonferenzsoftware für Windows und Mac OS X Jürgen Völkel Vertrieb daviko GmbH Die daviko GmbH 2001 Gründung der daviko GmbH als Spinoff der Fachhochschule für Technik und Wirtschaft

Mehr

Übersicht. Einführung in die Funktionale Programmierung: Einleitung & Motivation. Klassifizierung von Programmiersprachen (1)

Übersicht. Einführung in die Funktionale Programmierung: Einleitung & Motivation. Klassifizierung von Programmiersprachen (1) Motivation Funktionale Programmiersprachen Haskell Übersicht Einführung in die Funktionale Programmierung: Einleitung & Motivation Prof Dr. Manfred Schmidt-Schauß 1 Motivation Übersicht Programmierparadigmen

Mehr

Universal Mobile Gateway V4

Universal Mobile Gateway V4 PV-Electronic, Lyss Universal Mobile Gateway V4 Autor: P.Groner Inhaltsverzeichnis Allgemeine Informationen... 3 Copyrightvermerk... 3 Support Informationen... 3 Produkte Support... 3 Allgemein... 4 Definition

Mehr

Walkabout: Location Based Services mit Android und dem Google Phone

Walkabout: Location Based Services mit Android und dem Google Phone Walkabout: Location Based Services mit Android und dem Google Phone Teilbereich 1: Die Android Plattform für mobile Geräte (Software) Von: Sebastian Schul Inhalt Einleitung Was ist Android Exkurs: Wie

Mehr

Aktuelle Kurstermine

Aktuelle Kurstermine Design Patterns 20.07.2015-22.07.2015 3 Tage 1.200,- Lokale Netze - Basiswissen 20.07.2015-24.07.2015 5 Tage 1.830,- Java EE Persistence API Development 27.07.2015-29.07.2015 3 Tage 1.200,- Linux Server

Mehr