目錄(341章)
倒序
- coverpage
- Title Page
- Packt Upsell
- Why subscribe?
- PacktPub.com
- Contributors
- About the author
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the color images
- Conventions used
- Get in touch
- Reviews
- The Software Industry and the Agile Manifesto
- Why the software industry needed to change
- Delivery as a software product
- Delivery as a software project
- Product versus project
- Scope was the priority
- Estimates
- Uncertainty buffers
- Estimates became ironic
- Variability in our estimates
- And then there's missing the point entirely
- Where's the business value?
- So the project mindset isn't good?
- The Agile values
- The Agile principles
- Incremental – adaptive versus waterfall – predictive
- The Waterfall process and predictive planning
- Incremental delivery and adaptive planning
- Agile is a mindset
- An Example of "Being Agile"
- Scenario
- Our response
- Summary
- Agile Software Delivery Methods and How They Fit the Manifesto
- Understanding Scrum
- Background
- Introduction to the mechanics of Scrum
- Sprint Planning – part 1
- Sprint Planning - part 2
- The Daily Scrum
- The Sprint Review
- The Sprint Retrospective
- Additional events
- XP - Extreme Programming
- Background
- Introduction to the mechanics of XP
- The planning game
- Part 1 – Release planning
- Part 2 – Iteration planning
- Implementing the iteration plan
- Iteration demo
- Iteration retrospective
- Kanban and Lean Software Development
- Background
- Reducing waste
- Single-piece flow
- How Kanban/Lean fit into the Agile movement
- Introduction to the mechanics of Lean/Kanban
- Getting started with Kanban
- Step 1 – Make the team's work visible
- Step 2 – Make the work policies of the team explicit
- Step 3 – Improve flow
- Step 4 – Kaizen or continuous improvement
- Choosing the right framework
- Designed for small teams
- They don't include product discovery phases
- Not all frameworks prescribe technical practices
- There are similarities with subtle differences
- Mixing and matching Agile methods
- Summary
- Introducing Scrum to your Software Team
- Why Scrum is an excellent place to start
- Iterations and iteration length
- Starting a new Scrum team
- Prerequisites
- Preparing to Sprint
- Activity – defining the Product Backlog
- Activity – release planning
- Activity – introducing the Product Backlog
- Activity – estimating User Stories on the backlog
- Activity – setting up the Scrum Board
- Discussion – Sprint Zero
- Day one of the Sprint
- Event – Sprint Planning
- What can we achieve in this Sprint?
- How will we achieve it?
- The Sprint Goal
- Event – first Daily Scrum
- A day in the life of a Scrum team
- Measuring and reporting progress with visualization
- Avatars
- Done stickers
- Burndowns
- Sprint Goal confidence
- The importance of visible workspaces
- Removing impediments
- Managing delivery as a team sport
- The last day of the Sprint
- Event – Sprint Review
- Event – Sprint Retrospective
- The importance of team retrospectives
- Summary
- Gathering Agile User Requirements
- The pitfalls of traditional big upfront requirements
- Why User Stories produce results
- What a User Story is and how to use it
- The User Story format
- Additional story card elements
- The stub
- Acceptance criteria
- Story size
- Notes
- Card conversation confirmation
- Acceptance criteria versus the Definition of Done (DoD)
- Telling the team "what" not "how"
- Brainstorming a bunch of User Stories
- Estimating Agile user requirements
- Planning Poker
- Playing Planning Poker
- References
- Summary
- Bootstrap Teams with Liftoffs
- What's a team liftoff?
- ACTIVITY – Agile training
- ACTIVITY – Sharing the vision
- Step 1 – Meet the sponsors
- Step 2 – The company purpose
- Step 3 – The product vision
- Step 4 – The current mission
- Step 5 – Define success
- Defining success metrics
- Activity – Forming a team charter
- Step 1 – Defining done
- Step 2 – Working agreement
- Step 3 – Team calendar
- References
- Summary
- Metrics that will Help your Software Team Deliver
- A brief introduction to measurements for Agile software delivery
- Understanding measurements
- Qualitative versus quantitative measurements
- Negative versus positive metrics
- Quantitative metrics
- Team velocity
- Sprint Burndown chart – TEAM
- Release burndown charts
- Simple Release Burndown chart
- Enhanced Release Burndown chart
- Code quality
- Code complexity
- Qualitative metrics
- Defining what success looks like
- Defining our success
- Using our Team Success Indicators
- User Happiness Index
- Summary
- Software Technical Practices are the Foundation of Incremental Software Delivery
- Building the thing right versus building the right thing
- Refactoring
- How does this keep us Agile?
- Things to try
- Test-Driven Development
- How does this keep us Agile?
- Things to try
- Pair programming
- How does this keep us Agile?
- Things to try
- Activity – pair programming ping pong
- Emergent design
- How does this keep us Agile?
- Things to try
- Activity – emergent design discussion
- The DevOps culture
- Continuous Integration
- How does this keep us Agile?
- Things to try
- Continuous Delivery
- How does this keep us Agile?
- Things to try
- Continuous Deployment
- How does this keep us Agile?
- Things to try
- Summary
- Tightening Feedback Loops in the Software Development Life Cycle
- Implementing incremental delivery in Agile
- Working with software in small manageable chunks
- Inspection and adaption
- The importance of User Experience (UX)
- Shifting left
- Shifting right
- Introducing some Lean thinking to improve flow
- The coin game results
- Systems thinking – Optimizing the whole
- Changing our workflow
- Kaizen and developing a small continuous improvement mindset
- Fail Cake
- Root cause analysis with the Five Whys method
- Adopting Lean Startup methods to validate ideas
- Build Measure Learn
- An example of Lean Startup MVP
- Background
- Hypothesis
- Approach
- Learning rapidly by doing and failing fast
- Summary
- Seeking Value – How to Deliver Better Software Sooner
- Moving from project to product thinking
- Cynefin – A sense-making framework
- The advantages of a product team
- Moving from project to product
- Setting objectives to create alignment of purpose
- Using Objectives and Key Results (OKRs)
- Hypothesis-Driven Development (HDD)
- Data Insights Beliefs Bets (DIBBs)
- Seeking value
- How to seek value
- Telling our team "the why" not "the what"
- Summary
- Using Product Roadmaps to Guide Software Delivery
- The importance of Product Roadmaps
- Product Discovery to create roadmaps
- User Story Mapping
- Activity – creating a User Story Map
- Step 1 – User roles
- Step 2 – The first User Journey
- Step 3 – Alternative paths sub-tasks details and business rules
- Step 4 – Naming the activities
- Leveraging the User Story Map
- Impact Mapping
- Activity – Creating an Impact Map
- Question 1 – Why are we doing this?
- Question 2 – Who will help us?
- Question 3 – How will they help us?
- Question 4 – What will we do?
- Leveraging an Impact Map
- Working collaboratively with the team to create a shared understanding
- Using Spikes to reduce business and technical unknowns
- Using Rolling Wave Planning for adaptive delivery
- Summary
- Improving Our Team Dynamics to Increase Our Agility
- How to create high-performing teams
- Collaboration is the key
- Knowledge work and high-bandwidth communication
- Communication lines
- Psychological safety – what it is and how to create it
- Further reading
- The stages of team formation
- Stage 1 – forming
- Helping our team process this phase
- Relationship-building games
- Stage 2 – storming
- Helping our team process this phase
- Coach – diversity is a good thing
- Coach – conflict happens how to navigate it
- Positivity and successful relationships
- Activity – process the conflict
- Group decision making
- Coach – focus on the task not the person
- Coach – conflict protocols
- Coach – giving feedback
- Stage 3 – norming
- Helping our team process this phase
- Activity – experiments in process
- Activity – improve the team's ability to self-assess
- Stage 4 – performing
- Helping our team process this phase
- Activity – 360 team review
- Stage 5 – adjourning/mourning
- Helping our team process this phase
- Learning by practicing
- Hackathons
- Innovation Days
- Running a hackathon or innovation day
- Google's 20% time and other alternatives
- Summary
- Baking Quality into Our Software Delivery
- Cross-pollination of skills
- Mob programming
- Why does mob programming work?
- How does mob programming work?
- Ergonomics
- No more bugs
- Bugs caused by the way we write code and design our software
- Bugs caused by our understanding of the problem
- Bugs caused by the nature of the problem changing
- Refactoring our environment
- No more estimates
- Summary
- The Ultimate Software Team Member
- The power of motivation
- Extrinsic drivers
- Intrinsic drivers
- Mastery
- Autonomy
- Purpose
- Activity – moving motivators
- Why are intrinsic drivers important?
- The entrepreneurial developer
- The team player
- The problem with "rockstars"
- The growth mindset
- Growth mindset versus fixed mindset
- An example of a fixed mindset behavior versus a growth mindset behavior
- How can we embrace a growth mindset?
- Fostering a learning habit
- Summary
- Moving Beyond Isolated Agile Teams
- How an Agile approach will organically flatten an organizational structure
- From a hierarchical organization to collaborative governance
- The Big Agile board
- A network of teams
- Self-selection to create a true-self organization
- Further reading
- Modern leadership
- Changing to a fly-by-wire system
- Implementing a fly-by-wire approach
- Setting the challenge
- Cultivating culture
- Ensuring team engagement
- Feeling recognized
- Feeling relevant
- Feeling successful
- Creating engagement
- Example – Changing up the performance review
- Performance review 360 – Intermediate level
- Performance Review 360 – Advanced level
- The art of Agile leadership
- Experiment – Creating informal networks as a nervous system
- Experiment – Communities
- Organizational styles for flatter structures
- Further reading
- Summary
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-06-24 18:48:05
推薦閱讀
- Building E-commerce Sites with VirtueMart Cookbook
- 物聯網工程規劃技術
- Twilio Cookbook
- 智能網聯汽車V2X與智能網聯設施I2X
- 農產品物聯網研究與應用
- 企業網絡安全管理
- 計算機網絡原理與應用技術
- Learning Swift(Second Edition)
- 智慧光網絡:關鍵技術、應用實踐和未來演進
- 光纖通信系統與網絡(修訂版)
- 面向5G-Advanced的關鍵技術
- React Cookbook
- 設備監控技術詳解
- 物聯網導論
- 學術虛擬社區用戶社會化交互行為研究
- CDN技術詳解
- 邊緣計算及其資源管理技術
- Mastering Prezi for Business Presentations
- 計算機聯鎖及信號微機監測系統
- Cisco/H3C交換機配置與管理完全手冊(第二版)
- 5G物聯網端管云實戰
- 深入理解物聯網
- VMware vSphere企業級網絡和存儲實戰
- Django 2 Web Development Cookbook
- 物聯網導論
- 網絡協議本質論
- 5G安全:數智化時代的網絡安全寶典
- Microservices with Clojure
- (MCTS):Microsoft Windows Small Business Server 2011 Standard,Configuring(70-169) Certification Guide
- 系統化思維導論