Kurzbeschreibung
Softwareentwicklung braucht Profis. Wie aber definiert man einen "professionellen" Software-Entwickler ? Clean Code Development ist eine der ersten "Versuche", um diese Frage möglichst umfassend, technologieunabhängig und über die Bedürfnisse des Kunden hinaus zu beantworten.
Inhalt
Was ist ein professioneller Software-Entwickler
Professionlität
Qualität
Das CCD Werte-System
Prinzipien und Praktiken
Das Grad-System
Durch die Java EE 5 ist es gelungen, die Komplexität der Entwicklung von Enterprise-Anwendungen drastisch zu reduzieren und mächtige Defaults zur Verfügung zu stellen. Entwickler sollen mit Hilfe der Java EE 5 Software Web Services und SOA-Applikationen (Service-oriented Architecture) der nächsten Generation erstellen. Neuen Techniken, wie die APIs Enterprise JavaBeans 3.0 (EJB) und JavaServer Faces sowie das Java Persistence API und das "Java API for XML-based Web Services" (JAX-WS), sollen die Entwicklung von Web- und Unternehmensapplikationen beschleunigen.
Softwarequalitätssicherung mit Continuous Integration ToolsGFU Cyrus AG
Kurzbeschreibung
Automatische Softwaretests rücken immer mehr in den Mittelpunkt. Gerade die derzeit vielfach eingesetzten agilen Vorgehensweisen benötigen ein teamübergreifendes und reproduzierbares Verfahren zur Sicherung der Softwarequalität. In diesem Vortrag legt Dirk Weil, Geschäftsführer der GEDOPLAN GmbH aus Bielefeld, das Augenmerk auf die Werkzeuge, die in Java-Projekten zum fortlaufenden Build und Test von Software genutzt werden können. Anhand einiger Praxisbeispiele zeigt er den Aufbau und Betrieb einer Continuous-Integration-Umgebung, die GEDOPALN für Softwareprojekte betreibt. Dozent: Dirk Weil, Gedoplan
Inhalt
- Grundlagen und Motivation automatischer Softwaretests
- Testziele und Verfahren (Unit-Tests, Regressionstests, Akzeptanztests etc.)
- Build- und Testautomatisierung
- Beispielumgebung auf Basis von Ant, Maven, Subversion und Hudson
- Code-Analyse
- Extreme Feedback
The document discusses different approaches to mock testing in Python including using the Mocker, PostMonkey, and Mock libraries. It provides examples of replacing dependencies with mocks using Mocker, configuring return values on mocks, and patching modules under test using Mock. The goal of mock testing is to isolate units from external dependencies like databases and networks for reliable isolated testing.
Schmutz im Code behindert mittel- und langfristig effiziente Software-Entwicklung. Seine Ursachen sind vielfältig. Clean Code zeigt, wie wir effizienter arbeiten und gleichzeitig höhere Komplexität handhaben können. Ein spezieller Clean-Code-Prozess hilft, Clean-Code-Maßnahmen im Projektalltag lebendig werden zu lassen. Muss wartbarer Code höher bewertet werden als funktionierender Code?
Weitere Vorträge, die wir auch gern in Ihrem Unternehmen halten, finden Sie unter: https://www.iks-gmbh.com/impulsvortraege
The document discusses the principles of clean code as outlined in the book "Clean Code" by Robert C. Martin. It covers topics like meaningful names, comments, functions, objects and data structures, error handling, and unit tests. The goal of clean code is to produce readable, maintainable code through practices like breaking code into small, single-purpose functions and hiding implementation details in objects.
Test-driven development (TDD) is an iterative process where tests are written before code to validate requirements. It follows the "red-green-refactor" cycle: write a failing test, write code to pass the test, refactor code. The document demonstrates TDD with a palindrome checker function, writing multiple tests to handle different cases before refactoring the code. Unit testing frameworks like unittest, py.test, and nose make TDD easier by automating test discovery and providing features like parallel testing and code coverage reports. Nose is currently the most popular alternative to unittest for Python projects.
Wozu brauche ich Clean Code, was kostet Clean Code, was ist Clean Code und wenn ich's haben will, wie führe ich Clean Code ein?
Slides des Tech Talk vom 13.01.2014 bei Leanovate von Lorenz Hahn
Durch die Java EE 5 ist es gelungen, die Komplexität der Entwicklung von Enterprise-Anwendungen drastisch zu reduzieren und mächtige Defaults zur Verfügung zu stellen. Entwickler sollen mit Hilfe der Java EE 5 Software Web Services und SOA-Applikationen (Service-oriented Architecture) der nächsten Generation erstellen. Neuen Techniken, wie die APIs Enterprise JavaBeans 3.0 (EJB) und JavaServer Faces sowie das Java Persistence API und das "Java API for XML-based Web Services" (JAX-WS), sollen die Entwicklung von Web- und Unternehmensapplikationen beschleunigen.
Softwarequalitätssicherung mit Continuous Integration ToolsGFU Cyrus AG
Kurzbeschreibung
Automatische Softwaretests rücken immer mehr in den Mittelpunkt. Gerade die derzeit vielfach eingesetzten agilen Vorgehensweisen benötigen ein teamübergreifendes und reproduzierbares Verfahren zur Sicherung der Softwarequalität. In diesem Vortrag legt Dirk Weil, Geschäftsführer der GEDOPLAN GmbH aus Bielefeld, das Augenmerk auf die Werkzeuge, die in Java-Projekten zum fortlaufenden Build und Test von Software genutzt werden können. Anhand einiger Praxisbeispiele zeigt er den Aufbau und Betrieb einer Continuous-Integration-Umgebung, die GEDOPALN für Softwareprojekte betreibt. Dozent: Dirk Weil, Gedoplan
Inhalt
- Grundlagen und Motivation automatischer Softwaretests
- Testziele und Verfahren (Unit-Tests, Regressionstests, Akzeptanztests etc.)
- Build- und Testautomatisierung
- Beispielumgebung auf Basis von Ant, Maven, Subversion und Hudson
- Code-Analyse
- Extreme Feedback
The document discusses different approaches to mock testing in Python including using the Mocker, PostMonkey, and Mock libraries. It provides examples of replacing dependencies with mocks using Mocker, configuring return values on mocks, and patching modules under test using Mock. The goal of mock testing is to isolate units from external dependencies like databases and networks for reliable isolated testing.
Schmutz im Code behindert mittel- und langfristig effiziente Software-Entwicklung. Seine Ursachen sind vielfältig. Clean Code zeigt, wie wir effizienter arbeiten und gleichzeitig höhere Komplexität handhaben können. Ein spezieller Clean-Code-Prozess hilft, Clean-Code-Maßnahmen im Projektalltag lebendig werden zu lassen. Muss wartbarer Code höher bewertet werden als funktionierender Code?
Weitere Vorträge, die wir auch gern in Ihrem Unternehmen halten, finden Sie unter: https://www.iks-gmbh.com/impulsvortraege
The document discusses the principles of clean code as outlined in the book "Clean Code" by Robert C. Martin. It covers topics like meaningful names, comments, functions, objects and data structures, error handling, and unit tests. The goal of clean code is to produce readable, maintainable code through practices like breaking code into small, single-purpose functions and hiding implementation details in objects.
Test-driven development (TDD) is an iterative process where tests are written before code to validate requirements. It follows the "red-green-refactor" cycle: write a failing test, write code to pass the test, refactor code. The document demonstrates TDD with a palindrome checker function, writing multiple tests to handle different cases before refactoring the code. Unit testing frameworks like unittest, py.test, and nose make TDD easier by automating test discovery and providing features like parallel testing and code coverage reports. Nose is currently the most popular alternative to unittest for Python projects.
Wozu brauche ich Clean Code, was kostet Clean Code, was ist Clean Code und wenn ich's haben will, wie führe ich Clean Code ein?
Slides des Tech Talk vom 13.01.2014 bei Leanovate von Lorenz Hahn
Kurzbeschreibung
Über 16 Mio. Facebook User in Deutschland - alleine diese Zahl macht deutlich, dass Unternehmen mittlerweile am Web 2.0 und den Sozialen Medien nicht mehr vorbeikommen. Aber wie steigt man in das Thema ein und was muss man bedenken, wenn man mit seiner Firma, Marke oder Produkt in den Sozialen Medien aktiv werden will? Fragen, die Bert Branahl, Geschäftsführer ConsultM, Bielefeld in seinem Vortrag beantwortet. Dabei werden Beispiele aus der Praxis zeigen, was heute im Web 2.0 möglich ist.
Java Code Quality: Gute Software braucht guten Code - Regeln für verständlich...GFU Cyrus AG
Kurzbeschreibung
Softwarequalität ist keine Spracheigenschaft. In jeder noch so guten Programmiersprache kann man schlechte Programme schreiben – sogar in Java. Herr Seekamp, Senior Consultant bei der GEDOPLAN GmbH, macht in diesem Vortrag anhand von Fallbeispielen aus seinen Projekten deutlich, was verständlichen und wartbaren Code ausmacht, welche Regeln man dafür beherzigen sollte und welche Analysewerkzeuge dabei unterstützen können.
Inhalt
Regeln für guten Java-Code
Statische Code-Analyse
Refactoring
Werkzeuge zur Sicherung der Qualität
Cross-Apps-Entwicklung für iPhone, Android und Co.GFU Cyrus AG
Kurzbeschreibung
Beschreibung: Mit der Veröffentlichung von iPhone, iPod Touch sowie iPad und dem iPhone OS hat Apple den Markt für mobile Endgeräte massenfähig gemacht. Google liefert mit dem Android-Betriebssystem ebenfalls eine stetig wachsende Plattform. Einer der Erfolgsfaktoren ist der auf beiden Systemen verfügbaren Browser "Mobile Safari" bzw. die technologische Basis WebKit. Diese freie HTML-Rendering-Bibliothek wird nicht nur von Apple und Google eingesetzt, sondern auch von anderen Unternehmen, wie Nokia, Adobe und Blackberry verwendet. Dozent: Peter Hecker, GFU Cyrus AG
Inhalt
- Einführung und Motivation
- Die WebKit-Plattform
- Überblick "mobile" Frameworks
- Zusammenfassung und Fazit
Datenschutz bei Facebook & Co. - Wie schütze ich meine persönlichen Daten im ...GFU Cyrus AG
Kurzbeschreibung
Der Vortrag geht darauf ein, was Facebook & Co. mit den ihnen anvertrauten Daten macht. Er schafft ein Bewusstsein dafür, wie man selbst am besten mit seinen Daten im Internet umgeht.
Inhalt
Unendlich viele persönliche Daten werden heute bei Facebook und Co. eingegeben und dieses wird fast immer noch mit reichlich Bildmaterial untermauert.
Hier gibt es Fotos von Partys, aus dem Büro oder dem eigenen Garten.
Wir erzählen jedem der es Wissen will oder auch nicht dass wir ab nächste Woche im Urlaub, Offline oder untergetaucht sind.
Wozu werden diese Informationen eigentlich verwandt?
Wer kann sieaußerhalb der eigenen Community noch gebrauchen und warum?
Stehen wir somit häufig nicht vollkommen "nackt" in der Öffentlichkeit?
Der Vortrag zeigt Risiken aber auch Chancen des "Social Webs" auf und soll primär sensibilisieren, verantwortungsvoll mit persönlichen Daten umzugehen, egal ob es die Eigenen oder die von Dritten sind.
Requirements Engineering in agilen Projekten - Flexibilität ist gefordertGFU Cyrus AG
In agilen Projekten ist funktionierende Software wichtiger als ausufernde Dokumentation. Durch kurze Entwicklungszyklen (Iterationen) werden den Anwendern schon während der Entwicklung Teilpakete der geplanten Softwarelösung mit einem sinnvollen Funktionsumfang bereit gestellt. In agilen Projekten ist die flexible Reaktion auf Änderungen der Anforderungen wichtiger als ein starrer Projektplan. Agilität bei der Entwicklung erfordert aber auch Agilität bei der Beschreibung der funktionalen Anforderungen (Requirements Engineering). Use Case-Modelle eignen sich hervorragend für diese Aufgabe. Durch dieses Vorgehen ist es möglich, Wünsche der Anwender, geänderte Rahmenbedingungen und Erfahrungen aus der bisherigen Entwicklung in der Realisierung zu berücksichtigen. Reinhard Brüggemeyer, Dozent dieses "Treffpunkt Semicolon", zeigt, warum in agilen Projekten der Anwender und seine Aufgaben im Mittelpunkt stehen. Pro und Contra des agilen Vorgehens gegenüber dem klassischen Requirements Engineering werden diskutiert.
SharePoint 2010 - Was ist neu, was wird besser!GFU Cyrus AG
Microsoft Office SharePoint Server (MOSS) 2007 hat sich als ernstzunehmende Plattform für Portale, Collaboration und Content Management System (CMS) am Markt etabliert und gehört laut Gartner Group neben IBM WebSphere Portal Server und SAP NetWeaver Portal zu den Marktführer dieser Kategorie Software. Ab Mitte 2010 wird die nächste Version der Microsoft SharePoint Server (MSS) 2010 erscheinen. Nach dem schon hohen Grad Alltagstauglichkeit der Version 2007 folgt der Server 2010 mit vielen produktiven Verbesserungen. Diese sind im Bereich der Bedienbarkeit (Usability), der Administration und auch der Entwicklung zu finden.
* Vorstellung der neuen SharePoint Produktpalette (Server, Suche, Designer, Visio, InfoPath, Excel, Oberfläche, Workspace)
* Demonstration der neuen Administration - Konzeptionelle Änderungen zum Vorgänger
* Demonstration der neuen Web-Oberfläche (Ribbons)
* Demonstration des neuen SharePoint Designers (Wiederverwendbarkeit von Anpassungen)
* Zusammenfassung der weiteren Neuerungen
Pragmatische Einführung von IT-Servicemanagement - ITIL im Unternehmen - Erfa...GFU Cyrus AG
Viele Unternehmen scheuen sich gerade in wirtschaftlich angespannten Zeiten verständlicherweise, eine Optimierung Ihres IT-Service Managements anzugehen. Diese paradoxe Situation liegt u.a. daran, dass die in der Praxis etablierten Methoden -aufgrund Ihres Umfangs und Ihrer scheinbaren Komplexität- als nahezu unüberwindbare Hindernisse empfunden werden. Gerne möchten wir Ihnen vorstellen, wie Sie durch schlanke und ergebnisorientierte Strukturen einen wertschöpfenden Betrieb Ihrer IT-Services sicherstellen und gerade in der heißen Phase der Implementierung organisatorische oder personelle Störungen vermeiden. Ergänzend möchten wir Ihnen einen Überblick zum Thema ISO 20.000 und die damit verbundene mögliche Erhöhung der Wettbewerbsfähigkeit Ihrer Organisation bieten.
Liferay Portal - ein Webportal für viele UnternehmensanforderungenGFU Cyrus AG
Liferay Portal ist eines der führenden Open Source Portalsysteme und wird verwendet, um eine Vielzahl innovativer Unternehmenslösungen zu betreiben, z.B. Mitarbeiter-, Vertriebs- Kunden- und Partnerportale, soziale Netzwerke, Workspaces zur Teamarbeit, Unternehmensintranets und öffentliche Websites - zu einem Bruchteil der Kosten properitärer Systeme. Darüber hinaus ermöglicht Liferay die innovative und einfache Integration von Backend-Systemen wie Finanzlösungen, CRM und ERP- Software in Kombination mit den bereits eingebauten Social, Collaboration und Web 2.0 Funktionen. Zahlreiche nationale und internationale Unternehmen setzen Liferay bereits ein (u.a. Lufthansa, Deutsche Post, Deutsche Telekom, BMW, Sparkasse KölnBonn, RWE, Vodafone, HanseMerkur Versicherungen) und es werden täglich mehr. Liferay - ein System auch für ihre Unternehmensanforderungen?
Webportale - Konzept, Vision und Realität. Eine Geschichte von Erfolg und Scheitern.
Liferay - ein Portal für alles? Der Herausforderer aus dem Open Source Lager.
Einsatzszenarien - Was geht? Was nicht? Und was auf gar keinen Fall?
Lifepräsentation - Ein Klick sagt mehr als 1000 Folien. Ein Walk-through durch die Keyfeatures von Liferay
1996 hat PostgreSQL seinen Kampf gegen kommerzielle Datenbanksysteme aufgenommen. Als Erbe des Datenbank Management Systems Ingres ist PostgreSQL (daher auch der Name, Post=nach, (in-)"gres") auf dem Weg immer mehr kommerzielle Datenbanksysteme auch im Highlevel Segment zu verdrängen. Mit dem Zusatz SQL verdeutlich PostgreSQL sein bestreben die SQL-ANSI-Normen umzusetzen. Vor allem im Hochschulbereich wird PostgreSQL Entwickelt und auch eingesetzt. Datenmengen von mehreren Milliarden Datensätzen pro Tabelle bewältigt PostgreSQL mit Leichtigkeit denn gerade im GIS (Geografischen Information Systemen) Umfeld sind solche Datenmengen unabdingbar.
PostgreSQL im Überblick
Einsatzgebiete
Erfahrungsberichte
Grenzen und Ausblicke
Erweiterungen rund um PostgreSQL
PostgreSQL im Einsatz (Praxisberichte)
Java Server Faces 2.0 - Der Standard für moderne und komponentenbasierte Weba...GFU Cyrus AG
JSF (JavaServer Faces) ist seit 2004 der Standard für komponentenbasierte Webanwendungen. Anfangs nur belächelt und als Intranetlösung abgetan, ist JSF heute eine stabile Grundlage, auch für Webanwendungen im Internet. Seit Juni 2009 ist mit JSR 314 die Version 2.0 fertig spezifiziert. Dieser Vortrag von Robert Reiz gibt eine kurze Einführung in die Grundlagen, einen kurzen geschichtlichen Rückblick und eine Einführung in die neuen Features von JSF 2.0.
Grundlagen und Rückblick
Vorstellung von JSF 2.0
Fazit
Wieviel Web2.0 braucht Ihr Unternehmen?GFU Cyrus AG
Für die Generation Y (ab Ende der 1970er Jahre geborene) ist der Einsatz von Web2.0 Tools wie Blogs, Twitter, Wikis, Social Networks etc. eine absolute Selbstverständlichkeit. Wie aber können Unternehmen vom Social Web profitieren? Ist die Investition in Web2.0 bereits ein Muss, oder geht es auch Ohne? Wo sind die Risiken und wie kann ich Ihnen begegnen?
Übersicht und Kurzeinführung
Anwendungspotentiale
Herausforderungen
Fazit
Die Version 6 der Java Enterprise Edition steht kurz vor der Verabschiedung. Viele Stimmen sagen, dass die darin enthaltenen Technologien nunmehr nahezu ausgereift und alle Erwartungen erfüllt seien. Es werden die neuen Features insbesondere in den Bereichen Enterprise JavaBeans, Webanwendungen, Java Persistence und Webservices beleuchtet. Die anschließende Diskussion kann zeigen, ob die anfangs angesprochenen Vorschusslorbeeren gerechtfertigt sind und ob die Wunschliste tatsächlich vollständig abgearbeitet wurde.
EJB 3.1
- Session Beans ohne local Interface
- Singletons, Timer
- Session Bean Methoden asynchron
Servlet 3.0
- Ease of Development
JSF 2.0
- Ohne faces-config.xml?
JPA 2.0
- Weitere Mapping-Optionen
- Relationsfelder im Primärschlüssel
Das Java-Spring-Framework in der PraxisGFU Cyrus AG
Die Java EE Plattform hat sich in der server-seitigen Anwendungsentwicklung mit Java durchgesetzt. Doch dieses Standardmodell basiert auf den Enterprise JavaBeans, die einen schwergewichtigten Ansatz darstellen.
Mit dem Spring Framework gibt es jetzt eine so genannte "leichtgewichtige" Alternative.
Hierbei werden ausschließlich POJO (Plain Old Java Object) Objekte verwendet und die verwendeten Dienste der Java EE Plattform wie z.B. der Transaktionsdienst nur deskriptiv konfiguriert.
Der Vorteil liegt in der einfachen Entwicklung sowie der robusten Testbarkeit der Anwendung.
Einsatzmöglichkeiten des Spring Frameworks
Das Spring Framework
Tool Unterstützung für die Anwendungsentwicklung
Spring AOP
Spring und JDBC
Testen mit Spring
Spring und Java Standards
Agile Geschäftsprozeßanalyse OOA/D am Beispiel einer SeminarverwaltungGFU Cyrus AG
In einer Vielzahl von GFU-Kursen wurde bereits die UML-Notation vermittelt. Von praktischem Interesse ist jedoch die Umsetzung im Rahmen einer GPA/OOA/OOD, um eine Umsetzung in modernen objektorientierten Programmiersprachen zu ermöglichen.
Im Rahmen dieses Vortrages wird die Anwendung der UML am Fallbeispiel einer Software zur Seminarverwaltung unter Verwendung von agilen Methoden beschrieben. Im Fokus steht dabei, den objektorientierten Ansatz der Softwareentwicklung zu verdeutlichen. Ausserdem soll die spezielle Sichtweise jedes UML-Diagramms auf die zu entwickelnde Software sowie die Zusammenhänge der Diagramme betont werden. Behandelt werden soll:
GPA/OOA mit Use Cases
GPA/OOA mit Aktivitätsdiagrammen
OOA Objekt- und Klassendiagramme
OOD Klassendiagramme
OOD Zustandsdiagramme
OOD Sequenzdiagramme
Damit in Zusammenhang werden agile Konzepte vorgestellt:
der ideale Kunde & der ideale Programmierer
Methoden der Entwicklung: Scrum, TDD, FDD
OOA Anwendungsfälle mit Story Cards
OOA Risk/Value Priorisierung und Planning Poker
OOA/D Ermittlung der Klassen mittels CRC-Kartenmethode
OOP Pair-Programming
OOP Continuous Integration
Unternehmen entwickeln, produzieren und vertreiben ihre Produkte weltweit. Somit ist auch die Entstehung und Nutzung von Wissen in Unternehmens nicht mehr auf einen Standort beschränkt. Wissensmanagement hilft hohe Reisekosten zu reduzieren, indem die Experten des Unternehmens in Wissensnetzwerken organisiert werden und standortverteilt koordiniert zusammenarbeiten können. Innovative lokale Lösungen werden im ganzen Unternehmen weitergegeben. Informationen zu neuen Verfahren oder erkannten Problemen werden schnell an alle betroffenen Mitarbeiter weitergeleitet. So können z.B. teure Rückrufaktionen vermieden und die damit verbundenen Imageschäden abgewendet werden.
Ein hoher Ausbildungsstand und lebenslanges Lernen der Mitarbeiter sind entscheidend für die erfolgreiche Erzeugung komplexer Produkte und Dienstleistungen. Wechseln jedoch hochqualifizierte Mitarbeiter in eine andere Abteilung oder verlassen das Unternehmen, kann dies problematisch werden. Wissensmanagement hilft, das Wissen wechselnder oder ausscheidender Mitarbeiter zu bewahren.
Was ist Wissensmanagement
Wissensbasen
Wissenswegweiser
Wissensstafette
Wissensnetzwerke
Kompetenzmanagement
Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...GFU Cyrus AG
Der Erfolg von Softwareentwicklungsprojekten hängt maßgeblich von einer guten Anforderungsanalyse ab. Je später Konzeptionsfehler erkannt werden, desto höher sind die Kosten der erforderlichen Korrekturen. Wir stellen in diesem Vortrag dar, wie durch eine strukturierte und dabei nicht zu formale Vorgehensweise frühzeitig sichergestellt werden kann, dass die später entwickelte Anwendung den Wünschen des Auftraggebers entspricht und zudem eine verlässliche Basis für die Einschätzung des Entwicklungsaufwands entsteht.
Im Vortrag verdeutlichen wir die Vorgehensweise an dem Beispiel einer Konzeption eines Systems zur Betriebsdatenerfassung und Leistungsentlohnung. Mit einem Mix aus Office- und UML-Werkzeugen konnte hier in kurzer Zeit ein gemeinsames Verständnis mit der Fachabteilung des Kunden erreicht werden und die formale Basis für die nachfolgende Realisierung des Systems geschaffen werden.
Auswahl von Werkzeugen aus dem Office- und Modellierungsumfeld
Halbformale Beschreibung von Anwendungsfällen
Erstellung eines fachlichen und technischen Glossars
Komponentenmodellierung mit UML
Entwicklung eines Anwendungs-Prototyps
Grenzüberschreitende Geschäftsprozesse mit Microsoft SharePoint und BizTalkGFU Cyrus AG
Microsoft Office SharePoint Server und Co. sind in der Unternehmens-IT angekommen. Kein anderes Produkt und Technologie der Firma Microsoft wird zurzeit so stark nachgefragt, evaluiert und natürlich auch eingesetzt.
Die Gründe dafür sind vielseitig: Angefangen von der zentralisierten Dokumentablage (DMS), über webbasierte Zusammenarbeit (Collaboration) oder auch als Internet-/Intranetplattform (CMS) bietet er ein Menge Grundfunktionalität.
Aber SharePoint kann noch mehr. In der Kombination mit BizTalk lassen sich die existierenden IT-Systeme integrieren und Geschäftsprozesse automatisieren.
Automatisierung von Geschäftsprozessen mit IT
Herausforderungen verteilter Systeme
Anforderungen zum Einbinden von Menschen
BizTalk: Prozess- und Integrationsplattform
Vorteile von BizTalk
"Dream-Team" Sharepoint, InfoPath, BizTalk
Lösung für verschiedene Herausforderungen
Projekt! - Toll - Ein Anderer Macht`s! - Voraussetzungen für eine erfolgreich...GFU Cyrus AG
Kennen Sie das auch:
Das Leitertreffen der Projektgruppen "Neue Produktentwicklungen XYZ" ist angesagt. Heute nennt man das "Meilenstein" oder Statusbesprechung, manchmal auch KVP Meeting. Sie suchen in Ihren Dateien den Maßnahmenplan und siedend heiß fällt Ihnen ein, daß Ihre Gruppenmitglieder noch immer nicht alle notwendigen Informationen gemeldet bzw. eingetragen haben. Streß bricht aus und parallel überlegen Sie sich vorsorglich, womit Sie die diversen Lücken und nicht eingehaltenen Termine begründen können.
Als Sie zu dem vereinbarten Termin eintreffen, geht es erstmal nur um diejenigen, die nicht oder verspätet kommen. Während der Besprechung aller Projektleiter können Sie noch vor Ihrem Part aufatmen: den anderen geht es auch nicht besser! Auch sie haben sich nicht an die getroffenen und schriftlich dokumentierten Inhalte und Termine gehalten.
So - oder ähnlich - finden jeden Tag tausende von Projekt besprechungen statt. Die Folge: Terminverschiebungen - oft mehrfach, überzogene Budgets, mangelnde Akzeptanz von Projektgruppenergebnissen und die Kosten steigen und steigen und steigen..!
Aber: es gibt es einige, die können Projekte sehr erfolgreich gestalten. Immer wieder! Was machen diese Projektteams anders, was zeichnet sie aus und kann man von ihnen lernen und das auf die eigene Arbeitssituation übertragen?
Spezielle Merkmale der Projektarbeit
- Einmaligkeit der Aufgabe
- Komplexität
- Beteiligung verschiedenster Unternehmensbereiche, von Fachexperten und ggf. von Kunden
- Begrenzte Ressourcen (Kosten und Zeit)
Spezielle Ablauf- und Aufbauorganisation
- Teamarbeit - Toll - Ein Anderer Macht`s
- Rolle des Projektleiters und der Auftraggeber
Akzeptanz von Projekten
- Verbindlichkeit aller Beteiligten
- Kommunikation nach innen und außen
- Qualitätssicherung in Projekten
Standardsoftware in der Versicherungsbranche - Betrachtung eines Paradigmenwe...GFU Cyrus AG
Zum heutigen Zeitpunkt besteht ein noch weitgehend unverteilter Markt für standardisierte Versicherungskernanwendungen mit viel Potenzial für die Zukunft. Welche Anbieter kann der deutschen Versicherungswirtschaft mit standardisierten und industrialisierten Verfahren und Produkten helfen, damit sie im schwieriger gewordenen Markt der Finanzdienstleistungen erfolgreich bleibt.
Ausgangsituation
- Zentrale Herausforderungen
- Versicherer unter Druck
Kosten
- Prozesse
- Verdrängungswettbewerb
Paradigmenwechsel
- Industrialisierung
Standardsoftware / Kernanwendungen
- Anbietervergleich (ICIS/COR/SAP/FJA)
Marktaufteilung
Kurzbeschreibung
Über 16 Mio. Facebook User in Deutschland - alleine diese Zahl macht deutlich, dass Unternehmen mittlerweile am Web 2.0 und den Sozialen Medien nicht mehr vorbeikommen. Aber wie steigt man in das Thema ein und was muss man bedenken, wenn man mit seiner Firma, Marke oder Produkt in den Sozialen Medien aktiv werden will? Fragen, die Bert Branahl, Geschäftsführer ConsultM, Bielefeld in seinem Vortrag beantwortet. Dabei werden Beispiele aus der Praxis zeigen, was heute im Web 2.0 möglich ist.
Java Code Quality: Gute Software braucht guten Code - Regeln für verständlich...GFU Cyrus AG
Kurzbeschreibung
Softwarequalität ist keine Spracheigenschaft. In jeder noch so guten Programmiersprache kann man schlechte Programme schreiben – sogar in Java. Herr Seekamp, Senior Consultant bei der GEDOPLAN GmbH, macht in diesem Vortrag anhand von Fallbeispielen aus seinen Projekten deutlich, was verständlichen und wartbaren Code ausmacht, welche Regeln man dafür beherzigen sollte und welche Analysewerkzeuge dabei unterstützen können.
Inhalt
Regeln für guten Java-Code
Statische Code-Analyse
Refactoring
Werkzeuge zur Sicherung der Qualität
Cross-Apps-Entwicklung für iPhone, Android und Co.GFU Cyrus AG
Kurzbeschreibung
Beschreibung: Mit der Veröffentlichung von iPhone, iPod Touch sowie iPad und dem iPhone OS hat Apple den Markt für mobile Endgeräte massenfähig gemacht. Google liefert mit dem Android-Betriebssystem ebenfalls eine stetig wachsende Plattform. Einer der Erfolgsfaktoren ist der auf beiden Systemen verfügbaren Browser "Mobile Safari" bzw. die technologische Basis WebKit. Diese freie HTML-Rendering-Bibliothek wird nicht nur von Apple und Google eingesetzt, sondern auch von anderen Unternehmen, wie Nokia, Adobe und Blackberry verwendet. Dozent: Peter Hecker, GFU Cyrus AG
Inhalt
- Einführung und Motivation
- Die WebKit-Plattform
- Überblick "mobile" Frameworks
- Zusammenfassung und Fazit
Datenschutz bei Facebook & Co. - Wie schütze ich meine persönlichen Daten im ...GFU Cyrus AG
Kurzbeschreibung
Der Vortrag geht darauf ein, was Facebook & Co. mit den ihnen anvertrauten Daten macht. Er schafft ein Bewusstsein dafür, wie man selbst am besten mit seinen Daten im Internet umgeht.
Inhalt
Unendlich viele persönliche Daten werden heute bei Facebook und Co. eingegeben und dieses wird fast immer noch mit reichlich Bildmaterial untermauert.
Hier gibt es Fotos von Partys, aus dem Büro oder dem eigenen Garten.
Wir erzählen jedem der es Wissen will oder auch nicht dass wir ab nächste Woche im Urlaub, Offline oder untergetaucht sind.
Wozu werden diese Informationen eigentlich verwandt?
Wer kann sieaußerhalb der eigenen Community noch gebrauchen und warum?
Stehen wir somit häufig nicht vollkommen "nackt" in der Öffentlichkeit?
Der Vortrag zeigt Risiken aber auch Chancen des "Social Webs" auf und soll primär sensibilisieren, verantwortungsvoll mit persönlichen Daten umzugehen, egal ob es die Eigenen oder die von Dritten sind.
Requirements Engineering in agilen Projekten - Flexibilität ist gefordertGFU Cyrus AG
In agilen Projekten ist funktionierende Software wichtiger als ausufernde Dokumentation. Durch kurze Entwicklungszyklen (Iterationen) werden den Anwendern schon während der Entwicklung Teilpakete der geplanten Softwarelösung mit einem sinnvollen Funktionsumfang bereit gestellt. In agilen Projekten ist die flexible Reaktion auf Änderungen der Anforderungen wichtiger als ein starrer Projektplan. Agilität bei der Entwicklung erfordert aber auch Agilität bei der Beschreibung der funktionalen Anforderungen (Requirements Engineering). Use Case-Modelle eignen sich hervorragend für diese Aufgabe. Durch dieses Vorgehen ist es möglich, Wünsche der Anwender, geänderte Rahmenbedingungen und Erfahrungen aus der bisherigen Entwicklung in der Realisierung zu berücksichtigen. Reinhard Brüggemeyer, Dozent dieses "Treffpunkt Semicolon", zeigt, warum in agilen Projekten der Anwender und seine Aufgaben im Mittelpunkt stehen. Pro und Contra des agilen Vorgehens gegenüber dem klassischen Requirements Engineering werden diskutiert.
SharePoint 2010 - Was ist neu, was wird besser!GFU Cyrus AG
Microsoft Office SharePoint Server (MOSS) 2007 hat sich als ernstzunehmende Plattform für Portale, Collaboration und Content Management System (CMS) am Markt etabliert und gehört laut Gartner Group neben IBM WebSphere Portal Server und SAP NetWeaver Portal zu den Marktführer dieser Kategorie Software. Ab Mitte 2010 wird die nächste Version der Microsoft SharePoint Server (MSS) 2010 erscheinen. Nach dem schon hohen Grad Alltagstauglichkeit der Version 2007 folgt der Server 2010 mit vielen produktiven Verbesserungen. Diese sind im Bereich der Bedienbarkeit (Usability), der Administration und auch der Entwicklung zu finden.
* Vorstellung der neuen SharePoint Produktpalette (Server, Suche, Designer, Visio, InfoPath, Excel, Oberfläche, Workspace)
* Demonstration der neuen Administration - Konzeptionelle Änderungen zum Vorgänger
* Demonstration der neuen Web-Oberfläche (Ribbons)
* Demonstration des neuen SharePoint Designers (Wiederverwendbarkeit von Anpassungen)
* Zusammenfassung der weiteren Neuerungen
Pragmatische Einführung von IT-Servicemanagement - ITIL im Unternehmen - Erfa...GFU Cyrus AG
Viele Unternehmen scheuen sich gerade in wirtschaftlich angespannten Zeiten verständlicherweise, eine Optimierung Ihres IT-Service Managements anzugehen. Diese paradoxe Situation liegt u.a. daran, dass die in der Praxis etablierten Methoden -aufgrund Ihres Umfangs und Ihrer scheinbaren Komplexität- als nahezu unüberwindbare Hindernisse empfunden werden. Gerne möchten wir Ihnen vorstellen, wie Sie durch schlanke und ergebnisorientierte Strukturen einen wertschöpfenden Betrieb Ihrer IT-Services sicherstellen und gerade in der heißen Phase der Implementierung organisatorische oder personelle Störungen vermeiden. Ergänzend möchten wir Ihnen einen Überblick zum Thema ISO 20.000 und die damit verbundene mögliche Erhöhung der Wettbewerbsfähigkeit Ihrer Organisation bieten.
Liferay Portal - ein Webportal für viele UnternehmensanforderungenGFU Cyrus AG
Liferay Portal ist eines der führenden Open Source Portalsysteme und wird verwendet, um eine Vielzahl innovativer Unternehmenslösungen zu betreiben, z.B. Mitarbeiter-, Vertriebs- Kunden- und Partnerportale, soziale Netzwerke, Workspaces zur Teamarbeit, Unternehmensintranets und öffentliche Websites - zu einem Bruchteil der Kosten properitärer Systeme. Darüber hinaus ermöglicht Liferay die innovative und einfache Integration von Backend-Systemen wie Finanzlösungen, CRM und ERP- Software in Kombination mit den bereits eingebauten Social, Collaboration und Web 2.0 Funktionen. Zahlreiche nationale und internationale Unternehmen setzen Liferay bereits ein (u.a. Lufthansa, Deutsche Post, Deutsche Telekom, BMW, Sparkasse KölnBonn, RWE, Vodafone, HanseMerkur Versicherungen) und es werden täglich mehr. Liferay - ein System auch für ihre Unternehmensanforderungen?
Webportale - Konzept, Vision und Realität. Eine Geschichte von Erfolg und Scheitern.
Liferay - ein Portal für alles? Der Herausforderer aus dem Open Source Lager.
Einsatzszenarien - Was geht? Was nicht? Und was auf gar keinen Fall?
Lifepräsentation - Ein Klick sagt mehr als 1000 Folien. Ein Walk-through durch die Keyfeatures von Liferay
1996 hat PostgreSQL seinen Kampf gegen kommerzielle Datenbanksysteme aufgenommen. Als Erbe des Datenbank Management Systems Ingres ist PostgreSQL (daher auch der Name, Post=nach, (in-)"gres") auf dem Weg immer mehr kommerzielle Datenbanksysteme auch im Highlevel Segment zu verdrängen. Mit dem Zusatz SQL verdeutlich PostgreSQL sein bestreben die SQL-ANSI-Normen umzusetzen. Vor allem im Hochschulbereich wird PostgreSQL Entwickelt und auch eingesetzt. Datenmengen von mehreren Milliarden Datensätzen pro Tabelle bewältigt PostgreSQL mit Leichtigkeit denn gerade im GIS (Geografischen Information Systemen) Umfeld sind solche Datenmengen unabdingbar.
PostgreSQL im Überblick
Einsatzgebiete
Erfahrungsberichte
Grenzen und Ausblicke
Erweiterungen rund um PostgreSQL
PostgreSQL im Einsatz (Praxisberichte)
Java Server Faces 2.0 - Der Standard für moderne und komponentenbasierte Weba...GFU Cyrus AG
JSF (JavaServer Faces) ist seit 2004 der Standard für komponentenbasierte Webanwendungen. Anfangs nur belächelt und als Intranetlösung abgetan, ist JSF heute eine stabile Grundlage, auch für Webanwendungen im Internet. Seit Juni 2009 ist mit JSR 314 die Version 2.0 fertig spezifiziert. Dieser Vortrag von Robert Reiz gibt eine kurze Einführung in die Grundlagen, einen kurzen geschichtlichen Rückblick und eine Einführung in die neuen Features von JSF 2.0.
Grundlagen und Rückblick
Vorstellung von JSF 2.0
Fazit
Wieviel Web2.0 braucht Ihr Unternehmen?GFU Cyrus AG
Für die Generation Y (ab Ende der 1970er Jahre geborene) ist der Einsatz von Web2.0 Tools wie Blogs, Twitter, Wikis, Social Networks etc. eine absolute Selbstverständlichkeit. Wie aber können Unternehmen vom Social Web profitieren? Ist die Investition in Web2.0 bereits ein Muss, oder geht es auch Ohne? Wo sind die Risiken und wie kann ich Ihnen begegnen?
Übersicht und Kurzeinführung
Anwendungspotentiale
Herausforderungen
Fazit
Die Version 6 der Java Enterprise Edition steht kurz vor der Verabschiedung. Viele Stimmen sagen, dass die darin enthaltenen Technologien nunmehr nahezu ausgereift und alle Erwartungen erfüllt seien. Es werden die neuen Features insbesondere in den Bereichen Enterprise JavaBeans, Webanwendungen, Java Persistence und Webservices beleuchtet. Die anschließende Diskussion kann zeigen, ob die anfangs angesprochenen Vorschusslorbeeren gerechtfertigt sind und ob die Wunschliste tatsächlich vollständig abgearbeitet wurde.
EJB 3.1
- Session Beans ohne local Interface
- Singletons, Timer
- Session Bean Methoden asynchron
Servlet 3.0
- Ease of Development
JSF 2.0
- Ohne faces-config.xml?
JPA 2.0
- Weitere Mapping-Optionen
- Relationsfelder im Primärschlüssel
Das Java-Spring-Framework in der PraxisGFU Cyrus AG
Die Java EE Plattform hat sich in der server-seitigen Anwendungsentwicklung mit Java durchgesetzt. Doch dieses Standardmodell basiert auf den Enterprise JavaBeans, die einen schwergewichtigten Ansatz darstellen.
Mit dem Spring Framework gibt es jetzt eine so genannte "leichtgewichtige" Alternative.
Hierbei werden ausschließlich POJO (Plain Old Java Object) Objekte verwendet und die verwendeten Dienste der Java EE Plattform wie z.B. der Transaktionsdienst nur deskriptiv konfiguriert.
Der Vorteil liegt in der einfachen Entwicklung sowie der robusten Testbarkeit der Anwendung.
Einsatzmöglichkeiten des Spring Frameworks
Das Spring Framework
Tool Unterstützung für die Anwendungsentwicklung
Spring AOP
Spring und JDBC
Testen mit Spring
Spring und Java Standards
Agile Geschäftsprozeßanalyse OOA/D am Beispiel einer SeminarverwaltungGFU Cyrus AG
In einer Vielzahl von GFU-Kursen wurde bereits die UML-Notation vermittelt. Von praktischem Interesse ist jedoch die Umsetzung im Rahmen einer GPA/OOA/OOD, um eine Umsetzung in modernen objektorientierten Programmiersprachen zu ermöglichen.
Im Rahmen dieses Vortrages wird die Anwendung der UML am Fallbeispiel einer Software zur Seminarverwaltung unter Verwendung von agilen Methoden beschrieben. Im Fokus steht dabei, den objektorientierten Ansatz der Softwareentwicklung zu verdeutlichen. Ausserdem soll die spezielle Sichtweise jedes UML-Diagramms auf die zu entwickelnde Software sowie die Zusammenhänge der Diagramme betont werden. Behandelt werden soll:
GPA/OOA mit Use Cases
GPA/OOA mit Aktivitätsdiagrammen
OOA Objekt- und Klassendiagramme
OOD Klassendiagramme
OOD Zustandsdiagramme
OOD Sequenzdiagramme
Damit in Zusammenhang werden agile Konzepte vorgestellt:
der ideale Kunde & der ideale Programmierer
Methoden der Entwicklung: Scrum, TDD, FDD
OOA Anwendungsfälle mit Story Cards
OOA Risk/Value Priorisierung und Planning Poker
OOA/D Ermittlung der Klassen mittels CRC-Kartenmethode
OOP Pair-Programming
OOP Continuous Integration
Unternehmen entwickeln, produzieren und vertreiben ihre Produkte weltweit. Somit ist auch die Entstehung und Nutzung von Wissen in Unternehmens nicht mehr auf einen Standort beschränkt. Wissensmanagement hilft hohe Reisekosten zu reduzieren, indem die Experten des Unternehmens in Wissensnetzwerken organisiert werden und standortverteilt koordiniert zusammenarbeiten können. Innovative lokale Lösungen werden im ganzen Unternehmen weitergegeben. Informationen zu neuen Verfahren oder erkannten Problemen werden schnell an alle betroffenen Mitarbeiter weitergeleitet. So können z.B. teure Rückrufaktionen vermieden und die damit verbundenen Imageschäden abgewendet werden.
Ein hoher Ausbildungsstand und lebenslanges Lernen der Mitarbeiter sind entscheidend für die erfolgreiche Erzeugung komplexer Produkte und Dienstleistungen. Wechseln jedoch hochqualifizierte Mitarbeiter in eine andere Abteilung oder verlassen das Unternehmen, kann dies problematisch werden. Wissensmanagement hilft, das Wissen wechselnder oder ausscheidender Mitarbeiter zu bewahren.
Was ist Wissensmanagement
Wissensbasen
Wissenswegweiser
Wissensstafette
Wissensnetzwerke
Kompetenzmanagement
Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...GFU Cyrus AG
Der Erfolg von Softwareentwicklungsprojekten hängt maßgeblich von einer guten Anforderungsanalyse ab. Je später Konzeptionsfehler erkannt werden, desto höher sind die Kosten der erforderlichen Korrekturen. Wir stellen in diesem Vortrag dar, wie durch eine strukturierte und dabei nicht zu formale Vorgehensweise frühzeitig sichergestellt werden kann, dass die später entwickelte Anwendung den Wünschen des Auftraggebers entspricht und zudem eine verlässliche Basis für die Einschätzung des Entwicklungsaufwands entsteht.
Im Vortrag verdeutlichen wir die Vorgehensweise an dem Beispiel einer Konzeption eines Systems zur Betriebsdatenerfassung und Leistungsentlohnung. Mit einem Mix aus Office- und UML-Werkzeugen konnte hier in kurzer Zeit ein gemeinsames Verständnis mit der Fachabteilung des Kunden erreicht werden und die formale Basis für die nachfolgende Realisierung des Systems geschaffen werden.
Auswahl von Werkzeugen aus dem Office- und Modellierungsumfeld
Halbformale Beschreibung von Anwendungsfällen
Erstellung eines fachlichen und technischen Glossars
Komponentenmodellierung mit UML
Entwicklung eines Anwendungs-Prototyps
Grenzüberschreitende Geschäftsprozesse mit Microsoft SharePoint und BizTalkGFU Cyrus AG
Microsoft Office SharePoint Server und Co. sind in der Unternehmens-IT angekommen. Kein anderes Produkt und Technologie der Firma Microsoft wird zurzeit so stark nachgefragt, evaluiert und natürlich auch eingesetzt.
Die Gründe dafür sind vielseitig: Angefangen von der zentralisierten Dokumentablage (DMS), über webbasierte Zusammenarbeit (Collaboration) oder auch als Internet-/Intranetplattform (CMS) bietet er ein Menge Grundfunktionalität.
Aber SharePoint kann noch mehr. In der Kombination mit BizTalk lassen sich die existierenden IT-Systeme integrieren und Geschäftsprozesse automatisieren.
Automatisierung von Geschäftsprozessen mit IT
Herausforderungen verteilter Systeme
Anforderungen zum Einbinden von Menschen
BizTalk: Prozess- und Integrationsplattform
Vorteile von BizTalk
"Dream-Team" Sharepoint, InfoPath, BizTalk
Lösung für verschiedene Herausforderungen
Projekt! - Toll - Ein Anderer Macht`s! - Voraussetzungen für eine erfolgreich...GFU Cyrus AG
Kennen Sie das auch:
Das Leitertreffen der Projektgruppen "Neue Produktentwicklungen XYZ" ist angesagt. Heute nennt man das "Meilenstein" oder Statusbesprechung, manchmal auch KVP Meeting. Sie suchen in Ihren Dateien den Maßnahmenplan und siedend heiß fällt Ihnen ein, daß Ihre Gruppenmitglieder noch immer nicht alle notwendigen Informationen gemeldet bzw. eingetragen haben. Streß bricht aus und parallel überlegen Sie sich vorsorglich, womit Sie die diversen Lücken und nicht eingehaltenen Termine begründen können.
Als Sie zu dem vereinbarten Termin eintreffen, geht es erstmal nur um diejenigen, die nicht oder verspätet kommen. Während der Besprechung aller Projektleiter können Sie noch vor Ihrem Part aufatmen: den anderen geht es auch nicht besser! Auch sie haben sich nicht an die getroffenen und schriftlich dokumentierten Inhalte und Termine gehalten.
So - oder ähnlich - finden jeden Tag tausende von Projekt besprechungen statt. Die Folge: Terminverschiebungen - oft mehrfach, überzogene Budgets, mangelnde Akzeptanz von Projektgruppenergebnissen und die Kosten steigen und steigen und steigen..!
Aber: es gibt es einige, die können Projekte sehr erfolgreich gestalten. Immer wieder! Was machen diese Projektteams anders, was zeichnet sie aus und kann man von ihnen lernen und das auf die eigene Arbeitssituation übertragen?
Spezielle Merkmale der Projektarbeit
- Einmaligkeit der Aufgabe
- Komplexität
- Beteiligung verschiedenster Unternehmensbereiche, von Fachexperten und ggf. von Kunden
- Begrenzte Ressourcen (Kosten und Zeit)
Spezielle Ablauf- und Aufbauorganisation
- Teamarbeit - Toll - Ein Anderer Macht`s
- Rolle des Projektleiters und der Auftraggeber
Akzeptanz von Projekten
- Verbindlichkeit aller Beteiligten
- Kommunikation nach innen und außen
- Qualitätssicherung in Projekten
Standardsoftware in der Versicherungsbranche - Betrachtung eines Paradigmenwe...GFU Cyrus AG
Zum heutigen Zeitpunkt besteht ein noch weitgehend unverteilter Markt für standardisierte Versicherungskernanwendungen mit viel Potenzial für die Zukunft. Welche Anbieter kann der deutschen Versicherungswirtschaft mit standardisierten und industrialisierten Verfahren und Produkten helfen, damit sie im schwieriger gewordenen Markt der Finanzdienstleistungen erfolgreich bleibt.
Ausgangsituation
- Zentrale Herausforderungen
- Versicherer unter Druck
Kosten
- Prozesse
- Verdrängungswettbewerb
Paradigmenwechsel
- Industrialisierung
Standardsoftware / Kernanwendungen
- Anbietervergleich (ICIS/COR/SAP/FJA)
Marktaufteilung
6. Professionalität
• ..wenn man studiert hat
• ..wenn man zertifiziert ist
• ..wenn man sein Geld damit verdient
• ..wenn man die Wünsche des Kunden
erfüllt
• ..wenn man..ja wenn man....
Mittwoch, 26. Januar 2011 6
7. Professionalität
Professionalität = Wissen + Ethik
Professionalität hat was mit
Wissen und Erfahrung zu tun,
aber auch mit Ethik
Mittwoch, 26. Januar 2011 7
8. Professionalität
Ethik hat etwas mit Werten zu tun
Mittwoch, 26. Januar 2011 8
9. Professionalität
Hände wachen ist für den Chirug
selbst verständlich. Bitte um Unterlassung
wegen Kosten wird er ablehnen.
Mittwoch, 26. Januar 2011 9
10. Qualität
Qualität
Er wäscht sich die Hände um die
Qualität seiner Arbeit
sicherzustellen bzw. zu steigern.
Mittwoch, 26. Januar 2011 10
11. Qualität
Qualität ist der
„Grad, in dem ein Satz inhärenter Merkmale
Anforderungen erfüllt“
Norm EN ISO 9000:2005, nach http://de.wikipedia.org/wiki/Qualität
Mittwoch, 26. Januar 2011 11
12. Inhärente Merkmale
• Usibility
• Portabilität
• Performance
• Sicherheit
• Fehler-Toleranz
• Testbarkeit Solche Punkte wird ein Kunde selten von
sich aus als erstes ansprechen.
Mittwoch, 26. Januar 2011 12
13. Anforderungen
Wer gibt denn überhaupt
Anforderungen vor ?
Mittwoch, 26. Januar 2011 13
14. Qualität
Äußere Qualität
Innere Qualität
Diese beiden Qualitäten sind
nicht immer gleich verteilt.
Mittwoch, 26. Januar 2011 14
15. Qualität
Ein Clean Code Developer ist ein Gegengewicht
Mittwoch, 26. Januar 2011 15
16. Qualität
Ein Clean Code Developer definiert ein
Werte-System für mehr innere Qualität
Mittwoch, 26. Januar 2011 16
17. Clean Code Developer
Ein professioneller Softwareentwickler hat ein inneres Wertesystem.
Gegen dieses Wertesystem, bestehend aus Gesetzen, Prinzipien und Best
Practices, prüft er seine Ergebnisse und Handlungen. Nur, wenn seine Arbeit
diesem Wertesystem entspricht, empfindet er sie als gut getan, als
professionell. Sein Streben ist es daher, auch unter widrigen Umständen, unter
Druck von Kunden oder Herstellern, diesem Wertesystem treu zu sein.
Mittwoch, 26. Januar 2011 17
18. Das Wertesystem
Evolvierbarkeit
Je einfacher die Software an geänderte
Rahmenbedingungen angepasst werden kann, desto höher
ist ihre Evolvierbarkeit.
18
Mittwoch, 26. Januar 2011 18
19. Das Wertesystem
Korrektheit
Die Software muss korrekt arbeiten, also zum Beispiel
„richtig“ rechnen. Aber auch nicht-funktionale
Anforderungen, wie Ressourcen-Verbrauch und z.B.
Reaktionszeit müssen erfüllt werden.
19
Mittwoch, 26. Januar 2011 19
20. Das Wertesystem
Produkteffizienz
Preis, Entwicklungszeit, Fehlerraten, Automatisierung sind
alles Aspekte von Produkteffizienz
Eine gute Qualität nutzt nichts wenn
man 2 Jahre über dem Zeitplan liegt.
20
Mittwoch, 26. Januar 2011 20
21. Das Wertesystem
Reflexion
Ständige Weiterentwicklung und Überprüfung der eigenen
Arbeit.
Dazu gehört auch:
ExtremeProgramming
Pairprogramming
Code Reviews
21
Mittwoch, 26. Januar 2011 21
22. Prinzipen und Praktiken
Alles schön....aber wie jetzt in der Praxis ?
Wie kann ich die Werte
umsetzen ?
Dafür gibt es beim CCD Prinzipien
und Praktiken.
22
Mittwoch, 26. Januar 2011 22
23. Das Grad-System
Schwarz Als einzelner Entwickler
Rot
Orange
Im Team
Gelb
Grün
Blau
Weiß Als Unternehmen
Die Grade drücken keinen Wert aus. Wer am blauen Grad arbeitet ist nicht "besser" oder "weiter" als
jemand, der am orangen Grad arbeitet. Die Grade sind nur ein didaktisches Hilfsmittel, um die Gesamtheit
des Wertesystems "einfacher verdaubar" zu machen. Die vielen Werte lassen sich schlicht in kleinen Happen
besser aneignen, als in einem Anlauf.
23
Mittwoch, 26. Januar 2011 23
25. Prinzipien
Open Closed Principle
Das Open Closed Principle ( OCP) besagt, dass eine
Klasse offen für Erweiterungen sein muss, jedoch
geschlossen gegenüber Modifikationen
25
Mittwoch, 26. Januar 2011 25
26. Prinzipien
Favour Composition over Inheritance
Für die Wiederverwendung von Funktionalität kennt die Objektorientierte Programierung
(OOP) zwei sehr bekannte Kandidaten: Die Vererbung (whitebox – reuse) und die
Komposition (blackbox – reuse). Verwendet man Funktionalität wieder durch das
Ableiten von einer Klasse, so ist die Subklasse abhängig von der Elternklasse. Dies
macht ein System in vielen Fällen unnötig komplex, schlechter testbar und erschwert
das Austauschen von Funktionalität zur Laufzeit. CCD hat für das korrekte Ableiten das
Liskov Substitution Prinzip (LSP) bereit, das es dabei zu befolgen gilt.
Bei der Komposition verwendet eine Klasse eine andere. Verwendet man dazu eine klar
definierte Schnittstelle, fördert das die Entkopplung. Auch können verschiedene
Implementationen einfach ausgetauscht werden. Bevor man sich also der Liskov
Substitution stellt, fordert Favour Composition over Inheritance, sich die Frage zu
stellen, ob man der Komposition nicht Vorrang geben kann.
26
Mittwoch, 26. Januar 2011 26
27. Prinzipien
Interface Segregation Principle
Das Interface Segregation Principle ( ISP) ist ein weiteres SOLID
Prinzip. Segregation bedeutet Abtrennung. Das Prinzip besagt, dass
ein Client nicht von Details eines Service abhängig sein soll, die er
gar nicht benötigt. Je weniger in dessen Interface enthalten ist,
desto geringer ist die Kopplung zwischen den beiden Komponenten.
27
Mittwoch, 26. Januar 2011 27