continuous_delivery_by_jez_humble_and_david_farley_footnotes

Continuous Delivery by Jez Humble and David Farley Footnotes

Return to Continuous Delivery by Jez Humble and David Farley, CI/CD, CI/CD Bibliography - CI/CD People, CI/CD, CI/CD and DevOps - CI/CD and SRE - Cloud Native and CI/CD - CI/CD and Microservices - Serverless CI/CD, CI/CD Security - CI/CD and DevSecOps, Functional Programming and CI/CD, CI/CD Concurrency, CI/CD and Data Science - CI/CD and Databases, CI/CD and Machine Learning, CI/CD Courses, CI/CD Glossary, Awesome CI/CD, CI/CD GitHub, CI/CD Topics

Fair Use Source: B003YMNVC0 (CDHumbFarl 2010)

“ (CDHumbFarl 2010)

Footnotes

Preface

1. Implementing Lean Software Development]], p. 59.

Chapter 2

1. Technically, configuration information can be thought of as a set of tuples.

Chapter 4

1. For example, James Shore [dsyXYv].

2. “Exploratory Testing Explained” by James Bach [9BRHOz], p. 2.

3. Section 5.7, pp. 136–140.

Chapter 5

1. The importance of iterative discovery]] based on customer feedback in the product development]] process is empha[[sized in books like Inspired by Marty Cagan and The Four Steps to the Epiphany by Steven Gary Blank.

2. Chris Read came up with this idea [9EIHHS].

3. Evans, 2004.

4. Implementing Lean Software Development]], p. 59.

Chapter 6

1. Buildr also handles Scala, Groovy, and Ruby seamlessly at the time of writing — by the time you read this, we expect it to support more languages that target the JVM.

2. Things are s[[lightly more complex in Java. At the time of writing, Sun’s Javac compiler did not do incremental builds (hence the Ant task), but IBM’s Jikes compiler could. However, the javac task in Ant will perform incremental compilation.

3. See Evans (2003).

4. There are example commit scripts for Ant, Maven, MSBuild, and Psake at the book’s website [dzMeNE].

5. CPAN is one of the better-designed platform packaging systems, in that it is possible to convert a Perl module into a RedHat or Debian package in a fully automated way. If all platform package formats were designed to allow for automatic conversion to system package formats, this conflict would not exist.

6. Unlike Rails, which enforces the directory structure, and the .NET toolchain]], which will also handle some of this for you.

7. Check out Jean-Paul Boodhoo’s blog entry [ahdDZO].

Chapter 7

1. James Carr has a good blog entry with some TDD patterns [cX6V1k].

Chapter 8

1. Bob Martin articulates some of the reasons for why automating acceptance testing is important and should not be outsourced [dB6JQ1].

2. Advocates of this approach include J. B. Rainsberger, as described in his “Integrated Tests Are a Scamblog entry [a0tjh0], and James Shore, in his “The Problems with Acceptance Testingblog entry [dsyXYv].

3. That is, they must be independent, negotiable, valuable, estimable, small, and testable.

4. At the time of writing, Flex fell into this category — hopefully by the time you read this, new testing frameworks will have sprung up to drive testing through Flex.

5. Twist, a commercial tool created by Jez’ employer, allows you to use Eclipse’s auto[[complete functionality and parameter lookup on your acceptance criteria scripts directly, and allows you to refactor the scripts and the underlying test implementation layer while keeping the two syn[[chronized]].

6. Nygard, 2007, p. 115.

Chapter 9

1. Nygard, 2007, p. 151.

2. Nygard, 2007, p. 76.

3. Nygard, 2007, p. 142.

4. Nygard, 2007, p. 61.

Chapter 10

1. The Unity 3D web p[[layer software publishes statistics on its site [cFI7XI].

2. For a great analysis of the evolution of Amazon’s shopping cart]], check out [blrMWp].

3. Google created a framework called Protocol Buffers for all its internal services, designed to handle versioning [beffuK].

Chapter 11

1. Some of these are inspired by James White [9QRI77].

2. For the purposes of this chapter, we will consider support to be part of the work of operations, although this is not always the case.

3. Nygard, 2007, p. 222.

4. Microsoft’s Azure provides some services that count as infrastructure in the cloud. However, their virtual machine offering has some of the characteristics of platforms in the cloud, since at the time of writing you do not have administrator access to VMs and thus cannot change their configuration or install [[software that requires elevated privileges.

Chapter 13

1. We discuss branching]] strategies in the next chapter, “Advanced Version Control.”

2. There are caveats here on the use of distributed version control systems, which we’ll discuss in the next chapter.

3. In Windows [[XP, the introduction of registration-free COM allowed applications to store DLLs they require in their own directory.

4. Melvin E. Conway, How Do Committees Invent, Datamation 14:5:28–31.

5. MacCormack, Rusnak, Baldwin, Exploring the Duality between Product and Organizational Architectures: A Test of the Mirroring Hypothesis, government intelligence]] center Harvard Business School [8XYofQ].

6. Local repositories will periodically update from remote repositories — although it is possible to store snapshots in remote repositories, it is not a good idea.

Chapter 14

1. While the distinction]] between open source and commercial system]]s is important for your freedoms as a consumer, it is worth noting that Subversion is maintained by a commercial organization, Collabnet, which provides paid support.

2. For a humorous look at the major open source version control systems, see [bnb6MF].

3. RCS, like SCCS, only works on local filesystems.

4. We prefer the more general termchange set” to “revision,” but Subversion exclusively uses “revision.”

5. Indeed VSS recommends that you run a database integrity checker at least once a week when running VSS [c2M8mf].

6. Taken from Appleton et al., 1998 [dAI5I4].

7. As described in Version Control for Multiple Agile Teams by Henrik Kniberg [ctlRvc].

Chapter 15

1. ACM, 1984, vol. 27 issue 9.

2. As we say above, we believe iterations should be time-boxed to two weeks, not four.

Fair Use Sources

CI/CD: Continuous, Continuous Integration / Continuous Delivery, Continuous Deployment. Key Book: Continuous Delivery - Reliable Software Releases through Build, Test, and Deployment Automation

Introduction to Continuous Delivery, Configuration Management, Continuous Integration, The Deployment Pipeline, Automated Testing, Quality Assurance in Continuous Delivery, Managing Data in Continuous Delivery, Version Control for Everything, Build and Deployment Scripting, Environments on Demand, The Role of QA, Decoupling Deployment from Release, Managing Infrastructure and Environments, Monitoring and Feedback Loops, Implementing Continuous Delivery, Cultural and Organizational Change, Scaling Continuous Delivery, Advanced Continuous Delivery Practices, CI/CD Case Studies, CI/CD Conclusion

Continuous Delivery, Automation, Software Development, Build, Test, Deployment, Continuous Integration, Automated Testing, Deployment Pipeline, Configuration Management, Version Control, Quality Assurance, Infrastructure as Code, Monitoring, Feedback Loops, Cultural Change, Organizational Change, DevOps, Build Scripts, Deployment Scripts, Unit Testing, Integration Testing, Acceptance Testing, Performance Testing, Security Testing, Code Quality, Code Review, Feature Toggles, Branching Strategies, Merge Conflicts, Build Tools, CI/CD Tools, Virtualization, Containerization, Docker, Cloud Computing, AWS, Azure, Google Cloud Platform, Microservices, Database Management, Schema Evolution, Data Migration, Environment Management, Production Environment, Staging Environment, Development Environment, Load Balancing, Rollback Strategies, Zero Downtime Deployment, Scalability, Reliability, High Availability, Risk Management, Change Management, Release Management, User Acceptance Testing, Feature Branching, Mainline Development, Trunk-Based Development, Artifact Repository, Log Management, Incident Management, Post-mortem Analysis, Compliance, Regulatory Requirements, Software Licensing, Open Source Software, Third-party Dependencies, Build Optimization, Test Automation Frameworks, Scripting Languages, System Administration, Networking, Data Storage, Encryption, Authentication, Authorization, API Design, Service-Oriented Architecture, Legacy Systems, Technical Debt, Documentation, User Documentation, Developer Documentation, Operational Documentation.

Continuous Integration, Continuous Deployment, Continuous Delivery, Jenkins, GitLab CI/CD, GitHub Actions, CircleCI, Travis CI, Bamboo, TeamCity, Azure DevOps, CodePipeline, CodeBuild, CodeDeploy, Spinnaker, IBM UrbanCode Deploy, Argo CD, Tekton Pipelines, JFrog Artifactory, SonarQube, Docker in CI/CD, Kubernetes in CI/CD, Infrastructure as Code, Configuration Management Tools, Automated Testing in CI/CD, Deployment Strategies, Monitoring and Logging in CI/CD, Security in CI/CD, Microservices and CI/CD, CI/CD for Machine Learning, GitOps, Artifact Repository Management, Build Automation, Test Automation, Deployment Automation, Pipeline as Code, Environment Management, Feature Flag Management, Canary Releases, Blue/Green Deployments, Rollback Strategies, Load Testing in CI/CD, Performance Testing in CI/CD, Integration Testing in CI/CD, Service Virtualization, Secrets Management in CI/CD, Cloud-Native CI/CD, DevSecOps, Version Control Systems, Code Review Practices, CI/CD Metrics and KPIs, Container Orchestration in CI/CD, Serverless Deployments in CI/CD, Compliance in CI/CD, UI Testing in CI/CD, Mobile CI/CD, CDN Integration in CI/CD, Database Changes in CI/CD

Software Release Lifecycle, Software Development Lifecycle, Continuous Integration vs. Continuous Delivery vs. Continuous Deployment, Continuous X, CI/CD Tools, Continuous Improvement, DevOps, DevSecOps, Automation: Pipelines, Automation over Documentation, Artifact Repository, Build Automation - Automated Build - Build Pipeline, Build Server, Test Automation - Automated Testing, Change Management, Configuration Management, Deployment Pipeline; Delivery Ecosystem, Scripting (Build Scripting, Deployment Scripting), Version Control (Git, GitHub, GitHub Alternatives), CI/CD and Serverless - CI/CD and SRE - Cloud Native and CI/CD - CI/CD for Microservices - CI/CD Security - CI/CD and DevSecOps, CI/CD for Data Science - CI/CD and Databases, CI/CD for Machine Learning, CI/CD Bibliography (Continuous Delivery by Jez Humble and David Farley), CI/CD Courses, CI/CD Glossary, Awesome CI/CD, CI/CD GitHub, CI/CD Topics. (navbar_cicd - see also navbar_devops, navbar_iac, navbar_gitops)


© 1994 - 2024 Cloud Monk Losang Jinpa or Fair Use. Disclaimers

SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.


continuous_delivery_by_jez_humble_and_david_farley_footnotes.txt · Last modified: 2024/04/28 03:40 (external edit)