<?xml version="1.0"  encoding="UTF-8" standalone="yes" ?>
<?xml-stylesheet type="text/xsl" href="http://www.eclipse.org/projects/project-plan.xsl"?>
<plan
	name="Agent Modeling Platform (Incubation)"
	plan-format="1.0"
	xmlns="http://www.eclipse.org/project/plan"
	xmlns:html="http://www.w3.org/1999/xhtml">
	<release
		projectid="modeling.amp"
		version="0.8.0" />
	<introduction>
		<html:div>
			We're making a major change to the schedule. Rather than
			focus on
			getting the new Acore meta-model out, we're working on
			getting
			documentation, testing and polish completed first so that we
			have the
			best possible platform for future improvements. MetaABM is
			not
			perfect, but it works very well for the majority of current use
			cases. The greatest priority now is to build up a good user and
			contributor base and that means using the current very stable
			meta-model target and improving surrounnding infrastructure.
			<p />
			Please note that as with
			all Eclipse Incubation projects, version
			numbers are
			0.n. This is not a reflection of overall code completion
			or quality. For
			example 0.7.0 is planned to have a reasonably stable
			API and 0.8.+ should be production ready, i.e. at least equivalent to
			1.0. The 0.9.0 release is the new target for Acore functionality,
			though we may decide to do a 1.0.0 release first. This will depend on
			our progress in building community, which looks really positive.
		</html:div>
	</introduction>
	<release_deliverables>
		<html:div
			xmlns="http://www.w3.org/1999/xhtml">
			Each release will include:
			<ul>
				<li>Update site including runtime, SDK, documentation and source.
				</li>
				<li>Features and plugins packaged (download).</li>
				<li>Examples (download)</li>
			</ul>
		</html:div>
	</release_deliverables>
	<release_milestones>
		<preamble />
		<milestone
			date="06/15/2009"
			milestone="0.0.0">
			<html:div>Initial AXF Commit. Basic repackaging / renaming. Move
				dependencies from oAW to
				M2T. AGF/AXF API Experimental. Escape
				Modeling API Frozen.</html:div>
		</milestone>
		<milestone
			date="07/15/2009"
			milestone="M0">
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">AMF Commit. AMF API and meta-model
				Experimental (To be replaced
				w/ acore). AGF/AXF API Experimental.
				Escape Modeling API Frozen.
			</html:div>
		</milestone>
		<milestone
			date="08/15/2009"
			milestone="Public Release">
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">[Slip] Automated build and tests, update
				site, basic
				documentation.
			</html:div>
		</milestone>
		<milestone
			date="1/1/2010"
			milestone="M1">
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">0.5.0. Builds to Modeling project standards.
				Meets general
				eclipse quality standards. User getting started documentation. New
				testing and parameterization functionality. All APIs and meta-models
				Provisional.</html:div>
		</milestone>
		<milestone
			date="6/1/2010"
			milestone="M2">
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">UI Polish. Complete parameterization,
				testing and data
				extensions. Meta-Model Extensions. AMF core
				Platform, API meta-model
				Provisional, AXF/AGF API Provisional. Extensive user documentation.
			</html:div>
		</milestone>
		<milestone
			date="6/23/2010"
			milestone="0.8.0 Release">
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">0.8.0 Feature frozen. QA, bug fixes,
				internals and runtime
				improvements. Major documentation improvements. Meta-model
				funcitonality additions. All API and existing Meta-Models for
				"metaabm" model platform. Escape API platform.
			</html:div>
		</milestone>
		<milestone
			date="8/1/2010"
			milestone="0.9.0 Release">
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">Introduction of acore meta-model -- improvements
				(generalization, features) to meta-model from MetaABM. Acore
				meta-models Provisional. Core AGF/AXF API platform.</html:div>
		</milestone>
		<milestone
			date="10/1/2010"
			milestone="0.9.5 Release">
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">Integration of extensive Systems Dynamics and other features.
				Need to determine if this will happen before, after, or simultaneous
				to Acore introduction.</html:div>
		</milestone>
		<milestone
			date="12/31/2010"
			milestone="1.0"></milestone>
		<postamble />
	</release_milestones>
	<target_environments>
		<internationalization>
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">Unknown. Help?</html:div>
		</internationalization>
	</target_environments>
	<compatibility_with_previous_releases>
		<html:div
			xmlns="http://www.w3.org/1999/xhtml">Not applicable.</html:div>
	</compatibility_with_previous_releases>
	<themes_and_priorities>
		<preamble>
			<html:div
				xmlns="http://www.w3.org/1999/xhtml">Please note that the below are goals, not
				advertisements.
				We
				might not meet all of them, but by keeping them in
				mind, AMP
				contributors and users can focus their
				efforts on the
				important
				stuff.
			</html:div>
		</preamble>
		<theme
			name="Innovative">
			<description>
				<html:div
					xmlns="http://www.w3.org/1999/xhtml">
					<ul>
						Provide disruptive tools that support new ways of doing
						modeling
						and general science.
					</ul>
					<ul>
						Capture emerging best practices.
					</ul>
				</html:div>
			</description>
		</theme>
		<theme
			name="Complete">
			<description>
				<html:div
					xmlns="http://www.w3.org/1999/xhtml">
					<ul>
						Support all canonical ABM modeling capabilities.
					</ul>
					<ul>
						Provide an API capable of supporting a full user experience.
					</ul>
					<ul>
						Provide comprehensive documentation, examples and exemplar
						usages.
					</ul>
				</html:div>
			</description>
		</theme>
		<theme
			name="High Quality">
			<description>
				<html:div
					xmlns="http://www.w3.org/1999/xhtml">
					<ul>
						Conform to all Eclipse and modeling project conventions and
						processes, including builds, testing and internal documentation.
					</ul>
					<ul>
						Use Eclipse approaches (e.g. adapters, extension points, OSGi
						and
						other runtime
						mechanisms) to support extremely low coupling
						between
						AMP
						components and for toolsets utilizing AMP. For example,
						as an
						exemplar project the core Escape library and AMP will ideally
						share no
						common API.
					</ul>
					<ul>
						Within components, provide a high-level of cohesion so that
						minimal additional coding is required to adapt AMP infrastructure
						to specific needs.
					</ul>
					<ul>
						Provide attractive, consistent and responsive Look and Feel and
						branding consistent with overall Eclipse platform.
					</ul>
					<ul>
						Guide user through all exceptional conditions.
					</ul>
					<ul>
						Whenever possible, remove sources of cognitive dissonance for
						users and API developers.
					</ul>
				</html:div>
			</description>
		</theme>
		<theme
			name="Community Building">
			<description>
				<html:div
					xmlns="http://www.w3.org/1999/xhtml">
					<ul>
						Provide technology that is open ended enough to support
						unanticipated usages, yet provides easily understood and
						high-value components to encourage early adoption by core
						audience.
					</ul>
					<ul>
						Build an open, welcoming and inclusive community of
						collaborators
						and committers by involving other projects,
						organizations, and
						scientific disciplines.
					</ul>
					<ul>
						Preserve a strong architectural vision, but be open to new
						ideas
						and approaches.
					</ul>
				</html:div>
			</description>
		</theme>
	</themes_and_priorities>
	<appendix
		name="token" />
</plan>
