[AI] Tech Dose of the day: WAP, Agile Methodology, and more...

vishnu ramchandani vishnuhappy at yahoo.com
Fri Jun 6 05:39:07 EDT 2008


WAP
Dosed by Keerti Araganji – M & E Team (from MphasiS Software Services)
What is WAP?
Wireless Application Protocol or WAP for short is a set of specifications that allows people to access information via the Internet using devices including cell phones,  PDA’s and other similar devices. WAP enabled devices usually included a special browser, called a micro browser for viewing mobile content.
The WAP Architecture
There are three major parts of a WAP-enabled system:
1. WAP Gateway
2. the HTTP Web Server and
3. the WAP Device
WAP Gateway
WAP gateway acts as mediator between Cellular device and HTTP or HTTPS web server. WAP gateway routes requests from the client (Cellular Phones) to an HTTP (or Web)
server
. The WAP gateway can be located either in a telecom
network
 or in a computer network (an ISP).
The HTTP Web Server
Receive the request from WAP Gateway and process the request and finally sends the output to the WAP Gateway, which in turn the sends this information to the WAP device using its wireless network.
The WAP Device
WAP device (Cellular phones) is part of wireless network. WAP Device sends the WAP request to the WAP Gateway, which in turn translates WAP requests to WWW requests, so the WAP client is able to submit requests to the Web server. After receiving the response from the HTTP Web Server, WAP Gateway translates Web responses into WAP responses or a format understood by the WAP client and sends it to the WAP Device.
WAP supports HTML and XML, the WML language (an XML application) is specifically devised for small screens and one-hand navigation without a keyboard.
WAP Programming Model   
Further References
W3Schools: 
http://www.w3schools.com/wap/wap_intro.asp
Wiki: 
http://en.wikipedia.org/wiki/WAP

Agile Methodology
Dosed by Swapna K M – M & E Team (from MphasiS Software Services)
What is an Agile Methodology?
Agile software development is a conceptual framework for undertaking software engineering projects. There are a number of agile software development methods, such as those espoused by the Agile Alliance, a non-profit organization. Agile methods attempt to minimize risk and maximize productivity by developing software in short iterations and de-emphasizing work on secondary or interim work artifacts. Scrum and Extreme Programming (XP) are two of the most popular agile methods, however, there are many more Agile methods and agility, as a conceptual framework, may also be applied to the execution of more traditional methods.
An Agile project can
1. Accept feature requests in any order (the PlanningGame, DoSimpleThings, RefactorMercilessly)
2. Release any integration (TestDrivenDevelopment, FrequentIntegration?)
3. Minimize the time between committing to a feature and letting end-users profit from it (SoftwareInProcess)  
"Agile" is an umbrella term used to describe a variety of methods that encourage continual realignment of development goals with the needs and expectations of the customer. See
http://AgileManifesto.org
 for a concise statement of beliefs held in common by the developers of these varied methods.
Issues with Non-Agile Project Methodologies:
Traditional Waterfall Project
1. Project Scope closed upfront
   In contrast with an agile project, where time and effort are fixed, a typical Waterfall project tries to close upfront the scope of the project (i.e. features of the solution) through an extensive analysis phase. In practice, it is very difficult to accurately define the scope of a solution upfront. Most of the time users have no perception of what they really need and the level of uncertainty is high. So high that the Standish Group reports that seasoned IT project managers have fallen into the practice of padding their initial budgets with 100%+ overheads.
2. Late demo to users
  In a waterfall project the integration of all the pieces is usually done late in the development phase. This means that the first time business users interact with the application is at the end of the project. This is bad. The number of changes required and the amount of meaningful feedback at this stage is very high, but it comes late, at a time when adding those features costs too much. While some IT managers dismiss this feedback as inconsequential, the divergence is usually high enough to compromise the adoption of the solution by the business, and force a project restart.
3. Long projects
   Requiring business users to commit to a scope upfront has the funny side effect of increasing the scope itself. Business users are afraid this is the only shot they have at getting the features they perceive as needed. Instead of compromising and delaying nice-to-have functionality, they insist on cramming everything in that first release of the project. Projects take longer, increasing the risk of failure and delays. 
Benefits of agile
1. Deliver What the Business Needs
2. Deliver Faster, On Time
3. Transparent Control
Impact of Platforms
1. Easy-to-Change Applications
2. Low Risk Deployments to Production
3. Higher Quality Achieved with Less Testing
4. Continuous Integration
Further References
http://www.outsystems.com/site/Methodology_Overview.aspx
http://en.wikipedia.org/wiki/Agile_software_development


      Explore your hobbies and interests. Go to http://in.promos.yahoo.com/groups/




More information about the AccessIndia mailing list