Web application development


Web application development

Web application development is the process and practice of developing web applications Fact|date=February 2007.

Risk

Just as with a traditional desktop application, web applications have varying levels of risk. A personal home page is much less risky than, for example, a stock trading web site. For some projects security, software bugs, etc. are major issues. If time to market, or technical complexity is a concern, documentation, test planning, change control, requirements analysis, architectural description and formal design and construction practices can mitigate risk.

Technologies

* Ajax
* ASP
* ASP.NET
* CSS
* ColdFusion
* Java EE
* JavaScript
* Perl
* PHP
* Ruby, including Ruby on Rails
* CGI
* ISAPI/NSAPI

Lifecycle Model

Time to market, company-growth and requirements churn, three things that are emphasized in web-based business, coincide with the principles of the Agile practices. Some agile lifecycle models are:

* Extreme Programming
* Scrum
* Timebox development
* Feature Driven Development

Testing

Web applications undergo the same unit, integration and system testing as traditional desktop applications. But because web application clients vary so greatly, teams might perform some additional testing, such as:

* Security
* Performance, Load, and Stress
* HTML/CSS validation
* Accessibility
* Usability
* Cross-browser

Many types of tests are automatable. At the component level, one of the xUnit packages can be a helpful tool. Or an organization can create its own unit testing framework. At the GUI level, Watir or iMacros are useful.

Tools

In the case of ASP.NET, a developer can use Microsoft Visual Studio to write code. But, as with most other programming languages, he/she can also use a text editor. Notepad++ is an example.

For PHP, the Zend Development Environment provides numerous debugging tools and provides a rich feature set to make a PHP developer's life easier.

Several code generation tools such as dbQwikSite are available to automate the development of code. Using such tools, non-technical users can produce working code, and experienced coders can accelerate the development cycle.

Other tools include various browsers, FTP clients, etc. See .

Frameworks and Reuse

Practicing code reuse and using web application frameworks can greatly improve both productivity and time to market (McConnell 1996:537). Reusing externally developed components can allow an organization to reap the above benefits, while potentially saving money. However, for smaller components, it might be just as easy to develop your own components as it would be to learn new APIs. Also, if a component is essential to the business, an organization might want to control its development.

ee also

*Device Independence
*List of Web based applications
*Web Interoperability
*Web application framework

References

*cite book | last = McConnell | first = Steve | authorlink = Steve McConnell | title = Code Complete, Second Edition | publisher = Microsoft Press | date = June 2004 | pages = 960 | id = ISBN 0-7356-1967-0
*cite book | last = McConnell | first = Steve | authorlink = Steve McConnell | title = Rapid Development | publisher = Microsoft Press | date = July 2, 1996 | pages = 680 | id = ISBN 1-55615-900-5
*cite book | last = Rozanski | first = Nick | coauthors = Eóin Woods | title = Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives | publisher = Addison-Wesley Professional | date = April 20, 2005 | pages = 576 | id = ISBN 0-321-11229-6
*cite book | last = Leffingwell | first = Dean | coauthors = Don Widrig | title = Managing Software Requirements: A Use Case Approach, Second Edition | publisher = Addison-Wesley Professional | date = May 16, 2003 | pages = 544 | id = ISBN 0-321-12247-X

Further reading

*cite book | last = Whittaker | first = James A. | coauthors = Mike Andrews | title = How to Break Web Software: Functional and Security Testing of Web Applications and Web Services | publisher = Addison-Wesley Professional | date = February 2, 2006 | pages = 240 | id = ISBN 0-321-36944-0


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Web Application Structure for PHP — aka WASP is a free package or framework of software running with PHP version 5 that allows developers to code systems in a more traditional enterprise three tier model (like Web Logic Server aka WLS) rather than PHP s more usual script style,… …   Wikipedia

  • Web application framework — A web application framework is a software framework that is designed to support the development of dynamic websites, Web applications and Web services. The framework aims to alleviate the overhead associated with common activities used in Web… …   Wikipedia

  • Web application — For applications accessed through the web that are executed client side, see Rich Internet application. Google Calendar is a contact and time management web application offered by Google …   Wikipedia

  • Web Application Description Language — The Web Application Description Language (WADL) is an XML based file format that provides a machine readable description of HTTP based web applications. These applications are typically REST web services.The purpose of WADL is to allow services… …   Wikipedia

  • Web Application Framework — Ein Web Application Framework oder Webframework ist ein Software Framework, das für die Entwicklung von dynamischen Webseiten oder Webanwendungen ausgelegt ist. Damit werden sich wiederholende Tätigkeiten vereinfacht, die Wiederverwendung von… …   Deutsch Wikipedia

  • Mobile application development — is the process by which application software is developed for small low power handheld devices such as personal digital assistants, enterprise digital assistants or mobile phones. These applications are either pre installed on phones during… …   Wikipedia

  • Rapid application development — (RAD) is a software development process, which involves iterative development and the construction of prototypes. Overview Rapid application development is a term originally used to describe a software development process introduced by James… …   Wikipedia

  • Rapid Application Development — Développement rapide d applications Pour les articles homonymes, voir RAD. La méthode de développement rapide d applications, dite méthode RAD[1] (acronyme de l anglais Rapid Application Development), est la première méthode de développement de… …   Wikipédia en Français

  • List of rapid application development tools — Cross Platform Rapid Application Development Tools = * Boa constructor is a cross platform, wxPython based Python RAD IDE. * is a cross platform C/C++ RAD IDE using wxWidgets; the latest developmental builds have a built in form designer wxSmith …   Wikipedia

  • Mashup (web application hybrid) — In Web development, a mashup is a Web page or application that uses and combines data, presentation or functionality from two or more sources to create new services. The term implies easy, fast integration, frequently using open APIs and data… …   Wikipedia