Web Application | Software Development
Simply put, Web Applications are dynamic websites combined
with server-side programming which provide functionalities such as interacting with users, connecting to back-end databases, and generating results to browsers.
Examples of Web Applications are Online Banking, Social Networking, Online Reservations, eCommerce / Shopping Cart Applications,
Interactive Games, Online Training, Online Polls, Blogs, Online Forums, Content Management Systems, etc..
There are two main categories of coding, scripting and programming for
creating Web Applications:
1. Client Side Scripting / Coding: - Client Side Scripting
is the type of code that is executed or interpreted by browsers.
Client-Side Scripting is generally viewable by any visitor to
a site (from the view menu click on "View Source" to
view the source code).
Below we using some Client Side Scripting technologies:
- HTML (HyperText Markup Language)
- CSS (Cascading Style Sheets)
in Ajax development)
2. Server Side Scripting / Coding: - Server Side
Scripting is the type of code that is executed or interpreted
by the web server.
Server Side Scripting is not viewable or accessible by any visitor or general public.
Below we using some Server Side Scripting technologies:
- PHP (very common Server Side Scripting language - Linux / Unix
based Open Source - free redistribution, usually combines with MySQL
- Zend Framework (PHP's Object Oriented Web Application Framework)
- ASP (Microsoft Web Server (IIS) Scripting language)
- ASP.NET (Microsoft's Web Application Framework - successor of ASP)
- ColdFusion (Adobe's Web Application Framework)
- Ruby on Rails (Ruby programming's Web Application Framework - free redistribution)
- Perl (general purpose high-level programming language and Server Side
Scripting Language - free redistribution - lost its popularity to
- Python (general purpose high-level programming language and Server Side
Scripting language - free redistribution)
Program libraries are a collection of commonly used functions, classes or subroutines which provide ease of development and maintanance by allowing developers to easily add or edit functionalities to a frameworked or modular type application.
Web Application Frameworks:
Web Application Frameworks are sets of program libraries, components and tools
organized in an architecture system allowing developers to build and maintain complex web application projects using a fast and efficient approach.
Web Application Frameworks are designed to streamline programming and
promote code reuse by setting forth folder organization and structure,
documentation, guidelines and libraries (reusable codes for common
functions and classes).
Web Application Frameworks - Benefits and Advantages:
- Program actions and logic are separated from the HTML, CSS and design files. This
helps designers (without any programming experience) to be able to edit the interface and make design changes without help from a programmer.
- Builds are based on the module, libraries, and tools, allowing programmers to easily
share libraries and implement complex functionalities and features in a fast and efficient manner.
- The structure helps produce best practice coding with consistent logic and coding
standards, and provides other developers the ability to become familiar with the
code in a short time.
Coding Guidelines, Standards & Convention:
Coding guidelines are sets of rules and standards used in programming a web application project.
These rules and standards apply to coding logic, folder structure and names, file names, file
organization, formatting and indentation, statements, classes and functions, and naming conventions.
These rules also enforce writing clear comments and provide documentation.
Important benefits of using Coding Guidelines
- Creates the best environment for multiple programmers to work on the same project
- Provides ease of maintainability and version management
- Delivers better readability and understanding of the source code
- Insures that other developers can understand and become familiar with the code in a short time
Web Applications Lifecycle Model:
Web Application Lifecycle is the process of developing a web
application and involvement of the multiple teams that are engaged in the development process. Each organization may set forth its own unique style of operating.
Some companies follow a certain standard model such as SDLC (System Development Life Cycle) or Agile Software Development Model.
- SDLC is the traditional process of developing software or
web applications by including research to identify and define
the application requirements, information analysis, architectural
design and specifications blueprint, team involvement, programming,
testing and bug fixing, system testing, implementation and
- Agile Software / Web Application Development is the iterative
development process and development process practices that
focus on collaboration of people involved and provide a
better procedure to allow revisions and evolution of web
application requirements. Agile methodology includes research,
analysis, project management, design, programming, implementation,
frequent testing, adaptation and maintenance.
Web Application Development Process:
Web Application Development Process organizes a practical procedure
and approach in application development.
The following list of procedures and suggested documents provide
a good outline for a Web Application Lifecycle and Process:
- Roadmap Document: Defining Web Application, Purpose, Goals
- Researching and Defining Audience Scope and Security Documents
- Creating Functional Specifications or Feature Summary Document
- Team Collaboration and Project Management Document
- Technology Selection, Technical Specifications, Illustrative
Diagram of Web Application Architecture and Structure, Development
Methodology, Versions Control, Backups, Upgrades, Expansion
and Growth Planning Document, Server Hardware / Software Selection
- Third Party Vendors Analysis and Selection (Merchant Account
and Payment Gateway, SSL Certificate, Managed Server / Colocated
Server Provider, Fulfillment Centers, Website Visitor Analytics
Software, Third Party Checkout Systems, etc.)
- Application Visual Guide, Design Layout, Interface Design,
- Database Structure Design and Web Application Development
- Testing: Quality Assurance, Multiple Browser Compatibility,
Security, Performance - Load and Stress Testing, Usability
Web Application Testing:
Testing is an important part of the Web Application Development
process. On occasion, testing would consume more manpower and time than development itself.
Below are some of the most common testing needed for any web
application development process:
- Quality Assurance and Bug Testing
- Multiple Browser Compatibility
- Application Security
- Performance - Load and Stress Testing
Trends and Popularity
The demands for companies to build Web Applications are
If planned and built correctly, web applications can:
- Reach and service millions of consumers and businesses
- Generate substantial, multi-layer / multi-category income from consumers, businesses and advertisers
- Easily build business goodwill and assets based on audience
reach, popularity, technology and potential growth
Below are good reasons for companies to build web applications:
- Companies want to streamline their internal departments
and functions, operations, sales and project management,
- Companies want to take advantage of a web-based application's
flexibility and versatility, by moving away from the traditional
desktop application platform to the web application platform
- Companies want to gain more clients or better service their
current clients by offering convenient services and solutions
- Companies want to build new web applications to offer
innovative services or solutions to online
users and businesses
Today's web applications have substantial business impact on the
way companies and consumers do business such as:
- There are opportunities to gain the upper hand and bypass the
traditional brick and mortar companies when this type of opportunity
was rarely possible or existed before the explosion of the web
- The new web created a global
the business environment which challenges the way in which traditional
companies do business
- Companies need to reinvent and evolve in order to compete in today's
trends, online business and global marketplace
- Businesses and consumers have more options and resources to research
and easily compare and shop around for the best deals
- Information and resources are immense and available to everyone who seeks it
- Businesses or companies who used to profit from consulting or
advice, that can now be easily acquired online are struggling, and
will need to take a new business direction if they want to stay solvent.