How to choose a hosting company for your website
Want to cut costs, improve communications, reduce paperwork, and say bye-bye to administrative headaches? These 12 technologies can rocket your small business ahead of the competition.
YOU’RE ALREADY RUNNING THE ESSENTIAL apps for your business and are ready to try out some of the latest tools so you can really supercharge things. The collection of products in this story can get you started.
Web-based PBX services, VoIP, and Wi-Fi phones can save you bundles on telecom costs. With one of the latest printers you can be your own copy shop, printing glossy flyers, posters, and banners. A blog or a wiki can improve communications with colleagues and clients. Online backup services can safely and inexpensively store your critical data. With a Web-based meeting service, you can get together with colleagues and clients while saving on travel costs. For a small monthly fee, you can even run all your apps online, including e-mail, document management, calendar, and project management. CRM services on the Web can help you control inventory, track sales calls, and make sales forecasts. An online payroll system can automate tax withholdings and direct deposits for your employees. And with an online recruiting service, you can efficiently find the best candidates to join your growing business.
Best of all, these technologies are now easier than ever to get up and running.
VOIP
You KNOW THE COST SAVINGS OF VOICE over IP phone service, but only about 17 percent of small to midsize businesses have made the switch to VoIP, according to a survey by technology consultancy Savatar. Why? Because most Internet phone services don’t offer communications packages designed for small businesses. Now that’s changing, with a variety of tiered services that can fit nearly any business model.
There are two basic types of VoIP service. The first is designed to replace your existing landline phone with VoIP. Such services are offered by traditional phone companies (AT&T’s CallVantage and Verizon’s Voice Wing), cable companies (Time Warner Cable’s Digital Phone and Comcast’s Digital Voice), and VoIP pioneers such as Vonage and Packet8.
Vonage is at the forefront. Its $49.99 Small Business Unlimited Premium package includes unlimited local and long-distance calls anywhere in the U.S., Canada, and Puerto Rico, as well as a dedicated fax line, unlimited call forwarding, and the ability to send all voice mail to an e-mail account. Additional lines cost just $12.99 for 500 minutes.
VoIP for your Loved Ones
VoIP has more benefits than just work-related advantages. It has entered our households, our leisure zones and in many other different things that are associated with our lives and lifestyle. VoIP has helped the anxious mother stay in touch with her sons and daughters living abroad, on a day-to-day basis. VoIP has helped the wife to stay connected with her husband (touring to different countries) and ensure his well-being. VoIP has enabled the boyfriend (transferred to another country with job) to speak to his girlfriend for long hours. VoIP is helping us to do all that plus much more.
VoIP comes in various avatars. You can utilise VoIP services through your computer or laptop with Internet connection. Now you have VoIP enabled phones. Some VoIP phones come with Skype facilities while others have Messenger service. VoIP phones can be used both for chatting as well as calling. It is as simple as using Skype or Messenger through your computer. The only difference is that you do not require your laptop or desktop to use VoIP. All you need is an Internet connection; one can also use VOIP enabled phones for call termination.
Apart from VoIP phones, you can also use VoIP in Smartphones, PDAs and palmtops. These devices, some of them at least, come with ready VoIP facilities. However, an important thing to remember while deploying VOIP services is the Internet connection. You can get this connection through any VOIP service providers. There are numerous service providers out there. But you have to be careful while choosing one. You have to see the services provided by each of them and whether they can meet your requirements. Also, the rates part is important – do not forget to check that out. Having done that, you can select one service provider and enjoy VoIP facilities to your heart’s content.
VoIP Solution Providers: Easy Calling at Cheaper Rates
World is moving to IP solutions to meet their telecommunication needs. Big players of the vast industry like business or corporate houses are availing benefits of internet telephony for acquiring more profits. Companies offering IP services are commonly referred to as voice over IP providers while, protocols used for carrying voice signals over the IP network i.e. internet are known as Voice over internet protocol. The solutions that are offered by providers to access the long distance or international calling at minimal rates are referred to as VoIP solutions. These solutions vary from organisation to organisation, as it depends upon the size, operation and type of an organisation.
VoIP is a acronym for voice over internet protocol. It is a protocol optimised for transmitting, converting or switching voice, visual and data through the single IP network i.e., Internet. The IP network of VoIP is based on the packet switching technique of network. Like traditional Public Service Telephone Network or PSTN, a user enjoys making calls through voice over IP. In addition to equipments used in PSTN, it requires PC with internet connection and ATA or Analog telephone Adaptor. Hence, the initial installation cost as minimal as ATA is generally offered by the service provider. This process allows a user to enjoy long distance or international calls at reduced rate. Moreover, the services offered by the VoIP solution provider features cost efficiency, reliability, functionality, security and vision of scalability.
To brief about the process that the solution provider offers is based on the IP packet switching technique of network. VoIP digitalises telephony signals that are in analog format; this typically reduces the data rate using speech data compression technique as it encapsulates in a data packet stream over IP. This digital data is perfect for the Internet and helps to lower down the cost. Before reaching the destination, digital packets are reconverted into analog signals. Therefore, communication between the sender and receiver is like a normal calling.
Importantly, the key responsibility of VoIP solution providers should be to increase the output and expand the business arena. Thus, opt for a provider who offers wholesalers and retailers with some part of the IP switch at an affordable rate. In addition, operate their services around the clock i.e. 24×7x365.
Venturing in VoIP platform is considered as the best business for NEXT generation for reaping more profits. The telephony market is swamped with solution providers so while, making the selection always opt for the best services like high bandwidth, 3-way calling, ID caller, call forwarding or call transferring, storing incoming calls to voice mails, sending voice mail over e-mail attachment, network integration, functionality and security of service.
Is the Internet good or bad for democracy?
The Internet is extremely good for Democracy.
Certainly there are abuses or things that make some of us cringe.
There are people who sell other people on the Internet. There are people who organize themselves for the specific purpose of abusing children on the Internet.
Are these the majority if Internet users? No.
Have these things happened before the Internet? Yes.
The media tends to portray the Internet as this evil bogeyman where people go to destroy society and other people.
Not really. I tend to view it as great, because it allows many people who are not in the spotlight to get a spotlight if what they say resonates with others. It is a place where fans befriend artists and artists befriend fans.
The Internet is kind of like a magical world, in that you are not physically there but you can reveal yourself or make yourself known.
It is a perfect venue for a capitalist nation, and most capitalist nations tend to be more democratic, so the Internet lets the budding entrepreneur emerge.
Got some good ideas, you share them writing articles on Helium or doing your own blog.
You can use facebook, youtube, myspace, or any number of these sites to communicate and make yourself known.
The Internet is like a giant bulletin board for all human Interests.
And as you surf the Internet you will find many interests both too your liking and not so too your liking.
The Internet allows people to read about, experience, hear and see things they may have once been deprived because of money but now can do.
A computer can be a tv, dvd player, typewriter, videogame system, Pseudo-telephone(unless you count Vonage, which I do not know much about)an address book, a filing cabinet,an encyclopedia, so many diverse things.
People sharing information globally about their wants needs viewpoints and desires opens up wider ranges of communication internationally and allows people and the blue collar lower economic level to share and partake in, to experience, some of the many happenings of the world at large.
This is really good for democracy because it allows for a free, open ended discussion about existence on a personal, impersonal, selfish, unselfish, all new level of speaking and interaction.
The human race thus far has had nothing comparable to the Internet in terms of interactions.
The Internet crosses race, gender, sexual orientation, political, religious, and social backgrounds, it is a great equalizer in how it disseminates information, and for all its shortcomings reflect the ghosts in the machines by not being perfect.
For all of its flaws, the Internet is not bad for democracy, but great for it.
Anyone who thinks otherwise may be a fascist because they do not like the way others see the world.
If we all saw the world the same way it would be pretty boring.
Branded VoIP Reseller – a Money Making Opportunity
VoIP call termination technology has got huge potential which the industry is beginning to realize and this realization is followed with large number of industry players belonging to different sectors and scale along with residential users opting for this service. Slowly and steadily the users of voice over Internet Protocol or VoIP, as it popularly referred to as, are increasing as the users of traditional telephony or public switch telephony network are switching over VoIP.
The key difference between voice over internet protocol and PSTN is that VoIP uses World Wide Web to transmit the calls of using cable wires. There is tremendous opportunity for resellers in this rising new field especially for those who have sharpened marketing skills and a large client base to cater the service.
VoIP resellers act as an interface between the wholesale providers of VoIP and the end users. End users or residentials can utilize voice over IP service to reduce their cost of calls both long distance and international by almost half the cost. The most important leverage of this revolutionary technology is that it can be conveniently used from any location irrespective of the place you are connecting to the network from. Residentials can either use their computer along with a headset for making VoIP calls or they can even convert their traditional fixed line telephony system with the help of an analog adapter for making calls over the Internet. This analog adapter is usually provided for by the VoIP reseller.
Alternately, an IP phone can also be used which is connected to the computer for making calls. Wireless cell phones which transmit calls over the Internet have slowly started making an appearance in the market too.
Branded VoIP resellers have the advantage that everyone irrespective of demographic factor anyone can be their perspective client. Thus there is minimum risk involved in this venture. VoIP resellers have to make a considerable investment in order to help provide the telephony service to their clients. Thus, a certain level of investment as a start up cost is inevitable. However, there are certain established and peerless VoIP service providers who can help wave off this investment fee by proving all the infrastructure and software needed for call transmission to the switchless VoIP resellers.
Besides this, these set of providers also equip them with online billing software free of cost which helps the voice over IP resellers in maintaining a check on their clients account, their call duration, provide easy online recharge numbers among other features.
VoIP resellership is a great opportunity to increase the revenue generation for those with specialised marketing skills.
VoIP Phones Bid Pstn’s a Farewell
Choosing broadband phone over our good old LAN line phones may be is asking from us all, a little too much today! Is that about being a loyalist?
Well not exactly, our PSTN phones have longed served us as the only source of instant communication compared to letter writing etc all these years. To finally wake up and find PSTN’s replaced by not-so-familiar broadband phones and Internet phones can certainly be demanding.
To avoid any of that hurry-worry situation its best to make our choices based on facts, figures and convenience. This article educates us about the new age of telecommunications and alternative telephony solutions from VoIP that lead us to the 21st century solutions.
VoIP or Voice over Internet Protocol to we users is simply a technology that makes possible placing long distance calls over the Internet at price which are even less than LAN line phones at times. While VoIP technology can essentially be described as that, it is imperative to mention that the several other features of a VoIP phone make it must try/have however much you are attached to your LAN lines.
While considering VoIP for my use I had similar inhibitions but when I studied VoIP technology in detail, only then I could understand its advantages. VoIP is more efficient than your traditional phone system in many ways like:
Cost effectiveness: The most alluring feature of VoIP phones is the drastic reduction in phone bills that it facilitates. At low monthly fees with no associated costs VoIP phones come out to be cheaper than the most traditional phone networks.
Portability: VoIP has a portable system. You can use it either at home or while traveling. All you need is access to a high speed broadband connection.
Flexibility: VoIP is flexible. It adjusts well to your personal needs. You can upgrade your account as and when you desire all more lines to your connection etc.
Added Features: – Most of the added features on traditional phone networks are charged heavily for. VoIP phones carry inbuilt VoIP services like call waiting, caller id, call routing, video conferencing etc.
So if you are a frequent use of the phone and spend a fortune dialing long distance alls you may not want to think again! simply which to VoIP services and the pleasure of unlimited chit-chat across the globe.
Client-server : Computer Industries Newest and Hottest Buzzwords
Chapter-1
Introduction:-
Client/Server is one of the computer Industries newest and hottest buzzwords. There is no generic definition of client/server as it is used to depist number of nature, developing, and anticipateologies. However the general idea is that clients and servers are separate logical entities that work together Attention over a network to accomplish a task.
Client-server is very fashionable. As such, it might be just a temporary fad; but there is general recognition that it is something fundamental and far-reaching; for example, the Gartner Group, who are leading industry analysts in this field, have predicted that
“By 1995 client-server will be a synonym for computing.”
Most of the initial client/server success stories involve small-scale applications that provide direct or indirect access to transactional data in legacy systems. The business need to provide data access to decision makers, the relative immaturity of client/server tools and technology, the evolving use of wide area networks and the lack of client/server expertise make these attractive yet low risk pilot ventures. As organizations move up the learning curve from these small-scale projects towards mission-critical applications, there is a corresponding increase in performance expectations, uptime requirements and in the need to remain both flexible and scalable. In such a demanding scenario, the choice and implementation of appropriate architecture becomes critical. In fact one of the fundamental questions that practitioners have to contend with at the start of every client/server project is – “Which architecture is more suitable for this project – Two Tier or Three Tier?”. Interestingly, 17% of all mission-critical client/server applications are three tiered and the trend is growing, according to Standish Group International, Inc., a market research firm.
Architecture affects all aspects of software design and engineering. The architect considers the complexity of the application, the level of integration and interfacing required, the number of users, their geographical dispersion, the nature of networks and the overall transactional needs of the application before deciding on the type of architecture. An inappropriate architectural design or a flawed implementation could result in horrendous response times. The choice of architecture also affects the development time and the future flexibility and maintenance of the application. Current literature does not adequately address all these aspects of client/server architecture. This paper defines the basic concepts of client/server architecture, describes the two tier and three tier architectures and analyzes their respective benefits and limitations. Differences in development efforts, flexibility and ease of reuse are also compared in order to aid further in the choice of appropriate architecture for any given project.
Chapter-2
History & defintion:-
History
The University of Waterloo implemented Oracle Government Financials (OGF) in May of 1996. That moved UW’s core accounting systems to a vendor-supported package on a Solaris/Unix environment and away from locally developed package(s) on IBM/VM. Plans at that time were to move more (if not all) business systems to a single vendor and to standardize on a single Data Base platform (Oracle for both). A very large state of the art Solaris system was purchased with the intention of co-locating these other Oracle supplied services on the same system with the OGF. Network security architecture was planned that involved isolating administrative networks, fire walling those networks with protocol filters and active traffic monitoring. Systems were purchased and deployed to implement that security architecture.
Much has changed in the interim. While the OGF now includes more services beyond the 1996 suite the plans to move all business systems has failed. Notably, we require People Soft/HRMS (Human Resources Management System) for Payroll (deployed in fourth quarter 1998) with People Soft/SIS (Student Information Services) to follow some years hence—Oracle was unable to deliver these key components for our business. Also we’ve discovered, while it’s reasonable to require Oracle as the Data Base when other applications are specified, it’s unreasonable to expect that they will be certified with the same versions of the Oracle Data Base and/or the underlying operating system. Technology changes quickly too: the state of the art Solaris system is no longer current. Networks were restructured to isolate administrative systems in the “Red Room” and administrative users throughout the campus. However, the administrative firewall and active traffic monitor was never implemented – recently it’s been dismantled.
Definition:
Despite the massive press coverage of client/server computing, there is much confusion around defining what client/server really is. Client and server are software and not hardware entities. In its most fundamental form, client/server involves a software entity (client) making a specific request, which is fulfilled, by another software entity (server). Figure 1 illustrates the client/server exchange. The client process sends a request to the server. The server interprets the message and then attempts to fulfill the request. In order to fulfill the request, the server may have to refer to a knowledge source (database), process data (perform calculations), control a peripheral, or make an additional request of another server. In much architecture, a client can make requests of multiple servers and a server can service multiple clients.
Figure 1 – Client/Server Transactions
It is important to understand that the relationship between client and server is a command/control relationship. In any given exchange, the client initiates the request and the server responds accordingly. A server cannot initiate dialog with clients. Since the client and server are software entities they can be located on any appropriate hardware. A client process, for instance, could be resident on a network server hardware, and request data from a server process running on another server hardware or even on a PC. In another scenario, the client and server processes can be located on the same physical hardware box. In fact, in the prototyping stage, a developer may choose to have both the presentation client and the database server on the same PC hardware. The server can later be migrated (distributed) to a larger system for further pre-production testing after the bulk of the application logic and data structure development is complete.
Although the client and server can be located on the same machine, this paper is concerned primarily with architectures used to create distributed applications, i.e. those where the client and server are on separate physical devices. According to Beaver (et al.), a distributed application consists of separate parts that execute on different nodes of the network and cooperate in order to achieve a common goal. The supporting infrastructure should also render the inherent complexity of distributed processing invisible to the end-user. The client in client/server architecture does not have to sport a graphical user interface (GUI), however, the mass-commercialization of client/server has come about in large part due to the proliferation of GUI clients. Some client/server systems support highly specific functions such as print spooling (i.e. network print queues) or presentation services (i.e. X-Window). While these special purpose implementations are important, this paper is predominantly concerned with the distributed client/server architectures that demand flexibility in functionality
Chapter-3
Meaning of client-server:-
Business meaning of client-server:-
Client-server is generally perceived to be the next step forward in the operational effectiveness of business information systems. This is illustrated in figure 1, which indicates cumulative gains from a succession of innovations.
Business computing started in the 1960s with batch processing. The main innovation in the 1970s was on-line transaction processing (OLTP), which brought information technology (IT) to the desktop, and made it an integral part of business processes. Batch processing and OLTP in combination continue to be at the core of most enterprise’s information systems. Then in the 1980s came personal computing, which made IT universally affordable and dispersed it throughout business enterprises. Now in the 1990s, client-server is generally perceived to be the way of integrating the separate parts of information systems back together. That is its role and its importance.
Figure 1 Perceived business impact of client-server
In these circumstances client-server (or client/server) has become a popular brand name that is applied to almost every kind of product, and to all manner of business and technical insights and marketing messages. This tends to drain it of specific meaning; but in doing so, actually confirms its near-universal applicability.
Technical meaning of client-server:-
A useful starting point for understanding client-server is the informal definition used by the Gartner Group:
“Client-server is the splitting of an application into tasks that are performed on separate computers, one of which is a programmable workstation (e.g. a PC).”
This definition says that client-server is about distributed computing and software architecture (applications are split into tasks that may be on separate computers). It echoes the vital point that client-server is the way to integrate PCs into all kinds of information systems.
Three Generations of Messaging:
Host Based architecture (not a client/server architecture):
With mainframe software architectures all intelligence is within the central host computer. Users interact with the host through a terminal that captures keystrokes and sends that information to the host. Mainframe software architectures are not tied to a hardware platform. User interaction can be done using PCs and UNIX workstations. A limitation of mainframe software architectures is that they do not easily support graphical user interfaces or access to multiple databases from geographically dispersed sites. In the last few years, mainframes have found a new use as a server in distributed client/server architectures
Lan File sharing architecture (not a client/server architecture):-
The original PC networks were based on file sharing architectures, where the server downloads files from the shared location to the desktop environment. The requested user job is then run (including logic and data) in the desktop environment. File sharing architectures work if shared usage is low, update contention is low, and the volume of data to be transferred is low. In the 1990s, PC LAN (local area network) computing changed because the capacity of the file sharing was strained as the number of online user grew (it can only satisfy about 12 users simultaneously) and graphical user interfaces (GUIs) became popular (making mainframe and terminal displays appear out of date). PCs are now being used in client/server architectures
Internet Client Server Architecture:-
The goal for this class is to build a base of background knowledge that will underlie the rest of the course.
In many areas of technology, one gets the impression that the technology as always existed in its current form. But, of course, technology has a history just like any other natural or unnatural phenomenon. So it is for the Internet and the Worldwide Web. During this discussion, we will look first at some of the important developments that have taken- place over the past thirty years that have made the Internet what it is today. After reviewing this chronology, we will look at two of the underlying technologies that support the Internet. The first is Ethernet, the original local area network (LAN) technology and still one of the most prevalent communication systems used to connect computers that are within a few hundred yards of one another. The second is TCP/IP, the software standard that enables computers located around the world to direct messages to one another and to communicate reliably.
After discussing the Internet, we will then turn our attention to the World Wide Web, itself. The discussion begins with a review of its basic client/server architecture, in which a client program running on one computer communicates with a server program running on another to request some particular information or that some service is performed. The Web was built using a client/server architecture in which a Web browser (client) communicates with various Web servers to request pages of information or that a program be run through the server’s Common Gateway Interface (CGI). As the Internet/WWW becomes a more general computing and communications infrastructure, this strict client/server relationship is being expanded. One such expansion involves Java. More about these recent developments later in the course, but for now, we will concentrate on the Web’s classic client/server design.
The language Web clients and servers speak to one another is called HTTP (Hypertext Transfer Protocol). You will not have to learn HTTP in detail, but you will have to construct basic HTTP messages in order to do CGI programming and you should understand its underlying philosophy and its basic form and capabilities.
Chapter-4
Process:-
Client Process:-
The client is a process (program) that sends a message to a server process (program), requesting that the server perform a task (service). Client programs usually manage the user-interface portion of the application, validate data entered by the user, dispatch requests to server programs, and sometimes execute business logic. The client-based
Process is the front- end of the application that the user sees and interacts with. The client process contains solution-specific logic and provides the interface between the user and the rest of the application system. The client process also manages the local resources that the user interacts with such as the monitor, keyboard, workstation CPU and peripherals. One of the key elements of a client workstation is the graphical user interface (GUI). Normally a part of operating system i.e. the window manager detects user actions, manages the windows on the display and displays the data in the windows.
Server Process:-
A server process (program) fulfills the client request by performing the task requested. Server programs generally receive requests from client programs, execute database retrieval and updates, manage data integrity and dispatch responses to client requests. Sometimes server programs execute common or complex business logic. The server-based process “may” run on another machine on the network. This server could be the host operating system or network file server; the server is then provided both file system services and application services. Or in some cases, another desktop machine provides the application services. The server process acts as a software engine that manages shared resources such as databases, printers, communication links, or high powered-processors. The server process performs the back-end tasks that are common to similar applications.
Client-Server Computing:-
• Single client, single server
• Multiple clients, single server
Client/server is a computational architecture that involves client processes requesting service from server processes Client/server computing is the logical extension of modular programming. Modular programming has as its fundamental assumption that separation of a large piece of software into its constituent parts (”modules”) creates the possibility for easier development and better maintainability. Client/server computing takes this a step farther by recognizing that those modules need not all be executed within the same memory space. With this architecture, the calling module becomes the “client” (that which requests a service), and the called module becomes the “server” (that which provides the service). The logical extension of this is to have clients and servers running on the appropriate hardware and software platforms for their functions. For example, database management system servers running on platforms specially designed and configured to perform queries, or file servers running on platforms with special elements for managing files.
Network Computing Architecture:-
Oracle’s Network Computing Architecture (NCA) can be captured by three concepts:
1.The World Wide Web is a truly ubiquitous service.
2.The Java Virtual Machine is (or will soon become) a truly ubiquitous service embedded within the Web-browser.
3.A three-tiered model for application delivery with an Oracle Data Base engine (on a large Unix server), a light weight Java application on the client, and a mid-tier “forms” server to provide the gateway between the two.
Oracle began shipping Release 10.7 NCA (the web-deployed applications) in January 1998…. 2000 require
With Release 10.7 NCA, Oracle responded to customer feedback on the difficulty of patching in Smart Client. Although the functionality is the same between 10 SC and 10 NCA, Oracle returned in the web-deployed release to a more granular patching strategy. This strategy also better preserves customizations. Since the forms technology runs on the server in the web-deployed release, relining and regenerating after applying patches is now easier. Due to the differences in patching strategy, Oracle recommends customers not use Smart Client and Release 10.7 NCA in the same instance. Oracle will not support such a configuration. Customerncharactermode installations should migrate directly to the web-deployed release
chapter-5
Client-Server Technology:-
Client-server technology is best understood if we discuss it in four areas:
1.Personal platforms
2.Server platforms
3.Client-server middleware
4.Client-server tools and services
Each of these areas is distinctive, although there can be overlap between them.
The term platform is used here to refer to a computer platform that is a complete combination of hardware and operating system software.
Personal platforms:-
Personal platforms are perhaps the most distinctive area of client-server technology. We define a personal platform as:
A computer platform, which is connected to a network, provides a consistent and intuitive user interface and assisting a personal user to accomplish tasks on behalf of the enterprise.
These characteristics are illustrated in figure 2. Personal platforms are relatively inexpensive and immensely powerful, and there is a wide choice of suppliers. Many different kinds of computers can be personal platforms (e.g. MS/DOS PC, Windows PC, OS/2 PC, UNIX workstation, Apple Macintosh, and various hand-held devices); but the most common case today is an IBM-compatible PC with the Microsoft Windows operating system.
Such platforms are now universally affordable wherever they are needed. This has turned the architecture of computer systems inside out: the old focus was scarce resources in the central machine, remote from its users; the new focus is the abundant personal resources now at the fingertips of each individual user. This trend has ever-increasing force, because PC price/performance ratios continue to improve by a factor of two every eighteen months or so.
This change of focus aligns with changes in business structure: organizational hierarchies are being flattened, decision-making authority is being devolved, and IT-enabled processes can now provide processes that were formerly provided by office staff. A combined effect of these business and technical trends is personal empowerment of the individual at the desk.
PCs provide personal productivity and independence, but this individuality, multiplied by huge numbers of PCs, can also create anarchy. Client-server helps to resolve these problems. The client’s use shared resources (provided on server platforms), not just personal resources; client-server structure enables all the software and hardware resources to be under architectural and management control. It transforms personal computing into inter-personal computing and enterprise-wide computing. These characteristics help to create order, workgroup cohesion, productivity, and flexibility of business process.
Although personal platforms are the main economic and technical driving force for the move to client-server, they are only the first of the five technical ingredients identified at the start of section 2.
Server Platforms:-
We define a server platform as:
A computer platform on which software provides IT services for use elsewhere in the system.
Ultimately the services are for use at personal platforms; but services are also provided for use at other server platforms. A server platform may provide services via dependent terminals that do not qualify as personal platforms.
Almost all kinds of computer platform can act as server platforms. Therefore, there are many different suppliers, and many possible kinds of server platforms, from super computers to PCs. Each is good for particular kinds of workloads, for different qualitative requirements, and in different areas of the price and performance spectrum. User enterprises can select different platforms to match different needs.
This breadth of choice is illustrated in figure 3, which shows that the user at a personal platform may have access to services on many server platforms. This also illustrates the shift of focus onto the individual user at a personal platform, who may now choose IT services from many different sources elsewhere in the computer network.
The polarization of systems into client and server platforms recognizes distinctions between personal and shared resources. Each personal platform is an independent personal resource, which may be mobile and is exposed to risks of accidental loss or damage. Conversely, a server platform provides a protected, fixed, and carefully managed environment for shared resources.
Figure 3 many server platforms to choose from
Even where the same technology is used for client and server platforms (e.g. PCs with the same kind of hardware and operating system), these distinctions between personal and shared resources should be made. In the limit, the same machine may be both a personal platform and a server platform (e.g. in a peer-to-peer network; see 3.2). As always, the server role brings obligations to guarantee availability and integrity of the shared resources.
Client-Server middleware:-
We define client-server middleware as:
Packaged software to support the separate parts of client-server application software and enable them to work together.
This is by far the most complex area of client-server technology. By concentrating the complexity here we are able to keep the other areas relatively simple. It includes many kinds of function, each of which may itself be distributed, and most of which are inter-related. Some of the main areas are:
• Networking services
• Distributed application services
• Distributed systems management
• Distributed security
• Distributed object management
• User interface management
• Print management
• Data management
• Transaction management
• Workflow management
Figure 4 is a symbolic representation of this middleware support for client-server application software. It emphasizes the importance of middleware in enabling client-server technology to operate across the whole business scope relevant to the user’s tasks. This may involve interaction across departmental and functional boundaries, and perhaps across enterprise boundaries.
Figure 4 Client-server middleware
Client-Server tools and services:-
Client-server systems may be complex, but with well-integrated systems and well-designed user interfaces the technical complexity should not be visible to the user; it is essentially a problem for the application developer and service provider. They need software development tools and professional services to help manage and hide this complexity. Many of the tools and services needed are the same as always, but there are also needs specific to client-server systems.
An important general point is that for packaged (”shrink-wrapped”) application software, the user enterprise does not need program construction tools. Packaged client-server application products are now becoming widely available (e.g. distributed office and groupware applications, business accounting applications, personnel and payroll applications).
Another important trend is that different tools (and languages) are needed for different parts of modular application systems. The main distinctions are:
• User interface: languages and tools for construction of graphical user interfaces and any application logic intimately associated with them; e.g. GUI tools and Visual Basic.
• Database: languages and tools for the construction of databases, file systems and object stores, and construction of the application logic intimately associated with them; e.g. Data Manipulation Languages and Relational Database 4GLs.
• Business logic: languages and tools for the construction of application logic that is logically separate from user interfaces and databases; e.g. COBOL.
• Distributed processing: languages and tools specialized for distributed processing, and for spanning all the above functional areas (and other technological and organizational boundaries); e.g. Remote Procedure Call (RPC) tools.
• System management: methods and tools for electronic distribution of software, and operation and tuning of client-server systems.
Most of these tools are associated with the corresponding areas of middleware.
Chapter-6
Client-Server architecture:-
By looking back over the technology described in the previous section, three kinds of client-server architecture can be discerned.
Basic client-server:-
In basic client-server architecture, a personal or centralized application is split into two parts: a client part on a personal platform, and a server part on a server platform. The latter is often a shared resource, such as a filing service, a printing service, a database, or some application-specific function. The terms client and server are used to refer to the hardware platforms and the application software components (often somewhat ambiguously).
Basic client-server architecture is illustrated in figure 9 (and has already been shown in more detail in figure 6).
Figure 9 Basic client-server architecture
Basic client-server configurations are normally organized around a local area network (LAN). The whole assembly is usually described as a PC-LAN, and consists of many PCs for personal use (personal platforms), plus one or more shared PCs (server platforms). The local server platforms on these PC-LANs usually provide gateways into enterprise-wide and external networks, and to the servers on them. This is illustrated in figure 10.
Figure 10 a typical PC-LAN
Although primarily expressed in terms of PCs and PC-LANs, these basic client-server concepts are applicable to all kinds of computers and networks (e.g. PCs, UNIX, mainframes, LANs and WANs).
Beyond the basics:-
Beyond basic client-server there is peer-to-peer processing, co-operative processing and standalone processing.
The term peer-to-peer processing is used to refer to configurations in which there are no server platforms, and the server parts of applications are located on personal platforms. Networks operating on this basis are referred to as peer-to-peer networks. This is a low-cost way of implementing small PC-LANs, etc.; but the lack of separate server platforms reduces system integrity and leads to system management difficulties.
The term co-operative processing is used to refer to configurations in which application software is distributed over separate server platforms, and the client and server ends of interactions are both on server platforms. This includes interaction between separate applications, not just between parts of the same application.
The term stand-alone processing is used to refer to configurations in which all parts of an application are on one platform (usually a personal platform). Any client-server relationships between the parts are not externally visible.
People also use the terms peer-to-peer and co-operative processing interchangeably, and with various other meanings. This causes confusion and misunderstandings. There are also various other less well-known formulations such as server/requester and producer/consumer. All the main formulations are illustrated together in figure 11.
Figure 11 various formulations of client-server system structure
Unfortunately, many people sharply differentiate the other concepts from client-server (by which they really mean basic client-server). This obscures the vital point that all are variants within one unified structure: client-server architecture. It also leads to misleading statements to the effect that client-server (meaning basic client-server) is defunct, and is being superseded by other techniques such as co-operative processing.
General client-server architecture:-
A fundamental limitation of basic client-server and of all the formulations in 3.1 and 3.2 is that they define software configuration in ways dependent on hardware configuration. Furthermore, it is often ambiguous whether the terms client and server refer to the software or the hardware.
To escape from these limitations and ambiguities, client-server relationship in software should be defined independently of software location, and independently of any classification of the underlying hardware as clients or servers.
The essential clarification is that client and server are roles in which services are used and provided (respectively), and these roles occur in a relationship between autonomous building blocks. In such a relationship, one of the participants uses a service (it has the client role) and another provides the service (it has the server role). This is a client-server relationship. Large and flexible configurations can be built up by combination of these simple concepts. This is illustrated in figure 12.
Figure 12 Principles of client-server architecture
As indicated in the right hand side of the diagram, a building block may be both user and provider of services. Therefore, it may have client and server roles and may participate in many client-server relationships with other building blocks. It is client or server only in the context of the particular relationship considered.
The realization of client-server architecture in software is via programming languages and middleware (not shown in figure 12). The physical realization of client-server architecture consists of networks of separate computers; consequently the term client-server tends to become a synonym for distributed processing.
Client-server architecture is only incidentally about PCs, or use of any other particular kind of technology. However, in current circumstances, it is usually appropriate that client-server is viewed mainly in terms of exploiting PC technology (as in the Gartner definition which we started with in 1.2 above).
This general form of client-server architecture (autonomous building-blocks, client-server relationships, client role, server role) is a fundamental ingredient of OPEN framework application architecture.
Assumptions:-
1.One client is connected to at most one server at a time. [The customer later refuted this assumption.]
2.Replication is a secondary effect of the existing fat-client architecture; we assume that updates to one server are automatically propagated in a timely fashion.
3.A single client may have more than one session. [Replaced Assumption 1.]
4.All calculated columns (columns that represent behavior rather than aspects) are easily & quickly calculated on the server.
5.Deletion or insertion of a row forces a window update on the client.
6.Transmission of client-server traffic is out of scope.
chapter-7
Architecture Types:-
When considering a move to client/server computing, whether it is to replace existing systems or introduce entirely new systems, practitioners must determine which type of architecture they intend to use. The vast majority of end user applications consist of three components: presentation, processing, and data. The client/server architectures can be defined by how these components are split up among software entities and distributed on a network. There are a variety of ways for dividing these resources and implementing client/server architectures. This paper will focus on the most popular forms of implementation of two-tier and three-tier client/server computing systems.
Two-tier Architecture:-
Although there are several ways to architect a two-tier client/server system, we will focus on examining what is overwhelmingly the most common implementation. In this implementation, the three components of an application (presentation, processing, and data) are divided between two software entities (tiers): client application code and database server (Figure 2). A robust client application development language and a versatile mechanism for transmitting client requests to the server are essential for a two-tier implementation. Presentation is handled exclusively by the client, processing is split between client and server, and data is stored on and accessed via the server. The PC client assumes the bulk of responsibility for application (functionality) logic with respect to the processing component, while the database engine – with its attendant integrity checks, query capabilities and central repository functions – handles data intensive tasks. In a data access topology, a data engine would process requests sent from the clients. Currently, the language used in these requests is most typically a form of SQL. Sending SQL from client to server requires a tight linkage between the two layers. To send the SQL the client must know the syntax of the server or have this translated via an API (Application Program Interface). It must also know the location of the server, how the data is organized, and how the data is named. The request may take advantage of logic stored and processed on the server, which would centralize global tasks such as validation, data integrity, and security. Data returned to the client can be manipulated at the client level for further sub selection, business modeling, “what if” analysis, reporting, etc.
Figure 2 – Data Access Topology for two-tier architecture. Majority of functional logic exists at the client level
The most compelling advantage of a two-tier environment is application development speed. In most cases a two-tier system can be developed in a small fraction of the time it would take to code a comparable but less flexible legacy system. Using any one of a growing number of PC-based tools, a single developer can model data and populate a database on a remote server, paint a user interface, create a client with application logic, and include data access routines. Most two-tier tools are also extremely robust. These environments support a variety of data structures, including a number of built in procedures and functions, and insulate developers from many of the more mundane aspects of programming such as memory management. Finally these tools also lend themselves well to iterative prototyping and rapid application development (RAD) techniques, which can be used to ensure that the requirements of the users are accurately and completely met.
Tools for developing two-tier client/server systems have allowed many IS organizations to attack their applications backlog, satisfying pent-up user demand by rapidly developing and deploying what are primarily smaller workgroup-based solutions. Two-tier architectures work well in relatively homogeneous environments with fairly static business rules. This architecture is less suited for dispersed, heterogeneous environments with rapidly changing rules. As such, relatively few IS organizations are using two-tier client/server architectures to provide cross-departmental or cross-platform enterprise-wide solutions
Since the bulk of application logic exists on the PC client, the two-tier architecture faces a number of potential version control and application re-distribution problems. A change in business rules would require a change to the client logic in each application in a corporation’s portfolio, which is affected, by the change. Modified clients would have to be re-distributed through the network – a potentially difficult task given the current lack of robust PC version control software and problems associated with upgrading PCs that are turned off or not “docked” to the network.
System security in the two-tier environment can be complicated since a user may require a separate password for each SQL server accessed. The proliferation of end-user query tools can also compromise database server security. The overwhelming majority of client/server applications developed today are designed without sophisticated middleware technologies, which offer increased security. Instead, end-users are provided a password, which gives them access to a database. In many cases this same password can be used to access the database with data-access tools available in most commercial PC spreadsheet and database packages. Using such a tool, a user may be able to access otherwise hidden fields or tables and possibly corrupt data.
Client tools and the SQL middleware used in two-tier environments are also highly proprietary and the PC tools market is extremely volatile. The client/server tools market seems to be changing at an increasingly unstable rate. In 1994, the leading client/server tool developer was purchased by a large database firm, raising concern about the manufacturer’s ability to continue to work cooperatively with RDBMS vendors, which compete with the parent company’s products. The number two-tool maker lost millions and has been labeled as a takeover target. A firm also in the midst of severe financial difficulties and management transition supplies the tool, which has received some of the brightest accolades in early 1995. This kind of volatility raises questions about the long-term viability of any proprietary tool an organization may commit to. All of this complicates implementation of two-tier systems – migration from one proprietary technology to another would require a firm to scrap much of its investment in application code since none of this code is portable from one tool to the next.
Three tier:-
Most sophisticated Web based applications, which involve data entry, are based on a 3 tier client server architecture. The 3 tiers are
• The Client (Web Browser)
• The Web Server/Application Server
• The Database Server
The tree tier architecture (Figure 3) attempts to overcome some of the limitations of the two-tier scheme by separating presentation, processing, and data into separate, distinct software entities (tiers). The same types of tools can be used for presentation as were used in a two-tier environment, however these tools are now dedicated to handling just the presentation. When the presentation client requires calculations or data access, a call is made to a middle tier functionality server. This tier can perform calculations or can make requests as a client to additional servers. The middle tier servers are typically coded in a highly portable, non-proprietary language such as C. Middle-tier functionality servers may be multi-threaded and can be accessed by multiple clients, even those from separate applications.
Although three-tier systems can be implemented using a variety of technologies, the calling mechanism from client to server in such as system is most typically the remote procedure call or RPC. Since the bulk of two-tier implementations involve SQL messaging and most three-tier systems utilize RPCs, it is reasonable to examine the merits of these respective request/response mechanisms in a discussion of architectures. RPC calls from presentation client to middle-tier server provide greater overall system flexibility than the SQL calls made by clients in the two-tier architecture. This is because in an RPC, the requesting client simply passes parameters needed for the request and specifies a data structure to accept returned values (if any). Unlike most two-tier implementations, the three-tier presentation client is not required to “speak” SQL. As such, the organization, names, or even the overall structure of the back-end data can be changed without requiring changes to PC-based presentation clients. Since SQL is no longer required, data can be organized hierarchically, relationally, or in object format. This added flexibility can allow a firm to access legacy data and simplifies the introduction of new database technologies.
Figure 3 – Three-Tier Architecture. Functionality servers handle most of the logic processing. Middle-tier code can be accessed and utilized by multiple clients
In addition to the openness stated above, several other advantages are presented by this architecture. Having separate software entities can allow for the parallel development of individual tiers by application specialists. It should be noted that the skill sets required to develop c/s applications differ significantly from those needed to develop mainframe-based character systems. As examples, user interface creation requires an appreciation for platform and corporate UI standards and database design requires a commitment to and understanding of the enterprise’s data model. Having experts focus on each of these three layers can increase the overall quality of the final application.
The three-tier architecture also provides for more flexible resource allocation. Middle-tier functionality servers are highly portable and can be dynamically allocated and shifted as the needs of the organization change. Network traffic can potentially be reduced by having functionality servers strip data to the precise structure required before distributing it to individual clients at the LAN level. Multiple server requests and complex data access can emanate from the middle tier instead of the client, further decreasing traffic. Also, since PC clients are now dedicated to just presentation, memory and disk storage requirements for PCs will potentially be reduced.
Modularly designed middle tier code modules can be re-used by several applications. Reusable logic can reduce subsequent development efforts, minimize the maintenance workload, and decrease migration costs when switching client applications. In addition, implementation platforms for three tier systems such as OSF/DCE offer a variety of additional features to support distributed application development. These include integrated security, directory and naming services, server monitoring and boot capabilities for supporting dynamic fault-tolerance, and distributed time management for synchronizing systems across networks and separate time zones.
There are of course drawbacks associated with a three-tier architecture. Current tools are relatively immature and require more complex 3GLs for middle tier server generation. Many tools have under-developed facilities for maintaining server libraries – a potential obstacle for simplifying maintenance and promoting code re-use throughout an IS organization. More code in more places also increases the likelihood that a system failure will effect an application so detailed planning with an emphasis on the reduction/elimination of critical-paths is essential. Three tiers brings with it an increased need for network traffic management, server load balancing, and fault tolerance.
For technically strong IS organizations servicing customers with rapidly changing environments, three tier architectures can provide significant long-term gains via increased responsiveness to business climate changes, code reuse, maintainability, and ease of migration to new server platforms and development environments.
Comparing two and three tire development efforts:-
The graphs in Figures 4-6 illustrate the time to deployment for two tiers vs. three tier environments. Time to deployment is forecast in overall systems delivery time, not man-hours. According to a Deloitte & Touche study, rapid application development time is cited as one of the primary reasons firms chose to migrate to client/server architecture. As such, strategic planning and platform decisions require an understanding how development time relates to architecture and how development time changes as an IS organization gains experience in c/s.
Figure 4 – Initial Development Effort
Figure 4 shows the initial development effort forecast to create comparable distributed applications using the common two tier and three tier approaches discussed above. The three tier application takes much longer to develop – this is due primarily to the complexity involved in coding the bulk of the application logic in a lower-level 3GL such as C and the difficulties associated with coordinating multiple independent software modules on disparate platforms. In contrast, the two-tier scheme allows the bulk of the application logic to be developed in a higher-level language within the same tool used to create the user interface.
Figure 5 – Subsequent Development Efforts
Subsequent development efforts may see three-tier applications deployed with greater speed than two tier systems (Figure 5). This is entirely due to the amount of middle-tier code, which can be re-used from previous applications. The speed advantage favoring the three-tier architecture will only result if the three-tier application is able to use a sizable portion of existing logic. Experience indicates that these savings can be significant, particularly in organizations, which require separate but closely related applications for various business units. Re-use is also high for organizations with a strong enterprise data model because data-access code can be written once and re-used whenever similar access needs arise across multiple applications. The degree of development time reduction on subsequent efforts will grow as an organization deploys more c/s applications and develops a significant library of re-usable, middle-tier application logic.
Figure 6 – Client Tool Migration
Figure 6 makes the important case for code savings when migrating from one client development tool to another. It was stated earlier that client tools are highly proprietary and code is not portable between the major vendor packages. The point was also made that the PC tools market is highly volatile with vendor shakeouts and technical “leapfrogging” commonplace. In a two-tier environment, IS organizations wishing to move from one PC-based client development platform to another will have to scrap their previous investment in application logic since most of this logic is written in the language of the proprietary tool. In the three-tier environment this logic is written in a re-usable middle tier, thus when migrating to the new tool, the developer simply has to create the presentation and add RPC calls to the functionality layer.
Flexibility in re-using existing middle-tier code can also assist organizations developing applications for various PC client operating system platforms. Until recently there were very few cross-platform client tool development environments and most of today’s cross-platform solutions are not considered “best-of-breed”. In a three-tier environment separate client tools on separate platforms can access the middle tier functionality layer. Coding application logic once in an accessible middle tier decreases the overall development time on the cross-platform solution and it provides the organization greater flexibility in choosing the best tool on any given platform.
The characteristics of client/server architecture:-
The basic characteristics of client/server architectures are:
1) Combination of a client or front-end portion that interacts with the user, and a server or back-end portion that interacts with the shared resource. The client process contains solution-specific logic and provides the interface between the user and the rest of the application system. The server process acts as a software engine that manages shared resources such as databases, printers, modems, or high-powered processors.
2) The front-end task and back-end task have fundamentally different requirements for computing resources such as processor speeds, memory, disk speeds and capacities, and input/output devices.
3) The environment is typically heterogeneous and multiFinder. The hardware platform and operating system of client and server are not usually the same. Client and server processes communicate through a well-defined set of standard application program interfaces (API’s) and RPC’s.
4) An important characteristic of client-server systems is scalability. They can be scaled horizontally or vertically. Horizontal scaling means adding or removing client workstations with only a slight performance impact. Vertical scaling means migrating to a larger and faster server machine or multiservers.
Client-server applications:-
We define a client-server application as:
An application system in which logically separate software components are integrated together via client-server relationships.
In a client-server relationship, one part of an application (the client end) uses a service provided by the other part (the server end). The latter is often a shared resource, used by many clients. Although integrated together via the client-server relationship, the parts remain separate. We refer to them as being logically separate because they need not be physically remote from one another (they might be in the same computer).
We describe client-server application software here in three steps: splitting an application, joining separate applications together, and distributed application structure
Splitting an application:-
Figure 5 Application software modularity
There are many ways of partitioning application software into separate components. However, the content of most applications can usually be classified under three different technical headings: data management, application logic and presentation. This is illustrated in figure 5.
If the application is to be split into two parts (one part on a client platform, the other on a server platform), the split can be made at either of the two boundaries between functions, or inside one of the three functions. Consequently there are five main ways of splitting a centralized or personal application into two parts between which there is a client-server relationship. This is the basis of the popular classification into five client-server styles, which is promoted by the Gartner Group. It is illustrated in figure 6.
Figure 6 Five generic styles of basic client-server structure
The details need not concern us here. The important point is that different styles suit different needs and circumstances:
• The two styles on the left of the diagram are typical of centralized interactive applications that have been adapted to client-server by means of graphical interface technology, terminal emulation, etc.
• The style in the middle of the diagram is typical of object-oriented distributed applications and distributed TP applications in which data and function are encapsulated together behind application interfaces
• The two styles on the right of the diagram are typical of data-centered applications using client-server 4GL development tools and relational database products
Some applications combine all three areas of function (presentation, application logic and data management) at the personal platform. Also, different styles may occur in combination at the same platform.
Joining applications together:-
One of the great strengths of client-server is the ability to join separate applications together. This can be done in many ways; but upon the principles used in 2.4.1, there are essentially three levels at which applications can interface with one another. This is illustrated in figure 7.
Figure 7 Three levels at which applications can be joined together
The main characteristics and advantages and disadvantages of these three approaches are:
• At presentation level: Interaction at this level is achieved via direct data exchange (DDE) within a window management system, or via scripting; see [Duxbury, 1994], in which software uses an application’s user interface by simulating a human user. This kind of technique is often referred to as screen scraping. It is very useful for accessing legacy applications, but leads to software maintenance problems if the user interfaces need to change.
• At application function level: Interaction at this level is in terms of business functions. Therefore, the inter-application requests are about the business meanings of the application (and not its presentation or database encoding). This has the advantage of keeping their internal designs separate from their external interactions. There are fewer software maintenance problems.
• At data management level: Interaction at this level is by direct access to the other application’s database. This is common practice, but leads to software maintenance problems when application data structures change.
The first and third approaches inhibit potential for change, the second does not. Further distinctions can be made between direct and indirect interaction between applications, synchronous and asynchronous interaction, and externally programmed interaction and internally programmed interaction.
Distributed application structure:-
Distributed applications are evolving towards richly connected network structures of the kind illustrated in figure 8. The circles represent separate software components, and the lines represent client-server relationships between them. This is typical of the kind of structure that results from use of object-oriented design and distributed object management.
Figure 8 Complex distributed application
There is also large-scale structure of distributed application systems (within which the individual client-server relationships occur). Typically, three tiers of application software can be discerned in the large-scale structure:
• Front tier: Application software (and databases) at personal platforms, providing all kinds of application services, using local resources and remote resources. Typically, the platforms are PCs. This tier is where the greatest amount of computer power and of new application software is now being deployed.
• Middle tier: Application software (and databases) at server platforms, providing the back-end of personal applications, shared workgroup services and task-oriented services. Typically, the platforms are UNIX or PC. This tier provides rapid adaptation to business process change, without needing changes to the back tier. It puts boundaries around the turbulence and uncertainty generated in the volatile world at the first tier, where all the users are. It also provides lateral linkage across the enterprise (e.g. electronic mail services).
• Back tier: Application software and databases at server platforms providing corporate information services. These are usually functionally partitioned (e.g. accounts, manufacturing, personnel). Typically, the platforms are mainframes. This tier provides the core of shared and long-lived information assets that everything else depends on. There are strong guarantees of data integrity, and the applications and databases are stable, and their design changes rather slowly.
This structure separates different kinds of concerns, which used to be bundled together in centralized computing
chapter-8
Important of client server:-
Advantages of Client-Server:-
ØPotential of reduced cost
ØImproved performance
ØIncreased security
ØMore GUI application
ØGives people the opportunity to make change for better
ØBetter SW development tools once established
ØExploits existing H/W, S/W configurations
ØMatches distributed business models
ØScalable
ØFlexibility and cost saving
ØFlexibility business modeling
ØMaximum technology component choice
ØEfficient use of computing resources
ØData interchangeability and interoperatability
ØEnhanced data sharing
ØIntegrated services
ØSharing resources among devices platforms
ØLocation independence data and process
ØTechnology revolution
ØFuture technology
ØRelational databases
ØDisadvantages of Client-Server:-
ØHeavy up-front cost
ØInitial performance decline
ØLack of skilled professionals
ØNeed of rewrite a lot of software
ØNeed for retraining user
ØDependability- when the server goes down, operational cases
ØLack of mature tools
ØLack of the scalability-network operating system (e.g. novel NetWare, window NT server) are not very scalable
ØHigher then anticipated costs
ØHarder to build
ØLess stable
ØSusceptible to network load
ØLacking in the specialists
ØDifficult to debug
ØDifficult to test
Client/Server Business Application Architectures:
Traditional applications architectures have been based on function today, to meet the needs of the business an application architecture should reflect the complete range of business requirements.
Therefore, client/server computing demands a three layer view of the
organization.
1 The user interface layer, which implements the functional model
2 The business function layer, which implements the process model
3 The data layer, which implements the information model
It should be noted that this application architecture does not demand multiple hardware platforms, although such technology can be utilised,if the environment is robust and reliable enough and the business is prepared to pay the additional costs associated with workstation and LAN technology.
Business Benefits:
– There is a perceived need for vendor independence. This includes application development methodologies, programming paradigms, products and architectures. – Organization have changed from steep hierarchies to flattened hierarchies – Network management is replacing vertical management – There is a change to team based management – The customer should have a single point of contact for all business with the organization – The customer should deal with the same person over multiple contacts. – The user will perform as much processing as possible during customer contact time – The time required to complete the work will be minimized – There is a need for empowerment of staff and audit trail of actions – Multi-skilled and multi-function teams need access to multiple applications
Different types of servers:-
The simplest form of servers are disk servers and file servers. With a file server, the client passes requests for files or file records over a network to the file server. This form of data service requires large bandwidth and can slow a network with many users down considerably. Traditional LAN computing allows users to share resources, such as data files and peripheral devices, by moving them from standalone PCUs onto a Networked File Server (NFS).
The more advanced form of servers are database servers, transaction server and application servers (Orfali and Harkey 1992). In database servers, clients pass SQL (Structured Query Language) requests as messages to the server and the results of the query are returned over the network. The code that processes the SQL request and the data resides on the server allowing it to use its own processing power to find the requested data, rather than pass all the records back to a client and let it find its own
Data as was the case for the file server. In transaction servers, clients invoke remote procedures that reside on servers, which also contain an SQL database engine. There are procedural statements on the server to execute a group of SQL statements (transactions), which either all succeed or fail as a unit. The applications based on transaction servers are called On-line Transaction Processing (OLTP) and tend to be mission-critical applications, which require 1-3 second response time, 100% of the time and require tight controls over the security and integrity of the database. The communication overhead in this approach is kept to a minimum as the exchange typically consists of a single request/reply (as opposed to multiple SQL statements in database servers). Application servers are not necessarily database centered but are used to server user needs, such as.
Download capabilities from Dow Jones or regulating a electronic mail process. Basing resources on a server allows users to share data, while security and management services, which are also based in the server, ensure data integrity and security.
Special types of Architecture:
IBM’s System Application Architecture:
SAA is a collection of selected software interfaces, conventions, and protocols that are used as a framework for developing consistent, integrated applications across the major IBM computing environments.
– Common User Access (CUA) defines conventions for GUI look and feel.
– Common Programming Interface (CPI) provides languages, tools, and APIs that give applications greater portability and more consistent user interfaces across multiple platforms.
– Common Communication Support (CCS) supports existing communications standards, such as LU 6.2.
– Common Applications, written by IBM, will serve as demonstrations of SAA concepts
Sexual Harassment and Sexual Discrimination when working Internationally
Since ancient times women have been viewed, in many cultures, as men’s inferiors physically, morally, and intellectually. Today, in western cultures, women enjoy more freedom and equality than ever before in history. Despite the gains made by women in recent years, particularly in the U.S., many women worldwide still find that their access to education, employment, healthcare and political influence are limited because of their gender. These discrepancies continue to exist because many societies still maintain centuries-old social and religious laws, customs, and traditions that have created barriers to education, jobs, and healthcare, as well as deprive women of their political and civil rights.
Sexual Harassment
Sexual harassment is usually defined as a form of discrimination in which sexual advances or requests for sexual favors constitute a condition of a person’s employment or advancement in the workplace. It frequently occurs between a male and a female, often instigated by a male manager or other person in power. While many countries are starting to have laws against such discrimination, it is often reported that the laws are not enforced.
Sexual harassment occurs in workplaces worldwide, including the United States. Laws that specifically prohibit sexual harassment have been enacted in Argentina, Australia, Canada, France, Germany, Israel, Mexico, the Netherlands, the United Kingdom and the United States, but many other countries are still in the process of studying the problem. There are two types of sexual harassment defined by U.S. law: quid pro quo and hostile environment. Quid pro quo means that an employee is asked to perform a sexual act in exchange for a job, promotion, or other perk. A “hostile environment†is described as one which contains situations, acts, or items that can inhibit the productivity of an employee, such as sexually suggestive language, behavior, or pictures.
Some strategies (as discussed in more detail below) for employees who experience sexual harassment include confronting the individual by informing him or her of the intrusive behavior and requesting that he or she stop it, notifying management or, should management be the offender, notifying the personnel department or the Equal Employment Opportunity Commission (EEOC). (In the United States, call toll free 800-669-EEOC or see www.eeoc.gov to find your local office.) The EEOC will be able to provide you with written guidelines for determining what constitutes sexual harassment and how to deal with it.
Sexual Discrimination
The American businesswoman may unwittingly and unavoidably be party to conversations and actions that discriminate against women. For example, in Asian businesses it is natural to ask a female employee to serve tea, and a woman may be subjected to innocent questions about her age, marital status, and whether or not she has children. In Korea and Japan, protocol has men entering rooms and elevators ahead of women. In Europe, office talk tends to be more flirtatious and sexual in nature, sprinkled with many off-color jokes and puns. Derogatory statements about women in Germany are often expressed openly in the office, and reference to a woman’s physique is not uncommon in Italy and France. Other countries still view a woman who is alone as a prostitute since otherwise her husband, boyfriend or family would accompany her. American women often view excessive flattery by Latin Americans as derogatory because U.S. office policies would not tolerate such comments.
Some women report that suggestive sexual comments are sometimes used (consciously or unconsciously) as negotiating tools in an attempt to throw a woman off her guard. Women must be prepared for this and develop the ability to keep control and not show anger or other emotion. Some tactics women have used successfully to respond to such situations include: giving a polite verbal reprimand to remind your counterparts that you are conducting a business session; suggesting a break while stating the negotiation has obviously gotten off track; or ending the negotiation in its entirety to show absolute intolerance and disapproval.
Gender Issues in Europe
Most women in Europe are still battling the glass ceiling even more than women in the U.S. There are fewer women in upper management and more hierarchical issues with which to grapple. Furthermore, European women are still expected to handle all responsibilities relating to home and family. This interferes with their ability to hold down a job unless they are wealthy enough to have hired help at home. Shopping hours are still not convenient for working women and day care is often not available. Younger women do not have the role models of older women in the business world, so they must often work harder to establish credibility and to break into the upper ranks of business. Derogatory comments about women appear to be more accepted by the public. For example, in England the derogatory terms “cow†and “bird†are widely used, even on TV, and in films, to refer to women. In France and Italy it is not unusual for males to touch women inappropriately.
Gender Issues in Asia
Asian culture has traditionally placed more value on male offspring and on the male roles of ruler, protector, cultivator, and breadwinner. The male is out in the world, while the female remains at home to manage the household and raise the children. Asian males have consequently been in a dominant position over Asian women and have largely controlled their means of livelihood.
Centuries ago male philosophers, China’s elite, developed precepts of behavior — notably passivity and obedience — that women were expected, or forced, to follow. Women were subordinated to their fathers, brothers, husbands, and even sons. Historically, marriages in Asia were arranged not for love, but for family connections. The bride usually lived under the domination of the husband’s mother and frequently faced competition from secondary wives and concubines. Her husband was allowed to repudiate his wife, especially if she did not produce a male heir. If the husband died, the wife could not easily remarry. She had no economic independence, was frequently illiterate, and had no property rights. Infanticide limited the number of female children.
Today, Asian countries continue to be patriarchal societies with strong traditions. When a woman marries, she generally joins her husband’s family, and her ties with her own family weaken. The couple either lives with the husband’s family or, as is occurring more frequently, on its own. If there is a divorce, the father often gets custody of the children. Divorce is considered shameful and is rarely discussed. Divorce rates, which used to be very low in East Asia, are growing however, as women become more economically independent.
There is an old Chinese saying: “Women are the moon reflecting the sunlight,†meaning women reflect the glow of men. Young, educated East Asian women increasingly reject this old saying. They emphasize their individuality, independence, personal responsibility, hard work, and careers, even as they try to maintain their femininity. Yet the few recent studies of Asian women indicate that many still feel inferior to men and worry about managing a career and a family. Job discrimination is still practiced in Asia. “Family connections†are very important in obtaining desirable jobs. Stereotyping women as the weaker, less capable sex still prevails.
Gender Issues in Latin America
The concept of “machismo†is important in Mexico and other Latin American countries, although American businesswomen will encounter more macho attitudes in Mexico than in any other a part of Latin America. The word “macho” does not carry a negative connotation in Mexico, as it does in the U.S. For a Mexican, the word “macho” implies strength, valor, self-confidence and masculinity, which are all considered positive qualities. There is also an underlying assumption in the culture that men are supposed to be stronger, braver, wiser and more sexually knowledgeable than women. Displays of machismo include: showing courage in a bullring, risk-taking, taking part in bar room confrontations, and displaying sexual prowess by bragging about sexual conquests or by having a large family. To be macho also requires the repudiation of all characteristics considered feminine, such as unselfishness, kindness, frankness and truthfulness.
The proof of a man’s maleness in this culture is his ability to completely dominate his wife and his children and to have sexual relations with any woman he desires. A double moral standard exists between the fidelity expectations placed upon males and females in Mexico and Latin America. A woman’s primary obligation is to make a home and procreate; she is dedicated to a life of service and no infidelity on her part is tolerated. However, men who maintain mistresses are within their legal rights as long as they are discreet about their affairs. A man can frequently divorce his wife if she commits adultery, but the wife can only divorce her husband if the act took place in their home.
Macho men will often express an air of superiority when it comes to dealing with American women in business. They may be overly polite and attentive to a woman, but in a patronizing way. Machismo may be expressed in terms of canceled, forgotten, or ignored meetings, and other frustrations and delays. Businesswomen, especially when traveling alone, should expect a high likelihood of unwelcome sexual advances. Examples of this include: overly long eye contact, the pressing of legs under the table, and an overemphasis on how appealing a woman looks. Most businesswomen advise against entertaining a man alone. Instead, they suggest that a group be arranged. They also emphasize that a woman should establish herself as a businesswoman even at her hotel, and dress conservatively in business suits.
Strategies for Coping
It is important for you, your team, and your managers to understand the strategies you should pursue if you find yourself in a compromising situation. Managers should be well-versed on their responsibilities in cases where women have been harassed, and they should understand how to act in accordance with company policy and governing laws. It is important to realize, for example, that an executive team based in the home office in the United States is actually legally responsible for the actions of their employees worldwide, including in subsidiaries in foreign countries.
Working in the international arena can be challenging. Many foreign countries have no laws or regulations concerning sexual harassment, or they are not enforced, and as a result employees in many countries do not understand the American viewpoint. As a result, male managers in the U.S. who are unfamiliar with more traditional societies may avoid sending female staff members to represent their companies to these cultures, fearing that these businesswomen cannot be effective in male-oriented societies. This viewpoint, however, may be keeping these executives from using what is in fact their strongest asset, since women’s perceived attributes — being good listeners, mediators, and consensus builders — are well-received in international business. Male managers only need to become knowledgeable about the situation in other countries and what their responsibilities are in the event of sexual harassment. They can then send their female staff members with confidence.
U.S. courts (see www.eeoc.gov) offer some legal remedies and suggestions for handling discrimination and harassment situations: “The (U.S.) courts have established that corporations that assign a U.S. citizen to a post in a foreign country must treat that employee as if he or she were in the U.S., regardless of local customs and traditions.†Recent Supreme Court cases suggest several legal/human resource strategies that can be used to prevent gender discrimination. The first is: “to educate and prepare employees sent to work in different countries abroad. Should a dispute arise, arbitration or mediation is preferred over litigation. The best overall strategy is to develop and implement a well-conceived company policy that ensures gender equality†(Cava, A. & Mayer, D., 1993).
Management Responsibility
The elimination of sexual harassment starts at home. If your company doesn’t have a company policy on discrimination and sexual harassment at home, there will be little to back you up if you find yourself facing such situations in the international environment. Top management must therefore take a proactive role in eradicating it from the workplace. There are many good reasons for doing so. Sexual harassment can reduce employee productivity and morale, and consequently it can have a negative impact on a company’s bottom line, as well as cost firms a great deal in lawsuits.
It is the responsibility of the executive staff to eliminate sexual harassment. Top management must instruct its staff that sexual harassment is illegal and will not be tolerated.. Issuing sexual harassment policies, scheduling open discussions, expressing disapproval, creating a path for resolution and complaint, and respecting individual privacy should all be part of the top management plan. A comfortable environment with open, company-wide communication is key to alleviating any inhibitions employees may have about discussing their experiences.
As a first step, a company needs a visible, comprehensive policy emphasizing the importance of appropriate behavior: harassment and social misconduct toward its employees will not be tolerated. This policy should also state the ramifications of any violations. Hard copies of the company policy should be distributed not only internally but also to customers and suppliers. A copy of the policy should be available to all employees and visibly posted in work and rest areas. The company should have training programs for its management staff and its employees on a regular basis.
If you are in management, you can play a key role. Do not overlook or refuse to acknowledge that problems can occur in other countries, because this will only help reinforce their acceptance. If one of your traveling staff is harassed, it will interfere with the productivity of your business dealings. Harassment also violates U.S. law. It is frustrating for an individual who has faced sexual harassment to work with or for staff who do not understand the seriousness of the offense, or travel with a manager who does not speak or act on behalf of employees.
Individual Responsibility
Prepare yourself for the possibility of encountering sexual harassment when you travel abroad. When you are visiting countries that are male-dominated and still have little awareness of women’s rights, your actions may actually have a greater impact on foreign men than written policies. In these situations, men won’t expect women to assert themselves, and if you strongly voice your disapproval of inappropriate behavior, these men will often back down. Also, most businessmen would not want to lose a business deal by offending someone.
Most women report that while their business days go smoothly, the after-hours socializing that occurs in some countries can become a challenge. It is still common, for example, for Asian men to go out drinking after work. While drinking, they feel more comfortable about voicing their inner feelings. If you are the lone woman in your group, you may become the target for questions that would not be asked during working hours. In Asia, drinking excuses what Americans may consider appallingly inappropriate behavior. While the American may remain upset if he or she feels anything untoward has occurred during an evening, the incident is generally ignored by the Asian participants the next day as they carry on with business as usual. In Latin America, women are often the targets of flattering comments about their appearance by Latin American men, sometimes to the point that it feels intrusive to the women.
Should you be subjected to what you feel is sexual harassment, remain calm and professional. This attitude will have much more impact than if you become upset or angry. In many cases men may have been trying to incite you or test your resilience. In most cases you can either respond with a calm statement of disapproval, or you can show your disapproval by remaining silent. If you are in a situation that has become particularly unpleasant, you can always leave.
If you are traveling overseas on business and have been accosted, you are still protected as an employee of an U.S. firm, and should take action in accordance with your firm’s sexual harassment policy. It is always best to report the incident rather than being passive and keeping it to yourself. This way, if the perpetrator is an employee of your firm, he can be corrected or reprimanded, and if he is employed by another firm, at least your executives will be aware of the issue when deciding whether to enter further business dealings with that company.
Be Prepared
• If you are single, avoid talking about your personal lifestyle or dating, as these subjects can lead to uncomfortable conversations. In particular, do not discuss your marital situation if you are divorced or living with someone.
• If you feel that a conversation is inappropriate, don’t respond. Just change the subject.
• Avoid situations where any unwanted intimacy may be initiated, such as dinners for two.
• Be careful that your actions cannot be interpreted as being either aggressive or flirtatious.
• If your international hosts insist on opening doors for you or holding your chair at the dining table, graciously allow them do so. Remember they are trying to respond appropriately when working with women.
• Avoid eating or drinking alone in strange restaurants, since you may be viewed as a pick-up target. Ask your hotel concierge for restaurant recommendations.
Responding to Uncomfortable Questions
When you are asked a question you consider uncomfortable or inappropriate, use short, standard answers to discourage further questioning. For example, many women are asked their marital status, their age, and, if married, about dual careers. While these questions may be unusual, they are often more commonly asked in foreign countries as a form of interest about you, a woman who may be very different than women in their own country. You can answer these in a polite manner while suggesting that the questions are not appropriate by giving answers such as “My career keeps me very busy,†or “I am younger than I look.†Ignoring the question and changing the subject is a simple way of redirecting the conversation. If the questions are more direct and aggressive and sexual in nature, be assertive and answer, “This is not an appropriate question to ask,†or, if the questioner continues to be uncooperative, try to embarrass him by telling another group member about your discomfort. Silence can also be very effective.
Strategies for responding to uncomfortable questions also include:
• You may be asked seemingly intrusive questions about your marital status and whether or not you have children. Prepare some stock answers or change the topic of conversation to one that is more comfortable for you.
• You might be invited to a bar after dinner. Whether or not you want to attend is your choice. It’s not impolite to say no, giving jet lag or business commitments such as faxes, e-mails, or phone calls as an excuse.
• If your host exhibits inappropriate behavior, inform him that you are uncomfortable and that you want him to stop.
• f you are traveling with a team, have other team members join you in expressing dissatisfaction with the situation. This will usually end the unwanted behavior, since to continue it will cause bad feelings.
• If you are in a social setting that is becoming uncomfortable, inform your host that you are uncomfortable and would like to leave. Politely request that he call you a taxi. If he does not cooperate, ask the establishment’s staff to call one for you.
• If no action is taken, get ready to leave and state the reasons you are leaving. There is no reason to stay in a situation that is uncomfortable for you.
• An employee who desires to leave while his or her colleagues desire to stay should do so and not feel badly about “breaking up the fun.â€
Rolfing in Dallas and Fort Worth-a New Reality
The human body is a social, spiritual and scientific enigma. Like the proverbial onion, the body has many layers and as each one is peeled back for closer inspection, the complexities are marvelous. The ten series Rolfing “recipe” has the ability to impact multiple layers, differentiating functionally and structurally, yet maintaining a wholistic intent. Rolfing can generate responses locally or system wide for ease of movement in space as well as functionality in time.
The ten-series is an order of events protocol with specific principals, goals, and anatomically specific sites with some variables because of the Anterior/Posterior models with associated anomalies. This article serves as a brief exploration and journey into the Rolfing Ten-Series as seen by a Certified Rolfer & is designed to be brief & informative.
First hour: adaptability and preparation (1-2-3) 3d: x, y, and z axis-static. “Preparing the body to receive order precedes establishing order. Changes introduced anywhere in the body must be capable of being integrated and sustained by the whole”-Jan Sultan and Jeffrey Maitland. The clients natural pattern & asymmetry must be identified first. The goals of the first hour are freedom of breath, initiate resolution of asymmetries of both girdles, spine, arms, & hands. Develop a sense of “who the client is” & review intake evaluation.
By assessing the client standing or sitting the practitioner gains insight into how the shoulder girdle moves or doesn’t move and how this affects the ribs and the breath. Movement and lack of movement in the arms is included in a decision of first-hour intention.
Freeing the breath sends a system wide signal to begin adapting and preparing for more change and is manifest in the fascia as rel-ease. Working with client supine, practitioner can assess the ribs and diaphragm involvement, the rate of inspiration and expiration of breath, and which is preferred part of cycle. The lines of tension in the arms will be addressed here for the way they transmit into the shoulder girdle and neck.
Practitioner should observe rhomboids/pectoralis minor relationship towards glenohumeral junction as well as diaphragm/serratus relationship at the ribs. With client now sideline practitioner moves to assess space between the pelvis and femur and if they move like a block or differentiated elements, creating space if necessary. Lengthening hamstrings is first-hour protocol differentiating the two. Neck and back work is broad and connecting from occiputs to c7 erectors to sacrum. Practitioner ends first session with pelvic lift.
Â
The Certified Rolfing Ten Series has the potential to reduce pain and release tension in the connective and myofascial tissue of the body associated with TMJ, CTS, RLS, Fibromyalgia, Sciatica, Fascitis, Bunions, Scoliosis, and Cerebral Palsy. Poor posture is associated with fascial asymmetries that can cause foot, leg, knee, hip, back, shoulder, neck, arm, hand, and head pain; integration therapy is necessary. Orthopedic, Chiropractic, Physical, and Massage Therapist recognize Certified Rolfing and Rolf Movement as premium pain management utilizing Structural, Functional, and Postural Integration. I am a Certified Rolfer with advanced trainings in spinal and biomechanics and have a Rolfing Practice in the Museum District of Fort Worth, TX. Before and after photo’s documenting some of my clients proven results available only on my website.
Songs from commercials
What’s your flavor? Tell me what’s your flavor. That’s the hook in Popeye’s chicken nation wide commercials. The beat drops and no matter where you are or what you’re doing, the second you hear it playing, you can’t help but visualize, Popeye’s. Are YOU hooked?
If you can recognize any commercial advertisement with your eyes closed, from the moment a song starts to play, you are, indeed, hooked. Works for me. Commercials are designed to draw in audiences. In the business of marketing and advertising, commercials, whether on the radio or in television, are the audience attention grabbers, eye catchers and ear hustlers. In essence, these songs are meant to be product hookers. The same standards used to sell artist’s music also applies in commercials. Simply put, hooks sell products and the competition for the best is fierce.
Just off the top of my head I can think of several hooks, that stick. “Easy, breezy, beautiful, Cover Girl and Woo-hoo, hoo hoo hoo-Vonage, and of course, Bah-dah dah dah dah, I’m Lovin It-McDonald’s.” If you could see the product as the words played in your mind, then the product hooker worked.
Successful and highly decorated directors, actors, writers and so on, each take some part in commercials. That’s because they have legitimate reason to be competitive, and it isn’t just about product sales. The reason is, the CLIO Awards and the TELLY Awards (among others). These annual premier award ceremonies honor outstanding commercials and programs (promos) with the finest creative advertising in design, print, radio and television. The CLIO and TELLY Awards are like the marketing and advertising Emmys.
A lot of work goes into making a 30 second commercial ad, more than most people understand. Commercials are like 30 to 60 second mini-movie productions, that can cost upwards of a million dollars or more to create. Some have even sparked new television shows like ABC’s Cavemen (ripped from GEICO commercials) and have inspired films like, Fast Food Nation, among others. In fact, many of the world’s greatest film makers, and the like, got their starts in commercials. People like Tyrese Gibson (R&B/Rap artist) and Mackenzie Rosman (of 7th Heaven) both started their careers in commercials.
Suffice it to say, there’s a whole lot going on in ads these days. From production costs to product sales, celebrity placements to new television programming and films. Advertising, is BIG business.
Next time you hear a catchy tune playing in a commercial, ask yourself, how many hands did it take to make? And, was it all worth it? Afterall, you, the audience, are both the target and the judge.
