Torre
=====

- Authenticate (Authentication)
- DATA SELECTION (VDC)
  - Optional
  - Query or
  - Dataset Selection (DS Catalog)
- Start Session
  - Establish Slave/server config
  - data placement decisions on staging & replication in light of policies and cost
    (RMS: data mover, RLS, estimator)
  - Resource Broker for CPU assign in light of placement, interactive requirements
    (RB: resource discovery, matchmaker, resource reservation)
    (job capabilities)
  - or define own config (static config file)
  - or (abstract job submit)

- Availability/Cost Evaluation (estimator)
  - Decision to launch, reconfigure and launch
- Launch masters & slaves [concrete interactive job submit]
- Slave communication for config [Control/Communication]
- ESTABLISH TASK
  - Application, algorithms, configuration (VDC)
  - Data selection
    - redo CPU allocation
- Initiate Task
- SOftware Setup (Software Installer)
- Execute (Job control)
- Generate Cost Estimate based on Execution (Estimator)
- Job status (Job status)
- Communication & control (Communication/control)
  - Reduce event count
  - Monitoring, Statistics
  - Early Termination
  - Intermediate results
- New/modified CPU allocation (Abstract job submit)
- Logging/metadata->catalogs (Metadata)
- Task Complete - cleanup
  - merging statistical, bulk data
  - data return, archiving, cataloging (RMS)
- Task End
- Task Save, Session Save (Metadata)
==> LOOP to ESTABLISH TASK
or ==> LOOP TO DATA SELECTION

Additional tasks:
- scan list of events
- define, launch new selection in batch
- launch re-reco on sample
- save dataset locally
- save objects with their provenance



Harvey
======

1) Auth, Author, Allocation [Quota, Priority = f(Location), Placement Profile]
2) Data Selection => RLS
3) Start Session => "allocate" CPU [choose best location,do I need to form collection,
do I need to tr... &/or serialize, ... to data]
4) Data Placement [where CPU is, where there's room, where I'm supposed to access
and/or process data]
 
2-4) needs to correlate CPU and data ... need to use policies in deciding.