Microsoft reveals its development method for 'speeding up the entire team with AI,' emphasizing that 'specifications' are more important than code generation.



Microsoft Digital, Microsoft's internal IT organization, has unveiled its 'Specification-Driven Development (SDD)' initiative, which aims to make specifications a common standard for the entire development process, arguing that simply increasing the speed of individual tasks in AI-powered software development is unlikely to lead to overall team productivity improvements. They explain that it is crucial to clearly define 'what to build' before having AI write code.

Inside Track - Engineering the Frontier Firm: Sharing our AI-native approach to software development

https://www.microsoft.com/insidetrack/blog/engineering-the-frontier-firm-sharing-our-ai-native-approach-to-software-development/



Microsoft Digital began incorporating AI into software development about a year ago. Initially, engineers learned and used AI tools that were still evolving on their own. While AI allowed individual developers to work faster, it did not lead to an overall increase in team productivity. Sudhakar Sadashevni, who leads the AI-native engineering initiative at Microsoft Digital, reflects that the biggest lesson learned was that individual productivity improvements did not translate into increased team productivity.

Microsoft Digital cites the 'handover' process inherent in traditional software development as the cause. The traditional software development lifecycle relies on handovers between humans, and there is a risk that the original intentions will be lost with each handover. When the development intentions cannot be consistently communicated, the speed of AI-generated code can lead to inconsistencies in implementation and additional rework.

This is where Microsoft Digital adopted SDD (Software-Defined Development). In SDD, business objectives, user requirements, exceptional cases, and conditions for determining completion are compiled into a specification document, which is used as a common reference by team members and AI coding agents. The specification is updated as development progresses and synchronized with the code and tests.



Furthermore, in order to ensure that humans and AI agents can work together based on the same assumptions and context, they have established common rules such as design principles, governance requirements, security standards, and development constraints before creating the specifications.

Microsoft Digital uses the open-source 'GitHub Spec Kit' to implement SDD (Software-Defined Development). The basic flow is 'Specification → Planning → Tasks → Implementation,' and instead of having AI write code, the objectives and conditions are solidified first.

GitHub Spec Kit | Spec Kit Documentation
https://github.github.com/spec-kit/



In SDD, an AI coding agent generates not only code but also tests and documentation based on the specifications, allowing engineers to spend their time verifying that the development intent is correctly reflected and reviewing the generated results. It is also important to break down overly large requirements into smaller, more focused specifications, as cramming them into a single specification document makes verification difficult.

As the capabilities of AI coding agents improve, the importance of clear specifications also increases. In development in the age of AI, it is said that not only 'how much code can be generated' is important, but also that there is a mechanism to continuously share the development intent with the entire team.

in AI, Posted by log1d_ts