Practical Model-Driven Enterprise ArchitectureMost organizations face challenges in defining and achieving evolved enterprise architecture practices, which can be a very lengthy process even if implemented correctly. Developers, for example, can build better solutions only if they receive the necessary design information from architects, and decision-makers can make appropriate changes within the organization only if they know the implications of doing so.
The book starts by addressing the problems faced by enterprise architecture practitioners and provides solutions based on an agile approach to enterprise architecture, using ArchiMate® 3.1 as an industry standard and Sparx EA as the modeling tool. You'll learn with the help of a fictional organization that has three business units, each expecting something different from you as the enterprise architect. You'll build the practice, satisfy the different requirements of each business unit, and share the knowledge with others so they can follow your steps. Toward the end, you'll ...
Data-Driven Alexa SkillsDesign and build innovative, custom, data-driven Alexa skills for home or business. Working through several projects, this book teaches you how to build Alexa skills and integrate them with online APIs. If you have basic Python skills, this book will show you how to build data-driven Alexa skills. You will learn to use data to give your Alexa skills dynamic intelligence, in-depth knowledge, and the ability to remember.
Data-Driven Alexa Skills takes a step-by-step approach to skill development. You will begin by configuring simple skills in the Alexa Skill Builder Console. Then you will develop advanced custom skills that use several Alexa Skill Development Kit features to integrate with lambda functions, Amazon Web Services (AWS), and Internet data feeds. These advanced skills enable you to link user accounts, query and store data using a NoSQL database, and access real estate listings and stock prices via web APIs. ...
Design ManagementDesigners are more in-demand than ever, and companies all over the world are creating new leadership roles to manage them. With only a few select institutions teaching effective design management skills, self-taught design managers are on the rise and resources are needed to guide them. This book will help you hone your leadership skills and magnify your team's potential.
Eager designers will learn the behavioral abilities required to lead and manage impactful and efficient teams using a systemic, context-agnostic, and therefore repeatable approach. While effective design management is vital in these times of complexity and fast change in organizations, the available literature on design management is insufficient, predominately informative, and unfortunately, not actionable. This book fills that gap by illuminating the soft skills you need to lead your team to success.
You'll gain confidence about how to optimize meetings, run successful kickoffs, manage yourself, and how to bes ...
Design Patterns in Modern C++20, 2nd EditionApply the latest editions of the C++ standard to the implementation of design patterns. As well as covering traditional design patterns, this book fleshes out new design patterns and approaches that will be useful to modern C++ developers. Author Dmitri Nesteruk presents concepts as a fun investigation of how problems can be solved in different ways, along the way using varying degrees of technical sophistication and explaining different sorts of trade-offs.
Design Patterns in Modern C++20, 2nd Edition also provides a technology demo for modern C++, showcasing how some of its latest features (e.g., coroutines, modules and more) make difficult problems a lot easier to solve. The examples in this book are all suitable for putting into production, with only a few simplifications made in order to aid readability. ...
Modern Java EE Design PatternsWith the ascent of DevOps, microservices, containers, and cloud-based development platforms, the gap between state-of-the-art solutions and the technology that enterprises typically support has greatly increased. But as Markus Eisele explains in this O'Reilly report, some enterprises are now looking to bridge that gap by building microservice-based architectures on top of Java EE.
Can it be done? Is it even a good idea? Eisele thoroughly explores the possibility and provides savvy advice for enterprises that want to move ahead. The issue is complex: Java EE wasn't built with the distributed application approach in mind, but rather as one monolithic server runtime or cluster hosting many different applications. If you're part of an enterprise development team investigating the use of microservices with Java EE, this book will help you:
- Understand the challenges of starting a greenfield development vs tearing apart an existing brownfield application into services;
- Examine your b ...
Test-Driven Development with C++Modern, standard C++ is all that is needed to create a small and practical testing framework that will improve the design of any project. This allows you to think about how the code will be used, which is the first step in designing intuitive interfaces. TDD is a modern balanced software development approach that helps to create maintainable applications, provide modularity in design, and write minimal code that drastically reduces defects. With the help of this book, you'll be able to continue adding value when designs need to change by ensuring that the changes don't break existing tests.
In this book, developers working with test-driven development (TDD) will be able to put their knowledge to work by writing a simple testing framework and then using it to drive the design of a logging library. The book will help you enhance your software development skills with test cases. You'll understand how to design and implement test cases. The chapters will also show you how to utilize the ...
C++ Software DesignGood software design is essential for the success of your project, but designing software is hard to do. You need to have a deep understanding of the consequences of design decisions and a good overview of available design alternatives. With this book, experienced C++ developers will get a thorough, practical, and unparalleled overview of software design with this modern language.
C++ trainer and consultant Klaus Iglberger explains how you can manage dependencies and abstractions, improve changeability and extensibility of software entities, and apply and implement modern design patterns to help you take advantage of today's possibilities. Software design is the most essential aspect of a software project because it impacts the software's most important properties: maintainability, changeability, and extensibility. ...
Release It!Whether it's in Java, .NET, or Ruby on Rails, getting your application ready to ship is only half the battle. Did you design your system to survive a sudden rush of visitors from Digg or Slashdot? Or an influx of real world customers from 100 different countries? Are you ready for a world filled with flakey networks, tangled databases, and impatient users?
If you are a developer and don't want to be on call at 3AM for the rest of your life, this book will help you. ...
Model-Driven Development with Executable UMLA comprehensive reference for an executable UML and the advantages of modeling This book presents the most up-to-date technology for rapidly developing information systems using the object-oriented paradigm and models, and establishes an executable profile of UML for such model-driven development. As a software developer, architect, or analyst, you'll benefit from learning how information systems can be developed more efficiently using the object-oriented paradigm and model-driven approach.
Written by an expert who is uniquely qualified in the topic, this Wrox reference offers a profile of UML that is formal and executable, instead of the relational paradigm or its incomplete coupling with object orientation. It provides a comprehensive tutorial on model-driven development and UML. ...
Ruby Best PracticesRuby Best Practices is for programmers who want to use Ruby the way Rubyists do. Written by the developer of the Ruby project Prawn (prawn.majesticseacreature.com), this concise book explains how to design beautiful APIs and domain-specific languages, work with functional programming ideas and techniques that can simplify your code and make you more productive, write code that's readable and expressive, and much more. It's the perfect companion to The Ruby Programming Language. ...