Comprehensive design outline of the vm-universe, your one stop shopping location for all things virtual in HTCondor. For a breakdown of the current work that is being done, please see Ticket #883

Related Tickets

Ticket #883: VM universe refactor

Goals and Objectives

The vm-universe gives HTCondor the ability to run virtual machines as a "job", these vm's can either run a dedicated task, spin up extra resources (which can be added to the existing pool), create a virtual pool.


Engineering/Design Requirements

Functional/Behavioral Requirements


Discovery & Advertising




Testability of Requirements

Design Choices and "Views"

Logical Design View

  The Design View captures the classes, interfaces, and patterns that describe the representation of the problem domain and how the software will be built to address it. The design view almost always uses class diagrams, object diagrams, activity diagrams, composite structure diagrams, and sequence diagrams to convey the design of a system. The design view typically doesn't address how the system will be implemented or executed.

Deployment View

  The Deployment View captures how a system is configured, installed, and executed. It often consists of component diagrams, deployment diagrams, and interaction diagrams. The Deployment View also captures how the physical layout of the hardware communicates to execute the system.

Implementation View

  The Implementation View emphasizes the components, files, and resources used by the system. Typically the Implementation View focuses on the configuration management of a system; what components depend on what, what source files implement what classes, etc. Implementation views almost always use one or more component diagrams and may include interaction diagrams, statechart diagrams, and composite structure diagrams.

Process View

  The Process View of a system is intended to capture concurrency, performance, and scalability information, which shows how the system will behave at runtime. The process view often uses some form of interaction diagrams and activity diagrams.

Use Case Senarios (Tie views together)


Raw Thoughts, Ideas, and Questions (Migrate to above later)