Advertisment

Volta makes easier to develop multi-tier web apps

author-image
CIOL Bureau
Updated On
New Update

Microsoft Volta, is a developer toolset for building multi-tier web applications using existing, familiar tools, techniques and patterns. Volta’s declarative tier-splitting enables developers to postpone architectural decisions about distribution until the last possible responsible moment. The toolset enables developers to extend the .NET platform to further enable the development of software+services applications.

Advertisment

In an interaction with CIOL, Tarun Gulati, GM, Developer and Platform Evangelism, Microsoft India, gives an in-depth overview on how Volta will simplify the designing, building, deploying, testing, and debugging of distributed multi-tier applications.



CIOL: Could you brief us on Microsoft Volta?



Tarun Gulati:
Volta is an experimental developer toolset that allows developers to build standards-conformant, multi-tier web applications using established .NET languages, libraries and development tools. Via declarative tier-splitting, developers architect their applications as a single-tier application, then make decisions about moving logic to other tiers late in the development process- letting the complier manage creating boilerplate code such as communication between tiers. The programmer can still debug and test the application, much as if it were still on the client-tier, because Volta's tier-splitting is deeply integrated with Visual Studio 2008 and the .NET Framework 3.5. In summary, Volta extends the .NET platform to distributed software+services applications, by using existing and familiar libraries, languages, tools, and techniques.

Advertisment



CIOL: What are the benefits for developers to gain from using Microsoft Volta?



TG:
Volta makes it easier to develop multi-tier web applications by leveraging the knowledge developers already have from .NET programming experiences. Volta increases developer agility in the intermediate phases of application development, where change is rapid, by allowing developers to postpone irreversible decisions about tier assignments to the last responsible moment. After tier assignments, Volta's deep integration with Visual Studio debugger and testing infrastructure dramatically improves the deployment experience for developers.

Volta automatically creates communication, serialization, and remoting code. Developers simply write custom attributes on classes or methods to tell Volta the tier on which to run them. Developers may base tier assignments on any criteria, such as load management, performance, or location of critical assets and capabilities. Because Volta automates the hidden plumbing code, it is easy for developers to experiment with varying assignments of classes and methods to tiers. Developers can use all the .NET languages, libraries, and tools they already know, including debuggers, profilers, test generators, refactoring, and code analysis tools.

Advertisment

 

CIOL: How does Volta differ from commonly used paradigms for developing multi-tier web applications?

Advertisment



TG
: Unlike other web-application frameworks, Volta starts with a client-side perspective. Once developers are satisfied with an application’s functionality and fully understand the internal object interactions, they decorate the code with declarative attributes -- annotations -- to indicate the parts of the application that should run on other tiers. The Volta runtime leverages as many existing web technologies as possible, such as the Common Language Runtime (CLR), ASP.NET, and standards-based web browsers.

Because developers start with a single-tier application, they can instrument the complete application end-to-end. This is impossible when the application is multi-tier from the start because it would entail mutually incompatible languages, tools, libraries, and programming paradigms.

In addition, Volta offers deep integration with Visual Studio 2008, including the debuggers. Developers can set breakpoints on any tier and follow the flow of control seamlessly. Volta also allows developers to debug with either Internet Explorer or Firefox without leaving Visual Studio. Moreover, Volta supports end-to-end profiling and testing in a manner that cannot be achieved with different programming models in the browser and server tiers.

Advertisment

Lastly, Volta works by rewriting Microsoft Intermediate Language (MSIL), the intermediate language to which all .NET programs are compiled, so it works with all .NET programming languages and libraries, unlike other solutions that focus on a single language or special-purpose libraries.



CIOL: How does Volta make it easier to build an application?



TG:
Because developers use the tools and techniques they already know, they can concentrate on the core functionality and business logic of their applications. And, because they can make key architectural decisions considerably later in the development process, developers gain increased agility earlier in the development lifecycle when change is necessarily more rapid. Initially building an application end-to-end as a single-tier application allows rapid prototyping and incremental refinement through refactoring, which includes declarative tier-splitting.

Advertisment

In addition, Volta offers deep integration with Visual Studio 2008, including debuggers, profilers, and testing frameworks. Developers can step through code seamlessly from one tier to another, can set breakpoints on any tier, and trace flows of control across distributed systems. Furthermore, because of a single programming model across multiple tiers, Volta enables new end-to-end profiling and testing for higher levels of application performance, robustness, and reliability.



CIOL: What skills do developers need to know to build Volta based applications?



TG:
Developers familiar with .NET development and the Visual Studio environment are ready to build applications using the Volta technology without learning any new languages, APIs, or patterns.

Advertisment



CIOL: Do Volta applications run cross-browser and cross- platform?



TG:
Volta does a best effort of running MSIL in the IE and Firefox browsers. Other standards-compliant browsers may be targeted in the future by the Live cross-browser compatibility libraries that Volta uses. As Live compatibility technology matures, Volta applications will automatically benefit.

 

CIOL: Do Volta applications require Internet Explorer to run? Or Silverlight?



TG:
Volta applications run virtually anywhere, even where an MSIL runtime is not available. This includes traditional rich client applications using the desktop CLR, as well standards-conformant web browsers.



CIOL: What is the relationship between Silverlight and Volta?



TG:
Silverlight is a cross-platform, cross-browser implementation of .NET that provides developers with a powerful runtime and toolset for building the richest possible media experiences and RIA’s on the Web.

Volta is about the decision model for tier splitting and the optimization of deployment based on application requirements and target capabilities. Volta has significant implications for making it easier for developers to develop both browser-based and rich applications and to move between them much more easily. As such Silverlight developers can explore using the Volta toolset as part of their solutions.



CIOL: What is the roadmap for Volta? Is it part of any existing product roadmap?



TG:
Volta is an experiment that enables Microsoft to explore new ways of developing distributed applications and to continue to innovate in this new generation of software+services. It is not currently a goal to fit Volta into a larger product roadmap. Instead, we want feedback from the community of partners and customers to influence other Live Labs technologies and concepts.

Like other technology previews, Volta is not part of any specific product roadmap and we do not provide customer support. However, Live Labs will continue to develop Volta to improve and extend the technology.



CIOL: Is Microsoft Research's "Rotunda" related to Volta?



TG:
Similar to other Microsoft Live Labs technology previews, Live Labs has collaborated with Microsoft Research (MSR) and includes the functionality from Rotunda, a research project that provides the essential end-to-end performance profiling feature and is now fully integrated into the Volta toolset.

tech-news