Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Overcoming independent extensibility challenges
Communications of the ACM
Lean Software Development: An Agile Toolkit
Lean Software Development: An Agile Toolkit
Test-Driven Development in Microsoft .Net
Test-Driven Development in Microsoft .Net
Agile Project Management With Scrum
Agile Project Management With Scrum
Pair programming and agile software development: experiences in a college setting
Journal of Computing Sciences in Colleges
Organisational theory perspective on process capability measurement scales
Journal of Software Maintenance and Evolution: Research and Practice - Software process improvement and capability determination: selected articles from SPICE 2009
Hi-index | 0.00 |
Like many software companies, Microsoft has been doing distributed application development for many years. However, recent changes in the market have altered the rules, both in terms of customer expectations and programming models for ubiquitous interconnected smart devices. These changes have provoked two dramatic shifts in the way we develop software. The first is the creation and use of the .NET Framework as a simple, secure, and robust platform for device-independent software development, data manipulation, and communications. The second is an agile yet highly disciplined approach to designing, testing, implementing, and verifying our software which presumes all bugs are unacceptable and must be found and fixed early before they impact internal groups, external partners, and eventually our customers. This paper discusses the nature and impact of these two dramatic shifts to the development practices at Microsoft.