Softwareentwicklung
Design trifft Code
Design trifft Code. Alles, was Developer über Gestaltung und UX wissen müssen. (April 2024). Als Webentwickler*in beeinflussen Sie mit jeder Design-Entscheidung die Usability einer Website. »Design trifft Code« vermittelt Ihnen die Grundlagen und die Sprache des Designs, sodass Sie mit Designer*innen zusammenarbeiten und im Gestaltungsprozess selbst fundierte Entscheidungen treffen können. Sie lernen unter anderem,wie Sie mit Farbe, Typografie und Layout eine Hierarchie auf einer Website schaffen,wie Sie Farbpaletten in einer Benutzeroberfläche konsistent anwenden,wie Sie sich für die richtigen Schriftarten und Schriftschnitte entscheiden,wie Sie mit Methoden der Nutzerforschung mehr über Ihre User herausfinden und Ihre Design-Entscheidungen daran messenund wie Sie Layout und Struktur von Websites zügig planen und testen.Autorin Stephanie Stimac gibt in diesem Buch ihre wertvollen Erkenntnisse und Anregungen weiter, die sie als Designerin im Microsoft Developer Experiences Team gewonnen hat. Sie zeigt, wie sich elegante visuelle Designs erstellen lassen und eine Website von Grund auf entwerfen lässt. Ihr konsequent auf Developer ausgerichteter Ansatz vermittelt die wesentlichen UX- und Designgrundlagen an diejenigen, die sie in Code umsetzen: die Entwicklerinnen und Entwickler. Zahlreiche Beispiele aus erfolgreichen Websites und Interfaces veranschaulichen die Designprinzipien.Mit »Design trifft Code« lernen Sie anschaulich und leicht verständlich, wie Sie häufige Design- und Usability-Probleme mit Bravour lösen. Ein Buch für alle, die intuitiv zu bedienende Interfaces, attraktive Designs und eine perfekte Usability erschaffen möchten.Leseprobe (PDF-Link)Zielgruppe: Devs, die vor allem in technischen Aspekten fit sind, aber Design verstehen wollen, besser mit Designern zusammenarbeiten wollen, selbst eigene gute Designs erstellen wollenÜber die Autorin: Stephanie Stimac ist Produktmanagerin mit mehr als einem Jahrzehnt Erfahrung im Bereich Design und konzentriert sich auf die Entwicklung von Produkten für Entwickler. Sie hat auf Konferenzen auf der ganzen Welt über Webentwicklung und Designthemen gesprochen und in vielen dieser Vorträge die Kluft zwischen Design und Entwicklung überbrückt. Als sie noch ausschließlich an Designprojekten gearbeitet hat, war sie für Unternehmen wie Safeway, MBARI, Microsoft Azure, Microsoft Office, Windows, T-Mobile und Blue Cross Blue Shield tätig. Sie trat dem Microsoft-Edge-Team bei, weil sie eine Leidenschaft für das Web, Design und Entwicklung hat. Sie hat an Entwickler-Tools wie webhint.io und den DevTools des Edge-Browsers sowie an anderen Web-Plattform-Initiativen wie dem „Web We Want“ (webwewant.fyi) mitgearbeitet, wobei sie sich auf die Erfahrung der Entwickler konzentriert hat. Sie war sechs Jahre lang im Microsoft-Edge-Team tätig, bevor sie sich dem Produktmanagement für Developer Experience in der Start-up-Branche zuwandte.
GitOps
GitOps optimal einsetzen - Praktischer Einstieg für Entwicklungs- und Plattformteams - tiefgründige Fokussierung auf GitOps (ohne Grundlagen für K8s oder CI/CD) - Klarer Einblick in die Konsequenzen von GitOps und den Unterschied im Entwicklungsalltag - Umfassende Hilfestellung zu relevanten Herausforderungen wie Secrets, Repo-Strukturen und Asynchronität GitOps ist die aktuell vielversprechendste Methodik, um Continuous Deployment auf Cloud-native Art und Weise umzusetzen. Im Gegensatz zu punktuell getriggerten Deployments werden deklarative Beschreibungen der Softwaresysteme genutzt, um diese kontinuierlich im Hintergrund anzuwenden. Mit diesem Buch kannst du schnell und einfach in GitOps einsteigen und erfährst seine Vorteile für den Entwicklungsalltag. Nicht nur vergleichen wir hierfür die Tools Argo CD und Flux, sondern zeigen auch konkrete Implementierungen von GitOps mit und ohne Kubernetes, die du anhand öffentlicher Repositories direkt nachstellen kannst. Überdies gehen wir ausführlich auf fortgeschrittene Themen wie Secrets Management, Repo-Strukturen, Asynchronität und Alerting ein, um dich für den Ein- bzw. Umstieg optimal vorzubereiten. Unter https://gitops-book.dev findest du weitere Informationen zum Thema.
PHP 8 und MySQL - Das umfassende Handbuch (5. Auflage)
PHP 8 und MySQL - Das umfassende Handbuch. In 5., aktualisierter Auflage (2024).Dynamische Webseiten mit PHP und MySQL programmieren: Alles, was Sie dafür wissen müssen, steht in diesem bewährten Standardwerk. Profitieren Sie von einer praxisorientierten Einführung und lernen Sie auch alle neuen Sprachfeatures von PHP 8 kennen. Die Autoren Christian Wenz und Tobias Hauser sind erfahrene PHP-Programmierer und Datenbankspezialisten. Sie zeigen Ihnen, wie Sie MySQL und andere Datenbanksysteme effektiv einsetzen. Mit diesem Wissen machen Sie sich rundum fit für die Entwicklung dynamischer Websites. Aktuell zur Version 8.3.Webtechnologien im Zusammenspiel1. Lernen Sie die Grundlagen von PHPDie erfahrenen Autoren begleiten Sie sicher bei Ihren ersten Schritten: von der Installation (Linux, macOS und Windows), einer kompletten Spracheinführung bis hin zur Wahl des richtigen Datenbanksystems (SQLite, Microsoft SQL Server, PostgreSQL u. v. m.). Inkl. allen Neuerungen von PHP 8!2. Entwickeln Sie leistungsfähige WebsitesSie erfahren, wie Sie wichtige Basis-Webtechniken anwenden. Egal, ob Sie Formulare, Sessions oder Cookies einsetzen oder von PHP aus E-Mails versenden möchten. Anhand vieler Code- und Anwendungsbeispiele lernen Sie alles, was Sie im Alltag als PHP-Programmierer brauchen.3. Programmieren Sie sichere PHP-AnwendungenKommunizieren Sie mit der Außenwelt und greifen Sie via HTTP auf verschiedene Webdienste zu. Lernen Sie u. a. die Interaktion mit JavaScript kennen. Vermeiden Sie durch Benutzerauthentifizierung, PHP-Konfiguration, Fehlersuche und Debugging gefährliche Sicherheitslücken.Aus dem Inhalt:Installation von PHP und MySQLEinstieg in PHPAlle neuen Sprachfeatures von PHP 8Strings, Arrays, mathematische Funktionen und Datumsfunktionen, reguläre AusdrückeObjektorientiert programmieren, Namespaces, Traits und mehrFormulare, Cookies, Sessions, E-MailEinführung in SQLDatenbanken: MySQL, SQLite, Microsoft SQL Server, Oracle, PostgreSQL, MongoDBLeseprobe (PDF-Link)Über die Autoren: Christian Wenz ist Berater und Trainer mit Schwerpunkt Webtechnologien und Web-Security und führt Digitalisierungsprojekte im Unternehmensumfeld im In- und Ausland durch.Als Buchautor schreibt Tobias Hauser zu wichtigen Webthemen. Als Berater und Trainer unterstützt er Unternehmen mit seinem Schwerpunkt auf PHP-basierten Webanwendungen in allen Fragen von der Systemauswahl bis hin zur Schnittstellenarchitektur.
Kubernetes - Das Praxisbuch für Entwickler und DevOps-Teams
Kubernetes - Das Praxisbuch für Entwickler und DevOps-Teams. Kubernetes ist die Grundlage moderner IT-Infrastrukturen und ein unverzichtbares Werkzeug für das schnelle und agile Deployment von Anwendungen. Wenn es doch nur nicht so komplex wäre! Die Lernkurve ist steil, die Architektur und das Zusammenspiel der zahlreichen Komponenten muss gut verstanden sein, damit kein Chaos entsteht.In diesem Praxisbuch gibt Ihnen Kevin Welter eine gründliche Einführung in die Konzepte und Ideen containerisierter Umgebungen. Sie lernen die vielen Bestandteile einer Kubernetes-Installation kennen und erfahren praxisnah, wie Anwendungen deployt werden.1. Objekte, Ressourcen und KonzepteSie starten mit einer Test-Installation und lernen, wie Sie auf ein Kubernetes-Setup zugreifen. So machen Sie sich mit den Grundlagen vertraut: Pod- und Container-Management, Ingress, Services, ConfigMaps und Storage.2. Cloud Native: Anwendungen für Kubernetes entwickelnRollbacks, Healthchecks, High Availability, Skalierbarkeit: Container-Cluster bieten viele Vorteile gegenüber traditionellen Deployments. Mit den Best Practices und einem umfassenden Verständnis der Architektur orchestrieren Sie die schnelle und reibungslose Bereitstellung Ihrer Anwendungen.3. Deployment mit HelmHelm ist der Paketmanager für Kubernetes. Sie lernen, wie Sie eigene Helm-Charts schreiben, mit denen Sie Ihre Anwendungen flexibel und agil in Kubernetes-Cluster deployen.Aus dem Inhalt:Grundlagen und KonzeptePod- und Container-ManagementRessources as CodeSkalierung und LoadbalancingStorageNetzwerke und SicherheitMonitoring und FehlersucheAnwendungen für Kubernetes entwickelnPaketmanagement mit HelmLeseprobe (PDF-Link)Über den Autor: Kevin Welter ist Mitgründer und Geschäftsführer der HumanITy GmbH. Mit seinem Unternehmen unterstützt er Großkonzerne wie Deutsche Bahn, EnBW und Deutsche Telekom bei der Weiterentwicklung ihrer Software sowei der dazugehörigen Prozesse und hat es sich zur Aufgabe gemacht, die Digitalisierung auch für den Mittelstand attraktiv und einfach nutzbar zu gestalten.
Tidy First?
Unordentlicher Code ist ein Ärgernis und schwer zu lesen. In diesem praktischen Leitfaden demonstriert Kent Beck, Schöpfer von Extreme Programming, wann und wie Sie kleinere Aufräumarbeiten durchführen können, um Ihren Code zu optimieren und dabei die Gesamtstruktur Ihres Systems immer besser zu verstehen.Anstatt sich mit zu viel Aufräumen auf einmal zu überfordern, zeigt Kent Beck, wie Sie pragmatisch vorgehen. Sie lernen etwa, wie Sie eine Funktion mit vielen Codezeilen logisch in kleinere Stücke aufteilen. Und nebenbei verstehen Sie wichtige Aspekte der Theorie wie Kopplung, Kohäsion, abgezinste Zahlungsströme und Optionalität.Dieses Buch unterstützt Sie dabei:• die grundlegende Theorie zu verstehen, wie SoftwareDesign funktioniert und welche Kräfte darauf einwirken• unterschiedliche Auswirkungen bei Änderungen am Verhalten eines Systems und bei Änderungen an seiner Struktur einzuschätzen• Ihr Programmiererlebnis zu verbessern, indem Sie manchmal zuerst aufräumen und manchmal später• zu lernen, wie Sie große Veränderungen in kleinen, sicheren Schritten vornehmen• Softwareentwicklung als ein Pflegen menschlicher Beziehungen zu verstehenKent Beck ist Programmierer, Erfinder von Extreme Programming, Pionier im Bereich der Software Patterns, Mitautor von JUnit, Wiederentdecker der testgetriebenen Entwicklung und engagierter Beobachter von 3X: Explore/Expand/Extract. Beck ist – in der alphabetischen Reihenfolge – der erste Unterzeichner des Agilen Manifests. Er lebt in San Francisco, Kalifornien, und ist Chief Scientist bei Mechanical Orchard. Dort vermittelt er Entwicklerinnen und Entwicklern Fähigkeiten, die Geeks dabei helfen sollen, sich in der Welt sicher zu fühlen. Kents Website ist hier zu finden: https://www.kentbeck.com
Objektorientierte Softwareentwicklung mit UML (4. Auflage)
Objektorientierte Softwareentwicklung mit UML. In 4., aktualisierter und erweiterter Auflage, März 2024. Das Buch bietet einen Einstieg in die objektorientierte Spezifikation mit UML (Unified Modeling Language), einem Standard für die objektorientierte Softwareentwicklung.Neben der Nutzung der Sprachelemente von UML werden Vorgehensweisen für eine benutzerzentrierte Softwareentwicklung vorgestellt und diskutiert. Das beginnt bei der Analyse von Anforderungen und deren Spezifikation durch Szenarien und Anwendungsfallmodelle. Die Idee der Entwurfsmuster wird präsentiert und die Notationsmöglichkeiten in UML diskutiert. Beispiele für viel genutzte Entwurfsmuster und ihre Anwendung bei der Programmierung ergänzen den Inhalt. Sowohl Zustands- als auch Aktivitätsdiagramme werden ausführlich vorgestellt. Daneben sind auch Möglichkeiten aufgezeigt, wie die besonders bei Banken und Versicherungen beliebten Ereignis-Prozess-Ketten in UML notiert werden können.Es wird eine Einführung in die Notation von OCL (Object Constraint Language) gegeben, die als Teilsprache von UML notwendig ist, wenn grafische Darstellungen nicht genügend Ausdrucksstärke besitzen. Das neue Kapitel Kollaborative Analyse und Design wurde in Zusammenarbeit mit Dr.-Ing. Anke Dittmar verfasst.Aus dem Inhalt: AnwendungsfälleKlassendiagrammeZustandsdiagrammeAktivitätsdiagrammeEntwurfsmusterSoftwarequalitätskriterienEntwicklungsprozessePrototypingPersonasModellintegrationLeseprobe (PDF-Link)
Safety Engineering - Das Praxisbuch für funktionale Sicherheit
Safety Engineering. Das Praxishandbuch für funktionale Sicherheit. März 2024.Für sichere und zuverlässige Systeme ist eine solide Grundlage unerlässlich. Bei der Entwicklung und dem Design ist Teamwork entscheidend, damit Simulationen, automatisierte Testumgebungen, Reviews und bewährte Methoden der Softwareentwicklung eingesetzt werden. Koordinierte Zusammenarbeit und das richtige Know-how gewährleistet so Sicherheit.Prof. Derk Rembold vermittelt Ihnen in diesem Lehrbuch die Grundlagen sicherer Softwareentwicklung und die Prinzipien der Betriebssicherheit in der Hardwareentwicklung. In strukturierten Kapiteln lernen Sie, Risiken komplexer Systeme einzuschätzen, Fehlerbaumanalysen durchzuführen, Risikographen zu gestalten und essenzielle Methoden für die sichere Systementwicklung zu beherrschen.1. Gute ProgrammierungUnit-Tests, Code Reviews, defensive Programmierung: Schon einfache Prozesse können die Qualität und Sicherheit Ihrer Software spürbar erhöhen. Hier erfahren Sie, was wirklich einen Mehrwert bietet und worauf Sie achten müssen.2. Für Studium und BerufVon der Risikoidentifikation bis hin zu fortgeschrittenen Themen wie Fehlerbaumanalyse und Marcov-Analysen erhalten Sie einen umfassenden Überblick über die Techniken der funktionalen Sicherheit. Fallbeispiele erläutern historische Sicherheitsprobleme, damit Sie aus den Fehlern beim Design und der Umsetzung sicherheitskritischer Systeme lernen können.3. Sicher, robust und zuverlässigJe komplexer Systeme werden, desto anfälliger sind sie für Ausfälle und Fehler. Dieses Lehrbuch zeigt Ihnen, mit welchen Methoden Sie systemrelevante Risiken qualitativ und quantitativ abschätzen, um fehlerarme und wartbare Systeme zu entwickeln.4. Normen und RichtlinienSie lernen die wichtigste Norm IEC-61508 kennen, werfen aber auch einen Blick auf die ISO26262 für die Automobilindustrie, ISO 14224 und DIN EN 60300 für das Erstellen einer Datenbasis zur Berechnung von Kenngrößen, IEC-62061 für sichere Maschinen und IEC 61511, eingesetzt bei der Prozessindustrie.Aus dem Inhalt:Normen und SicherheitsrichtlinienSicherheit in der SoftwareentwicklungFehler analysieren und verstehenKenngrößen: Zuverlässigkeit, Ausfallrate, Lebensdauer ...GefahrenanalyseFehlerbaumanalyseRisikographLayer of Protection AnalysisZuverlässigkeitsblockdiagrammMarcov-Decision-ProzessBinary-Decision-DiagramsLeseprobe (PDF-Link)
DevOps
Wie IT-Projekte mit einem modernen Toolset und der richtigen Kultur gelingen. DevOps bedeutet nicht, dass Entwickler und Admins nun die gleichen Jobs erledigen.DevOps bedeutet auch nicht, dass man beim Programmieren tägliche neue Tools einsetzen muss, es keine geplanten Deployments mehr gibt und Software nur noch in Containern läuft.DevOps ist viel größer: Es verspricht eine neue Kultur der Zusammenarbeit sowie bessere Prozesse und Workflows. So liefern Sie Änderungen schneller aus und sorgen für kürzere Feedback-Schleifen zwischen Development und Operations.In zahlreichen Projekten hat Sujeevan Vijayakumaran gelernt, was in der Entwicklung und im Betrieb moderner Software gut funktioniert. Mit vielen Beispielen und Praxistipps zeigt er Ihnen, wie Sie eine moderne und zeitgemäße Arbeitsumgebung für Ihre IT-Projekte schaffen und die DevOps-Transformation in Ihrem Team gelingt.Aus dem Inhalt:Effizientes Zusammenarbeiten beim ProgrammierenSchlanke Build-ProzesseFrühe, schnelle und automatisierte QualitätssicherungSchnellere Releases erstellen und deployenDen Dienst betreiben und überwachenSicherheit und Compliance unter einen Hut bringenContinuous Integration: Tools richtig einsetzenContinuous Delivery praktisch umsetzenMonitoring und Observability für mehr DurchsichtMit DevOps-Plattformen die Tool-Landschaft vereinfachenJenseits von Kultur und ToolsLeseprobe (PDF-Link)Zum Autor:Sujeevan Vijayakumaran arbeitet als Senior Solutions Architect bei GitLab. Seit einigen Jahren unterstützt er große Konzerne aus Deutschland, Österreich und der Schweiz beim Ein- und Umstieg in die DevOps-Welt.
Basiswissen KI-Testen
Basiswissen KI-Testen. Qualität von und mit KI-basierten Systemen. (Februar 2024)Qualitätssicherung in KI-basierten System – damit KI-Projekte nicht scheiternUmfragen in der Industrie zeigen deutlich: KI-Projekte scheitern häufiger als angenommen. Eine kontinuierliche Qualitätssicherung für KI-basierte Systeme ist daher unabdingbar.Das Autorenteam bietet einen fundierten Überblick und einen praxisnahen Einstieg in die Konzepte, Best Practices, Problemstellungen und Lösungsansätze rund um die Qualitätssicherung von und mit KI-basierten Systemen. Im Einzelnen werden behandelt:Einführung in KIQualitätsmerkmale KI-basierter SystemeMaschinelles Lernen (ML)ML-DatenFunktionale LeistungsmetrikenNeuronale Netze und TestenTesten KI-basierter SystemeTesten KI-spezifischer QualitätsmerkmaleMethoden und Verfahren für das Testen KI-basierter SystemeTestumgebungen für KI-basierte SystemeEinsatz von KI beim TestenDas Buch enthält mehrere Exkurse, z.B. »ChatGPT als Teammitglied?«, Praxisbeispiele und zu vielen Kapiteln auch praktische Übungen, wobei die Lerninhalte durch Codebeispiele und Programmierübungen in Python veranschaulicht werden. Die Aufgaben und Lösungen sind als Jupyter Notebooks auf GitHub verfügbar.Das Buch orientiert sich am ISTQB®-Syllabus »Certified Tester AI Testing« (CT-AI) und eignet sich daher nicht nur bestens zur Prüfungsvorbereitung, sondern dient gleichzeitig als kompaktes Grundlagenwerk zu diesen Themen in der Praxis und an Hochschulen.Leseprobe (PDF-Link)Über die Autoren:Nils Röttger hat an der Universität in Göttingen Informatik studiert. Bereits während des Masterstudiums lag sein Schwerpunkt im Themengebiet Softwaretest und Qualitätssicherung, in dem er seit über 15 Jahren tätig ist. Seit 2008 arbeitet er bei der imbus AG in Möhrendorf, aktuell als Seniorberater und Projektleiter. Er ist u.a. für die fachliche Aus- und Weiterbildung sowie den Bereich Mobile Testing verantwortlich und als Scrum Master im internen KI-Team tätig. Außerdem beschäftigt er sich immer wieder mit neuen Themen und berichtet darüber in vielen Vorträgen, zuletzt insbesondere mit Bezug zur künstlichen Intelligenz.Dr. Gerhard Runze hat an der Friedrich-Alexander-Universität Erlangen-Nürnberg Elektrotechnik studiert und dort im Bereich digitaler Signalverarbeitungsalgorithmen promoviert. Er hat über viele Jahre als Entwickler, Projekt- und Testteamleiter in der Telekommunikationsindustrie in klassischen und agilen Projekten gearbeitet. Seit 2015 ist er bei der imbus AG als Testmanager, Trainer für ISTQB®-Schulungen und Seniorberater für Qualitätssicherung von KI, Embedded Software und agiles Testen tätig. Seit 2020 ist er zudem Product Owner für KI-Themen und hält Schulungen zum Certified Tester AI Testing.Verena Dietrich hat an der Friedrich-Alexander-Universität Erlangen-Nürnberg Integrated Life Sciences studiert. In ihrem Masterstudium wählte sie Vorlesungen aus den Bereichen Bioinformatik, biologisch inspirierte Algorithmen und maschinelles Lernen. Von 2019 bis 2021 war sie bei der imbus AG als Softwaretesterin und Trainerin für die A4Q-Schulung KI-Testen tätig. Als Mitglied im KI-Team hat sie mit Nils und Gerhard die Arbeiten an diesem Buch begonnen und auch nach ihrem Wechsel in die Bioinformatik mit großem Engagement fortgeführt.
Git - kurz & gut
Das Versionierungstool Git verstehen und typische Aufgaben des Programmieralltags lösen - Verständliche Einführung in das beliebte Versionierungswerkzeug; v.a. für Einsteiger*innen und Entwickler*innen, die Git von Zeit zu Zeit nutzen - Wesentliche Begriffe und Arbeitsschritte kompakt erklärt - Praxistipps für den Programmieralltag - Neu in der 2. Auflage: Weitere Workflows, Anleitungen zu GitHub und GitLab sowie Einblicke, wie Git intern funktioniert Wer heute Software entwickelt, kommt um Git nicht herum, denn Git hat sich als Werkzeug zur Versionskontrolle durchgesetzt. Es ist ein mächtiges Tool, gilt aber nicht gerade als intuitiv. Dieser Kompakteinstieg unterstützt bei den ersten Schritten mit Git und erklärt praxisnah alles Wesentliche — ob es darum geht, eigene Projekte zu versionieren, an Open-Source-Software mitzuarbeiten oder im Team zu entwickeln. Verständlich bringt das Taschenbuch zentrale Begriffe, technische Konzepte, gängige Workflows und das notwendige Wissen für den Programmieralltag auf den Punkt. Darüber hinaus inspiriert es durch Good Practices und wertvolle Tipps. Aus dem Inhalt - Versionskontrolle und die technischen Konzepte von Git - Git installieren und konfigurieren - Mit Git arbeiten: typische Arbeitsschritte und Workflows - Git-Onlinedienste wie GitHub, GitLab u.a. - Good Practices für den Programmieralltag - Häufige Fehler und Probleme - Fortgeschrittenere Kommandos, Tipps und Tricks - Git als Baustein moderner und agiler Softwareentwicklung - Git unter der Haube: die Funktionsweise von Git besser verstehen
Basiswissen KI-Testen
Qualitätssicherung in KI-basierten System – damit KI-Projekte nicht scheitern Zahlreiche Beispiele aus verschiedenen Branchen Viele praktische Übungen mit Beispiellösungen Mit Exkursen auf Basis industrieller Projekterfahrungen Umfragen in der Industrie zeigen deutlich: KI-Projekte scheitern häufiger als angenommen. Eine kontinuierliche Qualitätssicherung für KI-basierte Systeme ist daher unabdingbar. Das Autorenteam bietet einen fundierten Überblick und einen praxisnahen Einstieg in die Konzepte, Best Practices, Problemstellungen und Lösungsansätze rund um die Qualitätssicherung von und mit KI-basierten Systemen. Im Einzelnen werden behandelt: Einführung in KI Qualitätsmerkmale KI-basierter Systeme Maschinelles Lernen (ML) ML-Daten Funktionale Leistungsmetriken Neuronale Netze und Testen Testen KI-basierter Systeme Testen KI-spezifischer Qualitätsmerkmale Methoden und Verfahren für das Testen KI-basierter Systeme Testumgebungen für KI-basierte Systeme Einsatz von KI beim Testen Das Buch enthält mehrere Exkurse, z.B. »ChatGPT als Teammitglied?«, Praxisbeispiele und zu vielen Kapiteln auch praktische Übungen, wobei die Lerninhalte durch Codebeispiele und Programmierübungen in Python veranschaulicht werden. Die Aufgaben und Lösungen sind als Jupyter Notebooks auf GitHub verfügbar. Das Buch orientiert sich am ISTQB®-Syllabus »Certified Tester AI Testing« (CT-AI) und eignet sich daher nicht nur bestens zur Prüfungsvorbereitung, sondern dient gleichzeitig als kompaktes Grundlagenwerk zu diesen Themen in der Praxis und an Hochschulen.
Software-Metriken (2. Auflg.)
GUT GEMESSEN, SCHON GEWONNEN- Erfahren Sie, wie Software in den drei Dimensionen Quantität, Komplexität und Qualität gemessen werden kann.- Lernen Sie Methoden zur besseren Planung, Schätzung und Steuerung von Softwareprojekten kennen.- Profitieren Sie von vielfach in der Praxis bewährten Software- und Projekt-Metriken.- Die zahlreichen Beispiele, Tipps und Best Practices aus der Erfahrung der Autoren helfen Ihnen, diese auf ihre Projekte anzuwenden.- Neu in der 2. Auflage: Berücksichtigung aktueller Entwicklungen im Bereich der Metriken und deren Bedeutung in DevOps und Agilität.Metriken und Messgrößen werden in der Regel verwendet, um einen Zustand, Mengen und Volumina, physikalische und zeitliche Größen, Relationen, Abweichungen und Veränderungen zu ermitteln. Aus den Ergebnissen kann man den Ist-Zustand und die Vergangenheit bewerten und Ableitungen für die Zukunft ziehen. Die Software- und Projekt-Metriken in diesem Buch helfen in vielen Situationen, ein tieferes Verständnis der Ausganglage und fundierte Informationen für die Planung und Steuerung von traditionellen und agilen Softwareprojekten zu gewinnen. Für die Wartung oder Weiterentwicklung eines Softwaresystems oder dessen Neuentwicklung ist eine gute Bestandsaufnahme und Bewertung der Software eine wichtige Entscheidungsgrundlage. Das Wissen um die eigene Produktivität und Effizienz auf der Basis verlässlicher Informationen ist essenziell für die Optimierung der gewählten Vorgehensweise.In diesem Praxisbuch finden Sie Methoden und Metriken, um Softwareartefakte von den Anforderungen über das Softwaredesign und den Code bis hin zu den Testmitteln in den drei Dimensionen Quantität, Komplexität und Qualität zu messen und zu bewerten. Sie helfen Ihnen, Projekte besser zu gestalten, einen Überblick über Produkte und Legacy-Systeme zu erhalten und den Projektfortschritt besser zu verwalten.AUS DEM INHALT //- Softwaremessung- Softwarequantität- Softwarekomplexität- Die Messung der Softwarequalität- Anforderungsmessung- Entwurfsmessung- Codemetrik- Testmetrik- Produktivitätsmessung in der Softwareentwicklung- Die Messung der Wartungsproduktivität- Softwaremessung in der Praxis Richard Seidl ist seit über 20 Jahren als Softwaretest-Experte und Agile Quality Coach in Deutschland und Österreich tätig.Manfred Baumgartner ist seit Beginn seiner beruflichen Laufbahn im Bereich der Software-Qualitätssicherung tätig und arbeitet als Berater bei der Nagarro GmbH in Wien.Harry M. Sneed ist ein Pionier des Softwaretestens im deutschsprachigen Raum, wofür er auch mit dem Deutschen Preis für Softwarequalität ausgezeichnet wurde.
x86 Software Reverse-Engineering, Cracking, and Counter-Measures
An accessible roadmap to software disassembly for advanced security professionals In x86 Software Reverse-Engineering, Cracking, and Counter-Measures, veteran security researchers and thought leaders deliver an introductory crash course in software reverse-engineering and cracking, as well as the methods used to counter those tactics. The authors provide the foundation to take anyone with a basic background in software and turn them in to proficient x86 reverse engineers, crackers and defenders. In the book, you'll examine software, techniques, and tools that real-world crackers, researchers, and defenders use. You'll put your newfound knowledge to the test with the use of extensive hands on labs, introducing you to a wide range of industry favorite tools - such as IDA, Resource Hacker, Cheat Engine, Immunity, and more. Additionally you'll learn some powerful defensive techniques that not only makes you a better defender but empowers you to be a better reverse engineering and cracker. An essential and practice resource for developers, security professionals, security researchers, and programmers. x86 Software Reverse-Engineering, Cracking and Counter-Measures is the hands-on blueprint for taking apart, reasoning about, and manipulating x86 based code that the security community has been waiting for. A crystal-clear and practical blueprint to software disassembly x86 Software Reverse-Engineering, Cracking, and Counter-Measures is centered around the world of disassembling software. It will start with the basics of the x86 assembly language, and progress to how that knowledge empowers you to reverse-engineer and circumvent software protections. No knowledge of assembly, reverse engineering, or software cracking is required. The book begins with a bootcamp on x86, learning how to read, write, and build in the assembly that powers a massive amount of the world’s computers. Then the book will shift to reverse engineering applications using a handful of industry favorites such as IDA, Ghidra, Olly, and more. Next, we move to cracking with techniques such as patching and key generation, all harnessing the power of assembly and reverse engineering. Lastly, we’ll examine cracking from a defensive perspective. Providing learners with techniques to be a better defender of their own software, or knowledge to crack these techniques more effectively. Assembly: computer Architecture, x86, system calls, building and linking, ASCII, condition codes, GDB, control flow, stack, calling conventionsReverse Engineering: reconnaissance, strings, RE strategy, stripping, linking, optimizations, compilers, industry toolsCracking: patching, key checkers, key generators, resource hacking, dependency walkingDefense: anti-debugging, anti-tamper, packing, cryptors/decryptors, whitelist, blacklist, RASP, code signing, obfuscation A practical and hands-on resource for security professionals to hobbyists, this book is for anyone who wants to learn to take apart, understand, and modify black-box software. x86 Software Reverse-Engineering, Cracking, and Counter-Measures is a vital resource for security researchers, reverse engineers and defenders who analyze, research, crack or defend software applications. STEPHANIE DOMAS is the CISO of Canonical, where she is driving Canonical to be the most trusted computational partner in all of open source. Prior to that she was the Chief Security Technology Strategist at Intel where she owned the cross-Intel security technology strategy across Intel's wide portfolio of products. Stephanie is a passionate educator, strategist, speaker, advisor, and security enthusiast. CHRISTOPHER DOMAS is a security researcher primarily focused on firmware, hardware, and low level processor exploitation. He is best known for releasing impractical solutions to non-existent problems, including the world's first single instruction C compiler (M/o/Vfuscator), toolchains for generating images in program control flow graphs (REpsych), and Turing-machines in the vi text editor.
Softwarearchitektur für Dummies
TRAGFÄHIGE LITERATUR FÜR IHRE SOFTWAREARCHITEKTURENBesuchen Sie eine Veranstaltung zu Softwarearchitektur oder stehen Sie in einem Projekt vor Architekturentscheidungen und wollen daher die aktuellen Architekturansätze verstehen? Dann hilft Ihnen dieses Buch. Holger Gast erläutert zunächst die grundlegenden Elemente von Architekturen und führt die technischen Hintergründe aus. Er erklärt Ihnen danach die klassischen Stile und Patterns und geht schließlich auf Cloud-Architekturen ein. Durchgängig legt er den Fokus auf konkrete Softwarestrukturen statt auf Theorie und ermöglicht Ihnen so einen verständlichen und zügigen Einstieg in das Thema. SIE ERFAHREN* Wie Sie Entscheidungen zum Aufbau einer Anwendung treffen* Wann bestimmte Architekturen oder Frameworks für Ihr Projekt geeignet sind* Welche Herausforderungen Sie bei der Erstellung oder Weiterentwicklung einer Anwendung lösen müssenHOLGER GAST studierte in Tübingen Informatik, promo-vierte zu Programmiersprachen und habilitierte sich zur Software-Korrektheit. Seit 2006 gibt er an der Universität Tübingen Vorlesungen und Seminare zu Softwarearchitektur und -design und leitet seit 2014 das Steinbeis-Beratungszentrum Agile-Entwicklung von Informationssystemen.
Testen in agilen Projekten (3. Auflage)
Testen in agilen Projekten. Methoden und Techniken für Softwarequalität in der agilen Welt. In 3., aktualisierter und überarbeiterer Auflage. Dezember 2023.Softwareentwicklung wird heute mit agilen Methoden durchgeführt. Ob ein Team, eine Softwareabteilung oder ein ganzes Unternehmen agile Entwicklung langfristig erfolgreich realisiert und damit die erhofften Vorteile erzielt, hängt entscheidend vom Softwaretest und der agilen Softwarequalitätssicherung ab.Dieses Buch gibt einen praxisorientierten Überblick über die gängigsten Testmethoden und -praktiken sowie Managementwerkzeuge in agilen Projekten. Softwareentwickler, Projektmanager, Product Owner und Scrum Master erhalten Hinweise und Tipps, wie Qualitätssicherung und Testen dazu beitragen können, das Potenzial agiler Vorgehensweisen voll auszuschöpfen. Professionelle (Certified) Tester und Experten für Softwarequalität erfahren, wie sie erfolgreich in agilen Teams mitarbeiten und ihre spezifische Expertise optimal einbringen können.Aus dem Inhalt:Agile und klassische VorgehensmodelleProduktplanung im agilen ProjektUnit Tests, Test FirstIntegrationstests, Continuous IntegrationSystemtests, Continuous TestingQualitätsmanagement, QualitätssicherungMehrere Fallstudien, ein durchgängiges Fallbeispiel sowie Übungsaufgaben und Checkfragen zum Self-Assessment runden den Inhalt ab. Die Codebeispiele stehen auf der Website zum Buch zum Download bereit.Das Buch orientiert sich an den Inhalten der ISTQB®-Lehrpläne zum Certified Tester Agile und eignet sich daher nicht nur bestens zur Prüfungsvorbereitung, sondern dient gleichzeitig als kompaktes Grundlagenwerk zu diesen Themen in der Praxis und an Hochschulen.Die 3. Auflage wurde komplett überarbeitet und ist konform zu den ISTQB®-Lehrplänen zum Certified Tester:Agile TesterAgile Technical Tester (ATT)Agile Test Leadership at Scale (CTAL-ATLaS)Tilo Linz ist Vorstand und Mitgründer der imbus AG, einem führenden Lösungsanbieter für Softwaretest und seit mehr als 20 Jahren im Themengebiet Softwarequalitätssicherung und Softwaretest tätig. Als Gründer und Vorsitzender des German Testing Board e. V. und Gründungsmitglied im ISTQB hat er die Aus- und Weiterbildung in diesem Fachbereich auf nationaler und internationaler Ebene maßgeblich mitgestaltet und vorangebracht. Tilo Linz ist Koautor von »Basiswissen Softwaretest« (dpunkt.verlag), einem der erfolgreichsten und meistgelesenen Fachbücher in diesem Themengebiet.Die vielfältigen Chancen, aber auch Herausforderungen, die sich aus der Einführung und Anwendung agiler Methoden ergeben, kennt und erlebt er täglich aus nächster Nähe: in Softwareprojekten seiner Kunden, in der imbus-internen TestBench-Produktentwicklung, aber auch außerhalb der Softwareentwicklung, z. B. im imbus-Marketing, wo er ein an Kanban orientiertes agiles Marketing eingeführt hat.Leseprobe (PDF-Link)
Team Topologies
Effektive Softwareteams sind für jedes Unternehmen unerlässlich, um kontinuierlich und nachhaltig Werte zu schaffen. Team Topologies ist ein praktisches, schrittweise anpassbares Modell für die Gestaltung von Organisationen und die Interaktion von Teams. Es basiert auf vier Teamtypen und drei Formen der Teaminteraktion und versteht Teams als entscheidenden Faktor der Wertschöpfung. Mit der technologischen und organisatorischenReife einer Organisation werden sich Teamstrukturen und Kommunikationswege kontinuierlich weiterentwickeln.Im Bestseller Team Topologies präsentieren die IT-Berater Matthew Skelton und Manuel Pais eine grundlegende Weiterentwicklung des Organisationsdesigns für die Entwicklung von Software. Anhand von Fallstudien und Beispielen aus der Industrie beschreiben sie eine klar definierte Vorgehensweise für die Interaktion und das Zusammenwirken von Teams. Ihre Methode trägt entscheidend dazu bei, die Architektur von Software klarer und nachhaltiger zu gestalten und Probleme zwischen Teams in wertvolle Signale für eine sich selbst lenkende Organisation zu verwandeln.• Verstehen Sie das Conway'sche Gesetz und seine Bedeutung• Vereinfachen Sie mit vier Teamtypen die Organisation moderner Softwareteams• Gestalten Sie Teamgrenzen – und -APIs und reduzieren Sie die kognitive Belastung Ihrer Entwicklungsteams• Verbessern Sie durch drei Formen der Interaktion die Bereitstellung von Software• Nutzen Sie den Betrieb der Software als sensorischen Input zur Selbststeuerung Ihrer OrganisationMatthew Skelton entwickelt, implementiert und betreibt seit 1998 kommerzielle Software-Systeme und hat für Unternehmen wie die London Stock Exchange, GlaxoSmithKline, FT.com, LexisNexis und die britische Regierung gearbeitet. Matthew ist Head of Consulting bei Conflux (confluxdigital.net) und Co-Autor der Bücher Continuous Delivery with Windows and .NET (2016) und Team Guide to Software Operability (2016). Matthew hat einen BSc in Computerwissenschaften und Kybernetik von der University of Reading, einen MSc in Neurowissenschaften von der University of Oxford und einen MA in Musik von der Open University. Er ist ein Chartered Engineer (CEng) in Großbritannien. In seiner Freizeit spielt Matthew Trompete, singt in Chören, schreibt Musik und genießt das Trailrunning.Manuel Pais ist ein unabhängiger DevOps- und Continuous Delivery-Berater, der sich auf Team-Design, Praktiken und Arbeitsfluss konzentriert. Er hilft Organisationen bei der Definition und Einführung von DevOps und Continuous Delivery (sowohl aus technischer als auch aus menschlicher Sicht) durch strategische Bewertungen, praktische Workshops und Coaching. Manuel ist Co-Autor von Team Guide to Software Releasability (2018).
Basiswissen Usability und User Experience (2. Auflg.)
Know-how für Usability-Experten und -Anfänger: Aus- und Weiterbildung zum UXQB® Certified Professional for Usability and User Experience (CPUX) – Foundation Level (CPUX-F).Gebrauchstaugliche Produkte, die ein positives Benutzererlebnis (User Experience) erzeugen, sind das Ergebnis eines systematischen Prozesses. Das Know-how der Projektbeteiligten über die Konzepte, den Prozess und die notwendigen Prozessergebnisse rund um »Usability und User Experience« bildet hierbei die Basis für eine hohe menschzentrierte Qualität des Projektergebnisses.Die Autoren geben eine fundierte Einführung und einen praxisorientierten Überblick über die Kompetenzfelder »Usability und User Experience« und deren Zusammenspiel. Zahlreiche Beispiele zu Gestaltungsprinzipien, Gestaltungsregeln, Design Patterns, Erfordernissen (User Needs) und Nutzungsanforderungen (User Requirements) erläutern die methodischen Grundlagen. Im Einzelnen werden behandelt:Aus dem Inhalt:Aktivitäten der menschzentrierten GestaltungGrundlegende Begriffe und KonzepteMenschzentrierte Gestaltung planenDen Nutzungskontext verstehen und festlegenNutzungsanforderungen festlegenLösungen gestalten, die Nutzungsanforderungen erfüllenGestaltungslösungen evaluierenDiese 2., überarbeitete und aktualisierte Auflage wurde um neue Themen wie User-Interface-Spezifikation, ethisches Design und nachhaltiges Design erweitert. 157 Prüfungsfragen mit Lösungen und Erläuterungen helfen dabei, das Gelernte zu vertiefen.Das Buch umfasst alle Inhalte des UXQB®-Lehrplans zum CPUX-F (Version 4.01, 2023) und eignet sich daher als kompaktes Grundlagenwerkbestens zur Prüfungsvorbereitung, für die Anwendung in der Praxis und als Lehrbuch an Hochschulen.Zu den Autoren:Thomas Geis ist Geschäftsführer der ProContext Consulting GmbH und seit 25 Jahren Vollzeit im Arbeitsgebiet Usability-Engineering tätig. Er ist Vorsitzender des International Usability and User Experience Qualification Board (UXQB) und Gründer des Arbeitskreises Qualitätsstandards des deutschen Berufsverbands der Usability und User Experience Professionals (German UPA), Leiter des ISO-Ausschusses „Common Industry Format for Usability“, Editor von ISO 9241-110 „Grundsätze der Dialoggestaltung“ und von ISO 25060 „Common Industry Format (CIF) for Usability – General Framework for Usability-related Information“, Leiter des DIN-Ausschusses „Benutzungsschnittstellen“ sowie Träger des Usability Achievement Award der German UPA (2013).Guido Tesch ist Senior Consultant Human-Centered Design bei der ProContext Consulting GmbH in Köln und seit 2001 als Usability und UX Professional tätig mit Schwerpunkten in Konzeption, UX Architecture, UI Design, UI Guidelines, User Research, Anforderungsanalyse, Usability Testing und HCD-Prozesse. Er arbeitet im DIN-Ausschuss zur Erarbeitung der zentralen Normen rund um Usability und UX mit, ist seit 2016 National Expert des Berufsverbandes German UPA und ist zertifiziert in CPUX-F (Foundation Level, Trainer), CPUX-DS (Designing Solutions, Trainer), CPUX-UR (User Requirements Engineering) und CPUX-UT (Usability Testing and Evaluation, Trainer).
Domain-Driven Transformation
Domain-Driven Transformation. Monolithen und Microservices zukunftsfähig machen. September 2023.In den letzten Jahrzehnten wurde viel Software entwickelt, die wir heute modernisieren und zukunftsfähig machen müssen. Domain-Driven Design (DDD) eignet sich hervorragend, um große Legacy-Systeme in Microservices zu zerlegen oder zu wartbaren Monolithen umzubauen.Mit ihrer Methode »Domain-Driven Transformation« haben Carola Lilienthal und Henning Schwentner einen umfassenden Ansatz geschaffen, um sowohl auf strategischer als auch auf technischer und teamorganisatorischer Ebene architektonisch erodierte Softwaresysteme zu transformieren. Dabei spannen sie den Bogen von der Analyse der fachlichen Prozesse und der Zerlegung in Bounded Contexts bis hin zu Domain-Driven Refactorings und deren Umsetzung in agilen Teams. Schließlich geben sie der Leserschaft eine Anleitung, wie der Transformationsprozess abhängig vom Zustand der vorhandenen Architektur gestaltet werden sollte. Im Einzelnen werden behandelt:Domain-Driven DesignCollaborative ModelingTeam TopologiesMicroservices und MonolithenModularity Maturity Index (MMI)Domain-Driven RefactoringsPriorisierung und Durchführung der UmbaumaßnahmenSie lernen anhand zahlreicher Beispiele verschiedene Möglichkeiten der Transformation bis hinunter in den Code kennen, die Sie schrittweise in Ihre Alltagspraxis übernehmen können, um die Wartbarkeit Ihrer Legacy- Systeme effektiv und schnell zu verbessern.Leseprobe Inhaltsverzeichnis (PDF-Link)Leseprobe Kapitel 1 (PDF-Link)
Modernes Software Engineering
Bessere Software schneller und effektiver entwickeln.In diesem Buch gibt Ihnen der Continuous-Delivery-Pionier David Farley Strategien an die Hand, mit denen Sie Software-Projekte effektiver umsetzen, erfolgreicher managen und die Qualität Ihrer Programme grundlegend verbessern können – und damit auch Ihr Leben und das Ihrer Kollegen.David Farley richtet sich an Programmierer, Manager und technische Leiter unabhängig von ihrer Erfahrung. Er beleuchtet langlebige Prinzipien, die das Herzstück der effektiven Softwareentwicklung bilden. Dabei unterscheidet er zwischen zwei Kerndisziplinen: Exploration und Lernen sowie Umgang mit Komplexität. Für jede der beiden definiert er Konzepte und Prinzipien, die Ihnen helfen, den gesamten Entwicklungsprozess zu verbessern, von Ihrer Denkweise bis hin zur Qualität Ihres Codes, und beschreibt dabei Ansätze, die nachweislich zum Erfolg führen.Farleys Konzepte und Techniken bilden einen einheitlichen, wissenschaftlichen und fundierten Ansatz zur Lösung praktischer Probleme bei der Softwareentwicklung unter realistischen wirtschaftlichen Bedingungen. Dieser allgemeingültige und langlebige Ansatz kann Ihnen helfen, selbst Probleme zu lösen, die Ihnen bisher nicht begegnet sind. Er bietet Ihnen einen tiefen Einblick in Ihre eigene tägliche Arbeit und unterstützt sie dabei, bessere Software schneller, effektiver und mit mehr Freude zu entwickeln.Besprechung des Buches von Tam Hanna am 13.09.2023 auf iX.de:»Der mitp-Verlag liefert mit "Modernes Software Engineering" ein nach Ansicht des Rezensenten rundum gelungenes Werk, das die Rolle der Softwarearchitektur in einem modernen Unternehmen als Ganzes behandelt – auch die Übersetzung aus dem Englischen ist vorbildlich gelungen. Von der Lektüre profitieren insbesondere Entwicklerinnen und Entwickler, die erst seit wenigen Jahren programmieren, aber auch "alte Hasen" mit mehr als zehn Jahren Erfahrung können noch einiges darüber lernen, wie ihr Code als Teil eines Werte-schöpfenden Ganzen anzusehen ist. Der Rezensent empfiehlt das Buch daher nicht nur Programmiererinnen und Programmierern in seinem eigenen Unternehmen.«Über den Autor:David Farley ist Gründer und Consultant von Continuous Delivery Ltd und verfügt über jahrelange Erfahrung als Programmierer, Software Engineer und Systemarchitekt. Seine bahnbrechenden Ansätze haben die Arbeit von Entwicklern und Teams revolutioniert. Als Head of Software Development für London Multi Asset Exchange (LMAX) hat er eines der schnellsten Finanzsysteme der Welt aufgebaut. Er war einer der ersten, der agile Methoden wie Continuous Integration und automatisierte Tests angewendet hat und ist Betreiber des erfolgreichen Youtube-Kanals »Continuous Delivery«.
C von A bis Z (5. Auflg.)
Das umfassende Handbuch. Hochdosiertes C-Wissen in 5. Auflage.Der beliebte Klassiker unter den Programmierbüchern neu aufgelegt! Aktuell zum Standard C23, von einem Autorenteam aus Praxis und Lehre. Lassen Sie sich umfassend einführen oder nutzen Sie das Buch als Nachschlagewerk. Von den Grundlagen über die dynamische Speicherverwaltung bis zur plattformübergreifenden Entwicklung. Randvoll mit hilfreichen Übungen, Beispielen und Praxistipps – C-Wissen pur!C von A bis ZLernen Sie C:C vereint die Eigenschaften Maschinennähe und Portabilität. Seit Jahren ist sie damit eine Programmiersprache erster Wahl. Hier erhalten Sie einen ausführlichen Einstieg.Einsteigen, programmieren, nachschlagen:Zu jedem C-Thema finden Sie ausführliche Erklärungen. Sowohl Einsteiger als auch Profis kommen voll auf ihre Kosten.Datentypen, Operatoren, Funktionen... :... Arrays, Pointer, dynamische Speicherverwaltung und Zeitroutinen bleiben kein Geheimnis. Praktische Beispiele veranschaulichen das Gelernte.Vollständiges C-Wissen:Threadprogrammierung, Sicherheit, Netzwerkprogrammierung und Datenbanken – auch anspruchsvolle Themen lässt dieses Buch nicht aus.Aus dem InhaltDatenstrukturenAlgorithmenSicherheitDynamische SpeicherverwaltungNetzwerkprogrammierungCross-Plattform-EntwicklungParallele ProgrammierungAuf Datenbanken zugreifenÜber den Autor:Jürgen Wolf ist Programmierer, Digitalfotograf und Autor aus Leidenschaft. C/C++, Linux und die Bildbearbeitung mit Photoshop Elements und GIMP sind seine Themen.René Krooß ist Diplom-Informatiker, begeisterter Programmierer und Experte für Prozessorstrukturen, Betriebssysteme, Hardware-Programmierung und Algorithmen.Leseprobe (PDF-Link)
COBOL - Altsysteme warten und erweitern
Altsysteme warten und erweitern. 416 Seiten als ePub oder PDF erhältlich.Dieses Buch richtet sich an erfahrene Entwickler objektorientierter Sprachen wie C++ oder Java. Es vermittelt die Funktionsweise der Programmiersprache COBOL, um die in zahlreichen Implementierungen auf unterschiedlichen Plattformen immer noch produktiv laufenden COBOL-Programme zu verstehen, zu warten und bei Bedarf mit zusätzlichen Funktionalitäten zu erweitern. Dafür bietet es Ihnen sowohl eine grundlegende Einführung in die Programmierung mit COBOL als auch eine thematisch gegliederte Referenz der Befehle mit praktischen Beispielen.Da reine COBOL-Programme in der Praxis selten zu finden sind, geht ein weiterführendes Kapitel speziell auf die Anbindung an relationale Datenbanken und hierarchische Datenbanksysteme wie IMS ein. Auch COBOL auf Host-Systemen und die Besonderheiten der CICS-Programmierung werden thematisiert.Mit diesem praktischen Handbuch sind Sie in der Lage, COBOL-Programme in Produktivumgebungen selbstständig zu warten und weiterzuentwickeln.Aus dem Inhalt:Grundlegende SprachelementeDatenfelder, Daten-strukturen und DatensätzeOperationen und KontrollstrukturenTabellenverarbeitungInterne und externe UnterprogrammeSequenzielle und index-sequenzielle DateienDatenbankanbindung (SQL, IMS)Host-Systeme und CISLeseprobe (PDF-Link)Kostenlose Downloads zum Buch (zip-File vom mitp-Server)
Kubernetes (3. Auflg.)
Eine kompakte EinführungKubernetes hat radikal die Art und Weise verändert, wie Softwareentwicklung und Systemadministration Anwendungen in der Cloud bauen, deployen und warten. Die aktualisierte dritte Auflage dieses Buches zeigt Ihnen, wie dieser beliebte Container-Orchestrierer dabei helfen kann, in Bezug auf Schnelligkeit, Agilität, Zuverlässigkeit und Effizienz in ganz neue Bereiche vorzudringen – egal ob Ihnen verteilte Systeme neu sind oder ob Sie schon längere Zeit Cloud-native Anwendungen deployen.Die Kubernetes-Veteranen Brendan Burns, Joe Beda, Kelsey Hightower und Lachlan Evenson erklären Ihnen, wie sich dieses System in den Lebenszyklus einer verteilten Anwendung einfügt. Sind Sie aus der Softwareentwicklung, Architektur oder Administration, erfahren Sie, wie Sie Tools und APIs einsetzen, um skalierbare, verteilte Systeme zu automatisieren.Erstellen Sie ein einfaches Cluster, um zu lernen, wie Kubernetes funktioniert.Tauchen Sie in die Details des Deployments mit Kubernetes ein.Arbeiten Sie mit den spezialisierten Objekten in Kubernetes wie zum Beispiel DaemonSets, Jobs, ConfigMaps und Secrets.Erfahren Sie mehr über Deployments, die den Lebenszyklus einer vollständigen Anwendung zusammenhalten.Sichern Sie Ihre Deployments ab.Deployen Sie Anwendungen auf mehrere Cluster und greifen Sie auf Kubernetes über Programmiersprachen zu.Autoren:Brendan Burns, Distinguished Engineer in Microsoft Azure, hat zusammen mit Joe Beda und Craig McLuckie das Kubernetes-Projekt bei Google mitbegründet. Aktuell ist er Director of Engineering bei Microsoft Azure.Joe Beda ist CTO von Heptio, einem Start-up, das er zusammen mit Craig McLuckie gegründet hat. Zuvor hat er bei Google die Google Compute Engine aus der Taufe gehoben und zusammen mit Brendan Burns und Craig McLuckie Kubernetes geschaffen.Kelsey Hightower ist Staff Developer Advocate für die Google Cloud Platform. Er ist ein großer Freund von Open Source und sein Schwerpunkt liegt darin, einfache Werkzeuge zu bauen, die die Menschen glücklich machen.Lachlan Evenson ist leitender Produktmanager des Container Compute Teams bei Microsoft Azure. Er hat durch praktische Trainings vielen Leuten dabei geholfen, Kubernetes zu integrieren.Inhaltsverzeichnis (PDF-Link)
Kubernetes
Kubernetes einfach und schnell erklärt Alles, was Sie über Kubernetes wissen müssen Für Einsteiger und Admins ohne Kubernetes-Vorkenntnisse Mit zahlreichen Beispielen aus der Praxis Kubernetes hat radikal die Art und Weise verändert, wie Softwareentwicklung und Systemadministration Anwendungen in der Cloud bauen, deployen und warten. Die aktualisierte dritte Auflage dieses Buches zeigt Ihnen, wie dieser beliebte Container-Orchestrierer dabei helfen kann, in Bezug auf Schnelligkeit, Agilität, Zuverlässigkeit und Effizienz in ganz neue Bereiche vorzudringen – egal ob Ihnen verteilte Systeme neu sind oder ob Sie schon längere Zeit Cloud-native Anwendungen deployen. Die Kubernetes-Veteranen Brendan Burns, Joe Beda, Kelsey Hightower und Lachlan Evenson erklären Ihnen, wie sich dieses System in den Lebenszyklus einer verteilten Anwendung einfügt. Sind Sie aus der Softwareentwicklung, Architektur oder Administration, erfahren Sie, wie Sie Tools und APIs einsetzen, um skalierbare, verteilte Systeme zu automatisieren. Aus dem Inhalt: Erstellen Sie ein einfaches Cluster, um zu lernen, wie Kubernetes funktioniert. Tauchen Sie in die Details des Deployments mit Kubernetes ein. Arbeiten Sie mit den spezialisierten Objekten in Kubernetes, wie zum Beispiel DaemonSets, Jobs, ConfigMaps und Secrets. Erfahren Sie mehr über Deployments, die den Lebenszyklus einer vollständigen Anwendung zusammenhalten. Sichern Sie Ihre Deployments ab. Deployen Sie Anwendungen auf mehrere Cluster und greifen Sie auf Kubernetes über Programmiersprachen zu. "Geschrieben von vier der weltweit angesehensten Experten für Cloud-native Systeme, ist ›Kubernetes‹ das Buch der Wahl, um eine solide Grundlage für Kubernetes-Konzepte zu schaffen, mit Beispielen, die Sie dabei unterstützen, Kubernetes selbst zu erkunden." — Liz Rice, Isovalent
Terraform
Das Praxisbuch für DevOps-Teams und Administratoren. »Infrastructure as Code« richtig umgesetzt.Mit Terraform errichten Sie komplexe Infrastrukturen automatisiert in der Cloud und orchestrieren Deployments, die genau Ihren Anforderungen entsprechen. Tim Beermann, Johannes Kastl, Christian Rost, Thorsten Schifferdecker und Eike Waldt zeigen Ihnen, wie Sie Deployments verwalten, Ressourcen mit HCL skripten und den State Ihres Setups verwalten. So gerüstet entwerfen Sie wiederverwendbaren Code, vermeiden Fallstricke und schaffen einen komfortablen Arbeitsweg zur Verwaltung Ihrer Cloud-Landschaften.Inkl. umfassender Kommandoreferenz und Best Practices für den alltäglichen Betrieb.Aus dem Inhalt:Infrastructure as CodeWas ist Terraform? Installation und alle GrundlagenProvider: Konfiguration und Beispiel-SetupsState – Der Zustand der UmgebungVariablen und DatenquellenHCL: Terraform programmierenUpdates und Day-2-OperationsTerragrunt und weitere ToolsBest Practices: Terraform richtig nutzenMulti-Cloud-DeploymentsLeseprobe (PDF-Link)Zu den Autoren: Tim Beermann ist seit frühester Jugend begeisterter Linuxadministrator. Während seiner Laufbahn hat er ein ERP-System mitentwickelt und Serverlandschaften sowie Cloudumgebungen betreut.Johannes Kastl ist seit frühen SUSE-Tagen begeisterter Linuxnutzer. Er war mehrere Jahre in der Administration einer großen privaten Cloud-Landschaft tätig, unter anderem als Administrator, technischer Product Owner, Scrum Master und Teamkoordinator.Christian Rost begleitet und verantwortet große und kleine Projekte im Container- und Kubernetesumfeld, plant und baut Logging- und Monitoringlösungen mit Elasticstack und steht für das ein oder andere ownCloud-Projekt zur Verfügung.Thorsten Schifferdecker ist seit mehr als 20 Jahren begeisterter Linuxnutzer und in der IT als Architekt tätig.Eike Waldt hat während seiner Laufbahn viele SUSE- und SAP-Projekte begleitet und geleitet. Innerhalb dieser Projekte entwarf er komplexe Mechanismen zur Verwaltung von gewachsenen Landschaften und strukturierte gewachsene Code-Sammlungen mittels DevOps und CI.