patterns & practices: Who We Are and What We Do
.gif) | Microsoft’s proven recommendations for how to design, develop, deploy, and operate architecturally sound applications for the Microsoft platform. |
On This Page
Who We Are The Microsoft patterns & practices (p&p) team is responsible for delivering applied engineering guidance that helps software architects, developers, and their teams take full advantage of Microsoft’s platform technologies in their custom application development efforts.
Our goal is to help software development teams be more successful with the Microsoft application platform. We do this by delivering guidance that: - Helps to simplify the Microsoft application platform.
- Provides solution guidance to common problems.
- Helps development teams grow their skills and learn.
We are a small team of experienced architects, developers, writers, testers, product planners, and managers. On each project, we augment our team with outside subject matter experts to ensure that we have some of the best minds in the industry contributing to and reviewing our guidance.
What We Do.png)
We build a catalog of guidance. We have found that a combination of conceptual content and source code provides the easiest path to both understanding the patterns of success and applying the specific implementation practices. As a result, the individual guidance titles are available in different forms ranging from simple guides to sophisticated software factories. The patterns & practices catalog includes guidance to help you: - Build the core of any line of business application.
- Develop specific types of applications based on proven architectures.
- Ensure that your application achieves specific quality requirements, such as security or performance.
- Use Microsoft development tools more effectively.
How We Do It We talk with a large number of Microsoft customers, partners, and consultants to understand the commonly occurring scenarios and the technical challenges associated with them. Then we discover and harvest the solution patterns and engineering practices (including anti-patterns) that have proved successful in addressing these scenarios.
Once we understand the scenarios and technical challenges, we work with product and technology teams across Microsoft, industry experts, and with customers and partners, to build guidance that reflects both the current, practical state of the technology and that is also aligned with future Microsoft technology plans. Often, the underlying scenarios and solutions guidance ends up influencing future Microsoft product direction. Most of our projects are conducted in CodePlex communities. This allows continuous input from the development community at large and keeps us honest. We call this approach, “customer connected engineering” and it ensures that what we deliver actually meets the needs of our customers. We also ship the source code to nearly everything we deliver, usually along with a license agreement that encourages source level adoption and customization. Our software engineering process is a combination of SCRUM style project management with XP development practices. Our work area is a mix of collaborative development rooms, where entire teams sit and work together, augmented with private spaces and offices. The layout allows us to run many projects simultaneously. Each of our collaboration rooms is equipped with a projector (used for ad-hoc code reviews, bug triage meetings, and other group activities), and has glass walls that function as giant white boards. We use the wall space to draw and discuss design ideas, as well as to sort sets of Post-it note user stories. We use Visual Studio Team System to track and report on work progress internally.
The Values and Principles that Guide Our WorkValues - Continuous learning, innovation, and improvement. We have a bias towards action (over more planning) and customer engagement and feedback (over more analysis).
- Open and collaborative relationships with customers, Microsoft field, partners, and Microsoft teams.
- Execution. We will take strategic bets, but we will hold ourselves accountable for creating value, shipping early and often, and delivering results that have impact with customers and for Microsoft.
- Explicit, transparent, and direct communication with customers and with our team and others in our company.
- Quality over scope. No guidance is better than bad guidance.
Principles - Start with the end in mind; think about end-to-end scenarios, and the architectural consistency of the products we produce.
- Help the customer succeed with their intent—the results they want to achieve, not just what they are trying to do technically.
- Deliver the minimal solution required to achieve the desired result and ship it. Don’t wait for the perfect, absolutely complete solution.
- Our tools platforms provide capabilities that expand the types of guidance we can express—use all of what they provide where it naturally fits the scenario.
- Constructive tension between customer needs and Microsoft product and business strategy is expected. When we do our job well, this tension is healthy.
What To Do NextWe recommend that you explore these links: There are also several p&p community projects on CodePlex, where the patterns & practices team shares their progress on projects as they proceed. You can participate in these community projects and provide feedback that helps shape the final p&p release. Top of Page
|
Related Developer Centers
|