The software giant released a "community technology preview" version of modeling tools, formerly code-named, to be included in , an upcoming addition to Microsoft's line of developer packages that focuses on enterprise developers.
The modeling tools are meant to give developers visual representations of Web applications, using detailed graphics to represent software components, said Prashant Sridharan, lead product manager for Microsoft. The idea is that making it easier for developers to see how programs are "wired" together will in turn result in more productive developers building better quality software.
"Traditionally, modeling tools have been very generic and have had little relation to the underlying code," he said. "It's pretty pictures that don't tell the actual developers much." That, in turn, leads to applications that don't meet expectations, or don't work as promised.
Modeling isn't a new idea in software development. But better tools and more powerful computers make it more practical than in previous years. Overall, interest in modeling and design is growing, as corporate customers grapple with increasingly complex computing systems.
Microsoft competitors, such as IBM and Borland Software, also have invested substantially in modeling. Borland announced its own modeling tools, called Together Architect, on Monday. Erik Frieberg, the company's vice president of product marketing, sees modeling doing for the software development process what enterprise resource planning did for business forecasting.
High-quality software that doesn't easily crash or require frequent maintenance is especially important for a company's most significant applications. Market researcher Gartner estimates that the average cost of unplanned downtime for so-called "mission critical" software is $100,000 per hour. Fully 40 percent of application failures are due to software problems, according to Gartner.
One of the most immediate concerns development tool companies have is preparing corporate customers for building new software using what is called a service-oriented architecture (SOA), which analysts and vendors say will eventually result in more flexible, better quality software at a lower cost. An SOA, for example, would allow an e-commerce site to perform a complex transaction involving different business partners by linking together several Web services, rather than requiring programmers to hand-code connections to partners.
By publishing the software development kit for the modeling tools in Visual Studio, Microsoft hopes to encourage partners and customers to create customized models components to describes software functions peculiar to specific industries and tasks.
"It basically allows you to customize and create your own modeling tools on top of what we provide," Sridharan said.
Microsoft is set to release multiple new versions of Visual Studio in mid-2005 as part of a broad revamp of its developer tools business. The new Visual Studio versions will be one of the first steps in a big Microsoft effort, dubbed "Software Factories," to enable companies to produce customized applications faster by automating routine tasks.