<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
		"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<preface id="preface">
	<title>Preface</title>
	<para>
		Increasing complexity in modern enterprise applications is a fact of life.
		Developers not only have to deal with complex business logic, but also a myriad
		of other concerns such as security, auditing, exposing business
		functionality to external applications, and managing the evolution of
		these concerns. The Spring Framework addresses these 
		needs by offering a Plain-Old Java Object (POJO) based solution that 
		lets you focus on your business logic.
	</para>
	<para>
		Complex applications pose problems that go beyond using the right set of
		technologies. You need to take into account other considerations such as
		a simplified development process, easy deployment, monitoring deployed
		applications, and managing changes in response to changing business needs.
		This is where the @umbrella.product.name@ comes into play. It offers a simple yet
		comprehensive platform to develop, deploy, and service enterprise
		applications. In this Programmer Guide, we explore the runtime portions of the
		@umbrella.product.name@, the @tomcat.product.name@, @jetty.product.name@ and the 
		@kernel.product.name@, and learn how to develop applications to benefit from their 
		capabilities.
	</para>
	<simplesect>
		<title>A Note to @kernel.product.name@ Programmers</title>
		<para>
			Although this guide is written primarily for @tomcat.product.name@ programmers, much of it is also useful for
			@kernel.product.name@ programmers who should simply ignore the web-related sections.
		</para>
	</simplesect>
	<simplesect>
		<title>A Note to @nano.product.name@ Programmers</title>
		<para>
			This guide is written primarily for @tomcat.product.name@ programmers. Although a base version of @nano.product.name@, without the new provisioning
			system, is used to build the @tomcat.product.name@, much of this guide does not apply to @nano.product.name@. The @nano.product.name.short@ lacks regions support but has much
			improved runtime footprint and startup time and also provides support for p2 provisioning. The @nano.product.name@ features are covered better in the 
			<ulink url="../../virgo-user-guide/html/index.html">User Guide</ulink>.
		</para>
	</simplesect>
</preface>
