Microsoft will release guidelines for developers building online applications and for those using the Agile code-development process.
The Agile guidelines apply principles from Microsoft's Security Development Lifecycle (SDL) to Agile, an umbrella term for a development model frequently used for Web-based applications released under short deadlines, called “sprints.”
Microsoft adopted the SDL following the company's pledge in 2002 to build more secure code after several high-profile worms and other malicious software posed dangerous risks to its customers.
But the original SDL doesn't fit the Agile process. Agile differs in that developers have a set time in which to develop certain features, after which the application is immediately released in order to get customer feedback, said Bryan Sullivan, security program manager for Microsoft.
The SDL was originally designed for products, such as the Windows OS, that are non-iterative, meaning that there aren't frequent releases of the product that add just a feature or two. However, all of the SDL requirements have been adopted for the Agile process, but implemented differently, Sullivan said. Agile is used by 85 percent of technology industry professionals, according to Forrester.
Microsoft breaks the SDL down into three requirements: one-time only tasks, those that need to be done for every sprint, and finally “bucket” tasks, which need to be repeated periodically — such as every six months — but not for every sprint, Sullivan said. The Agile guidelines will be available on www.microsoft.com.
Microsoft is also releasing a white paper on security for online Web applications. As those applications are increasingly interacting and exchanging information, security is paramount, said Steve Lipner, senior director of security engineering at Microsoft's Trustworthy Computing Group.
The white paper outlines key security issues that developers should consider for Web applications, Lipner said. It also discusses security issues that developers should think about when choosing a hosting provider, such as data and physical security.