Saturday, 29 December 2012

MS.NET Means for IT Professionals


What .NET Means for IT Professionals

Developers have long understood the benefits of Microsoft® .NET technologies. The wide variety of .NET tools, services, clients, and servers empowered developers to build powerful software and systems through XML Web services. But what is the value of Microsoft .NET for IT professionals?
These technologies offer IT professionals far-reaching benefits. From accelerating and improving daily operations to providing advanced capabilities for deploying next-generation technologies, .NET can help IT professionals connect their companies more broadly than ever before.
This article describes how .NET-connected software from Microsoft helps solve common IT problems related to deploying numerous applications across multiple systems. In addition, this article discusses how you can use .NET to manage, help protect, and connect systems to an array of mobile devices. You'll also learn how specific Microsoft customers and industry partners are using .NET to connect diverse operating systems, devices, businesses, and individual users.


Understanding the .NET Framework

The .NET Framework is the programming model underlying .NET for developing, deploying, and running XML Web services and applications.
XML Web services are units of code that allow programs written in different programming languages and on different platforms to communicate and share data through standard Internet protocols such as, XML, SOAP, Web Services Description Language (WSDL), and Universal Description, Discovery, and Integration (UDDI).
The common language runtime and class libraries are at the center of the .NET Framework. The common language runtime manages memory, security, and language integration. It also and helps simplify code development and application deployment while improving application reliability. The bulk of this work is handled transparently, simplifying the work of IT administrators. In addition, features of the common language runtime—strong type naming, cross-language exception handling, lifetime management, and dynamic binding—dramatically reduce the amount of code a developer must write.
Class libraries supply the resources needed to build applications with XML support, networking, and data-access features. Because the classes are unified, developers can build both Microsoft Windows®-based and Web-based applications, enhancing their productivity and code reuse in the process.


Microsoft .NET and Deployment

One of the toughest deployment issues developers and IT professionals face involves dynamic-link libraries (DLLs). It starts when multiple applications attempt to share a common component like a DLL or a Component Object Model (COM) class. When a new application is installed, the components for the new application may overwrite components of an existing application, causing the existing application to function incorrectly or stop functioning completely.
Typically, one application will install a new version of the shared component that is not backward-compatible with the version already on the computer. Although the newly introduced application will work fine, existing applications that depended on a previous version of the shared component may no longer work.
Through the use of side-by-side deployment, the .NET Framework solves the problem of overwriting. Side-by-side deployment allows multiple versions of an assembly to be installed and to run simultaneously on the same computer. Authors aren't restricted to maintaining backward compatibility because different applications can use different versions of a shared component. Each application can request to use a specific version of that assembly. Version information is recorded through the common language runtime between pieces of an application. At run time, the common language runtime refers to the recorded information to ensure the proper version of a dependency is loaded.
By isolating application assemblies, applications always load the components with which they were built and tested. An assembly can be accessed by only one application; it is not shared by multiple applications on the same computer. Therefore, it cannot be affected by changes made to the system by other applications.
.NET-enabled applications are self-contained and can be installed easily using XCOPY. This makes it possible to install desktop applications on client computers using a remote Web server. Actual deployment involves packaging developer code and distributing the packages to the clients and servers on which the application will run. The .NET Framework eliminates any dependency on the registry, which makes installation, removal, and replication much easier. You can deploy many applications by just copying file sets to disk and running them. To remove or replicate the applications, you can simply delete the files or copy over them.


Continental Airlines Streamlines Deployment with .NET

.NET also makes it possible for businesses to streamline the deployment time of applications they create. Application developers at Continental Airlines employed the .NET Framework and Microsoft Visual Studio® .NET to build and deploy mobile applications that use a single code base and run on multiple platforms. The applications allow customers to receive essential flight information on the device of their choice.
The .NET Framework helped developers cut deployment time from weeks to mere hours through "XCOPY deployment"—meaning they could design, code, and debug on the development platform, and then simply copy their code to a staging server. The code is then ready to run without worrying about dependencies such as DLL registration or building COM or export packages.
How does this benefit IT professionals? According to Ferdy Khater, director of application development at Continental, "With XCOPY deployment, adding a server is easy because we don't have to bring down the whole site to do it." So during peak usage periods, Khater says, "we can throttle the system by adding hardware and, once the peak has passed, redeploy it to where it's needed more."
In addition, Continental developers conducted a system stress test that simulated 200 concurrent connections generating 80,000 simultaneous hits. The connection success rate was more than 98 percent and the CPU utilization was less than 50 percent under a maximum load. The common language runtime ensured these favorable numbers by employing managed code and sidestepping memory leaks.


Interoperability and Management

One of the most significant advantages of the .NET Framework is its level of interoperability with other languages, applications, and systems. At the heart of .NET is the ability to help businesses integrate and manage their Web-based solutions through XML Web services, which are quickly becoming an industry standard.
.NET enables modern software applications to communicate through standard Internet protocols such as XML and SOAP, creating a channel through which internal and remote systems can easily interact. Applications hosted in-house—in addition to external systems—can be "stitched together," allowing businesses to quickly meet their unique business needs through specialized yet economical solutions.
The common language runtime comes into play by allowing individual components of specific applications within a company to communicate. Through its standard set of types—self-describing type information (meta data) and common execution environment—the common language runtime integrates all programming languages and allows objects created in one language to be read with equal weight by code written in a different language. For example, a new scheduling function written in COBOL can be used with an existing human resources application that was written in Microsoft Visual Basic® .NET.
The advantages of multiple language support are obvious. Not only does it improve productivity by giving developers the choice to use the programming language that's best suited to the job, it decreases time to market by increasing code reuse through cross-language inheritance.


Dollar Rent A Car: Interoperability in Action

A major airline contacted Dollar Rent A Car about providing a direct link from its Web site into Dollar's reservation system. The Dollar IT staff realized that by integrating with travel partners, they could significantly drive incremental reservations. Dollar chose Microsoft .NET to extend its existing mainframe-based reservation system.
Dollar's reservation system is a VMS-based application called Quick Keys. The airline's systems are based on UNIX. To ensure effective integration, Dollar needed to:
·                     Create a real-time, direct connection between the two distinct platforms.
·                     Deliver the solution quickly with minimal difficulty,
·                     Ascertain the technology's long-term viability.
Dollar already had two Quick Keys interfaces in place:
·                     An internally developed electronic data interchange (EDI) interface running on a Compaq Alpha server, which parsed flat files that were uploaded to Dollar via FTP on a daily basis by several tour operators.
·                     A Web site (www.dollar.com) built using Microsoft Windows NT® Server, CGI, Perl, and an Oracle database
The Web site relied on a custom COM component and Compaq's TP-Web Connector to communicate with the mainframe. After considering several connecting technologies—including CORBA/IIOP, Java RMI, DCOM and socket programming—Dollar realized that XML Web services was the only solution that could enable any system written in any programming language to access the mainframe for reservations.
By using .NET, Dollar implemented a hybrid solution that capitalized on the benefits of XML Web services without requiring the airline to implement a SOAP interface. Essentially, the solution allows the airline's UNIX-based system to send reservation requests to Dollar via sockets and a text-based format commonly used in the travel industry. A translator receives the message at Dollar, interprets it, and makes a SOAP call to a second system that exposes the preexisting COM-based interface into Quick Keys as an XML Web service.
By exposing Quick Keys as an XML Web service, Dollar was able to extend the Web site's functionality to accommodate all mobile devices. The site now has a standard interface that can be used by a variety of internal and external applications. The solution also delivers tremendous strategic value, giving Dollar the capacity to easily expand its reach to other travel partners and individual users through next-generation technologies.


Security

Software applications, especially those that are Internet-based, have developed from static channels designed to alter and orchestrate data into increasingly dynamic exchange systems that form the foundation of e-business. As the complexity and functionality of modern software applications have increased, threats to software from both inside and outside organizations have risen.
The managed code architecture of the .NET Framework dramatically reduces the intrinsic risks associated with both client-side and server-side applications by transparently controlling the behavior of code. In a private study conducted by Foundstone, Inc., it was determined that a Microsoft Windows server running the .NET Framework can provide organizations with greater assurance that their applications can resist known security attacks today and in the future. It eliminates many of the major security risks facing applications today due to flawed code (such as buffer overruns); and shifts the burden from having to make critical security decisions—such as whether or not to run a particular application or what resources that application should be able to access—from end users to developers and administrators.
The comprehensive nature of the .NET Framework security architecture makes .NET both reliable and trustworthy. Key elements include:
·                     Evidence-based security
·                     Code access security
·                     The verification process
·                     Role-based security
·                     Cryptography
·                     Application domains
These elements help developers and IT administrators control security over applications and resources on a granular level. Developers get an easy-to-use tool set to implement powerful authentication, authorization, and cryptographic routines. This helps IT professionals by eliminating flawed code—one of the biggest threats to application security—so they can focus on critical security issues involving running other applications and accessing specific resources.


INSCOM and the Importance of Data Integrity

Another security concern is ensuring data integrity. While ultimately not an IT administrator's responsibility, maintaining data integrity can help protect an organization's internal records and communications, which makes security easier to maintain.
An example of data integrity–enhancing security is the use of .NET to help manage contractor personnel files at the Contractor Support Element (CSE) of the U.S. Army Intelligence and Security Command (INSCOM). The CSE worked with Microsoft Consulting Services to create a Web client that accesses a Microsoft SQL Server™ 2000 database storing information about contractor security clearances. The CSE was adapting a paper-based system to the Web, so retaining data integrity was a big concern. Simplifying the workflow became crucial.
"There were huge data integrity concerns when we started converting the existing system," says INSCOM CIO Bob Fecteau. "We had to make sure the data appeared in the formats and structures we wanted to best do our business. The Web forms created using the ASP.NET component of Visual Studio .NET allow us to enforce integrity of all data entered, which was very important when we transferred the previous databases."
Data integrity is also protected by a "capturing keystrokes" feature that remembers the first time data is entered into the system and eliminates the need to input the same data continually.


Device Support

One of the biggest advantages of .NET technology for consumers is its ability to connect and support a wide variety of stationary and mobile devices. IT professionals will appreciate the ease with which they can facilitate and maintain these connections over time.
XML Web services play an important role in device support. As mentioned previously, XML Web services allow various applications to share information over the Internet, regardless of the operating system or back-end software that the application is using. They also enable users to interact with a broad range of smart devices through the Web while ensuring that the user—not the application—controls the interaction.
Powerful client software such as the .NET Compact Framework, Windows CE .NET, and Windows XP enable a multitude of smart devices to operate and communicate through .NET and XML Web services. This collection of software empowers smart devices to access the Internet easily, providing a positive user experience while giving developers and IT administrators more control over their information.


Flexibility Proves Key for Scandinavian Airlines

Scandinavian Airlines System (SAS) recently implemented .NET technology to solve several problems associated with device support. The SAS IT group needed a technology that would be flexible enough to support a variety of popular phones and mobile devices used by customers accessing a single Web site (www.scandinavian.net) to check flight status and rebook flights.
Using the Microsoft Mobile Internet Toolkit in Visual Studio .NET, the SAS mobility and IT groups created the mobile presentation layer, adding mobile device access to their existing applications. They reused their existing back-end logic using the same application functionality.
Developers saved time by devising presentation logic for a number of different devices, including HTML Pocket PCs, WML (WAP) cell phones, cHTML cell phones, and HTML Palm devices. The SAS IT group used the mobile Web Forms controls (part of the Mobile Internet Toolkit) to create applications that work intelligently with each device.
In addition, the Mobile Internet Toolkit gave the SAS IT group the flexibility to add support for new devices, as well as to customize the markup for a specific device. The SAS Web site ultimately could support an unlimited range of devices. With the capacity for anytime, anywhere connectivity and system-to-user interconnection through .NET technology, SAS is strategically poised to further expand its client base and drive the way the travel industry communicates in the coming years.


Conclusion

Microsoft .NET is already shifting the focus from individual Web sites and devices connected to the Internet to constellations of computers, devices, and services that work together to deliver more comprehensive solutions. For IT professionals, this that means a wider scope of vision is required to manage advanced connectivity issues. But even as the field of vision expands, the possibility for error diminishes. .NET reduces the guesswork of many IT management tasks by:
·                     Helping to streamline deployment.
·                     Enabling interoperability with diverse systems, including legacy systems.
·                     Helping to enhance security.
·                     Reliably connecting and supporting both stationary and mobile devices.
For IT pros, the value of .NET lies in interoperability and the seamless connectivity of multiple systems and sources of data. Coupled with anytime, anywhere connectivity and system-to-user interconnection, .NET-connected software helps businesses deliver unprecedented levels of value to customers, partners and employees. By embracing .NET technology, IT professionals can empower their businesses to realize this vision.

No comments:

Post a Comment