FCI-Helwan blog

Just another FCI-H weblog

Smart Client Application Part3

Office Smart Client Applications

Microsoft Office System 2003 provides you with a useful platform on which to build smart client applications, especially in an enterprise setting. With an Office smart client solution, you can integrate data sources, accessed through Web services, with the features of Word 2003, Excel 2003, InfoPath 2003, or other Office applications to develop smart client solutions.
Microsoft Office 2003 & 2oo7 has a number of key features and options for building smart client solutions. These include:

Smart tags: Smart tags give applications a way to provide users with context sensitive data pertaining to the contents of a document and allow them to easily see and use relevant information when working within a document.

Smart documents: Smart documents provide a more powerful way for the user to interact with documents and business Web services.

Microsoft Visual Studio® Tools for the Microsoft Office System: This suite of tools enables developers to create managed code Office smart client applications by using the Microsoft Visual Studio .NET development system.
Microsoft Office InfoPath™: InfoPath is an application that can gather structured data from the user by using a form-like interface. InfoPath provides support for XML Web services, a form-based user interface, and support for standard technologies such as WSDL and UDDI. InfoPath supports limited offline use by allowing the user to interact with the form when offline and then allowing the user to forward the form to a Web service when the user is online.

Mobile Smart Client Applications

Mobile smart clients are applications that run on smart devices — Pocket PCs, Smartphones, and other small form factor devices such as set-top boxes. These applications are developed using the .NET Compact Framework, which is a subset of the full .NET Framework.
The .NET Compact Framework has many of the features of the full .NET Framework, supports XML, and consumes Web services. It is optimized for use on small form factor devices, and it includes the Windows Forms designer for developing the user interface.
By using the Visual Studio .NET Smart Device Projects, you can develop smart clients that will run on the .NET Compact Framework. This approach allows you to develop, test and debug an application by using Visual Studio .NET on an emulator of the small form factor device. The use of an emulator significantly speeds up development and testing of these types of applications.
Mobile smart client applications are typically used to provide mobile access to essential data and services, or to collect and aggregate data when the user is mobile.
Examples of these types of applications are insurance and financial data-gathering applications, inventory management applications, and personal productivity management applications.
This guide does not specifically focus on mobile smart client applications, although many of the architectural issues and solutions that it discusses are relevant to smart devices.


February 9, 2007 Posted by | Smart Client Applications | Leave a comment

Smart Client Applications Part 2

Types of Smart Clients

Smart client vary in design and implementation so they can take many different forms and styles. These forms can divide into three categories:
· Windows smart client applications
· Office smart client applications
· Mobile smart client applications

It’s common that smart client applications target on one or more of these platforms, depending on the users and functionality required .such flexibility is one of the strength keys of the smart client applications.

Windows Smart Client Applications

To develop a rich client application, you may think to develop applications that uses available system resources and that provides a rich user interface.
Windows smart client applications represent an evolution of traditional rich client applications.

A Windows smart client application is suitable in situations where an application needs to be deployed and accessed as a familiar desktop-type application. These types of applications typically provide the majority of their functionality themselves but can integrate with or coordinate other applications when appropriate. They provide application functionality tuned to particular tasks to provide specific or high-performance processing or graphical capabilities. Windows smart client applications are typically most suitable for applications that run on desktop, laptop, or tablet PCs.

These kinds of Windows smart client applications can be used in a wide variety of situations, for instance as LOB, financial, scientific, or collaborative applications.
Examples of these kinds of applications are Microsoft Money and the Microsoft Outlook® messaging and collaboration client.

February 8, 2007 Posted by | Smart Client Applications | Leave a comment

Smart Client Applications Part 1

Hey all that’s the first technical article to me, so I hope it is good.

First of all, we have 2 kinds of applications:
Thin Clients ->Browser Clients that deal with Server Network
Rich Clients -> Windows Applications –Desktop Applications

So the smart client technology do the following take the advantage of the thin client applications and the advantage of the rich client applications integrated with XML webservices.

Smart Client: Applications and devices that can take advantage of the power of local processing, but have the flexibility of Web-based computing.

So because of the flexibility of smart client applications , we have to talk about the characteristics of the smart client. If any application have these characteristics so it can be called smart:

Utilizes Local Resources

A smart client application always has code artifacts on the client that enable local resources to be utilized. What do we mean by local resources? We mean everything from hardware to software resources. A smart client may take advantage of the local CPU or GPU, local memory or disk, or any local devices connected to the client, such as a telephone, bar-code/RFID reader, and so on. But it may also take advantage of local software, such as Microsoft Office applications, or any installed line-of-business (LOB) applications that interact with it.


Smart client applications are never standalone and always form part of a larger distributed solution. This could mean that the application interacts with a number of Web services that provide access to data or an LOB application. Very often, the application has access to specific services that help maintain the application and provide deployment and update services.

Offline Capable

Because they are running on the local machine, one of the key benefits that smart client applications offer is that they can be made to work even when the user is not connected. For applications running in occasional or intermittent connectivity situations, such as those used by traveling workers or even those running on laptops, tablets, PDA’s, and so on, where connectivity cannot be guaranteed at all times, being able to work while disconnected is essential. Even when the client is connected, the smart client application can improve performance and usability by caching data and managing the connection in an intelligent way.

Intelligent Install and Update

Smart client applications manage their deployment and update in a much more intelligent way than traditional rich client applications. The .NET framework enables application artifacts to be deployed using a variety of techniques, including simple file copy or download over HTTP. Applications can be updated while running and can be deployed on demand by clicking on a URL. The Microsoft® .NET Framework provides a powerful security mechanism that guarantees the integrity of the application and its related assemblies. Assemblies can be given limited permissions in order to restrict their functionality in semi-trusted scenarios.

Client Device Flexibility

The .NET Framework together with the .NET Compact Framework provides a common platform upon which smart client applications can be built. Often, there will be multiple versions of the smart client application, each targeting a specific device type and taking advantage of the devices unique features and providing functionality appropriate to its usage.

February 2, 2007 Posted by | Smart Client Applications | 4 Comments