1 Landscape

Row

Who is represented, and what does their working week look like?

Synthetic demo · Provisional Baseline: 10 May 2026 to 04 Jul 2026 · 8 complete weeks · Week dates use UTC convention · Locale: en-US

The baseline covers 900 developers across six teams, with all eight Person Query weeks recorded for every developer. The median developer averaged 12.9 collaboration hours, including 7.8 meeting hours, and 12.0 uninterrupted hours per week over this period.

Developer roster900All eligible developers, regardless of Copilot use
Collaboration hours / week12.9Median. Includes meetings and scheduled calls
Meeting hours / week7.8Median of each developer’s eight-week average
Uninterrupted hours / week12.0Median of each developer’s eight-week average

This is a manager view of working conditions and recorded AI use. The roster contains 1,080 synthetic people, of whom 900 are developers. The 180 other job-family records are excluded by the roster flag, rather than by tool activity. Eligibility for the Person Query and eligibility for each Copilot product are separate.

Reading the working week. Collaboration hours include meeting hours, scheduled Teams calls, email and chat or instant-message time, so they must not be added to meeting hours. Uninterrupted hours identify blocks of at least one hour without the specified meeting, email or Teams activity. Neither calendar space nor the absence of that activity establishes coding time, deep work or psychological flow. All working-condition distributions below use each developer’s average across the same eight weeks.

Row

Team and role composition

Six team bars showing role composition. Every team contains 150 developers. Percentage labels and an exact table accompany the chart.

Exact role mix, seniority and tenure
Role shares use the 150 developers in each team as denominator.
Group Category Developers (count) Share (%)
Data Engineering Application engineering 73 48.7%
Data Engineering Engineering management 31 20.7%
Data Engineering Infrastructure engineering 46 30.7%
Developer Experience Application engineering 76 50.7%
Developer Experience Engineering management 33 22.0%
Developer Experience Infrastructure engineering 41 27.3%
Identity Application engineering 67 44.7%
Identity Engineering management 34 22.7%
Identity Infrastructure engineering 49 32.7%
Mobile Application engineering 66 44.0%
Mobile Engineering management 33 22.0%
Mobile Infrastructure engineering 51 34.0%
Payments Application engineering 68 45.3%
Payments Engineering management 34 22.7%
Payments Infrastructure engineering 48 32.0%
Platform Application engineering 65 43.3%
Platform Engineering management 35 23.3%
Platform Infrastructure engineering 50 33.3%
Role, seniority and tenure are explicitly simulated roster attributes. No location or schedule attributes are simulated.
Attribute Category Developers (count) Share of 900 (%)
Role Application engineering 415 46.1%
Role Engineering management 200 22.2%
Role Infrastructure engineering 285 31.7%
Seniority Early career 241 26.8%
Seniority Experienced 380 42.2%
Seniority Senior / lead 279 31.0%
Tenure 2 to 5 years 385 42.8%
Tenure Over 5 years 214 23.8%
Tenure Under 2 years 301 33.4%

Row

Team league table for workload, focus and recorded Copilot use

Sorted by collaboration hours, Platform is the busiest team at 20.7 hours/person/week. Developer Experience has the highest GitHub Copilot recorded-active share at 100.0%, Data Engineering leads M365 Copilot at 100.0%, and Mobile has the most uninterrupted time at 17.5 hours/person/week.

Sorted by collaboration hours descending | Hours/person/week | Product intensity units are suggestions for GitHub and illustrative actions for M365 | 10 May 2026 to 04 Jul 2026
Rank Team Developers (count) Collaboration hours Meeting hours Uninterrupted hours After-hours collaboration GitHub valid developers GitHub active (%) GitHub intensity / person / week M365 valid developers M365 active (%) M365 intensity / person / week
1 Platform 150 20.7 12.4 5.0 1.9 138 94.9% 35.0 126 98.4% 15.4
2 Payments 150 15.5 9.1 10.0 4.1 134 87.3% 32.0 120 94.2% 14.3
3 Data Engineering 150 13.0 7.9 12.2 1.4 131 98.5% 39.5 127 100.0% 39.1
4 Identity 150 12.0 7.4 11.7 1.4 127 78.7% 29.9 120 73.3% 12.6
5 Developer Experience 150 11.2 6.6 14.6 1.2 128 100.0% 79.9 132 97.0% 15.6
6 Mobile 150 7.5 4.0 17.5 0.9 136 75.7% 15.3 135 66.7% 6.7
Population percentiles across 900 developers’ eight-week averages | Hours/person/week | 10 May 2026 to 04 Jul 2026
Metric 25th percentile Median 75th percentile
Collaboration hours 10.4 12.9 16.3
Meetings 5.8 7.8 10.1
Uninterrupted time 9.1 12.0 14.8
After-hours collaboration 0.9 1.7 3.2
Joint footprint for the same baseline. Only fully observed, both-eligible developers enter the four tool-use groups.
Recorded tool-use group Developers (count) Share of 900 (%)
Both recorded 536 59.6%
Not both eligible 145 16.1%
Coverage unresolved 85 9.4%
GitHub only recorded 67 7.4%
M365 only recorded 55 6.1%
Neither recorded 12 1.3%

Row

Ranked team view of headline metrics

Small-multiple ranked bars compare six teams on workload, focus, after-hours collaboration and product-specific recorded use.

Both, only and neither recorded refer to GitHub Copilot and M365 Copilot within this window. They say nothing about other AI tools. Developers who are not eligible for both products, or whose coverage is unresolved, stay in the working-conditions baseline. Page 4 separates product-specific denominators and use.

Manager next step. Use the team and role composition when discussing the distribution of working hours. Agree which coordination or tooling question needs investigation before setting a target. No performance judgement or individual action is supported by these data.

2 Focus and coordination

Row

How much room is there for sustained work alongside coordination?

Synthetic demo · Provisional 10 May 2026 to 04 Jul 2026 · All 900 developers · 8 complete Person Query weeks each

Platform has the highest median meeting load at 12.4 hours/person/week. Mobile has the most uninterrupted time at 17.5 hours/person/week. These are calendar-derived associations, not evidence of coding time or delivery quality.

Definitions, paraphrased from Microsoft Learn.

Available-to-focus hours: working hours remaining after meetings and scheduled Teams calls. Uninterrupted hours: blocks of at least one hour without meeting attendance, reading or sending email or Teams chat, joining Teams calls, posting or replying to channel messages, or visiting Teams channels.

Open 1-hour block: a count of calendar blocks without scheduled meetings during the workday. It does not check email or Teams activity and is distinct from uninterrupted hours. Open blocks are defined here for clarity but are not a headline measure.

Row

Meeting and uninterrupted-time distributions

Team medians and interquartile ranges for meeting and uninterrupted hours. Separate panels have separately labelled horizontal scales.

Row

Calendar availability and uninterrupted time

Team percentile intervals compare calendar time available to focus with uninterrupted hours.

Row

Meeting characteristics that may warrant a conversation

Hours/person/week | 10 May 2026 to 04 Jul 2026 | 150 developers per team. Characteristics overlap and must not be added.
Team Meeting characteristic 25th percentile Median 75th percentile
Payments Conflicting meetings 1.5 1.8 2.1
Platform Conflicting meetings 1.2 1.4 1.7
Data Engineering Conflicting meetings 0.6 0.8 1.0
Identity Conflicting meetings 0.6 0.7 0.8
Developer Experience Conflicting meetings 0.4 0.6 0.7
Mobile Conflicting meetings 0.2 0.3 0.4
Platform Recurring meetings 6.9 8.0 8.9
Payments Recurring meetings 4.2 5.2 6.2
Data Engineering Recurring meetings 3.8 4.6 5.5
Identity Recurring meetings 3.4 4.0 4.8
Developer Experience Recurring meetings 2.6 3.4 4.2
Mobile Recurring meetings 1.5 2.1 3.1
Payments Short-notice meetings 1.8 2.2 2.6
Platform Short-notice meetings 1.5 1.8 2.1
Data Engineering Short-notice meetings 0.8 1.0 1.2
Identity Short-notice meetings 0.7 1.0 1.2
Developer Experience Short-notice meetings 0.6 0.8 1.0
Mobile Short-notice meetings 0.3 0.4 0.6

Recurring meeting hours: meetings set to recur. Conflicting meeting hours: only the overlapping portion of calendar meetings. Short-notice meeting hours: meetings scheduled six hours or less before their start. These are separate, potentially overlapping characteristics, not components of an additive stack. Definitions are paraphrased from Microsoft Learn.

Manager next step. In the next team discussion, use these distributions to ask which meetings unblock work and which interrupt it. Combine the answer with feedback on review wait times and cognitive load before testing a calendar change. Fewer meetings are not inherently better.

3 Sustainable workload

Row

How is collaboration outside working hours distributed and repeated?

Synthetic demo · Provisional 10 May 2026 to 04 Jul 2026 · All 900 developers · 8 observed weeks each

Payments has the highest median after-hours collaboration at 4.1 hours/person/week. The population median is 1.7 hours, and the upper quartile begins at 3.2 hours. These describe recorded collaboration outside scheduled hours, with no wellbeing outcome available.

After-hours collaboration, paraphrased from Microsoft Learn: time in meetings, email, Teams chats, calls and channels with at least one other person outside working hours, with overlapping activity deduplicated. It is not total work time. Flexible schedules, on-call duties and time zones may matter, but none is recorded here. Surveys about sustainable workload and the ability to disconnect are missing.

Row

After-hours collaboration across teams

Six team medians and interquartile ranges of after-hours collaboration hours per developer per week.

Row

Persistence over the observed weeks

Bar chart of developers with zero, one to three, or four to eight weeks meeting an illustrative after-hours convention. Counts and percentages are labelled.

Configurable convention: 3 hours per week, with persistence defined as at least 4 of the 8 observed weeks. Change AFTER_HOURS_CONVENTION and PERSISTENCE_WEEKS in the helper to explore sensitivity. These are illustrative discussion rules, not validated thresholds for healthy work or burnout. A zero means no recorded after-hours collaboration under the synthetic contract.

Manager next step. Before drawing a workload conclusion, validate work-schedule settings and seek anonymous feedback on sustainability and disconnection. Use a repeated survey alongside this distribution if the team tests a change. Do not target individual developers from these aggregates.

4 AI use

Row

Where are both Copilot products used across developer work?

Synthetic demo · Provisional 10 May 2026 to 04 Jul 2026 · Same 900-developer roster · Product-specific eligibility and coverage

670 developers are eligible for both products and have complete coverage for all eight weeks. Developer Experience leads GitHub Copilot recorded-active share, while Data Engineering leads M365 Copilot recorded-active share. The other 230 developers remain visible as eligibility or coverage exceptions.

Use categories: at least one observed positive activity day in the window constitutes recorded use. All four categories require eligibility and complete coverage for both products throughout the baseline. Not both eligible takes precedence when either licence is absent. Coverage unresolved means both are eligible but one or more weeks lack confirmed coverage. Missing activity becomes zero only where the reference confirms eligibility and complete coverage.

Row

Joint footprint with coverage exceptions retained

A labelled stacked bar reconciles both recorded, GitHub only, M365 only, neither recorded, not both eligible and unresolved coverage across 900 developers.

Exact joint categories and product denominators
Tool-use status Developers (count) Share of roster (%)
Both recorded 536 59.6%
GitHub only recorded 67 7.4%
M365 only recorded 55 6.1%
Neither recorded 12 1.3%
Not both eligible 145 16.1%
Coverage unresolved 85 9.4%
Each product row reconciles to 900. Complete means all eight baseline weeks have coverage.
Product Not eligible (count) Eligible, incomplete (count) Eligible, complete (count)
GitHub Copilot 62 44 794
M365 Copilot 88 52 760

Row

Product-specific frequency, intensity and concentration

10 May 2026 to 04 Jul 2026 | Each product uses its own all-eight-week eligible and complete population. Non-users remain in the frequency and intensity denominator.
Product measure GitHub Copilot M365 Copilot
Valid developers (count) 794 760
Recorded active (count) 708 670
Recorded active (%) 89.2% 88.2%
Active days / developer / week (mean) 2.2 2.0
Intensity / developer / week (mean) 38.3 17.2
Intensity unit Suggestions Illustrative actions
Top 10% active share (%) 34.6% 35.3%
Top group (count) 71 67

The concentration row is the share of GitHub suggestions or M365 illustrative actions attributable to the highest-volume 10% of active developers for that product. The number of people is rounded up and shown. Identities and individual rankings are never displayed. These populations differ, so this is not a comparison of product effectiveness.

Row

Feature use within each product

10 May 2026 to 04 Jul 2026 | Product-specific units. Acceptance is total accepted divided by total suggested. Hover over abbreviated counts for exact values.
Product Feature Measure Denominator
GitHub Copilot User-initiated chat 9.5 requests / developer / week 794 valid developers
GitHub Copilot Completion acceptance 53.1% 243.1K suggestions
GitHub Copilot Completion suggestions 38.3 suggestions / developer / week 794 valid developers
GitHub Copilot Agent use 0.7 days / developer / week 794 valid developers
M365 Copilot Drafting 45.2% 104.7K illustrative M365 actions
M365 Copilot Meeting assistance 30.0% 104.7K illustrative M365 actions
M365 Copilot Search and summarisation 24.8% 104.7K illustrative M365 actions

Completion acceptance records suggestions accepted, alongside the suggestion denominator. It does not establish correctness, productivity or time saved. M365 actions are mutually exclusive illustrative feature counts in this demo’s extended schema, not credits, tokens or a verified real-export metric. GitHub suggestions, chats and agent days stay separate. They are never added to M365 actions. Agent or model choice is not a maturity measure.

Manager next step. Resolve licence and coverage exceptions before discussing non-use. Ask developers which tasks each product supports, using the feature table to guide the conversation. Any enablement test should track developer feedback and quality outcomes as well as product-specific use.

5 Working patterns

Row

How do working conditions differ across recorded tool-use groups?

Synthetic demo · Provisional 10 May 2026 to 04 Jul 2026 · 670 both-eligible, fully observed developers · Same eight-week baseline

The comparison includes 670 developers with common eligibility and complete observation for both products. The group with the highest median collaboration hours is Both recorded. Groups are descriptive categories based on recorded use in this same window, with no treatment assignment or causal estimate.

Common comparison population: eligible for both products and observed for all eight weeks in both feeds and the Person Query. This matches the eligibility and coverage rules, not people statistically. The 145 not-both-eligible and 85 unresolved developers remain in the 900-person baseline but do not become non-users in this comparison. Group membership uses the same window as working conditions, so temporal direction cannot be established.

Row

Selected working-condition distributions

Medians and interquartile ranges for meeting, uninterrupted and after-hours collaboration across four recorded product-use groups. No individual points or rankings.

Exact group sizes and percentile values
Hours/person/week | 10 May 2026 to 04 Jul 2026 | Each person contributes one eight-week average.
Group Metric Developers (count) 25th percentile Median 75th percentile
Both recorded After-hours collaboration 536 0.9 1.7 3.2
GitHub only recorded After-hours collaboration 67 0.7 1.6 2.8
M365 only recorded After-hours collaboration 55 0.8 1.5 3.1
Neither recorded After-hours collaboration 12 0.8 1.4 2.7
Both recorded Collaboration hours 536 10.9 13.3 16.8
M365 only recorded Collaboration hours 55 8.5 11.8 15.2
GitHub only recorded Collaboration hours 67 7.3 9.7 12.5
Neither recorded Collaboration hours 12 7.5 8.8 14.0
Both recorded Meetings 536 6.0 8.0 10.6
M365 only recorded Meetings 55 4.8 7.0 8.5
GitHub only recorded Meetings 67 3.9 5.8 7.8
Neither recorded Meetings 12 3.8 4.8 9.9
Neither recorded Uninterrupted time 12 9.9 15.4 17.8
GitHub only recorded Uninterrupted time 67 11.6 14.3 17.3
M365 only recorded Uninterrupted time 55 10.5 12.8 15.7
Both recorded Uninterrupted time 536 8.5 11.7 14.5

Row

Role and team context for the comparison

Role composition within reportable joint product-use groups, with percentage labels and an exact table.

Exact role shares and team composition
A role breakdown is withheld in full for any group containing a cell below 10 people.
Group Category Developers (count) Share (%)
Both recorded Application engineering 242 45.1%
Both recorded Engineering management 120 22.4%
Both recorded Infrastructure engineering 174 32.5%
GitHub only recorded Application engineering 34 50.7%
GitHub only recorded Engineering management 12 17.9%
GitHub only recorded Infrastructure engineering 21 31.3%
A team breakdown is withheld in full for any group containing a cell below 10 people. Shares use all developers in the displayed group.
Group Category Developers (count) Share (%)
Both recorded Data Engineering 109 20.3%
Both recorded Developer Experience 110 20.5%
Both recorded Identity 59 11.0%
Both recorded Mobile 62 11.6%
Both recorded Payments 89 16.6%
Both recorded Platform 107 20.0%

Privacy note. Role breakdowns are withheld for M365 only recorded, Neither recorded. Team breakdowns are withheld for GitHub only recorded, M365 only recorded, Neither recorded. Each withheld breakdown contains at least one cell below 10 distinct people.

Interpretation. Team, role, seniority, task selection and tenure can influence working patterns and tool use. These charts are intentionally limited to selected agreed measures. No broad metric scan, adjustment model, causal claim or preferred tool-use group is presented. The simulation applies separate product propensities with planted team signatures and does not assume that dual users have better outcomes.

Manager next step. Discuss a specific workflow with the team before selecting an intervention. Define the intended feedback-loop, cognitive-load or flow improvement, then choose a direct measure for it. Recorded AI use alone cannot demonstrate that improvement.

Appendix

Row

Definitions, sources and reporting contracts

Synthetic demo · Provisional

Scope and units. Pages 1 to 5 use the last eight complete weeks, 10 May 2026 to 04 Jul 2026. The full source window is 04 Jan 2026 to 04 Jul 2026, with Sunday-start weeks. Dates are ISO dates interpreted using a UTC convention. This is an illustrative date contract, not evidence about developers’ time zones. The generator assumes a 40-hour scheduled week for calendar availability. It does not simulate actual calendars or work schedules.

Aggregation. Working-condition values are weekly Person Query metrics. Baseline charts first average each person’s eight weekly values and then compute group percentiles. Each developer has equal weight. Weekly trends instead take the cross-sectional median each week. Product-active rates divide active eligible, covered developers by all eligible, covered developers for that product and window. Baseline product tables require all eight weeks. Joint comparisons require both products throughout the window.

Source definitions. Metric descriptions on pages 2 and 3 are paraphrased from the Microsoft Viva Insights metrics reference, checked on 10 September 2026. The extended field names and synthetic generation are local demonstration contracts. They are not a claim that a real flexible query exports this exact schema. Scheduled_call_hours is an illustrative construction field. Open_1_hour_block is a calendar count, while uninterrupted time incorporates email and Teams activity. Collaboration hours are included as a Viva Insights-style metric and contain meeting hours and scheduled-call hours by definition.

CSV files are readable directly in these folders. No zip or external download is required.
Relative file under _data/github Grain Contract
reference/people-snapshot.csv Person 1,080 people, 900 developers. Synthetic identifiers, team, role, seniority, tenure, product eligibility.
reference/coverage-weekly.csv Person × week 28,080 rows. Independent product eligibility and completeness flags, 0 or 7 covered days. PQ eligible and complete for all.
person-query/person-query-weekly.csv Person × week 28,080 rows. Weekly collaboration, meeting, call, availability, focus, after-hours and open-block metrics, no survey or delivery outcome fields.
github-query/activity-daily.csv Person × active day Sparse positive days. Suggestions, accepted suggestions, chat requests and agent-use indicator. Active days counted once.
m365-query/activity-daily.csv Person × active day Sparse positive days. Mutually exclusive illustrative drafting, meeting-assistance, search/summarisation actions and their total.
github-query/model-mix.csv Person × illustrative model, full window Secondary synthetic suggestion allocation, only people with suggestions. Shares total 1 per person. Not a maturity measure.
github-query/language-mix.csv Person × language, full window Secondary synthetic suggestion allocation, only people with suggestions. Shares total 1 per person. Not used as an outcome.

Joins and missingness. The roster anchors the population. The coverage reference anchors the weekly panel. Daily feeds aggregate to unique person-week keys before left joins. One-to-one and many-to-one join assertions prevent row amplification. A missing activity day becomes zero only within an eligible, fully covered product-week. An incomplete or ineligible week remains NA, and any such week excludes the person from that product’s eight-week summary. Even a partially observed positive record would not prove complete observation. Zero-filling in a real tenant requires an independently verified source-completeness contract.

Zero, missing and not applicable. 0 is an observed or justified zero. NA is unresolved measurement and is never silently replaced outside valid coverage. Ineligible people are labelled as eligibility exceptions rather than as non-users. An undefined ratio would be shown as N/A, not as zero. The synthetic completeness reference is reliable by construction. Production licences, eligibility dates, time zones and ingestion completeness must be independently validated.

Row

Privacy, reproducibility and simulation assumptions

Privacy floor. At least 10 distinct people are required for a published group. Percentile visuals use vivainsights::create_boxplot(..., mingroup = 10, return = "table"). Composition breakdowns with any cell below 10 are withheld in full for that parent group, preventing subtraction from the parent total. No individual points, identifiers or individual leaderboards appear in the HTML. Source CSV identifiers are artificial and exist only to demonstrate joins. They must never be replaced with identifiable customer exports in a shareable repository.

Simulation. Seed 20260910 generates a shared roster, 26 Person Query weeks, separate sparse daily activity feeds and weekly eligibility/coverage references. Product-use propensities are generated separately for each product after applying the team signatures below. Working hours depend on simulated person-level variation, role/seniority context and the same team signatures. There is no planted intervention, time effect or dual-user advantage. Cross-sectional team differences are planted for illustration and carry no real-world meaning. M365 feature counts are explicit illustrative extensions, not consumption credits or tokens. Model and language files allocate synthetic suggestions for secondary exploration only. No PR, delivery, survey or wellbeing outcomes are fabricated.

Planted cross-sectional team signatures in the synthetic generator. These effects exist only to make the demo report readable and must not be interpreted as real organisational findings.
Team Planted illustrative characteristics
Data Engineering Highest M365 Copilot recorded-active share and intensity, with mid-range working-condition metrics.
Developer Experience Highest GitHub Copilot recorded-active share and intensity, with healthy uninterrupted time.
Identity Population-median reference profile across workload, focus and recorded AI use.
Mobile Focus-rich. Lowest meeting and collaboration hours, highest uninterrupted time and lowest recorded AI adoption.
Payments Highest after-hours collaboration, conflicting meetings and short-notice meeting hours.
Platform Coordination-heavy. Highest meeting and collaboration hours, lowest uninterrupted time.

Synthetic effect contract. Automated checks require Platform to lead meeting and collaboration hours, Payments to lead after-hours collaboration, Developer Experience to lead GitHub Copilot recorded-active share and intensity, Data Engineering to lead M365 Copilot recorded-active share and intensity, and Mobile to lead uninterrupted time while sitting lowest on meeting hours, collaboration hours and recorded AI adoption.

Rerun. Knit the canonical Rmd, or run Rscript render-github-developer-experience.R from this folder. The Rmd sources github-developer-experience-helpers.R, which generates and validates the CSVs before rendering. Set RSTUDIO_PANDOC to a local Pandoc folder if needed. All CSVs are regenerated from the seed. The HTML embeds its charts, styles and scripts. Reference links need a connection only when followed. The consumption report and its data are not read or modified.

Formatting. Locale is en-US with British prose. Percentages use one decimal place. Counts use thousands separators, but identifiers never do. Plots label stacked segments of at least 6%, with exact counts and percentages in adjacent tables or expandable details. Rounded shares may not total exactly 100.0%. Neutral colours identify categories, not good or bad performance. On narrow screens, wide charts and tables scroll within their cards. Use a desktop for presentation, or browser zoom for smaller text. Charts are display-ready aggregates, not a certification of the underlying metrics.

Automated data-contract checks executed during this render.
Check Result
Roster developers 900
Teams 6
Person Query developer-weeks 23,400
Baseline developer-weeks 7,200
Collaboration-hours contract Collaboration hours are at least meeting plus scheduled-call hours
Planted team signatures Passed
Source keys and joins Unique keys, no row amplification
Non-negative metrics and acceptance bounds Passed
Joint reconciliation 900 = 670 + 230
Privacy floor At least 10 distinct people in every published group
Runtime versions and package choice
Component Version
R 4.6.1
dplyr 1.2.1
tidyr 1.3.2
ggplot2 4.0.3
vivainsights 0.7.2
rmarkdown 2.31
flexdashboard 0.6.3

The vivainsights function index was checked before implementation. The package’s person-averaged boxplot summary fits the percentile calculations. Custom joint coverage aggregation is necessary because single-product usage segments do not establish comparable observation for two products. Custom plot layouts keep units, periods and denominator captions visible.

Row

Research framework and future extensions

Framework What this report can contribute Evidence still needed
SPACE Activity, collaboration and calendar-derived working conditions across multiple dimensions Satisfaction and wellbeing surveys, performance outcomes, direct evidence of efficiency and flow
DevEx Context for feedback loops, cognitive load and flow discussions Anonymous developer feedback, build/test waits, review waits, task context and perceived ability to focus
DORA A framework for evaluating delivery change, without an outcome claim Service boundaries, production deployments, change lead times, recovery events, failed changes and deployment rework

Source-access limitation. The ACM pages returned HTTP 403 during this rebuild. The citations and framework summaries above are retained, but a fresh full-text review could not be completed. Microsoft Learn, DORA and the package function reference were accessible.

Next step. The manager, analyst and delivery owner should agree the workflow question, data owners, evaluation window and success measures before any real-data pilot. This synthetic report requires no operational response.