Agile application

Agile application

An "Agile Application" is the result of "Service Oriented Architecture" and "Agile Development" paradigms. An Agile Application is distinguished from average applications in that it is a loosely coupled set of services with a decoupled orchestration layer and it is easily modified to address changing business needs and it is scalable by design.

Using "Agile Applications" development paradigms, a set of services can be built to address business specific functional components. These services can be exposed using any one of the standard communication protocols including web services. A well designed "Agile Application" will standardize on a common communication protocol and a common data model. The services can then be orchestrated using a decoupled layer to implement business logic. There are many tools by different vendors in the industry that can support the orchestration layer.

The decoupled nature of an "Agile Application" permits it to accommodate fault tolerance and scalability. For example, scalability is addressed through focusing the attention of the QA team in the set of services that are causing the bottleneck as opposed to trying to solve scalability for the entire system which can be a much bigger problem. Similarly, fault tolerance can be achieved through deploying multiple instances of a service. If one service fails, another instance can pick up the load. For stateless services, this can lead to continuous availability.

Following the "Agile Development" paradigm, each unit of development cycle can be focused on a single service. Furthermore, multiple of these development cycles can run in parallel leading to faster development completion.

References

* " [http://www.iste.co.uk/index.php?f=a&ACTION=View&id=194 Nanocomputers and Swarm Intelligence] " by Jean-Baptiste waldner, ISTE, ISBN 9781847040022, 2007.
* " [http://www.amazon.fr/dp/097669400X Agile Web Development with Rails 2nd Edition] " by Dave Thomas ; David Heinemeier ; Leon Breedt, Rails, ISBN 0977616630, 2007.

ee also

*Semantic Web
*Semantic Grid
*Ontology (computer science)
*Semantic Web Rule Language (SWRL)


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Agile — can refer to: *Agility *Association of Geographic Information Laboratories for Europe (AGILE) *Agile Software Corporation, a provider of product lifecycle management (PLM) solutions *Agile software development, a family of software development… …   Wikipedia

  • Application Management — bzw. Anwendungsmanagement ist eine Kombination aus der Entwicklung und Betreuung von Applikationen (= Anwendungssoftware) über deren gesamten Lebenszyklus. Dies beinhaltet auch eine umfassende Anwenderbetreuung (=Support) und die… …   Deutsch Wikipedia

  • Agile web development — is a model for development of web applications. Its concept is similar to Agile software development, but is limited to web applications. It is more efficient and powerful within a short timeline than other models,Fact|date=August 2008… …   Wikipedia

  • Agile software development — poster Agile software development is a group of software development methodologies based on iterative and incremental development, where requirements and solutions evolve through collaboration between self organizing, cross functional teams. It… …   Wikipedia

  • Agile Development — Agile Softwareentwicklung ist der Oberbegriff für den Einsatz von Agilität (lat.agilis flink, beweglich ) in der Softwareentwicklung. Je nach Kontext bezieht sich der Begriff auf Teilbereiche der Softwareentwicklung – wie im Fall von Agile… …   Deutsch Wikipedia

  • Agile Manifesto — Agile Softwareentwicklung ist der Oberbegriff für den Einsatz von Agilität (lat.agilis flink, beweglich ) in der Softwareentwicklung. Je nach Kontext bezieht sich der Begriff auf Teilbereiche der Softwareentwicklung – wie im Fall von Agile… …   Deutsch Wikipedia

  • Agile Methode — Agile Softwareentwicklung ist der Oberbegriff für den Einsatz von Agilität (lat.agilis flink, beweglich ) in der Softwareentwicklung. Je nach Kontext bezieht sich der Begriff auf Teilbereiche der Softwareentwicklung – wie im Fall von Agile… …   Deutsch Wikipedia

  • Agile Methoden — Agile Softwareentwicklung ist der Oberbegriff für den Einsatz von Agilität (lat.agilis flink, beweglich ) in der Softwareentwicklung. Je nach Kontext bezieht sich der Begriff auf Teilbereiche der Softwareentwicklung – wie im Fall von Agile… …   Deutsch Wikipedia

  • Agile Modeling — Agile Softwareentwicklung ist der Oberbegriff für den Einsatz von Agilität (lat.agilis flink, beweglich ) in der Softwareentwicklung. Je nach Kontext bezieht sich der Begriff auf Teilbereiche der Softwareentwicklung – wie im Fall von Agile… …   Deutsch Wikipedia

  • Agile Prinzipien — Agile Softwareentwicklung ist der Oberbegriff für den Einsatz von Agilität (lat.agilis flink, beweglich ) in der Softwareentwicklung. Je nach Kontext bezieht sich der Begriff auf Teilbereiche der Softwareentwicklung – wie im Fall von Agile… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”