• Fri frakt över 249 kr
  • •
  • Snabba leveranser
  • •
  • Billiga böcker
Kundservice

Du är på sajten för privatpersoner.

Företag, bibliotek eller offentlig verksamhet?

Du handlar på classic.bokus.com, där alla dina funktioner finns intakta.
Till classic.bokus.com
Bokus logotyp. Gå till startsidan.
  • Erbjudanden
  • Nyheter
  • Student
  • Topplistor
  • Barn & ungdom
  • Bokus Play
  • E-böcker
  • Pocketböcker
  • Spel & pussel

10% rabatt på allt med kod NYSTART10 →

Sidfot

Mina sidor

    Hjälp

    • Kundservice
    • Vanliga frågor och svar
    • Frakt och leverans
    • Retur vid ångerrätt
    • Reklamera vara
    • Betalning
    • Köpvillkor
    • Allmänna villkor
    • Information om webbplatsens tillgänglighet

    Om Bokus

    • Om oss
    • Pressrum
    • För studenter
    • För företag
    • För bibliotek och offentlig verksamhet
    • För leverantörer
    • Hållbarhet

    Populärt

    • Aktuella erbjudanden
    • Presentkort
    • Studentlitteratur
    • Nya böcker
    • Topplistor
    • Signerade böcker
    • Engelska böcker

    Inspiration

    • Boktips
    • BookTok
    • Populära bokserier
    • Barnbokskaraktärer
    • Populära författare
    Logotyp för Bokus
    Följ oss på Facebook (extern länk)Följ oss på Instagram (extern länk)Följ oss på YouTube (extern länk)Följ oss på TikTok (extern länk)
    bokus @ CookiesAnpassa cookiesIntegritetspolicyKöpvillkor
    Till Citymail hemsida (extern länk)Till Budbee hemsida (extern länk)Till Postnord hemsida (extern länk)Till Schenker hemsida (extern länk)Till Early Bird hemsida (extern länk)Till Walleys hemsida (extern länk)
    1. Data och IT
    2. Systemvetenskap och AI

    Software Architecture and Decision-Making

    Leveraging Leadership, Technology, and Product Management to Build Great Products

    AvSrinath Perera

    Häftad, Engelska, 2024

    300 kr

    Beställningsvara. Skickas inom 7-10 vardagar. Fri frakt över 249 kr.

    Beskrivning

    Leverage leadership knowledge to make better software architecture decisions. Think deeply but implement slowly.

     

    The overarching goal of software systems (hence, for software architecture) is to build systems that meet quality standards and that provide the highest return on investment (ROI) in the long run or within a defined period of time.

     

    A great product requires a combination of technology, leadership, and product management (including UX). Leadership is primarily about managing uncertainty and making the right judgment. To build great products, technical leaders need to combine technology, leadership, and product management knowledge, and make the right decisions. Many technical mistakes come from the gap between knowledge about these three items and judgment.

     

    In Software Architecture and Decision-Making, Srinath Perera explains principles and concepts that software architects must understand deeply and how to employ those principles to manage uncertainty. The questions and principles discussed in this book help manage uncertainty while building software architecture and provide a framework for making decisions. This book is for all technical leaders in the software industry who make holistic judgments about the systems they build and for future leaders learning the craft.

    • Understand the importance of strong decision making with examples from great technical leaders such as the Wright brothers and Kelly Johnson
    • Leverage five key questions and seven important principles to understand uncertainties during the design process and make strategic architectural decisions
    • Approach the design systematically, first at the macro level and then the individual service level

     

    This definitive guide explains principles and concepts--technical and non-technical alike--that software architects, senior software engineers, and technical leads must understand to manage the inevitable uncertainty involved in building software systems and to drive success of the products for which they are responsible.

     

    Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.

    Produktinformation

    • Utgivningsdatum:2024-01-02
    • Mått:188 x 232 x 11 mm
    • Vikt:408 g
    • Format:Häftad
    • Språk:Engelska
    • Antal sidor:208
    • Upplaga:1
    • Förlag:Pearson Education
    • ISBN:9780138249731

    Utforska kategorier

    • Systemvetenskap och AI inom Data och IT
    • Programmeringsböcker inom Data och IT

    Mer om författaren

    Srinath Perera has been an Apache open source developer for the last 20 years. He has played a major role in the architecture of Apache Axis2, Apache Airavata, WSO2 CEP (Siddhi), and WSO2 Choreo. He has designed two SOAP engines and helped build four. He is a committer (a developer who can commit to a code base) for Apache Axis, Axis2, Apache Geronimo, and Apache Airavata.  He joined WSO2 in 2009 after finishing his PhD. WSO2 products are used by many Fortune 500 companies such as airlines, banks, and governments. At WSO2, he has played an architecture review role for 10+ projects and 100+ releases. He reviewed hundreds of customer solution architectures and deployments and sat in on thousands of architecture reviews. He has published 40+ peer-reviewed research articles, which have been referenced by thousands of other research publications.

    Innehållsförteckning

    • Chapter 1: Introduction to Software Leadership   1Role of Judgment   1Goal of This Book   3Part I: Introduction   6Part II: Essential Background   7Part III: System Design   7Part IV: Putting Everything Together   8  Chapter 2: Understanding Systems, Design, and Architecture   9What Is Software Architecture?    9How to Design a System   11Five Questions   12Seven Principles: The Overarching Concepts   16Designing for an Online Bookstore   24Designing for the Cloud   27Summary   29  Chapter 3: Mental Models for Understanding and Explaining System Performance   31A Computer System   32Models for Performance   33Optimization Techniques   41Intuitive Feel for Performance   46Leadership Considerations   46Summary   47  Chapter 4: Understanding User Experience (UX)    49General UX Concepts for Architects   49UX Design for Configurations   53UX Design for APIs   54UX Design for Extensions   56Leadership Considerations   57Summary   57  Chapter 5: Macro Architecture: Introduction   59History of Macro Architecture   60Modern Architectures   62Macro Architectural Building Blocks   63Leadership Considerations   66Summary   68  Chapter 6: Macro Architecture: Coordination   69Approach 1: Drive Flow from Client   69Approach 2: Use Another Service   70Approach 3: Use Centralized Middleware   71Approach 4: Implement Choreography   71Leadership Considerations   73Summary   73  Chapter 7: Macro Architecture: Preserving Consistency of State   75Why Transactions?    75Why Do We Need to Go Beyond Transactions?    76Going Beyond Transactions   77Best Practices   80Leadership Considerations   81Summary   83  Chapter 8: Macro Architecture: Handling Security   85User Management   86Interaction Security   88Storage, GDPR, and Other Regulations   96Security Strategy and Advice   98Leadership Considerations   101Summary   103  Chapter 9: Macro Architecture: Handling High Availability and Scale   105Adding High Availability   105Understanding Scalability   109Scaling for a Modern Architecture: Base Solution   110Scaling: The Tools of Trade   111Building Scalable Systems   113Leadership Considerations   117Summary   118  Chapter 10: Macro Architecture: Microservices Considerations   119Decision 1: Handling Shared Database(s)    120Decision 2: Securing Microservices   122Decision 3: Coordinating Microservices    122Decision 4: Avoiding Dependency Hell   122Loosely Coupled, Repository-Based Teams as an Alternative to Microservices   125Leadership Considerations   126Summary   127  Chapter 11: Server Architectures   129Writing a Service   129Understanding Best Practices for Writing a Service   130Understanding Advanced Techniques   132Using These Techniques in Practice   143Leadership Considerations   146Summary   147  Chapter 12: Building Stable Systems   149Why Do Systems Fail, and What Can We Do About Them?    149How to Handle Known Errors   151Common Bugs   159How to Handle Unknown Errors   161Graceful Degradation   163Leadership Considerations   163Summary   164  Chapter 13: Building and Evolving the Systems   165Getting Your Hands Dirty   165Communicating the Design   172Evolving the System: How to Learn from Your Users and Improve the System   172Leadership Considerations   175Summary   176  Index   179