From 57818076cc658e028f69e38b8f8cf4b69e8e5b73 Mon Sep 17 00:00:00 2001 From: Nathen Harvey Date: Mon, 29 Jul 2024 19:28:02 -0400 Subject: [PATCH] Summarize the 2014 report * Adds tests * Moves the 2014 report to its own directory under `research` * Adds a new page at `/research/2014` Contributes to #698 Signed-off-by: Nathen Harvey --- firebase.json | 10 ++++++-- .../continuous-integration/index.md | 4 +-- .../proactive-failure-notification/index.md | 4 +-- hugo/content/publications/_index.md | 6 ++--- .../2014-state-of-devops-report.pdf | Bin .../2014-state-of-devops-report.png | Bin hugo/content/research/2014/_index.md | 23 ++++++++++++++++++ .../research/2017-and-earlier/_index.md | 2 +- .../tests/research/2014/2014.spec.ts | 20 +++++++++++++++ .../2017-and-earlier-overview.spec.ts | 2 +- test/redirects/redirects.csv | 5 ++-- 11 files changed, 63 insertions(+), 13 deletions(-) rename hugo/content/research/{2017-and-earlier => 2014}/2014-state-of-devops-report.pdf (100%) rename hugo/content/research/{2017-and-earlier => 2014}/2014-state-of-devops-report.png (100%) create mode 100644 hugo/content/research/2014/_index.md create mode 100644 test/playwright/tests/research/2014/2014.spec.ts diff --git a/firebase.json b/firebase.json index d6d96297..dade471c 100644 --- a/firebase.json +++ b/firebase.json @@ -96,7 +96,7 @@ }, { "source": "/dora-report-2014", - "destination": "/research/2017-and-earlier/2014-state-of-devops-report.pdf", + "destination": "/research/2014", "type": 302 }, { @@ -206,9 +206,15 @@ }, { "source": "/publications/pdf/state-of-devops-2014.pdf", - "destination": "/research/2017-and-earlier/2014-state-of-devops-report.pdf", + "destination": "/research/2014/2014-state-of-devops-report.pdf", "type": 301 }, + { + "source": "/research/2017-and-earlier/2014-state-of-devops-report.pdf", + "destination": "/research/2014/2014-state-of-devops-report.pdf", + "type": 301 + + }, { "source": "/publications/pdf/state-of-devops-2015.pdf", "destination": "/research/2017-and-earlier/2015-state-of-devops-report.pdf", diff --git a/hugo/content/capabilities/continuous-integration/index.md b/hugo/content/capabilities/continuous-integration/index.md index e0bf563b..acf455d2 100644 --- a/hugo/content/capabilities/continuous-integration/index.md +++ b/hugo/content/capabilities/continuous-integration/index.md @@ -63,7 +63,7 @@ To implement these elements, you need the following: - **A suite of [automated tests](/capabilities/test-automation)**. If you don't have any, start by writing a handful of unit and - [acceptance tests](/research/2017-and-earlier/2014-state-of-devops-report.pdf#page=14) + [acceptance tests](/research/2014/2014-state-of-devops-report.pdf#page=14) (PDF) that cover the high-value functionality of your system. Make sure that the tests are reliable. That way, when they fail, you know there's a real problem, and when they pass, you're confident there are no serious problems @@ -232,7 +232,7 @@ change. [SRE Book](https://landing.google.com/sre/books/), in particular [Chapter 8 - Release Engineering](https://landing.google.com/sre/sre-book/chapters/release-engineering/). -- Read James Shore's article +- Read James Shore's article [CI on a dollar a day](https://www.jamesshore.com/Blog/Continuous-Integration-on-a-Dollar-a-Day.html). - Watch Google's John Penix describe [how Google practices CI at scale](https://www.infoq.com/presentations/Continuous-Testing-Build-Cloud/). diff --git a/hugo/content/capabilities/proactive-failure-notification/index.md b/hugo/content/capabilities/proactive-failure-notification/index.md index 246a5f5c..0ff10555 100644 --- a/hugo/content/capabilities/proactive-failure-notification/index.md +++ b/hugo/content/capabilities/proactive-failure-notification/index.md @@ -14,7 +14,7 @@ system to alert you it has already failed — or worse, to find out from custome that your application or service is down. Using this approach, you can identify and potentially resolve issues before they become serious or start to impact your users. The -[2014 DevOps Research and Assessment (DORA)](/research/2017-and-earlier/2014-state-of-devops-report.pdf) +[2014 DevOps Research and Assessment (DORA)](/research/2014/2014-state-of-devops-report.pdf) (PDF) research showed that proactive monitoring is a significant predictor of software delivery performance. According to DORA research, teams that use proactive notification can diagnose @@ -27,7 +27,7 @@ suffers. **Use alerting rules.** You should generate failure notifications using specific *alerting rules.* Alerting rules define the conditions under which an -alert is generated and the notification channel for that alert. Read more about +alert is generated and the notification channel for that alert. Read more about generating alerts in [Monitoring and observability](/capabilities/monitoring-and-observability). diff --git a/hugo/content/publications/_index.md b/hugo/content/publications/_index.md index 10c22a61..e18a82da 100644 --- a/hugo/content/publications/_index.md +++ b/hugo/content/publications/_index.md @@ -56,10 +56,10 @@ bannerSubtitle: "Findings from DORA's research program are made available throug (in partnership with Puppet) [Read PDF](/research/2017-and-earlier/2015-state-of-devops-report.pdf) -- [![2014 State of DevOps Report](/research/2017-and-earlier/2014-state-of-devops-report.png)](/research/2017-and-earlier/2014-state-of-devops-report.pdf) - **[2014 State of DevOps Report](/research/2017-and-earlier/2014-state-of-devops-report.pdf)** +- [![2014 State of DevOps Report](/research/2014/2014-state-of-devops-report.png)](/research/2014) + **[2014 State of DevOps Report](/research/2014)** (in partnership with Puppet) - [Read PDF](/research/2017-and-earlier/2014-state-of-devops-report.pdf) + [Download the report](/research/2014) ## Additional Publications diff --git a/hugo/content/research/2017-and-earlier/2014-state-of-devops-report.pdf b/hugo/content/research/2014/2014-state-of-devops-report.pdf similarity index 100% rename from hugo/content/research/2017-and-earlier/2014-state-of-devops-report.pdf rename to hugo/content/research/2014/2014-state-of-devops-report.pdf diff --git a/hugo/content/research/2017-and-earlier/2014-state-of-devops-report.png b/hugo/content/research/2014/2014-state-of-devops-report.png similarity index 100% rename from hugo/content/research/2017-and-earlier/2014-state-of-devops-report.png rename to hugo/content/research/2014/2014-state-of-devops-report.png diff --git a/hugo/content/research/2014/_index.md b/hugo/content/research/2014/_index.md new file mode 100644 index 00000000..4bda4b1d --- /dev/null +++ b/hugo/content/research/2014/_index.md @@ -0,0 +1,23 @@ +--- +title: "DORA Research: 2014" +date: 2024-07-29 +draft: false +research_year: "2014" +type: research_archives +layout: single +--- + +[![2014 State of DevOps Report](2014-state-of-devops-report.png)](2014-state-of-devops-report.pdf) + +The 2014 State of DevOps Report provides compelling evidence that DevOps is not just a set of technical practices but a cultural shift that can drive significant improvements in IT and organizational performance. By adopting DevOps practices and fostering a culture of collaboration and continuous improvement, organizations can achieve higher levels of productivity, profitability, and market share. + +Key findings of the report include: +* High-performing IT organizations were twice as likely to exceed their profitability, market share, and productivity goals. +* DevOps practices, such as version control and continuous delivery, are correlated with high IT performance. +* Organizational culture is a strong predictor of IT and organizational performance, with high-trust cultures leading to better results. +* Job satisfaction is the number one predictor of organizational performance and is highly correlated with DevOps practices and culture. +* Continuous integration and continuous delivery, along with automated testing and version control, are key practices that impact IT * performance. +* The longer an organization practices DevOps, the more its IT performance improves (p. 14). +* A virtuous circle exists between IT performance and organizational performance, where each positively influences the other. + +[Download teh 2014 State of DevOps Report](2014-state-of-devops-report.pdf) \ No newline at end of file diff --git a/hugo/content/research/2017-and-earlier/_index.md b/hugo/content/research/2017-and-earlier/_index.md index 8a3d4b5e..da398187 100644 --- a/hugo/content/research/2017-and-earlier/_index.md +++ b/hugo/content/research/2017-and-earlier/_index.md @@ -13,4 +13,4 @@ Prior to 2018, research was conducted in partnership with Puppet, as an extensio - [2017 State of DevOps Report](2017-state-of-devops-report.pdf) - [2016 State of DevOps Report](2016-state-of-devops-report.pdf) - [2015 State of DevOps Report](2015-state-of-devops-report.pdf) -- [2014 State of DevOps Report](2014-state-of-devops-report.pdf) \ No newline at end of file +- [2014 State of DevOps Report](/research/2014/) \ No newline at end of file diff --git a/test/playwright/tests/research/2014/2014.spec.ts b/test/playwright/tests/research/2014/2014.spec.ts new file mode 100644 index 00000000..0e9c9997 --- /dev/null +++ b/test/playwright/tests/research/2014/2014.spec.ts @@ -0,0 +1,20 @@ +import { test, expect } from '@playwright/test'; +import { sidebarLinks } from '../sidebarLinks'; + +test.beforeEach(async ({ page }) => { + await page.goto('/research/2014/'); +}); + +test('2014 Research page has the correct title.', async ({ page }) => { + await expect(page).toHaveTitle('DORA | DORA Research: 2014'); +}); + +test('2014 Research page has the correct header.', async ({ page }) => { + await expect(page.locator('h1')).toContainText('DORA Research: 2014'); +}); + +test('2014 Research page has the correct sidebar.', async ({ page }) => { + for (const sidebarLink of sidebarLinks) { + await expect(page.getByRole('link', { name: sidebarLink, exact: true })).toBeVisible(); + } +}); diff --git a/test/playwright/tests/research/2017-and-earlier/2017-and-earlier-overview.spec.ts b/test/playwright/tests/research/2017-and-earlier/2017-and-earlier-overview.spec.ts index 18033848..f76bae95 100644 --- a/test/playwright/tests/research/2017-and-earlier/2017-and-earlier-overview.spec.ts +++ b/test/playwright/tests/research/2017-and-earlier/2017-and-earlier-overview.spec.ts @@ -5,7 +5,7 @@ export const reportsMap = { '2017 State of DevOps Report': '2017-state-of-devops-report.pdf', '2016 State of DevOps Report': '2016-state-of-devops-report.pdf', '2015 State of DevOps Report': '2015-state-of-devops-report.pdf', - '2014 State of DevOps Report': '2014-state-of-devops-report.pdf' + '2014 State of DevOps Report': '/research/2014/' }; test.beforeEach(async ({ page }) => { diff --git a/test/redirects/redirects.csv b/test/redirects/redirects.csv index 5892fd5a..94351210 100644 --- a/test/redirects/redirects.csv +++ b/test/redirects/redirects.csv @@ -36,14 +36,15 @@ /dora-report-2017,/research/2017-and-earlier/2017-state-of-devops-report.pdf,302 /dora-report-2016,/research/2017-and-earlier/2016-state-of-devops-report.pdf,302 /dora-report-2015,/research/2017-and-earlier/2015-state-of-devops-report.pdf,302 -/dora-report-2014,/research/2017-and-earlier/2014-state-of-devops-report.pdf,302 +/dora-report-2014,/research/2014,302 /devops-capabilities/cultural/how-to-empower-software-delivery-teams/,/guides/how-to-empower-software-delivery-teams/,302 /devops-capabilities/cultural/devops-culture-transform/,/guides/devops-culture-transform/,301 /sponsor,/sponsors/,301 -/publications/pdf/state-of-devops-2014.pdf,/research/2017-and-earlier/2014-state-of-devops-report.pdf,301 +/publications/pdf/state-of-devops-2014.pdf,/research/2014/2014-state-of-devops-report.pdf,301 /publications/pdf/state-of-devops-2015.pdf,/research/2017-and-earlier/2015-state-of-devops-report.pdf,301 /publications/pdf/state-of-devops-2016.pdf,/research/2017-and-earlier/2016-state-of-devops-report.pdf,301 /publications/pdf/state-of-devops-2017.pdf,/research/2017-and-earlier/2017-state-of-devops-report.pdf,301 /publications/pdf/state-of-devops-2018.pdf,/research/2018/dora-report/2018-dora-accelerate-state-of-devops-report.pdf,301 /publications/pdf/state-of-devops-2019.pdf,/research/2019/dora-report/2019-dora-accelerate-state-of-devops-report.pdf,301 /publications/pdf/state-of-devops-2021.pdf,/research/2021/dora-report/2021-dora-accelerate-state-of-devops-report.pdf,301 +/research/2017-and-earlier/2014-state-of-devops-report.pdf,/research/2014/2014-state-of-devops-report.pdf,301