|
Architecture
Client Server and n-Tier Applications
Client-Server applications and n-tier architecture have always played
a key role in the operations of businesses. The ability to input,
process, store, and access data anytime, anywhere and on any device
is powering todays e-Businesses. Icreon specializes in the
development of high-end client-server applications and robust enterprise
applications with user-friendly interfaces. Depending on the clients
business requirements, we also help in developing web-enabled applications
and systems.
Our clients employees, customers, and suppliers need data
access that is secure, fast and reliable. As a business, our clients
need secure systems that are robust, easy to maintain, and scalable.
We keep all of this in consideration when building and upgrading
our clients corporate systems and applications.
Client Server Computing:
Division of labor
Client-server systems divide up the work of computing among many
separate machines.
Network infrastructure
Given this division of labor, client-server systems rely on networks
to weld together disparate computers into a cohesive whole.
Emphasis on the user
It provides users with greater latitude in choosing software presentation,
and software designers with greater latitude in creating programs
that are pretty, readily customized, and modern. Using structured
methodologies and proven IT processes helps to reduce complexity,
risks and costs associated with client-server development.
Icreon has expertise in a wide variety of the latest programming
language tools and platforms for client-server application. In a
nutshell our strong technical team can help ensure that the client-server
products and services we provide meet your expectations. Client-server
computing has arisen because of a change in business needs. Businesses
today need integrated, flexible, responsive and comprehensive applications
to support the complete range of business processes.
Distributed Applications
There is no doubt that there is great demand for large-scale distributed
applications. Indeed, tremendously expensive special-purpose distributed
systems have been deployed, and are used extensively in the banking,
airline, and telecommunication industries. The major barrier to
supporting these, and even richer, applications on the Internet
is the difficulty of designing, building, testing, and maintaining
distributed applications using state-of-the-art tools.
Our approach is to develop tools that will enable developers to
realize scalable distributed applications on the Internet. The life
cycle of a distributed application can typically be viewed as having
four stages:
- Icreons approach to helping developers design applications
is to provide a set of general-purpose building blocks from which
more complex systems can be composed.
- To facilitate implementation, we continually plan, to develop
a methodology for whole-system simulation using true client behavior
in highly realistic network conditions.
- Deploying network applications today is a painfully manual process
and prone to error. To reduce this hurdle, we propose to create
a shared infrastructure that software developers will employ during
the deployment and the maintenance and evolution stages.
- Finally, we plan to develop a set of tools for monitoring distributed
applications that will improve their long-term reliability by
reporting on their behavior (and failures).
The guiding principles of distributed multi-tiered architectures like
J2EE and .NET/Windows DNA are web computing, faster time-to-market,
true interoperability, scalability, reduced complexity, language/tool/hardware
independence, and lower cost of ownership.
For the distributed applications development, Icreon employs component
technologies like COM, DCOM, Enterprise Java Beans, RMI and CORBA
and UML, Design patterns for software Design. The .NET Framework provides
access to technologies that enable developers to build distributed
applications. We exploit .NET to its fullest. Component Development
As the technology landscape gets complex, it is becoming increasingly
difficult to manage processes and skill-sets that are not core-competencies,
not to mention the high costs involved. Thus there is a need to rely
on object-oriented design paradigm, employing third-party modules
and components to dramatically reduce the development time of an application.
Such code functionality can be easily re-used and transferred to other
projects as well. Icreon provides component development services to
information technology companies for most of the popular technologies
and platforms including C++, Java, J2EE, ActiveX, Visual Basic, COM/COM+/DCOM,
and .NET.
Component based software development (CBSD) focuses on building large
software systems by integrating previously existing software components.
By enhancing the flexibility and maintainability of systems, this
approach can potentially be used to reduce software development costs,
assemble systems rapidly, and reduce the spiraling maintenance burden
associated with the support and upgrade of large systems.
Component-based systems encompass both commercial-off-the-shelf (COTS)
products and components acquired through other means, such as non-developmental
items (NDIs).
Several important factors that Icreon considers when implementing
component-based systems:
Short-term considerations
| 1. |
Development process |
| 2. |
Planning |
| 3. |
Requirements |
| 4. |
Architecture |
| 5. |
Standards |
| 6. |
Reuse of existing components
|
| 7. |
Component qualification |
Long-term considerations
| 1. |
External dependencies/vendor-driven
upgrade problem |
| 2. |
System evolution/technology
insertion |
XML Applications
Icreon has the experience and the technical know-how to assist you
in designing, developing and deploying open standard infrastructure
solutions based on XML and related standards. XML (along with ASP.NET)
is the fastest evolving technology for Web Applications. To address
the requirements of commercial Web publishing and enable the further
expansion of Web technology into new domains of distributed document
processing, the World Wide Web Consortium has developed an Extensible
Markup Language (XML) for applications that require functionality
beyond the current Hypertext Markup Language (HTML). XML is a universal
language for data on the Web that lets developers deliver content
from a wide variety of applications to the desktop. XML promises to
standardize the way information is searched for, exchanged, adaptively
presented, and personalized.
Data such as customer information, credit card transactions, purchase
orders, and fulfillment requests can be converted to XML and shared
across applications without changing legacy systems. XML can be used
to exchange data between Web server and browser or between trading
partners without the existing systems needing any prior description
of the data's structure.
XML Applications Areas:
| 1. |
The applications
that drive the acceptance of XML are those that cannot be accomplished
within the limitations of HTML. These applications can be divided
into three broad categories: |
| 2. |
Applications
that require the Web client to mediate between two or more heterogeneous
databases. |
| 3. |
Applications
that attempt to distribute a significant proportion of the processing
load from the Web server to the Web client. |
| 4. |
Applications
that require the Web client to present different views of the
same data to different users. |
Icreon focuses on following XML Applications Areas:
| 1. |
Use of XML
for data transfer |
| 2. |
Use of XML
for data distribution |
| 3. |
For publication
of data |
| 4. |
For offline/online
data synchronization |
| 5. |
Enable internationalized
media-independent electronic publishing |
| 6. |
Allow industries
to define platform-independent protocols for the exchange of
data, especially the data of electronic commerce |
| 7. |
Deliver
information to user agents in a form that allows automatic processing
after receipt |
| 8. |
Make it
easier to develop software to handle specialized information
distributed over the Web |
| 9. |
Make it
easy for people to process data using inexpensive software |
| 10. |
Allow people
to display information the way they want it, under style sheet
control |
| 11. |
Make it
easier to provide metadata - data that will help people find
information and help information producers and consumers find
each other. |
|