There is no shortage of definitions for software architecture but in a general sense it is the blueprint for a system, its properties and the relationships among all of the elements. It specifies all of the actions to be taken by the design and implementations teams.
There are various differences between .NET and Java Technology so there are certainly advantages and disadvantages to using one or the other as software architecture. The choice, however, depends on the scope of the project and the skill of the design team.
Both .NET and Java have platforms that offer a good solid foundation for project design. Java Technology is the choice of many developers because of its work-saving features and ease of use. “.NET and web services are tightly integrated and it is easier to create a basic web service in .NET” (Ranck, 2002).
Advantages
A major advantage of .NET is that it allows for the use of multiple languages and horizontal scalability. This feature makes it an ideal choice by developers for software architecture if they want to write programs in C++, Java or Virtual Basic because it provides a unified environment in which to work. It is easily developed and supported. Unfortunately, the same cannot be said for Java which is limited to use with the Java programming language only. Another advantage of .NET is that the interface is easily developed on Windows and it is compatible with other Microsoft technology.
The software architecture is not generally limited to one type of language, as in Java. Multiple language support is priceless especially when working with developers whose specialty is in one language. “The J2EE architecture is based on the Java programming language. What's exciting about Java is that it