The goal of CSE is to explore and create radically new processes and technologies that enable the people
of Microsoft to realize the applications of tomorrow.
The strategic mission of the Center for Software Excellence
is to radically improve the software development processes at Microsoft. CSE
makes "big bets"
on innovative technologies and tools that transform how software is produced. The small, agile teams of CSE
attack new opportunities quickly, creating technologies that improve software reliability, security and
performance in order to increase the productivity of programmers. CSE technologies are now an essential part
of the production of all major Microsoft products. Learn more about CSE.
CSE teams are currently conducting research and developing tools in the following areas.
The Binary Technologies team creates tools and infrastructure to analyze the compiled form of applications.
Using this infrastructure, BiT develops tools that work in static and runtime environments to improve the performance and reliability of
The Engineering Services team concentrates on design and implementation
of tools, processes, and best practices to monitor, maintain, and improve
the quality of the Microsoft code bases.
The Program Analysis team researches ways to achieve scalable and accurate verification of
software. The team has invented methods for symbolic evaluation, memory alias analysis, call-graph construction,
value-flow analysis, and dataflow analysis that scale to programs the size of Windows. These methods have been incorporated
into tools and infrastructure currently used by product teams throughout Microsoft.
The Security Engineering Team is strongly focused on building the technology and tools to
dramatically improve the security of software. Development efforts are creating tools that automatically
enforce good programming practices, analyze the trust boundaries of source code, and detect vunerabilities
that can compromise the security and privacy of a system.
The Test Effectiveness team is engaged in researching and developing
tools that push quality earlier in the product life cycle. Current focus areas include
scalable code-coverage, code metrics, test prioritization, and dependency analysis.