70 results
Search Results
2. Software development process evolution and paradigm shift - a case study of Malaysian companies
- Author
-
Khan, Asif Riaz and Akbar, Rehan
- Published
- 2022
3. Developing automated methods to detect and match face and voice biometrics in child sexual abuse videos
- Author
-
Hole, Martyn, Frank, Richard, Logos, Katie, Westlake, Bryce, Michalski, Dana, Bright, David, Afana, Erin, Brewer, Russell, Ross, Arun, Swearingen, Thomas, and Patterson, Stephen
- Published
- 2022
4. Developing automated methods to detect and match face and voice biometrics in child sexual abuse videos
- Author
-
Westlake, Bryce, Brewer, Russell, Swearingen, Thomas, Ross, Arun, Patterson, Stephen, Michalski, Dana, Hole, Martyn, Logos, Katie, Frank, Richard, Bright, David, and Afana, Erin
- Published
- 2022
5. Learning Systems Thinking
- Author
-
Diana Montalion and Diana Montalion
- Subjects
- Systems engineering, Computer engineering, Computer software--Development
- Abstract
Welcome to the systems age, where software professionals are no longer building software&emdash;we're building systems of software. Change is continuously deployed across software ecosystems coordinated by responsive infrastructure. In this world of increasing relational complexity, we need to think differently. Many of our challenges are systemic. This book shows you how systems thinking can guide you through the complexity of modern systems. Rather than relying on traditional reductionistic approaches, author Diana Montalion shows you how to expand your skill set so we can think, communicate, and act as healthy systems.Systems thinking is a practice that improves your effectiveness and enables you to lead impactful change. Through a series of practices and real-world scenarios, you'll learn to shift your perspective in order to design, develop, and deliver better outcomes.You'll learn:How linear thinking limits your ability to solve system challengesCommon obstacles to systems thinking and how to move past themNew skills and practices that will transform how you think, learn, and leadMethods for thinking well with others and creating sound recommendationsHow to measure success in the midst of complexity and uncertainty
- Published
- 2024
6. Feature Models : AI-Driven Design, Analysis and Applications
- Author
-
Alexander Felfernig, Andreas Falkner, David Benavides, Alexander Felfernig, Andreas Falkner, and David Benavides
- Subjects
- Computer software--Development, Artificial intelligence
- Abstract
This open access book provides a basic introduction to feature modelling and analysis as well as to the integration of AI methods with feature modelling. It is intended as an introduction for researchers and practitioners who are new to the field and will also serve as a state-of-the-art reference to this audience. While focusing on the AI perspective, the book covers the topics of feature modelling (including languages and semantics), feature model analysis, and interacting with feature model configurators. These topics are discussed along the AI areas of knowledge representation and reasoning, explainable AI, and machine learning.
- Published
- 2024
7. Clean Code Kochbuch : Rezepte für gutes Code-Design und bessere Softwarequalität
- Author
-
Maximiliano Contieri and Maximiliano Contieri
- Subjects
- Computer software--Development, Software engineering
- Abstract
Code Smells erkennen und mithilfe inspirierender Rezepte beseitigen - Ideale Ergänzung zu Robert C. Martins Klassiker »Clean Code« - Die eigenen Programmierfähigkeiten verbessern - durch eine Vielzahl inspirierender Rezepte - Beispiele in gängigen Programmiersprachen wie JavaScript, PHP, Java, Python u.v.a. Bis hin zu komplexen Problemen und anspruchsvollen Refactoring-Rezepten. Entwickler, Software Engineers und -Architektinnen, die mit einer umfangreichen Codebasis arbeiten, müssen ihren Code effektiv pflegen und erweitern. In diesem Kochbuch vermittelt Maximiliano Contieri das Konzept des Clean Code, geht aber noch einen Schritt weiter. Er zeigt, wie Sie Verbesserungspotenziale identifizieren und deren Auswirkungen auf den Produktionscode beurteilen. Mithilfe der vorgestellten Techniken kann die Zuverlässigkeit und Entwicklungsfähigkeit der Systeme deutlich verbessert werden. Anhand von Beispielen in JavaScript, PHP, Python, Java und vielen anderen Programmiersprachen bietet dieses Kochbuch bewährte Rezepte, die Sie bei der Erweiterung und Wartung größerer Systeme unterstützen. Contieri beschreibt grundlegende Konzepte wie Lesbarkeit, Kopplung, Testbarkeit, Sicherheit und Erweiterbarkeit sowie Code Smells und Rezepte zu deren Beseitigung. Im Verlauf dieses Buches werden die Refactoring-Rezepte und die Probleme, die sie lösen, immer komplexer. Sie werden: - die Vorteile von Clean Code verstehen und lernen, wie Sie Verbesserungsmöglichkeiten identifizieren - Refactoring-Techniken Schritt für Schritt erlernen - sich mit der Theorie hinter Clean Code vertraut machen - Beispiele aus der Praxis in verschiedenen modernen Programmiersprachen untersuchen - in einem Katalog mit Code Smells stöbern, deren Auswirkungen und Lösungsansätze zu ihrer Beseitigung nachvollziehen - Code schreiben, der auf den Punkt kommt, leichter zu lesen und zu verstehen ist
- Published
- 2024
8. Hands-On Visual Studio 2022 : A Developer's Guide to New Features and Best Practices with .NET 8 and VS 2022 for Maximum Productivity
- Author
-
Hector Uriel Perez Rojas, Miguel Angel Teheran Garcia, Hector Uriel Perez Rojas, and Miguel Angel Teheran Garcia
- Subjects
- Computer software--Development
- Abstract
Unlock the power of Visual Studio 2022 with this step-by-step illustrated guide and leverage its powerful featuresKey FeaturesRide the wave of artificial intelligence using the new GPT-based extensionsExplore tips, tricks, and best practices to discover ways to overcome source-code challengesGet to grips with Visual Studio's basic and advanced features to harness its full potential and enhance your coding journeyPurchase of the print or Kindle book includes a free PDF eBookBook DescriptionVisual Studio 2022 is widely recognized as the best IDE for application development across various domains. This book is a comprehensive guide for both beginners and experienced.NET developers who wish to familiarize themselves with its basic, advanced, and new features. This book is divided into three sections: the first is an overview of Visual Studio, the second part explores tools for productivity within the IDE, and the third delves into integration with GitHub and Visual Studio extensions. In this second edition, we've also expanded the chapters on the use of Visual Studio to environments beyond web development, such as Azure, Desktop,.NET MAUI, and others. Updates to the IDE introduced since the release year of the first edition of the book in 2022 have also been included, such as the use of GPT-based extensions like GitHub Copilot and GitHub Copilot Chat, as well as profiling tools. The book reviews breakpoint groups, a new way to configure breakpoints, as well as tools for web development, such as Browser Link, Dev Tunnels, and Web API Endpoints Explorer. For more advanced developers, the book addresses the topic of developing extensions through the use of the new Visual Studio SDK. By the end of this book, you'll have a better understanding of Visual Studio 2022 and how to use it to its fullest potential.What you will learnDiscover what's new in Visual Studio 2022Get to grips with the new features in code tools to improve productivityExplore latest compilation and debugging tipsUnveil shortcuts, tricks, tips, and tools to improve productivity within Visual Studio 2022Leverage remote and collaborative work with Visual Studio 2022Find out how to create new projects and templates in Visual Studio 2022Enhance your skills by learning general tools, shortcuts, and tips for.NET developersImplement version control with Git Integration into your workflowWho this book is forThis book is for.NET developers who want to learn how to use the latest features, tools, and extensions available in Visual Studio 2022. To get the most out of the book, general knowledge of C# is recommended. Knowledge of web development, Azure,.NET MAUI, and Desktop with.NET will help you follow along, but it's not a prerequisite.
- Published
- 2024
9. Research Software Engineering : A Guide to the Open Source Ecosystem
- Author
-
Matthias Bannert and Matthias Bannert
- Subjects
- Computer software--Development, Research--Data processing
- Abstract
Research Software Engineering: A Guide to the Open Source Ecosystem strives to give a big-picture overview and an understanding of the opportunities of programming as an approach to analytics and statistics. The book argues that a solid'programming'skill level is not only well within reach for many but also worth pursuing for researchers and business analysts. The ability to write a program leverages field-specific expertise and fosters interdisciplinary collaboration as source code continues to become an important communication channel. Given the pace of the development in data science, many senior researchers and mentors, alongside non-computer science curricula lack a basic software engineering component. This book fills the gap by providing a dedicated programming-with-data resource to both academic scholars and practitioners.Key Features overview: breakdown of complex data science software stacks into core components applied: source code of figures, tables and examples available and reproducible solely with license cost-free, open source software reader guidance: different entry points and rich references to deepen the understanding of selected aspects
- Published
- 2024
10. Optimal Spending on Cybersecurity Measures : DevOps
- Author
-
Tara Kissoon and Tara Kissoon
- Subjects
- Computer security, Computer software--Development, Risk management
- Abstract
Optimal Spending on Cybersecurity Measures: DevOps aims to discuss the integration of risk management methodologies within the DevOps process.This book introduces the cyber risk investment model, and the cybersecurity risk management framework within the DevOps process. This can be used by various stakeholders who are involved in the implementation of cybersecurity measures to safeguard sensitive data. This framework facilitates an organization's risk management decision-making process to demonstrate the mechanisms in place to fund cybersecurity measures within DevOps practices, and demonstrates the application of the process using a case study: Cascade. This book also discusses the elements used within DevOps, DevSecOps, and will define a strategic approach to minimize cybersecurity risks within DevOps known as DevRiskOps.Features: Aims to strengthen the reader's understanding of industry governance, risk and compliance practices. Incorporates an innovative approach to assess cyber security initiatives with DevOps. Explores the strategic decisions made by organizations when implementing cybersecurity measures and leverages an integrated approach to include risk management elements into DevOps.
- Published
- 2024
11. Effective Software Architecture : Building Better Software Faster
- Author
-
Oliver Goldman and Oliver Goldman
- Subjects
- Computer software--Development, Software architecture
- Abstract
Leverage software architecture as an effective tool for product development and build better software faster. Effective Software Architecture is the essential handbook for making software architecture an effective practice within product development organizations and processes while putting whole software teams on the same page. Industry elite Oliver Goldman provides a comprehensive perspective on the set of real-world skills and practices this work requires: a predictable, repeatable design process; the ability to make decisions expediently and effectively; a comprehensive and consistent communication strategy; tools that promote efficiency; and a team that is greater than the sum of its parts. Goldman's engaging prose articulates why software architecture is essential to building great software products, release after release. Rather than focusing on a specific architectural style or technology, this book's goal is to make software architects better at managing change, design, decision making, and team communication while helping software product managers, program managers, UX designers, and other team members understand how architecture functions within the software development process. Goldman's work is essential to helping the whole team achieve success. Understand software architecture and its role in product development Learn to effectively communicate about software architecture Employ architectural strategies for consistent, reliable design results Make architecture an integral aspect of product development Integrate architectural thinking into whole development organizations Effective Software Architecture is a guide for making software architecture an effective tool for product development. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
- Published
- 2024
12. Programming with GitHub Copilot : Write Better Code--Faster!
- Author
-
Kurt Dowswell and Kurt Dowswell
- Subjects
- Computer software--Development, Computer programming, Artificial intelligence
- Abstract
Accelerate your programming with the most popular AI coding tool on the market: GitHub Copilot In Programming with GitHub Copilot: Write Better Code — Faster, veteran software developer and GitHub community hero Kurt Dowswell delivers an insightful and hands-on exploration of GitHub's powerful, new AI coding assistant, Copilot. In the book, you'll discover how to use the tool's capabilities to push the boundaries of what you thought was possible in programming. Even if you've used autocomplete tools—like VS Code's TabNine extension—before, you'll be floored by GitHub Copilot's potential to transform the way you code. You'll learn how to install, configure, and use the software, from employing it's most common and widely used features to deploying business and enterprise functionality. You'll even discover how to fix runtime and compilation bugs and write unit, integration, and end-to-end tests. You'll also find: Prompt strategies to get GitHub Copilot to help you brainstorm new code solutions What the future looks like for AI-assisted coding, including discussions of issues like code licensing and ethics Directions for chatting with Copilot, including common commands and prompts to help you guide the conversation to where you want it to go Perfect for practicing programmers, developers, and software engineers, Programming with GitHub Copilot is also an essential resource for coders and other IT practitioners-in-training who want to expand their knowledge and improve the scope and depth of their programming skillsets.
- Published
- 2024
13. Generative AI for Effective Software Development
- Author
-
Anh Nguyen-Duc, Pekka Abrahamsson, Foutse Khomh, Anh Nguyen-Duc, Pekka Abrahamsson, and Foutse Khomh
- Subjects
- Computer software--Development, Artificial intelligence
- Abstract
This book provides a comprehensive, empirically grounded exploration of how Generative AI is reshaping the landscape of software development. It emphasizes the empirical evaluation of Generative AI tools in real-world scenarios, offering insights into their practical efficacy, limitations, and impact. By presenting case studies, surveys, and interviews from various software development contexts, the book offers a global perspective on the integration of Generative AI, highlighting how these advanced tools are adapted to and influence diverse cultural, organizational, and technological environments. This book is structured to provide a comprehensive understanding of Generative AI and its transformative impact on the field of software engineering. The book is divided into five parts, each focusing on different aspects of Generative AI in software development. As an introduction, Part 1 presents the fundamentals of Generative AI adoption. Part 2 is a collection of empirical studies and delves into the practical aspects of integrating Generative AI tools in software engineering, with a focus on patterns, methodologies, and comparative analyses. Next, Part 3 presents case studies that showcase the application and impact of Generative AI in various software development contexts. Part 4 then examines how Generative AI is reshaping software engineering processes, from collaboration and workflow to management and agile development. Finally, Part 5 looks towards the future, exploring emerging trends, future directions, and the role of education in the context of Generative AI. The book offers diverse perspectives as it compiles research and experiences from various countries and software development environments. It also offers non-technical discussions about Generative AI in management, teamwork, business and education. This way, it is intended for both researchers in software engineering and for professionals in industry who want to learn about the impactof Generative AI on software development.
- Published
- 2024
14. What Every Engineer Should Know About Digital Accessibility
- Author
-
Sarah Horton, David Sloan, Sarah Horton, and David Sloan
- Subjects
- Software engineering--Social aspects, Computers and people with disabilities, Computer software--Human factors, Computer software--Development, User interfaces (Computer systems)
- Abstract
Accessibility is a core quality of digital products to be deliberately addressed throughout the development lifecycle. What Every Engineer Should Know About Digital Accessibility will prepare readers to integrate digital accessibility into their engineering practices. Readers will learn how to accurately frame accessibility as an engineering challenge so they are able to address the correct problems in the correct way.Illustrated with diverse perspectives from accessibility practitioners and advocates, this book describes how people with disabilities use technology, the nature of accessibility barriers in the digital world, and the role of engineers in breaking down those barriers. Accessibility competence for current, emerging, and future technologies is addressed through a combination of guiding principles, core attributes and requirements, and accessibility‑informed engineering practices.FEATURES Discusses how technology can support inclusion for people with disabilities and how rigorous engineering processes help create quality user experiences without introducing accessibility barriers Explains foundational principles and guidelines that build core competency in digital accessibility as they are applied across diverse and emerging technology platforms Highlights practical insights into how engineering teams can effectively address accessibility throughout the technology development lifecycle Uses international standards to define and measure accessibility quality Written to be accessible to non‑experts in the subject area, What Every Engineer Should Know About Digital Accessibility is aimed at students, professionals, and researchers in the field of software engineering.
- Published
- 2024
15. CyberSecurity in a DevOps Environment : From Requirements to Monitoring
- Author
-
Andrey Sadovykh, Dragos Truscan, Wissam Mallouli, Ana Rosa Cavalli, Cristina Seceleanu, Alessandra Bagnato, Andrey Sadovykh, Dragos Truscan, Wissam Mallouli, Ana Rosa Cavalli, Cristina Seceleanu, and Alessandra Bagnato
- Subjects
- Computer software--Development, Computer security
- Abstract
This book provides an overview of software security analysis in a DevOps cycle including requirements formalisation, verification and continuous monitoring. It presents an overview of the latest techniques and tools that help engineers and developers verify the security requirements of large-scale industrial systems and explains novel methods that enable a faster feedback loop for verifying security-related activities, which rely on techniques such as automated testing, model checking, static analysis, runtime monitoring, and formal methods. The book consists of three parts, each covering a different aspect of security engineering in the DevOps context. The first part,'Security Requirements', explains how to specify and analyse security issues in a formal way. The second part,'Prevention at Development Time', offers a practical and industrial perspective on how to design, develop and verify secure applications. The third part,'Protection at Operations', eventually introduces tools for continuous monitoring of security events and incidents. Overall, it covers several advanced topics related to security verification, such as optimizing security verification activities, automatically creating verifiable specifications from security requirements and vulnerabilities, and using these security specifications to verify security properties against design specifications and generate artifacts such as tests or monitors that can be used later in the DevOps process. The book aims at computer engineers in general and does not require specific knowledge. In particular, it is intended for software architects, developers, testers, security professionals, and tool providers, who want to define, build, test, and verify secure applications, Web services, and industrial systems.
- Published
- 2024
16. Middle Tech : Software Work and the Culture of Good Enough
- Author
-
Paula Bialski and Paula Bialski
- Subjects
- Computer software--Development
- Abstract
Why software isn't perfect, as seen through the stories of software developers at a run-of-the-mill tech companyContrary to much of the popular discourse, not all technology is seamless and awesome; some of it is simply “good enough.” In Middle Tech, Paula Bialski offers an ethnographic study of software developers at a non-flashy, non-start-up corporate tech company. Their stories reveal why software isn't perfect and how developers communicate, care, and compromise to make software work—or at least work until the next update. Exploring the culture of good enoughness at a technology firm she calls “MiddleTech,” Bialski shows how doing good-enough work is a collectively negotiated resistance to the organizational ideology found in corporate software settings.The truth, Bialski reminds us, is that technology breaks due to human-related issues: staff cutbacks cause media platforms to crash, in-car GPS systems cause catastrophic incidents, and chatbots can be weird. Developers must often labor to patch and repair legacy systems rather than dream up killer apps. Bialski presents a less sensationalist, more empirical portrait of technology work than the frequently told Silicon Valley narratives of disruption and innovation. She finds that software engineers at MiddleTech regard technology as an ephemeral object that only needs to be good enough to function until its next iteration. As a result, they don't feel much pressure to make it perfect. Through the deeply personal stories of people and their practices at MiddleTech, Bialski traces the ways that workers create and sustain a complex culture of good enoughness.
- Published
- 2024
17. Clean Code Cookbook
- Author
-
Maximiliano Contieri and Maximiliano Contieri
- Subjects
- Computer software--Development, Software engineering
- Abstract
Often, software engineers and architects work with large, complex code bases that they need to scale and maintain. With this cookbook, author Maximiliano Contieri takes you beyond the concept of clean code by showing you how to identify improvement opportunities and their impact on production code. When it comes to reliability and system evolution, these techniques provide benefits that pay off over time.Using real life examples in JavaScript, PHP, Java, Python, and many other programming languages, this cookbook provides proven recipes to help you scale and maintain large systems. Every section covers fundamental concepts including readability, coupling, testability, and extensibility, as well as code smells—symptoms of a problem that requires special attention—and the recipes to address them.As you proceed through this book, refactoring recipes and the variety of code smells increase in complexity. You will:Understand the benefits of clean code and learn how to detect code smellsLearn refactoring techniques step by stepGain illustrative code examples in several modern programming languagesGet a comprehensive catalog of common code smells, their impacts, and possible solutionsUse code that's straight to the point, favoring readability and learning
- Published
- 2024
18. Software Development, Design, and Coding : With Patterns, Debugging, Unit Testing, and Refactoring
- Author
-
John F. Dooley, Vera A. Kazakova, John F. Dooley, and Vera A. Kazakova
- Subjects
- Web site development, Java (Computer program language), Computer software--Development, Computer programming
- Abstract
Learn the principles of good software design and then turn those principles into great code. This book introduces you to software engineering — from the application of engineering principles to the development of software. You'll see how to run a software development project, examine the different phases of a project, and learn how to design and implement programs that solve specific problems. This book is also about code construction — how to write great programs and make them work. This new third edition is revamped to reflect significant changes in the software development landscape with updated design and coding examples and figures. Extreme programming takes a backseat, making way for expanded coverage of the most crucial agile methodologies today: Scrum, Lean Software Development, Kanban, and Dark Scrum. Agile principles are revised to explore further functionalities of requirement gathering. The authors venture beyond imperative and object-oriented languages, exploring the realm of scripting languages in an expanded chapter on Code Construction. The Project Management Essentials chapter has been revamped and expanded to incorporate'SoftAware Development” to discuss the crucial interpersonal nature of joint software creation. Whether you're new to programming or have written hundreds of applications, in this book you'll re-examine what you already do, and you'll investigate ways to improve. Using the Java language, you'll look deeply into coding standards, debugging, unit testing, modularity, and other characteristics of good programs. You Will Learn Modern agile methodologies How to work on and with development teams How to leverage the capabilities of modern computer systems with parallel programming How to work with design patterns to exploit application development best practices How to use modern tools for development, collaboration, and source code controls Who This Book Is For Early career software developers, or upper-level students in software engineering courses
- Published
- 2024
19. Langlebige Software-Architekturen : Technische Schulden analysieren, begrenzen und abbauen
- Author
-
Carola Lilienthal and Carola Lilienthal
- Subjects
- Project management, Software architecture, Computer software--Development
- Abstract
Das Standardwerk zur Softwarearchitektur - Schließt die Lücke zwischen Softwarearchitektur und Implementierung der Codebasis - Einfache und übersichtliche Strukturierung aller wichtigen Grundkonzepte im Bereich der Softwarearchitektur - Mit über 200 farbigen Bildern aus real existierenden Softwaresystemen und etlichen FallbeispielenJe nachdem, wo Sie gerade stehen, ob Sie ein neues Entwicklungsprojekt planen oder das Ausmaß an technischen Schulden in einem bestehenden System reduzieren wollen, in diesem Buch finden Sie die passenden Antworten, um zu verhindern, dass die Architektur Ihres Systems erodiert, die Komplexität zunimmt, ständig weitere technische Schulden entstehen und Wartung und Erweiterung immer aufwendiger werden. In diesem Buch zeigt Ihnen die Autorin, worauf Sie bei der Umsetzung der Architektur achten sollten und welche Prinzipien eingehalten werden müssen, damit Sie in Ihren Softwareprojekten langlebige Architekturen entwerfen oder Ihre bestehenden Systeme durch kleine und große Refactorings in langlebige Architekturen überführen können. Es werden Muster in Softwarearchitekturen und Mustersprachen sowie verschiedene Architekturstile erläutert und aufgezeigt, welche Vorgaben letztlich zu Architekturen führen, die für Entwickler noch gut durchschaubar sind. Mit über 200 farbigen Bildern aus real existierenden Softwaresystemen und etlichen Fallbeispielen werden schlechte und gute Lösungen verständlich und nachvollziehbar dargestellt. Empfehlungen und vielfältige Hinweise aus Praxisprojekten erlauben dem Leser einen direkten Transfer zu seiner täglichen Arbeit. In der 4. Auflage wurde dem Thema Modularity Maturity Index (MMI) ein eigenes Kapitel gewidmet und der Text inhaltlich so erweitert, dass der gesamte Algorithmus zur Berechnung des MMI zugänglich wird. Nun kann jedes Team den MMI für sein System selbst bestimmen.
- Published
- 2024
20. Technical Writing for Software Developers : Enhance Communication, Improve Collaboration, and Leverage AI Tools for Software Development
- Author
-
Chris Chinchilla and Chris Chinchilla
- Subjects
- Technical writing, Computer software--Development
- Abstract
Elevate your software development process with expert technical writing skills, fostering clarity, collaboration, and successful product outcomesKey FeaturesOptimize documentation workflows with collaborative version-controlled'docs-as-code'tooling optionsEngage with interactive learning modules embedded throughout the bookImprove software quality as a lead developer through effective communication in documentationPurchase of the print or Kindle book includes a free PDF eBookBook DescriptionEffective documentation is key to the success of products in remote software development teams, facilitating clear instructions that benefit the entire development team. Technical Writing for Software Developers lays a solid foundation of essential grammar, providing language tips and explaining how precise writing enhances documentation, and walks you through the fundamental types and styles of documentation. Starting with an exploration of the current state of the tech writing industry and its significance in both the software and hardware realms, you'll master the building blocks of technical writing, exploring tooling choices and style guides, and create dynamic multimedia-laden documentation. This book equips you with valuable insights into the writing and feedback process to ensure continuous improvement. Additionally, you'll take a peek at the emerging trends and technologies, including AI tools, shaping the future of technical writing. By the end of this technical writing book, you'll have developed the expertise you need to tackle documentation requests effectively, armed with the knowledge of the best approach for documenting any topic, encompassing text, media elements, structure, and appropriate tools. The skills acquired will enable you to achieve seamless teamwork, enhanced project efficiency, and successful software development.What you will learnCreate engaging multimedia-rich documentationUnderstand the types and styles of documentationDiscover grammar and language tips for clear communicationStreamline your documentation process with the right tooling choiceMaster the writing and feedback process for continuous improvementExplore automation techniques for efficient documentation workflowsEmbrace AI-powered tools for enhanced technical writingWho this book is forThis book is for software developers who want to improve their technical writing prowess. Whether you are a junior developer looking to refine your documentation skills or a professional striving for smoother collaboration, this resource equips you with all the essential knowledge and practical insights you need. Covering everything from creating clear documentation to enhancing career prospects, this book caters to a diverse range of software developers, including programmers, software architects, and software engineers looking to streamline the product development process and save time.
- Published
- 2024
21. Beginning Git and GitHub : Version Control, Project Management and Teamwork for the New Developer
- Author
-
Mariot Tsitoara and Mariot Tsitoara
- Subjects
- Open source software, Revision control (Computer science), Computer software--Development, Application software--Development
- Abstract
Learn the fundamentals of version control through step-by-step tutorials that will teach you the ins-and-outs of Git. This updated version introduces Github workflows, and contains new chapters on how to make Git and GitHub truly yours, covers additional common problems and how to solve them, along with new features of Github pull requests. Divided into three parts – Version Control, Project Management and Teamwork – this book reveals what waits for you in the real world and how to resolve the problems you may run into. Once past the basics of Git, you'll see how to manage a software project, and finally how to utilize Git and GithHub to work effectively as a team. You'll examine how to plan, follow and execute a project with GitHub, and then apply those concepts to real-world situations. Workaround the pitfalls that most programmers fall into when driving a project with Git by using proven tactics to avoid them. You will also be taught the easiest and quickest ways to resolve merge conflicts. A lot of modern books on Git don't go into depth about non-technical topics. Beginning Git and GitHub is your complete guide to how Git and GitHub work in a professional team environment and will help you cover all the bases right at the start of your career. What You'll Learn Review basic and advanced concepts of GitApply Project Management skills using GitHub Solve conflicts or, ideally, avoid them altogether Use advanced concepts for a more boosted workflow Who This book Is For New developers, developers that have never worked in a team environment before, developers with basic knowledge of Git or GitHub, or anyone who works with text documents.
- Published
- 2024
22. Hands-On Python for DevOps : Leverage Python's Native Libraries to Streamline Your Workflow and Save Time with Automation
- Author
-
Roy and Roy
- Subjects
- Computer software--Development, Python (Computer program language)
- Abstract
Unleash DevOps excellence with Python and its ecosystem of tools for seamless orchestration on both local and cloud platforms, such as GCP, AWS, and AzureKey FeaturesIntegrate Python into DevOps for streamlined workflows, task automation, and improved collaborationCombine the principles of Python and DevOps into a unified approach for problem solvingLearn about Python's role in Infrastructure as Code (IaC), MLOps, networking, and other domainsPurchase of the print or Kindle book includes a free PDF eBookBook DescriptionPython stands out as a powerhouse in DevOps, boasting unparalleled libraries and support, which makes it the preferred programming language for problem solvers worldwide. This book will help you understand the true flexibility of Python, demonstrating how it can be integrated into incredibly useful DevOps workflows and workloads, through practical examples. You'll start by understanding the symbiotic relation between Python and DevOps philosophies and then explore the applications of Python for provisioning and manipulating VMs and other cloud resources to facilitate DevOps activities. With illustrated examples, you'll become familiar with automating DevOps tasks and learn where and how Python can be used to enhance CI/CD pipelines. Further, the book highlights Python's role in the Infrastructure as Code (IaC) process development, including its connections with tools like Ansible, SaltStack, and Terraform. The concluding chapters cover advanced concepts such as MLOps, DataOps, and Python's integration with generative AI, offering a glimpse into the areas of monitoring, logging, Kubernetes, and more. By the end of this book, you'll know how to leverage Python in your DevOps-based workloads to make your life easier and save time.What you will learnImplement DevOps practices and principles using PythonEnhance your DevOps workloads with PythonCreate Python-based DevOps solutions to improve your workload efficiencyUnderstand DevOps objectives and the mindset needed to achieve themUse Python to automate DevOps tasks and increase productivityExplore the concepts of DevSecOps, MLOps, DataOps, and moreUse Python for containerized workloads in Docker and KubernetesWho this book is forThis book is for IT professionals venturing into DevOps, particularly programmers seeking to apply their existing programming knowledge to excel in this field. For DevOps professionals without a coding background, this book serves as a resource to enhance their understanding of development practices and communicate more effectively with developers. Solutions architects, programmers, and anyone regularly working with DevOps solutions and Python will also benefit from this hands-on guide.
- Published
- 2024
23. Building Serverless Applications on Knative
- Author
-
Evan Anderson and Evan Anderson
- Subjects
- Application software--Development, Cloud computing, Computer software--Development, Logiciels d'application--De´veloppement
- Abstract
Explore the theory and practice of designing and writing serverless applications using examples from the Knative project. With this practical guide, mid-level to senior application developers and team managers will learn when and why to target serverless platforms when developing microservices or applications. Along the way, you'll also discover warning signs that suggest cases when serverless might cause you more trouble than joy.Drawing on author Evan Anderson's 15 years of experience developing and maintaining applications in the cloud, and more than 6 years of experience with serverless platforms at scale, this book acts as your guide into the high-velocity world of serverless application development. You'll come to appreciate why Knative is the most widely adopted open source serverless platform available. With this book, you will:Learn what serverless is, how it works, and why teams are adopting itUnderstand the benefits of Knative for cloud native development teamsLearn how to build a serverless application on KnativeExplore the challenges serverless introduces for debugging and the tools that can help improve itLearn why event-driven architecture and serverless compute are complementary but distinctUnderstand when a serverless approach might not be the right system design
- Published
- 2023
24. Optimising the Software Development Process with Artificial Intelligence
- Author
-
José Raúl Romero, Inmaculada Medina-Bulo, Francisco Chicano, José Raúl Romero, Inmaculada Medina-Bulo, and Francisco Chicano
- Subjects
- Computer software--Development, Artificial intelligence
- Abstract
This book offers a practical introduction to the use of artificial intelligence (AI) techniques to improve and optimise the various phases of the software development process, from the initial project planning to the latest deployment. All chapters were written by leading experts in the field and include practical and reproducible examples. Following the introductory chapter, Chapters 2-9 respectively apply AI techniques to the classic phases of the software development process: project management, requirement engineering, analysis and design, coding, cloud deployment, unit and system testing, and maintenance. Subsequently, Chapters 10 and 11 provide foundational tutorials on the AI techniques used in the preceding chapters: metaheuristics and machine learning. Given its scope and focus, the book represents a valuable resource for researchers, practitioners and students with a basic grasp of software engineering.
- Published
- 2023
25. GitHub For Dummies
- Author
-
Sarah Guthals and Sarah Guthals
- Subjects
- Open source software, Computer software--Development
- Abstract
Get more out of your coding with GitHub For today's coders, GitHub is a must. The world's largest software development platform, GitHub helps developers store, track, and collaborate on software projects. In this easy-to-follow Dummies guide, you'll find insight into creating repositories, establishing projects, collaborating, incorporating open-source resources, and establishing yourself as a valued member of the GitHub community. With a working knowledge of GitHub, you'll be a better, more employable programmer. The simple instructions and interactive examples in this book will get you there quickly. Get the instructions you need for using GitHub to collaborate on software projects Become more attractive to employers with knowledge and experience in the largest development platform Set up GitHub Desktop, create a repository, and launch your first project Use GitHub Skills courses to learn new tricks, for beginners to prosYou've learned how to write a little code—now learn how to share it with GitHub.
- Published
- 2023
26. Threats : What Every Engineer Should Learn From Star Wars
- Author
-
Adam Shostack and Adam Shostack
- Subjects
- Computer security, Computer software--Development, Star Wars films
- Abstract
Secure your applications with help from your favorite Jedi masters In Threats: What Every Engineer Should Learn From Star Wars, accomplished security expert and educator Adam Shostack delivers an easy-to-read and engaging discussion of security threats and how to develop secure systems. The book will prepare you to take on the Dark Side as you learn—in a structured and memorable way—about the threats to your systems. You'll move from thinking of security issues as clever one-offs and learn to see the patterns they follow. This book brings to light the burning questions software developers should be asking about securing systems, and answers them in a fun and entertaining way, incorporating cybersecurity lessons from the much-loved Star Wars series. You don't need to be fluent in over 6 million forms of exploitation to face these threats with the steely calm of a Jedi master. You'll also find: Understandable and memorable introductions to the most important threats that every engineer should know Straightforward software security frameworks that will help engineers bake security directly into their systems Strategies to align large teams to achieve application security in today's fast-moving and agile world Strategies attackers use, like tampering, to interfere with the integrity of applications and systems, and the kill chains that combine these threats into fully executed campaignsAn indispensable resource for software developers and security engineers, Threats: What Every Engineer Should Learn From Star Wars belongs on the bookshelves of everyone delivering or operating technology: from engineers to executives responsible for shipping secure code.
- Published
- 2023
27. The Adventurous and Practical Journey to a Large-Scale Enterprise Solution : Threading the Way to Implementing an ERP Through MIDRP Practice
- Author
-
Vahid Hajipour and Vahid Hajipour
- Subjects
- Enterprise resource planning--Computer programs, Enterprise resource planning--Data processing, Computer software--Development, Project management--Methodology
- Abstract
The high failure rate of enterprise resource planning (ERP) projects is a pressing concern for both academic researchers and industrial practitioners. The challenges of an ERP implementation are particularly high when the project involves designing and developing a system from scratch. Organizations often turn to vendors and consultants for handling such projects but, every aspect of an ERP project is opaque for both customers and vendors. Unlocking the mysteries of building a large-scale ERP system, The Adventurous and Practical Journey to a Large-Scale Enterprise Solution tells the story of implementing an applied enterprise solution. The book covers the field of enterprise resource planning by examining state-of-the-art concepts in software project management methodology, design and development integration policy, and deployment framework, including: A hybrid project management methodology using waterfall as well as a customized Scrum-based approach A novel multi-tiered software architecture featuring an enhanced flowable process engine A unique platform for coding business processes efficiently Integration to embed ERP modules in physical devices A heuristic-based framework to successfully step into the Go-live period Written to help ERP project professionals, the book charts the path that they should travel from project ideation to systems implementation. It presents a detailed, real-life case study of implementing a large-scale ERP and uses storytelling to demonstrate incorrect and correct decisions frequently made by vendors and customers. Filled with practical lessons learned, the book explains the ins and outs of adopting project methodologies. It weaves a tale that features both real-world and scholarly aspects of an ERP implementation.
- Published
- 2023
28. Infrastructure As Code for Beginners : Deploy and Manage Your Cloud-based Services with Terraform and Ansible
- Author
-
Russ McKendrick and Russ McKendrick
- Subjects
- Operating systems (Computers)--Software, Computer software--Development, Computer networks--Management, Computer network architectures, Cloud computing
- Abstract
Master Infrastructure as Code (IaC) and streamline your DevOps workflows using Terraform and Ansible Purchase of the print or Kindle book includes a free eBook in the PDF formatKey FeaturesEmploy effective strategies and approach IaC projects efficiently by diving deep into its fundamentalsUnderstand the working of Terraform and Ansible and integrate them into your CI/CD workflowsWork with real-world examples of IaC across multiple cloud providers (Azure & AWS)Book DescriptionThe Infrastructure as Code (IaC) approach ensures consistent and repeatable deployment of cloud-based IaaS/PaaS services, saving you time while delivering impeccable results. Infrastructure as Code for Beginners is a practical implementation guide that helps you gain a clear understanding of the foundations of Infrastructure as Code and make informed decisions when implementing it. With this book, you'll uncover essential IaC concepts, including planning, selecting, and implementing the right tools for your project. With step-by-step explanations and real-world examples, you'll gain a solid understanding of the benefits of IaC and the scope of application in your projects. You'll learn about the pros, cons, and best practices of different IaC tools such as Terraform and Ansible, and their use at different stages of the deployment process along with GitHub Actions. Using these tools, you'll be able to design, deploy, and secure your infrastructure on two major cloud platforms, Microsoft Azure and Amazon Web Services. In addition, you'll explore other IaC tools such as Pulumi, AWS CloudFormation, and Azure Bicep. By the end of this book, you'll be well equipped to approach your IaC projects confidently.What you will learnDetermine the right time to implement Infrastructure as Code for your workloadSelect the appropriate approach for Infrastructure-as-Code deploymentGet hands-on experience with Ansible and Terraform and understand their use casesPlan and deploy a workload to Azure and AWS clouds using Infrastructure as CodeLeverage CI/CD in the cloud to deploy your infrastructure using your codeDiscover troubleshooting tips and tricks to avoid pitfalls during deploymentWho this book is forThis book is for cloud engineers, software developers, or system administrators responsible for deploying resources to host applications. Ideal for both beginners and experienced professionals seeking to deepen their knowledge. Experience in manually deploying resources for applications in public clouds such as AWS or Microsoft Azure is a must. A basic understanding of programming or scripting languages, such as Python, Bash, PowerShell, etc. as well as familiarity with version control systems like Git, is a prerequisite.
- Published
- 2023
29. A Friendly Guide to Software Development : What You Should Know Without Being a Developer
- Author
-
Leticia Portella and Leticia Portella
- Subjects
- Computer software--Development
- Abstract
Software is everywhere, but despite being so common and useful, it remains magical and mysterious to many. Still, more and more people are finding themselves working for tech companies, or with an array of software products, services, and tools. This can segregate those who understand tech from those that don't. But it doesn't have to be this way.This book aims to bring these two worlds closer together, allowing people to learn basic concepts of software development in a casual and straight-forward way. Assuming no previous technical knowledge, you'll embark on a journey where you can understand and build a new software project from scratch until it is an advanced product with multiple users. A Friendly Guide to Software Development makes technical concepts broadly available and easy to understand. Imagine moving from a “traditional” company and suddenly finding yourself in one where software is the main product or is a foundational component to it. One is often left to wade through the infinite concepts while still doing their actual jobs. This book closes that gap. In doing so, you'll be able to achieve better communication, which will undoubtedly lead to better working relationships, a better working environment, and ultimately better software.What You'll LearnSee how a new software project is createdExamine the basics of software development and architectureKnow which questions to ask to avoid potential problems and pitfallsStart using and building software projectsWho This Book Is ForThose without a traditional technical background people like business and project managers who need to work closely with software developers and teamsPeople who are interested in building a software system but don't know where to start.Programmers who want to jump to development but have no experience in the industry and its common concepts
- Published
- 2023
30. Designing Software Intensive Products : Integrating Engineering and Intellectual Property Management to the Development of Innovative Products
- Author
-
Rogerio Atem de Carvalho and Rogerio Atem de Carvalho
- Subjects
- Product design, Computer software--Development
- Abstract
This book guides the reader through a design process that was tested and optimized in companies and design bureaus. It not only smoothly integrates modern product development techniques, but also addresses, for each phase, issues related to the management of intangible assets. There are several books on the product design process, as well as on the development of innovative products in general. However, none of them addresses how to integrate the engineering techniques with the necessary aspects of Intellectual Property Management. With a focus on software intensive products in general, the book presents a meta-process that adapts to product design in any area where the software element is an important factor in product functionality and innovation.
- Published
- 2023
31. The Well-Grounded Python Developer : How the Pros Use Python and Flask
- Author
-
Doug Farrell and Doug Farrell
- Subjects
- Computer software--Development, Python (Computer program language)
- Abstract
If you're new to Python, it can be tough to understand when, where, and how to use all its language features. This friendly guide shows you how the Python ecosystem fits together, and grounds you in the skills you need to continue your journey to being a software developer.Summary Inside The Well-Grounded Python Developer you will discover: Building modules of functionality Creating a well-constructed web server application Integrating database access into your Python applications Refactor and decoupling systems to help scale them How to think about the big picture of your application The Well-Grounded Python Developer builds on Python skills you've learned in isolation and shows you how to unify them into a meaningful whole. It helps you understand the dizzying array of libraries and teaches important concepts, like modular construction, APIs, and the design of a basic web server. As you work through this practical guide, you'll discover how all the bits of Python link up as you build and modify a typical web server application—the kind of web app that's in high demand by modern businesses. About the technology As a new programmer, you're happy just to see your code run. A professional developer, on the other hand, needs to create software that runs reliably. It must be fast, maintainable, scalable, secure, well designed and documented, easy for others to update, and quick to ship. This book teaches you the skills you need to go from Python programmer to Python developer. About the book The Well-Grounded Python Developer shows you why Python, the world's most popular programming language, is a fantastic tool for professional development. It guides you through the most important skills, like how to name variables, functions, and classes, how to identify and write a good API, and how to use objects. You'll also learn how to deal with inevitable failures, how to make software that connects to the internet, core security practices, and many other professional-grade techniques. What's inside Create a web application Connect to a database Design programs to handle big tasks About the reader For experienced beginners who want to learn professional-level skills. About the author Doug Farrell has been a professional developer since 1983, and has worked with Python for over 20 years. Table of Contents 1 Becoming a Pythonista PART 1 - GROUNDWORK 2 That's a good name 3 The API: Let's talk 4 The object of conversation 5 Exceptional events PART 2 - FIELDWORK 6 Sharing with the internet 7 Doing it with style 8 Do I know you? Authentication 9 What can you do? Authorization 10 Persistence is good: Databases 11 I've got something to say 12 Are we there yet?
- Published
- 2023
32. Shipping Go : Develop, Deliver, Discuss, Design, and Go Again
- Author
-
Joel Holmes and Joel Holmes
- Subjects
- Software engineering, Computer software--Development
- Abstract
Build and upgrade an automated software delivery pipeline that supports containerization, integration testing, semantic versioning, automated deployment, and more.In Shipping Go you will learn how to: Develop better software based on feedback from customers Create a development pipeline that turns feedback into features Reduce bugs with pipeline automation that validates code before it is deployed Establish continuous testing for exceptional code quality Serverless, container-based, and server-based deployments Scale your deployment in a cost-effective way Deliver a culture of continuous improvement Shipping Go is a hands-on guide to shipping Go-based software. Author Joel Holmes shows you the easy way to set up development pipelines, fully illustrated with practical examples in the powerful Go language. You'll put continuous delivery and continuous integration into action, and discover instantly useful guidance on automating your team's build and reacting with agility to customer demands. Your new pipelines will ferry your projects through production and deployment, and also improve your testing, code quality, and production applications. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology An effective software delivery pipeline automates all stages, from initial design, through development, deployment, and ultimately the usage experience that feeds back into new features and releases. Go embraces the best practices of Continuous Delivery, and adds a few language-specific tools and twists of its own. About the Book Shipping Go shows you how to build Go-specific software development pipelines. You'll have a basic CI/CD process up and running by the time you finish Chapter 3, along with an iterative process for designing, releasing, and revising your applications. Then, you'll systematically upgrade your pipeline to support containerization, integration testing, semantic versioning, and automated deployment. A set of handy appendices help you translate these valuable practices to Kotlin, Python, and JavaScript applications. What's Inside Create a development pipeline that turns feedback into features Automatically validate code before it is deployed Serverless, container-based, and server-based deployments Scale your deployment in a cost-effective way About the Reader For Go developers. About the Author Joel Holmes builds cloud native applications, helping to architect, design, and develop them. A Golang tech lead, Aliénor Latour was the technical editor for this book. Table of Contents PART 1 - STARTUP 1 Delivering value 2 Introducing continuous integration 3 Introducing continuous testing 4 Introducing continuous deployment PART 2 - SCALING 5 Code quality enforcement 6 Testing frameworks, mocking, and dependencies 7 Containerized deployment PART 3 - GOING PUBLIC 8 Configuration management and stable releases 9 Integration testing 10 Advanced deployment 11 The loop
- Published
- 2023
33. A Complete Guide to DevOps with AWS : Deploy, Build, and Scale Services with AWS Tools and Techniques
- Author
-
Osama Mustafa and Osama Mustafa
- Subjects
- Cloud computing, Computer software--Development, Web services
- Abstract
Gain a thorough understanding of DevOps concepts and learn to deploy AWS DevOps services in an organization. This book covers AWS DevOps deployment and building applications and services for enhanced performance. A Complete Guide to DevOps with AWS will show you how to use AWS DevOps to launch and scale services using AWS tools. It demonstrates how to handle infrastructure as code such as AWS CodeCommit, AWS CodeBuild, and AWS CodeArtifact, and how to adapt your software with familiar tools such as terraform and cloud formation. This practice also helps in the continuous integration and deployment of pipelines such as AWS CodeDeploy and AWS CodePipeline with different deployment strategies. You will also learn how to find bugs quicker, enhance software quality, reduce your time to market, and how to build, test, and prepare for a release with frequent code changes. You will also see how to scale your applications to provide maximum performance for users with high traffic. The book also covers monitoring and logging applications, giving an overall picture of the ecosystem of product development. It also explains Kubernetes in depth with AWS EKS. It concludes by walking you through how to build projects with AWS DevOps tools and technologies. After completing this book, you will have gained a solid understanding of the concepts of AWS DevOps through examples, including building projects with integration of software tools. What You Will Learn Automate processes with AWS toolsUnderstand AWS Services for Continuous deployment, and how to use themUse infrastructure as code with AWS in different formatsIntegrate AWS security into DevOps Who This Book Is For DevOps professionals and cloud engineers.
- Published
- 2023
34. Test-Driven Development with Java : Create Higher-quality Software by Writing Tests First with SOLID and Hexagonal Architecture
- Author
-
Alan Mellor and Alan Mellor
- Subjects
- Java (Computer program language), Computer software--Development, Computer software--Testing
- Abstract
Drive development with automated tests and gain the confidence you need to write high-quality softwareKey FeaturesGet up and running with common design patterns and TDD best practicesLearn to apply the rhythms of TDD – arrange, act, assert and red, green, refactorUnderstand the challenges of implementing TDD in the Java ecosystem and build a planBook DescriptionTest-driven development enables developers to craft well-designed code and prevent defects. It's a simple yet powerful tool that helps you focus on your code design, while automatically checking that your code works correctly. Mastering TDD will enable you to effectively utilize design patterns and become a proficient software architect. The book begins by explaining the basics of good code and bad code, bursting common myths, and why Test-driven development is crucial. You'll then gradually move toward building a sample application using TDD, where you'll apply the two key rhythms -- red, green, refactor and arrange, act, assert. Next, you'll learn how to bring external systems such as databases under control by using dependency inversion and test doubles. As you advance, you'll delve into advanced design techniques such as SOLID patterns, refactoring, and hexagonal architecture. You'll also balance your use of fast, repeatable unit tests against integration tests using the test pyramid as a guide. The concluding chapters will show you how to implement TDD in real-world use cases and scenarios and develop a modern REST microservice backed by a Postgres database in Java 17. By the end of this book, you'll be thinking differently about how you design code for simplicity and how correctness can be baked in as you go.What you will learnDiscover how to write effective test cases in JavaExplore how TDD can be incorporated into crafting softwareFind out how to write reusable and robust code in JavaUncover common myths about TDD and understand its effectivenessUnderstand the accurate rhythm of implementing TDDGet to grips with the process of refactoring and see how it affects the TDD processWho this book is forThis book is for expert Java developers and software architects crafting high-quality software in Java. Test-Driven Development with Java can be picked up by anyone with a strong working experience in Java who is planning to use Test-driven development for their upcoming projects.
- Published
- 2023
35. Frameworkless Front-End Development : Do You Control Your Dependencies or Are They Controlling You?
- Author
-
Francesco Strazzullo and Francesco Strazzullo
- Subjects
- JavaScript (Computer program language), Computer software--Development
- Abstract
Explore an alternative method of front-end application development without using frameworks or third-party libraries. This updated book provides you with the required skills and freedom to consider a “no framework” approach when choosing a technology for creating a new project. New topics covered include a brief history of JavaScript frameworks and their key developments, how to protect domain code, and how to work with frameworkless in legacy applications.You'll work through the most important issues in a clear and sensible way, using practical methods and tools to gain an understanding of non-functional requirements. This book answers questions on important topics such as state management, making a routing system, creating a REST client using fetch, and reveals the trade-offs and risks associated with choosing the wrong framework or tool for your project, as well as provides sustainability, and functional alternatives.Frameworkless Front-End Development breaksdown the concept of technical debt and the ways in which a framework can impact the lifespan of a project. Along with gaining a comprehensive and clear guide on coding effectively from scratch without frameworks, you will also learn some principles of technical decision-making.What You'll LearnUnderstand DOM manipulation Manage the state of a fronted application with different patternsSafely migrate existent applications to a new framework or to frameworkless codeUnderstand the importance of non-functional requirementsSee how a Framework can affect the “health” of a codebaseWho This Book Is For Skilled JavaScript developers who want to understand how to effectively write code without using dependenciesCTOs who need to help teams to choose a technology stack for their next projectConsultants that need to refactor an existent JavaScript front-end codebase
- Published
- 2023
36. Practical Automation with PowerShell
- Author
-
Matthew Dowst and Matthew Dowst
- Subjects
- Computer software--Development, Windows PowerShell (Computer program language)
- Abstract
Take PowerShell beyond simple scripts and build time-saving automations for your team, your users, and the world.In Practical Automation with PowerShell you will learn how to: Build PowerShell functions to automate common and complex tasks Create smart automations that are adaptable to new challenges Structure your code for sharing and reusability Store and secure your automations Execute automations with Azure Automation, Jenkins, Task Scheduler, and Cron Share your automations with your team and non-technical colleagues Store and retrieve data, credentials, and variables Use source control solutions to maintain and test code changes Provide front-end UI solutions for PowerShell automations Practical Automation in PowerShell reveals how you can use PowerShell to build automation solutions for a huge number of common admin and DevOps tasks. Author Matthew Dowst uses his decades of experience to lay out a real blueprint for setting up an enterprise scripting environment with PowerShell. The book goes beyond the basics to show you how to handle the unforeseen complexities that can keep automations from becoming reusable and resilient. From the console to the cloud, you'll learn how to manage your code, avoid common pitfalls, and create sharable automations that are adaptable to different use cases. About the Technology The PowerShell scripting language is a force multiplier, giving you programmatic control over your whole data center. With this powerful tool, you can create reusable automations that radically improve consistency and productivity on your Ops team. This book shows you how to design, write, organize, and deploy scripts to automate operations on systems of all sizes, from local servers to enterprise clusters in the cloud. About the Book Practical Automation with PowerShell: Effective scripting from the console to the cloud shows you how to build PowerShell automations for local and cloud systems. In it, you'll find tips for identifying automatable tasks, techniques for structuring and managing scripts, and lots of well-explained example code. You'll even learn how to adapt existing scripts to new use cases and empower non-technical users through easy-to-understand SharePoint frontends. What's Inside Structure PowerShell code for sharing and reusability Store and secure your automations Execute automation with Azure Automation, Jenkins, Task Scheduler, and Cron Store and retrieve data, credentials, and variables Use source control solutions to maintain and test code changes About the Reader For sysadmin and IT professionals who manage backend systems. About the Author Matthew Dowst has over 15 years of experience in IT management and consulting. Table of contents PART 1 1 PowerShell automation 2 Get started automating PART 2 3 Scheduling automation scripts 4 Handling sensitive data 5 PowerShell remote execution 6 Making adaptable automations 7 Working with SQL 8 Cloud-based automation 9 Working outside of PowerShell 10 Automation coding best practices PART 3 11 End-user scripts and forms 12 Sharing scripts among a team 13 Testing your scripts 14 Maintaining your code
- Published
- 2023
37. Solution Architecture Patterns for Enterprise : A Guide to Building Enterprise Software Systems
- Author
-
Chanaka Fernando and Chanaka Fernando
- Subjects
- Computer architecture, Computer software--Development
- Abstract
Gain a deeper understanding of how distributed systems work, as well as which applications and systems are used for specific business domains or industries. This book provides a set of solution architecture patterns that were developed based on the author's experience building enterprise software systems for hundreds of different organizations across the globe. The architecture diagrams (patterns) and examples allow you to not only grasp the concepts, but to build working projects. Solution Architecture Patterns for Enterprise starts with an introduction to the concepts of enterprise software systems and solution architecture and later moves to individual solution architecture patterns used in real-world enterprises. Subsequent sections cover various industry-specific solution architecture patterns that can be used to build domain-specific software systems. The book concludes with a view of what the future holds for solution architecture, including likely newdevelopments in the field. This book will help enterprise software architects and engineers to design and implement real-world enterprise software systems using best practices and techniques adopted by organizations across the globe. It provides software architecture blueprints to build domain-specific enterprise software systems. If you are working on any digital transformation project or initiative, you will find this book useful, as it provides quick reference on architecture and implementation to get started with your work. What You Will LearnUnderstand the key elements of enterprise software systems and how to design and implement themMaster different approaches to build real-world software applicationsBuild domain specific enterprise software systemsUse open-source tools to build enterprise software systems Who This Book Is For Software Developers, software architect, solution architects, and enterprise architects.
- Published
- 2023
38. Test-Driven Development in Go : A Practical Guide to Writing Idiomatic and Efficient Go Tests Through Real-world Examples
- Author
-
Adelina Simion and Adelina Simion
- Subjects
- Computer software--Development, Computer software--Testing, Go (Computer program language)
- Abstract
Explore Go testing techniques and leverage TDD to deliver and maintain microservices architecture, including contract, end-to-end, and unit testing Purchase of the print or Kindle book includes a free PDF eBookKey FeaturesWrite Go test suites using popular mocking and testing frameworksLeverage TDD to implement testing at all levels of web applications and microservices architectureMaster the art of writing tests that cover edge cases and concurrent codeBook DescriptionExperienced developers understand the importance of designing a comprehensive testing strategy to ensure efficient shipping and maintaining services in production. This book shows you how to utilize test-driven development (TDD), a widely adopted industry practice, for testing your Go apps at different levels. You'll also explore challenges faced in testing concurrent code, and learn how to leverage generics and write fuzz tests. The book begins by teaching you how to use TDD to tackle various problems, from simple mathematical functions to web apps. You'll then learn how to structure and run your unit tests using Go's standard testing library, and explore two popular testing frameworks, Testify and Ginkgo. You'll also implement test suites using table-driven testing, a popular Go technique. As you advance, you'll write and run behavior-driven development (BDD) tests using Ginkgo and Godog. Finally, you'll explore the tricky aspects of implementing and testing TDD in production, such as refactoring your code and testing microservices architecture with contract testing implemented with Pact. All these techniques will be demonstrated using an example REST API, as well as smaller bespoke code examples. By the end of this book, you'll have learned how to design and implement a comprehensive testing strategy for your Go applications and microservices architecture.What you will learnCreate practical Go unit tests using mocks and assertions with TestifyBuild table-driven test suites for HTTP web applicationsWrite BDD-style tests using the Ginkgo testing frameworkUse the Godog testing framework to reliably test web applicationsVerify microservices architecture using Pact contract testingDevelop tests that cover edge cases using property testing and fuzzingWho this book is forIf you are an intermediate-level developer or software testing professional who knows Go fundamentals and is looking to deliver projects with Go, then this book is for you. Knowledge of Go syntax, structs, functions, and interfaces will help you get the most out of this book.
- Published
- 2023
39. BDD in Action, Second Edition : Behavior-Driven Development for the Whole Software Lifecycle
- Author
-
John Ferguson Smart, Jan Molak, John Ferguson Smart, and Jan Molak
- Subjects
- Object-oriented methods (Computer science), Computer software--Development, Software engineering
- Abstract
Deliver software that does what it's supposed to do! Behavior-Driven Development guides your software projects to success with collaboration, communication techniques, and concrete requirements you can turn into automated tests.In BDD in Action, Second Edition you'll learn how to: Implement and improve BDD practices Prioritize features from business goals Facilitate an example mapping session Write automated acceptance tests Scale up your automated acceptance tests Deliver accurate reporting and documentation Around half of all software projects fail to deliver on requirements. Behavior-Driven Development (BDD) helps make sure that yours isn't one of them. Behavior-Driven Development in Action, Second Edition teaches you how to ensure that everyone involved in a software project—from developers to non-technical stakeholders—are in agreement on goals and objectives. It lays out the communication skills, collaborative practices, and useful automation tools that will let you seamlessly succeed with BDD. Now in its second edition, this revised bestseller has been extensively updated with new techniques for incorporating BDD into large-scale and enterprise development practices such as Agile and DevOps. Foreword by Daniel Terhorst-North. About the Technology Behavior-Driven Development is a collaborative software design technique that organizes examples of an application's desired behavior into a concrete, testable specification. Because the BDD process gathers input from all areas of an organization, it maximizes the likelihood your software will satisfy both end users and business stakeholders. The established collaboration practices and automation strategies in this book will help you maximize the benefits of BDD for your dev team and your business clients. About the Book In BDD in Action, Second Edition, you'll learn to seamlessly integrate BDD into your existing development process. This thoroughly revised new edition now shows how to integrate BDD with DevOps and large-scale Agile systems. Practical examples introduce cross-functional team communication skills, leading a successful requirements analysis, and how to set up automated acceptance criteria. What's Inside How BDD positively affects teamwork, dynamics, and collaboration with stakeholders Help teams discover and analyze requirements, uncover assumptions, and reduce risks Make acceptance, integration, and unit testing more effective Automate reporting and living documentation to improve transparency About the Reader For all development teams. No experience with BDD required. Examples in Java, JavaScript, and TypeScript can be easily expressed in your chosen language. About the Author John Ferguson Smart is the creator of the Serenity BDD framework and founder of the Serenity Dojo training school. Jan Molak is the author of the Serenity/JS testing framework, Jenkins Build Monitor, and other CD and testing tools.
- Published
- 2023
40. Software Architect
- Author
-
Michael Bell and Michael Bell
- Subjects
- Computer software--Development, Software architecture
- Abstract
A strategic state-of-the-art software architecture manual for all skill levels In Software Architect, veteran enterprise and solution architect Michael Bell delivers a hands-on playbook of best practices for aspiring and practicing software architects, seeking to improve their software design, integration, communication, presentation, and knowledge acquisition skills. He explores the career enablement, career planning, self-training, and self-improvement topics you'll need to increase your ability to offer powerful and effective business and technological solutions. In the book, you'll learn how to help companies promote business and technological transformation by implementing modern and first-class software design, deployment, integration, and operations. Software Architect also includes: A modern software architect's toolbox that includes best practices for multi-dimensional software design and integration in an enterprise quantum computing ecosystem A breakdown of the various types of software architects, as well as useful self-assessments for aspiring and practicing professionals Skill acquisition strategies for software architects along with strategic approaches to ace software architecture interviews An indispensable manual for aspiring to be architects, software architects-in-training, and practicing software architects. Software Architect is an essential read for anyone hoping to improve their ability to deliver robust business and technical solutions to enterprises everywhere.
- Published
- 2023
41. Java Persistence with Spring Data and Hibernate
- Author
-
Catalin Tudose and Catalin Tudose
- Subjects
- Computer software--Development, Relational databases, Object-oriented programming (Computer science), Java (Computer program language)
- Abstract
Master Java persistence using the industry-leading tools Spring Data and Hibernate.In Java Persistence with Spring Data and Hibernate you will learn: Mapping persistent classes, value types, and inheritance Mapping collections and entity associations Processing transactions with Spring Data and Hibernate Creating fetch plans, strategies, and profiles Filtering data Building Spring Data REST projects Using Java persistence with non-relational databases Querying JPA with QueryDSL Testing Java persistence applications Java Persistence with Spring Data and Hibernate teaches you the ins-and-outs of Java persistence with hands-on examples using Spring Data, JPA, and Hibernate. The book carefully analyzes the capabilities of the major Java persistence tools, and guides you through the most common use cases. By comparing and contrasting the alternatives, you'll find it easy to choose the right tool choice for your applications. You'll learn how to make and utilize mapping strategies, about the different approach to transactions for both Hibernate and Spring Data, and even how to efficiently test Java persistence applications. The practical techniques are demonstrated with both relational and non-relational databases. Forewords by Dmitry Aleksandrov and Mohamed Taman. About the technology Effectively managing application data is essential for any serious application. Spring Data and Hibernate bridge the gap between object-oriented code and relational data stores, radically simplifying Java persistence. By implementing the Java Persistence API (JPA) standard, these powerful tools help you avoid common bugs related to state and application data storage. About the book Java Persistence with Spring Data and Hibernate explores Java persistence using industry-standard tools. Hands-on examples introduce object-relational mapping and guide you through different mapping strategies to suit your needs. Covering transactions, persistent application testing, and non-relational databases, this book is your go-to resource for managing data in Java applications. What's inside Mapping persistent classes, value types, and inheritance Creating fetch plans, strategies, and profiles Building Spring Data REST projects Querying JPA with QueryDSL About the reader For intermediate Java programmers. About the author Catalin Tudose has more than 20 years of experience in the Java community. Christian Bauer, Gavin King, and Gary Gregory are the authors of Java Persistence with Hibernate, Second Edition, on which this book is based. Table of Contents PART 1 - GETTING STARTED WITH ORM 1 Understanding object/relational persistence 2 Starting a project 3 Domain models and metadata 4 Working with Spring Data JPA PART 2 - MAPPING STRATEGIES 5 Mapping persistent classes 6 Mapping value types 7 Mapping inheritance 8 Mapping collections and entity associations 9 Advanced entity association mappings PART 3 - TRANSACTIONAL DATA PROCESSING 10 Managing data 11 Transactions and concurrency 12 Fetch plans, strategies, and profiles 13 Filtering data PART 4 - BUILDING JAVA PERSISTENCE APPLICATIONS WITH SPRING 14 Integrating JPA and Hibernate with Spring 15 Working with Spring Data JDBC 16 Working with Spring Data REST PART 5 - BUILDING JAVA PERSISTENCE APPLICATIONS WITH SPRING 17 Working with Spring Data MongoDB 18 Working with Hibernate OGM PART 6 - WRITING QUERIES AND TESTING JAVA PERSISTENCE APPLICATIONS 19 Querying JPA with Querydsl 20 Testing Java persistence applications
- Published
- 2023
42. Continuous Integration (CI) and Continuous Delivery (CD) : A Practical Guide to Designing and Developing Pipelines
- Author
-
Henry van Merode and Henry van Merode
- Subjects
- Computer software--Development
- Abstract
Use continuous Integration (CI) and continuous delivery (CD) to improve the speed of software delivery. This book presents a game changer—how to use pipelines to automate the software delivery process. The theories about CI/CD are much the same, but the book covers what the development of pipelines looks like and how testing of pipelines themselves should be performed.Most teams just plunge into coding, without thinking about the CI/CD process itself. Why don't we use the same development method for pipelines that we use for apps? Pipelines code development undergoes similar stages as application code development, such as requirements analysis, development, testing, implementation, operations, and monitoring. This is the starting point of the book. It describes the current challenges with pipeline development and how this process can be improved and structured. It describes in detail how to design pipelines and shows examples in BPMN 2.0 notation. What You'll Learn Know the shortcomings and challenges of current pipeline development such as misalignment between the pipeline engineer and the team's workflow, the use of infrastructure as code (IaC), and pipeline securityUnderstand the need for CI/CD requirements through the book's non-exhaustive list of more than 60 CI/CD requirements provided to inspire and increase awarenessSee how certain choices affect the way a pipeline is designed (and realized)Become familiar with branching strategy, build strategy, test strategy, release strategy, and deployment strategy that are explained in detail in the book, including their effect on pipeline designKnow how pipelines can be unit tested, using a real-world exampleKnow how performance bottlenecks in a pipeline occur, how they can be detected, and how they can be solvedView a complete implementation, including code, showing how the guidelines in this book are applied to a real use case Who This Book Is For DevOps engineers and solution architects involved with automating the software supply chain and using application lifecycle management (ALM)/integration platforms such as Jenkins, CircleCI, Bamboo, and Azure DevOps; intermediate and experienced DevOps engineers (developers, ops engineers, test engineers); and ICT managers interested in the CI/CD pipeline development domain
- Published
- 2023
43. Software Ecosystems : Tooling and Analytics
- Author
-
Tom Mens, Coen De Roover, Anthony Cleve, Tom Mens, Coen De Roover, and Anthony Cleve
- Subjects
- Software ecosystems, Computer software--Development
- Abstract
This book highlights recent research advances in various domains related to software ecosystems such as library reuse, collaborative development, cloud computing, open science, sentiment analysis and machine learning. A key aspect of software ecosystems is that software products belong to ever more interdependent networks of co-evolving software components. The ever-increasing importance of social coding platforms has made software ecosystems indispensable to software practitioners, in commercial as well as open-source settings.The book starts with an introductory chapter that provides a historical account of the origins of software ecosystems. It provides the necessary context about the domain of software ecosystems by highlighting its different perspectives, definitions, and representations. It also exemplifies the variety of software ecosystems that have emerged during the previous decades. The remaining book is composed of five parts: Part I contains two chapters on software ecosystem representations, Part II two chapters that focus on complementary ways and techniques of analyzing software ecosystems. Next, Part III includes two chapters that focus on aspects related to the evolution within software ecosystems, while Part IV looks at workflow automation and infrastructure-as-code ecosystems. Finally, Part V focuses on ecosystems for software modeling and for data-intensive software.This book is intended for researchers and practitioners interested in data mining, tooling, and empirical analysis of software ecosystems. The reader will appreciate chapters that cover a wide spectrum of social and technical aspects of software ecosystems, each including an overview of the state of the art.Chapter 2 The Software Heritage Open Science Ecosystem is available open access under a Creative Commons Attribution 4.0 International License via link.springer.com.
- Published
- 2023
44. Design for Developers
- Author
-
Stephanie Stimac and Stephanie Stimac
- Subjects
- Computer software--Development
- Abstract
Solve common application design and usability issues with flair! These essential design and UX techniques will help you create good user experiences, iterate smoothly on frontend features, and collaborate effectively with designer colleagues.In Design for Developers you will learn how to: Use color, typography, and layout to create hierarchy on a web page Apply color palettes consistently in a user interface Choose the correct typefaces and fonts Conduct user research to validate design decisions Quickly plan a website's layout and structure In Design for Developers, author Stephanie Stimac shares the unique insights she's learned as a designer on the Microsoft Developer Experiences team. This one-of-a-kind book provides a developer-centric approach to the essential design fundamentals of modern web applications. You'll learn how to craft a polished visual design with just color, space, and typeface, and put all your new skills into practice to design a website from scratch. Foreword by Aaron Gustafson. About the technology Developer-made design decisions can have a real impact on a site's user experience. Learn to speak design's language, and you'll be able to confidently contribute to a design process, collaborate with designer colleagues, and make more informed decisions about how you build your apps. About the book Design for Developers reveals essential design and UX principles every web developer needs to know. You'll love the book's developer-centric approach, which demonstrates new ideas with examples from popular sites and user interfaces. Discover insightful techniques for user research, and learn to use color, typography, and layout to create communicative web visuals. By the time you're done reading, you'll know it's true: having good design sense will make you a better web developer! What's inside Conduct user research to validate design decisions Quickly plan a website's layout and structure Iterate smoothly on frontend features Use color, typography, and layout to create hierarchy on a web page About the reader For web developers familiar with HTML, CSS, and the JavaScript basics. About the author Stephanie Stimac is a design technologist and senior product manager who focuses on building and improving developer experiences. She has previously worked on the Microsoft Edge browser. Table of Contents PART 1 DESIGN BASICS 1 Bridging the gap between design and development 2 Design fundamentals PART 2 USER EXPERIENCE 3 User experience basics 4 User research 5 User experience design PART 3 VISUAL DESIGN ELEMENTS 6 Web layout and composition 7 Enhancing web layout with animation 8 Choosing and working with typography on the web 9 Color theory 10 Building a website PART 4 AFTER VISUAL DESIGN 11 Test, validate, iterate 12 Developer choices and user experience
- Published
- 2023
45. Version Control with Git
- Author
-
Prem Kumar Ponuthorai, Jon Loeliger, Prem Kumar Ponuthorai, and Jon Loeliger
- Subjects
- Revision control (Computer science), Open source software, Computer software--Development
- Abstract
Track, branch, merge, and manage code revisions with Git, the free and open source distributed version control system. Through a series of step-by-step tutorials, this practical guide quickly takes you from Git fundamentals to advanced techniques, and provides friendly yet rigorous advice for navigating Git's many functions. You'll learn how to work with everything from small to very large projects with speed and efficiency.In this third edition, authors Prem Kumar Ponuthorai and Jon Loeliger break down Git concepts using a modular approach. You'll start with the basics and fundamental philosophy of Git, followed by intermediate commands to help you efficiently supplement your daily development workflow. Finally, you'll learn advanced Git commands and concepts to understand how Git works under the hood.Learn how to use Git for real-world development scenariosGain insight into Git's common use cases, initial tasks, and basic functionsUse the system for distributed version controlLearn how to manage merges, conflicts, patches, and diffsApply advanced techniques such as rebasing, hooks, and ways to handle submodules
- Published
- 2022
46. Practical Linux DevOps : Building a Linux Lab for Modern Software Development
- Author
-
John S. Tonello and John S. Tonello
- Subjects
- Computer software--Development, Operating systems (Computers), Software architecture
- Abstract
Learn, develop and hone your Linux and DevOps skills by building a lab for learning, testing and exploring the latest Linux and open-source technologies. This book helps Linux users and others to master modern DevOps practices using a wide range of software and tools.Having a home or work-based Linux lab is indispensable to anyone looking to experiment with the ever-evolving landscape of new software and DevOps. With open-source tools and readily available hardware, you will end up with a lab you can use to try virtually any modern software, including Chef, Docker, Kubernetes and stalwarts like DNS, Dovecot, and Postfix for email. You'll set up pipelines for software deployment and focus on discrete projects that help you learn through doing. In the end, you'll acquire the skills needed to become better informed, more marketable engineers and developers, and better able to take on a wide array of software projects with confidence.Practical Linux DevOps is the perfect companion for those who want to learn how to build systems with utility and learn about modern hardware and software practices.What You'll LearnSet up a Linux-based virtualization environment and workstationCreate a lab network with a fully qualified domainBuild web-based applications with NGINX and LAMPUse version-control tools like GitAutomate deployments and configurationsThink like a modern DevOps engineerWho This Book Is ForNew and modestly experienced users with basic understanding of a basic understanding of Windows or Linux command line, as well as would-be and current DevOps engineers, and full-stack and other software developers
- Published
- 2022
47. CI/CD Pipeline Using Jenkins Unleashed : Solutions While Setting Up CI/CD Processes
- Author
-
Pranoday Pramod Dingare and Pranoday Pramod Dingare
- Subjects
- Open source software, Computer software--Development
- Abstract
Understand continuous integration (CI), continuous delivery, and continuous deployment (CD) with Jenkins. These processes allow users as well as administrators to catch problems as soon as they get injected into software systems.This book starts with an introduction to Jenkins and covers its architecture and role in CI/CD. The basics are covered, including installing and configuring Jenkins. Tool configuration and plugins are discussed as well as available security measures such as credentials. You will learn what is meant by Job in Jenkins, its types, sections, and much more. You will look at Java API: projects, jobs, configuration. The concluding chapters take you through creating pipelines, their role in managing web apps, and distributed pipelines. The book also covers unit testing using TestNG as well as end-to-end testing using Selenium Python as a part of building a life cycle and setting up Jenkins on different physical and Docker environments as well as Jenkins integration with cloud environments such as AWS. And you will learn how to create reusable libraries for use in Jenkins Pipeline and control Jenkins servers using Jenkins CLI and REST APIs. The new Jenkins Blue Ocean also is covered. The book helps you understand CI/CD implementation using Jenkins from scratch in your projects and prepare for end-to-end DevOps practices. What You Will LearnApply Jenkins to create end-to-end pipelinesIntegrate Jenkins with AWS, Docker, Git, and many more toolsUse Selenium automation for end-to-end testingCreate distributed pipelines Who Is This Book ForDevelopers and test automation professionals who are involved in creating CI/CD pipelines as well as prospective DevOps aspirants who want to make their way ahead as professionals
- Published
- 2022
48. Foundations of Scalable Systems
- Author
-
Ian Gorton and Ian Gorton
- Subjects
- Computer software--Development, System design
- Abstract
In many systems, scalability becomes the primary driver as the user base grows. Attractive features and high utility breed success, which brings more requests to handle and more data to manage. But organizations reach a tipping point when design decisions that made sense under light loads suddenly become technical debt. This practical book covers design approaches and technologies that make it possible to scale an application quickly and cost-effectively.Author Ian Gorton takes software architects and developers through the foundational principles of distributed systems. You'll explore the essential ingredients of scalable solutions, including replication, state management, load balancing, and caching. Specific chapters focus on the implications of scalability for databases, microservices, and event-based streaming systems.You will focus on:Foundations of scalable systems: Learn basic design principles of scalability, its costs, and architectural tradeoffsDesigning scalable services: Dive into service design, caching, asynchronous messaging, serverless processing, and microservicesDesigning scalable data systems: Learn data system fundamentals, NoSQL databases, and eventual consistency versus strong consistencyDesigning scalable streaming systems: Explore stream processing systems and scalable event-driven processing
- Published
- 2022
49. Hands-on AIOps : Best Practices Guide to Implementing AIOps
- Author
-
Navin Sabharwal, Gaurav Bhardwaj, Navin Sabharwal, and Gaurav Bhardwaj
- Subjects
- Computer software--Development, Artificial intelligence
- Abstract
Welcome to your hands-on guide to artificial intelligence for IT operations (AIOps). This book provides in-depth coverage, including operations and technical aspects. The fundamentals of machine learning (ML) and artificial intelligence (AI) that form the core of AIOps are explained as well as the implementation of multiple AIOps uses cases using ML algorithms.The book begins with an overview of AIOps, covering its relevance and benefits in the current IT operations landscape. The authors discuss the evolution of AIOps, its architecture, technologies, AIOps challenges, and various practical use cases to efficiently implement AIOps and continuously improve it. The book provides detailed guidance on the role of AIOps in site reliability engineering (SRE) and DevOps models and explains how AIOps enables key SRE principles. The book provides ready-to-use best practices for implementing AIOps in an enterprise. Each component of AIOps and ML using Python code andtemplates is explained and shows how ML can be used to deliver AIOps use cases for IT operations.What You Will Learn Know what AIOps is and the technologies involved Understand AIOps relevance through use cases Understand AIOps enablement in SRE and DevOps Understand AI and ML technologies and algorithmsUse algorithms to implement AIOps use casesUse best practices and processes to set up AIOps practices in an enterprise Know the fundamentals of ML and deep learning Study a hands-on use case on de-duplication in AIOps Use regression techniques for automated baseliningUse anomaly detection techniques in AIOps Who This Book is For AIOps enthusiasts, monitoring and management consultants, observability engineers, site reliability engineers, infrastructure architects, cloud monitoring consultants, service management experts, DevOps architects, DevOps engineers, and DevSecOps experts
- Published
- 2022
50. Industrializing Financial Services with DevOps : Proven 360° DevOps Operating Model Practices for Enabling a Multi-speed Bank
- Author
-
Spyridon Maniotis and Spyridon Maniotis
- Subjects
- Software architecture, Computer software--Development, Financial services industry--Data processing
- Abstract
Embrace best practices to advance and help evolve your DevOps operating model in the right direction and overcome common challenges that financial services organizations face. Purchase of the print or kindle book includes a free eBook in the PDF format.Key FeaturesDesign the right DevOps operating model for your organization through practical examplesGet insights into a variety of proven practices and concepts that you can employ during your DevOps adoptionGain a holistic view of the complete DevOps capabilities and mechanisms to be enabledBook DescriptionIn recent years, large financial services institutions have been embracing the concept of DevOps in the core of their digital transformation strategies. This book is inspired by real enterprise DevOps adoptions in the financial services industry and provides a comprehensive proven practice guide on how large corporate organizations can evolve their DevOps operating model. The book starts by outlining the fundamentals comprising a complete DevOps operating model. It continues with a zoom in on those fundamentals, combining adoption frameworks with real-life examples. You'll cover the three main themes underpinning the book's approach that include the concepts of 360°, at relevance, and speeds. You'll explore how a bank's corporate and technology strategy links to its enterprise DevOps evolution. The book also provides a rich array of proven practices on how to design and create a harmonious 360° DevOps operating model which should be enabled and adopted at relevance in a multi-speed context. It comes packed with real case studies and examples from the financial services industry that you can adopt in your organization and context. By the end of this book, you will have plenty of inspiration that you can take back to your organization and be able to apply the learning from pitfalls and success stories covered in the book.What you will learnUnderstand how a firm's corporate strategy can be translated to a DevOps enterprise evolutionEnable the pillars of a complete DevOps 360° operating modelAdopt DevOps at scale and at relevance in a multi-speed contextImplement proven DevOps practices that large incumbents banks followDiscover core DevOps capabilities that foster the enterprise evolutionSet up DevOps CoEs, platform teams, and SRE teamsWho this book is forThis book is for DevOps practitioners, banking technologists, technology managers, business directors and transformation leads. Prior knowledge of fundamental DevOps terminologies and concepts and some experience practicing DevOps in large organizations will help you make the most out of this book.
- Published
- 2022
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.