Classic Movies and Books

Learn Software Development

All about the processes involved in software development


Search this site
Google
 



Introduction: WWW - The Client Side

Filed Under Internet, Network | Posted on July 3, 2009

The Internet / World Wide Web consists of pages and each page contains links or pointers to other pages. Users follow the link by clicking on them. This process can be repeated indefinitely, possibly traversing hundreds of linked pages. Pages that point to other pages are said to use “hypertext”.

Pages are viewed with a program called a browser. When a page is requested, the browser fetches, interprets the text and formats the commands that it contains and displays the page. Strings of text that are links to other pages are called hyperlinks.

Most browsers have numerous buttons and features to navigate the Web. In addition to having ordinary text and hypertext, web pages also contain icons, line drawings, maps and photographs. Some pages also consist of audio tracks, video clips, or both. When hypertext pages are combined with other media, the result is called hypermedia. Many Web pages consists of large images which take a long time to load.

Some browsers deal with slow loading of images by first fetching and displaying the text, then getting the images. Some Web pages contain forms that request the user to enter information. Some browsers use the local disk to cache pages that they have fetched. A check is made before a page is fetched to see if it is in the local cache. If so, check if it is up to date. If so,there is no need to load the page again.

To host a web browser, a machine must be directly connected to Internet or have a SLIP or PPP connection to a router or other machine that is directly on Internet.



Leave a Comment

Quick Introduction to the World Wide Web (WWW) / Internet

Filed Under Internet, Network | Posted on July 3, 2009

The World Wide Web is an architectural framework for accessing linked documents spread out over thousands of machines all over the Internet. The World Wide Web began as a networked information project at CERN, where Tim Berners-Lee, now Director of the World Wide Web Consortium [W3C], developed a vision of the project.

The Web has a body of software, and a set of protocols and conventions. Through the use of hypertext and multimedia techniques, the web is easy for anyone to roam, browse, and contribute to.

World Wide Web can also be defined as system of Internet servers that support specially formatted documents. The documents are formatted in a markup language called HTML (HyperText Markup Language) that supports links to other documents, as well as graphics, audio, and video files. You can jump from one document to another simply by clicking on hot spots. Not all Internet servers are part of the World Wide Web. Web is basically a client-server system. Web pages are written in HTML and java.



Leave a Comment

MIMO ROUTERS - A quick summary

Filed Under Uncategorized | Posted on July 2, 2009

MIMO routers build on the MIMO technology, a relatively new set of technology protocols that reinvent the way signals are transmitted and received. MIMO routers send out multiple data streams at the same time and then use multiple antennas to sift through the signals for the requisite pattern. All this is done while maintaining a fast connection and, hence, a fast data stream. One characteristic sign of a MIMO router is multiple antennae.

Benefits of MIMO Routers. These include:
• Faster speeds.
• Greater distances between your paired devices.
• More simultaneous users.
• Less signal fading and dead spots.
• Better resistance to interference.

Concerns of MIMO Routers:

1. MIMO routers have a premium associated with them. The prices can fall as the product gets matured.
2. Pending 802.11N standard.



Leave a Comment

MIMO (Multiple Input Multiple Output) technology

Filed Under Uncategorized | Posted on July 2, 2009

1. MIMO is a new wireless technology conceived in the mid 90’s
2. It is based on an entirely new paradigm for digital signal processing that multiplies the data rate throughput achievable in wireless communication products.
3. Greatly improves the reliability, range and robustness of the connection providing a much better user experience that is closer to “wired” Ethernet quality.
4. MIMO technology is now being introduced to the Wi-Fi market.

MIMO is a smart antenna technique that increases speed, range, reliability and spectral efficiency for wireless systems.
MIMO is one technology being considered for 802.11n, a standard for next-generation 802.11 that boosts throughput to 100M bit/sec.

• Smart antenna techniques use multiple antennas to improve wireless performance and reliability.
– Antennas themselves are “dumb” pieces of metal.
– “Smartness” comes from signal processing that is applied to the multiple antennas.
– There are differing degrees of smartness.
• Conventional, “single-dimension” (1D) smart antenna techniques transmit just one data stream per channel
– RF beamforming.
– Digital beamforming.
– Digital receive diversity combining.
• MIMO makes smart antennas “multi-dimension”.
– Multiple data streams in the same channel.
– 2-D signals.

BENEFITS OF MIMO TECHNOLOGY:
For Business
• Enables truly wireless office – replaces Ethernet
– Improves wireless reliability and robustness
– Reduces infrastructure cost - Doubles coverage area of each AP
– Rates to 108 Mbps in each channel – similar to wired Ethernet speed
• Improves VoIP performance
– Extends handset battery life
– Increases call capacity
For Consumers
• One AP covers your whole home with reliable service
– Penetrates more walls at higher rates
– No need to sit in the right place to use your laptop
• Supports new wireless multimedia applications
– Whole-home coverage for high-speed broadband access
– Reliable SDTV and HDTV video transport in home networks
– Multi-service applications – voice, video, data



Leave a Comment

What are Routers, Switches, Hubs — Is There a Difference between them ?

Filed Under Hubs, Router, Switches | Posted on July 1, 2009

Each device has its own function in a network environment. Two reasons confusion exists are
(1) all three are simple boxes with several plugs that accept cables and
(2) at times the functions of each device are rolled into one single device.

A hub, also known as a repeater, is a simple device used for years to connect all nodes, or computers, on a network to a central location. Each node on a network has a unique hardware address called a MAC address. A hub is known as a repeater because when a packet of data, or frame, is sent through the hub, it is repeated to each and every computer on the network.

A switch-based network is one that utilizes switches instead of hubs. A switch is a major upgrade to a hub. Instead of sending all network data to each and every network node, the switch will analyze the MAC address and determine where to send the data. Network bandwidth is not wasted by sending every frame to every port.

Routers not only provide connections to the internet, they also protect the LAN from the Internet. The router could block any Packet that has a destination address outside of the LAN. In short, a router can perform many of the same functions as switches and hubs, but it has address translation and filtering capabilities.



Leave a Comment

Quick description - How does a Router work?

Filed Under Network, Router | Posted on July 1, 2009

Here is a technical description of how a router works. This would make sense if you have already an understanding of the network protocols.
The layers 2 and 3 of the OSI model i.e. Data Link layer, is where the Ethernet protocol, MAC addresses and switches fit in.
Layer 3, the Network layer, is where the IP protocol, IP addresses and routers fit in. All traffic is sent from your computer, starting with Layer 7 (your network application) and going down to Layer 1 (physical). With the physical layer, the traffic is going across your network medium.
Traffic goes to a router only if it is not on your local LAN. Routers work primarily at Layer 3 but must understand Layers 1-3, at a minimum. Many routers understand traffic all the way up to Layers 4-7 in varying ways.
One of the tools a router uses to decide where a packet should go is a configuration table. A configuration table is a collection of information, including:
• Information on which connections lead to particular groups of addresses
• Priorities for connections to be used
• Rules for handling both routine and special cases of traffic
Internet data, whether in the form of a Web page, a downloaded file or an e-mail message, travels over a system known as a packet-switching network. In this system, the data in a message or file is broken up into packages about 1,500 bytes long which includes information on the sender’s address, the receiver’s address, the package’s place in the entire message, and how the receiving computer can be sure that the package arrived intact. Each data package, called a packet, is then sent off to its destination via the best available route — a route that might be taken by all the other packets in the message or by none of the other packets in the message.



Leave a Comment

Introduction to Routers

Filed Under Network, Router | Posted on June 30, 2009

A computer networking device which forwards data packets across a network toward their destinations, through a process of routing is known as Router. In companies and large corporations, a central computer system acts as a router to connect all of the company’s computers to one network. This allows group participation and collaboration on large projects or just to connect all of the company’s resources at one central location. It also aids in reliable communication between employees working on different floors in the building or in different countries.

1. Router is required to connect multiple networks, like your LAN to the Internet.
2. Routers store large tables of networks and addresses, then using algorithms to determine the shortest routes to individual addresses within those networks.
3. Routers not only facilitate intra-network communications, but also play a role in overall network performance.
4. Routers help in delivering the information faster.
5. Routers also protect LAN from Internet.
6. Router blocks any packet that has a destination address outside of the LAN. If the destination address is valid, the router could check the Packet for an error. If there is an error, the router could discard the Packet and send a message to the originating address.
7. Routers have address translation and filtering capabilities.



Leave a Comment

eXplore the eWorld!

Filed Under Uncategorized | Posted on June 30, 2009

In the world of computers we encounter a lot of words starting with ‘e’ which means electronic and it refers to the digital representation of the content.
Lets have a look at some of these eWords, and try to understand them in a very easy way…

e-paper - its a portable, reusable storage and display medium that can be repeatedly written on (i.e. refreshed) - millions of time.
Information to be displayed is downloaded through a connection to a computer or a cell phone.
epaper is used for applications such as ebooks, electronic newspapers, portable signs and foldable, rollable displays.

ebrochure - its like the brochure which explains the reader about the product, company etc, but the difference here is that ebrochure is a digital presentation style that consists of bullets, images, animations, graphics to inform the viewer (reader) about the product, company or service.

ebook - this is an electronic book which consists of variety of content that is published in a format that is small in size, portable and at the same time have all the features of a print version plus even there is an option of text being converted to speech.

eLibrary - its a virtual library that stores and delivers content that is exclusive, collection of articles, reports, features and tools. It can be seen as a personal online research centre. Its available for online reading or downloading.

e-form - a digital representation of a paper form. eforms can be filled out easily and even faster. It can automatically format, calculate, look up, and validate information for the user. And all this possible due to the programming associated with them. With electronic submission of completed forms one not only saves time but also eliminates the cost of errors.

e-outsourcing - term used for a business, where buying information technology products and services that could be furnished in-house from one or variety of sources on the internet.

e-services - these are electronic services which are very fast services. And they perform work, achieve tasks, or complete transactions where many business services can be provided for a business or consumer using the Web.



Leave a Comment

Software processes: Effective Modular Design

Filed Under Uncategorized | Posted on June 22, 2009

Information hiding: Modules should be specified and designed so that the internal details of modules should be invisible or inaccessible to other modules. Hiding implies that effective modularity can be achieved by defining a set of independent modules that communicate with one another only that information necessary to achieve software function. Hiding defines and enforces access constraints to both procedural detail within a module and any local data structure used by the module.

Major benefits: reduce the change impacts in testing and maintenance.

Functional independence:
Functional independence is achieved by developing modules with “single minded” function and an “aversion” to excessive interaction with other modules. Independent modules are easier to maintain because secondary effects caused by design or code modification are limited, error propagation is reduced and reusable modules are possible.

Design modules based on independent functional features
Major benefits: effective modularity

Independence is assessed using two qualitative criteria : cohesion and coupling.
Cohesion: a natural extension of the information hiding concept a module may perform a number of tasks. A cohesive module performs a single task in a procedure with little interactions with others.

Goal: to achieve high cohesion for modules in a system.

Different types of cohesion:
- coincidentally cohesive: a set of tasks related to each other loosely.
- logical connection among processing elements —> logically cohesive.
- data sharing among processing elements –> communication cohesion.
- order among processing elements –> procedural cohesion.

Coupling : a measure of interconnection among modules in a program structure. Coupling depends on the interface complexity between modules.
Goal: to strive for lowest possible coupling among modules.
Good coupling —> reduce or avoid change impact and ripple effects.
—> reduce the cost in program changes, testing, maintenance

Types of coupling:
- data coupling: parameter passing or data interaction
- control coupling: share related control logical (for a control data)
- common coupling: common data sharing
- content coupling: module A use of data or control information maintained in another module.



Leave a Comment

Quick tip: What is Abstraction and how to do effective modular design ?

Filed Under Uncategorized | Posted on June 21, 2009

Abstraction is the process of taking away or removing characteristics from something in order to reduce it to a set of essential characteristics. Through the process of abstraction, a programmer hides all but the relevant data about an object in order to reduce complexity and increase efficiency. In the process of abstraction, the programmer tries to ensure that the entity is named in a manner that will make sense and that it will have all the relevant aspects included and none of the extraneous ones.

Effective Modular Design

Information hiding:
Modules should be specified and designed so that the internal details of modules should be invisible or inaccessible to other modules. Hiding implies that effective modularity can be achieved by defining a set of independent modules that communicate with one another only that information necessary to achieve software function. Hiding defines and enforces access constraints to both procedural detail within a module and any local data structure used by the module.

Major benefits: Reduces the change impacts in testing and maintenance.



Leave a Comment


keep looking »