Aurora User Guide

Welcome 7

Introduction 7

What is Aurora? 7

Using this Help System 7

Getting Started 8

Learning More 8

Beginning Users 8

Quick Start Tutorials 9

Scheduling From Scratch Tutorial 9

Scheduling From Scratch Wizard 9

Job Creation 10

Step 1 - Activities Tab 10

Step 2 - Create New Job 10

Step 3 - Display Job Properties 10

Step 4 - Set Job Properties 10

Step 5 - Create Job Hierarchy 11

Step 6 - Change Job Name 12

Step 7 - Add More Layers to Job Hierarchy 12

Project Creation 12

Step 1 - Projects Tab 13

Step 2 - Create New Project Type 13

Step 3 - Display Project Properties 13

Step 4 - Add Jobs to Project 13

Step 5 - Select Multiple Jobs at Once 13

Step 6 - Create New Project Instance 14

Schedule 14

View Results 15

Constraint Creation 16

Transition 17

Step 1 - Select a Project 17

Step 2 - Create Constraint Start 17

Step 3 - Create Constraint Finish 17

Step 4 - Constraint Wizard 17

Step 5 - View Updated PERT Chart 18

Step 6 - Create Another Constraint 18

Reschedule 18

View Updated Results 18

Adding Resource Requirements 19

Adding Resources to the Model 19

Resource Creation 20

Resource Set Creation 21

Adding Jobs with Resource Requirements 23

Linking the New Jobs 27

Update Schedule and View Results 35

Scheduling From Scratch - Full View 38

Simple Model Creation and Scheduling 38

Constraint Creation 42

Adding Resources 44

Create a Resource Set 46

Create an Activity with Resource Requirements 48

Add Activities to Project 50

Viewing Schedule Results 59

Viewing a Gantt Chart 60

Viewing a Resource Plot 60

Viewing a Spatial Plot 61

Viewing a Histogram Plot 65

Viewing a Tabular Editor 70

Basic Working Procedures 73

Entering Model Data 74

Importing Model Data 75

Importing from MS Project 75

Aurora XML Import/Export Step 1 76

Aurora XML Import/Export Step 2 77

Aurora XML Import/Export Step 3 79

Manual Modeling 80

Creating a Schedule from Scratch 82

Modeling via Copy and Paste 111

Viewing the Model 112

Scheduling 116

What does scheduling do? 116

Before Scheduling 116

Creating Instances 117

Error/Warning Dialog 117

Errors 118

Capacity Violation Error 118

Concurrency Overlap Error 119

Dependency Loops 119

Duration Error 120

Flow Date/Job Date Inconsistency Error 121

Infeasible Unbreakable Jobs 121

Warnings 122

Concurrency Overlap Warning 122

Non-Milestone Warning 123

Schedule Issue Troubleshooting 123

Viewing Schedule Results 123

Understanding the Schedule 125

Refining the Model 125

Removing Jobs 125

Schedule Distribution 125

Printing the Schedule 126

Model Management 129

Saving Your Model 130

Basic Techniques 131

Creating Model Elements 132

Creating a Resource 132

Resource Types vs. Resource Instances 132

Creating a Resource Type 132

Creating a Resource Instance 133

Editing a Resource 133

Creating a Resource Set 133

Prerequisites 134

Creating a Resource Set 134

Adding a Resource to a Resource Set 134

Editing a Resource Set 135

Creating a Job 135

Job Types vs. Job Instances 135

Creating a Job 135

Editing a Job 136

Property Editing 136

Defining Resource Requirements 137

Editing Resource Requirements 138

Creating a Flow 139

Prerequisites 139

Flow Types vs. Flow Instances 140

Creating a Flow Type 140

Creating a Flow Instance 140

Editing a Flow 140

Adding a Job to a Flow 141

Creating a Constraint 142

Prerequisites 142

Defining a Constraint 142

Constraint Options 143

Additional Constraint Creation Methods 147

Editing a Constraint 147

Creating a Calendar 147

Creating a Calendar 149

Editing a Calendar 149

Editing the Daily Schedule 149

Selecting a Holiday Set 155

Toggling Work Days 160

Varying Schedule by Day 160

Editing Model Elements 160

Editing a Resource 161

Editing a Resource Set 162

Editing a Job 162

Editing a Flow 169

Editing a Resource 2 170

Editing a Resource 3 171

Editing a Job 3 171

About Gantt Charts 178

Editing a Resource Set 2 178

Editing a Job 2 179

About Gantt Charts 2 187

Editing a Constraint 187

Editing a calendar 188

Editing a Holiday Set 200

Viewing Model Data 201

Viewing Model Data in the Edit Tab 202

Viewing a Tabular Editor 202

Viewing a PERT Chart 205

Creating a Separate PERT Chart 206

Basic PERT Configuration 207

Viewing Schedule Results 207

Viewing a Gantt Chart 210

About Gantt Charts 211

Viewing a Resource Plot 211

Viewing a Spatial Plot 212

Viewing a Tabular Editor 217

Viewing Reports 221

Intermediate Users 221

Intermediate Working Procedures 222

Entering/Updating Model Data 222

Work Assignments 222

Creating Work Assignments 223

One Time Work Assignment 225

Daily Work Assignment 226

Periodic Work Assignment 227

Editing Work Assignments 228

Manually Editing Work Assignments 232

Deleting Work Assignments 232

Controlling the Work Assignment Time Range 233

Scheduling 234

What does scheduling do? 234

Before Scheduling 234

Creating Instances 234

Error/Warning Dialog 235

Errors 236

Capacity Violation Error 236

Concurrency Overlap Error 237

Dependency Loops 237

Duration Error 238

Flow Date/Job Date Inconsistency Error 239

Infeasible Unbreakable Jobs 239

Warnings 239

Concurrency Overlap Warning 240

Non-Milestone Warning 240

Schedule Issue Troubleshooting 241

Viewing Schedule Results 241

CCPM Procedures 242

What is CCPM? 243

CCPM Model Development 243

Generate a Safe Duration Schedule 244

Fence Project End 244

Generate an Aggressive Duration Schedule 245

Find the Critical Chain 245

Insert Buffers 246

Avoiding Instant Buffer Incursion 247

CCPM Execution 247

Re-Level Schedule 248

Prioritize Jobs 248

Assign Jobs 249

View Task Priorities 251

Enter Actuals 251

Manual Actuals Entry 252

Actuals Copy and Paste 255

Execution Status Monitoring 255

Buffer Incursion Report 255

Fever Chart 255

Setting Fever Chart Color Bounds 258

Viewing Schedule Results - Intermediate 258

Understanding the Schedule 258

Running What-If Scenarios 258

Analysis Tasks 258

Analyzing a Conflict 258

Analyzing Schedule Gaps 259

Finding a Schedule's Bottleneck 259

Refining the Model 259

Moving a Job 259

Moving a Job via Right-Click 259

Moving a Job in the Tabular Editor 260

Utilities Menu 261

Run Logic Checks 261

Find Redundant Constraints 267

Run Mass Job Removal 271

Baseline Schedule 273

Clear Baseline 275

Snapshot Baseline 275

Set Stable Schedule 275

Clear Stable Schedule 275

Bridging Constraints control 275

Preference Constraints Control 276

Work Assignments 277

Errors 285

Capacity Violation Error 286

Concurrency Overlap Error 286

Dependency Loops 287

Duration Error 288

Flow Date/Job Date Inconsistency Error 288

Infeasible Unbreakable Jobs 289

Warnings 289

Analyze Jobs Behind 291

Open Delay Estimates 291

Entering Actuals 291

Behavior of Actuals 296

Updating the Schedule 296

Schedule Distribution 296

Model/Data Management 296

Intermediate Techniques 296

Refined Modeling Techniques 296

Moving a Job 296

Capacity Routines 298

Scheduling Options 299

Resource Level-Loading 299

Schedule Settings Configuration 301

Work Assignments 303

Managing Work Assignments 308

Baselining the Schedule 318

Mass Job Removal 319

Refined Display Access 319

Viewing Resource Plots with Resource Groups 319

Display Markup 319

Display Configuration 319

Conditional Appearance Configuration 320

Adding an Appearance Rule 329

Adding an Untargeted Rule 334

Removing an Appearance Rule 334

Editing an Appearance Rule 335

Augmenting an Appearance Rule 335

Appearance Rule Types 336

Include/Exclude Rule Tab 337

Include Appearance Rule 338

Exclude Appearance Rule 339

Mixed Inclusion/Exclusion Logic 340

Fill Rule Tab 340

Fill Color Appearance Rule 341

Fill Pattern Appearance Rule 342

Mixed Color/Pattern Logic 342

Tags Rule Tab 343

Border Rule Tab 343

Font Rule Tab 343

Other Rule Types 343

Label Configuration 343

Resize/Move a Label 345

Edit a Label 345

Create a Label 354

Delete a Label 354

Save a Label Configuration 355

Viewing a Split Display 355

Gantt Section Configuration 356

Viewing Snapshots 357

Data Management 357

CCPM 357

Analysis Techniques 357

Flagging Jobs 357

Specific Job Conditional Appearance 357

Flagging Constraints 358

Change Log 358

Upstream Jobs Report 358

Downstream Jobs Report 358

Advanced Users 358

Modeling Tips 358

Inner Workings 358

Scheduling 359

Compatibility 359

Final Shift Remnant Rounding 360

Resource Set Overlap Handling 362

Advanced Working Procedures 362

Running a Multi-Ship Model 362

Resource Optimization 362

Schedule Compression 363

Capacity Change Constraints 363

Welcome

Welcome to the Aurora manual. How you use this documentation will depend a great deal on whether you want to:

We recommend that you start with the Introduction. This will point you to the appropriate orientation materials, including background information, specific tutorials, and more general basic working procedures.

Introduction

What is Aurora?

Aurora is a constraint-based scheduling system. It allows the user to model the structure of a scheduling problem, including jobs, resources, constraints, and other information describing how the work can take place. Based on this information, Aurora figures out when tasks should happen and with which resources, in order to minimize overall project duration.

Using this Help System

This help system's primary job is to give an overview of how to perform different tasks in Aurora. It also gives supplemental information about the inner workings of the system, for more advanced users.

Getting Started

If you have never used Aurora before, we strongly encourage you to begin with the quick start tutorials contained in this document. They can also be a good refresher for someone who has not used Aurora in a few months.

The basic working procedures cover much of the same material as the quick start tutorials, but from a more general standpoint, and they have more background information.

The basic techniques are a grab-bag of tools and techniques that are needed in order to perform basic tasks in Aurora. Most of them are referenced by the procedures, but it may also be helpful to browse through the techniques to see what's there.

We recommend that you wait to extend your knowledge beyond this basic information until you are quite comfortable with the basic functionality that you need in your role. Once you are comfortable, feel free to explore further.

If you are confused about something, or have a question, check Frequently Asked Questions.

Learning More

Beginning Users

This section highlights the functionality that will be needed by most users.

Note that some of the details are still in work, but most of the core functionality has been documented at this point.

Quick Start Tutorials

These tutorials provide a guided introduction to using Aurora. Each tutorial links to further information on the central tutorial topic so that you can explore further.

Note that the quick start tutorials focus on basic functionality. Additional information about basic functionality is available in Basic Working Procedures and Basic Techniques. Note that some material covered there will be somewhat redundant with the more general of the tutorials (e.g. Viewing a Schedule); however, they include additional background and options not covered in the tutorials.

Scheduling From Scratch Tutorial

This tutorial goes through the process of building a simple schedule from scratch. It is a simplified, example-based version of the information available in Creating a Schedule from Scratch.

The goal of this tutorial is to start scheduling as soon as possible, and then iteratively modify the schedule in order to get a richer scheduling model.

Scheduling From Scratch Wizard

This wizard will walk you through the process of building a schedule from scratch.

Tutorial Overview:

1)Simple Model Creation and Scheduling

a)Create job templates

b)Add jobs to project

c)Schedule jobs

d)View basic results

2)Constraint Creation

a)Add constraints

b)Schedule

3)Adding Resources

a)Add resources

b)Add resource sets

c)Add resource requirements

d)Schedule

e)View resource-related results

Start at the beginning

Job Creation

This walks you through the process of creating job templates for later use in making a project.

Step 1 - Activities Tab

Go to the Activities tab.

Step 2 - Create New Job

Click on the New Job button at the bottom of the left-side panel.

Step 3 - Display Job Properties

Select the new activity. The properties will now display in the middle panel.

Step 4 - Set Job Properties

Set "active duration" to 60.

Don't worry about the other properties for now.

Step 5 - Create Job Hierarchy

While the new activity is still selected, click the "New Job" button.

This new activity will represent the parent types for activities without resources. Note that the additional layer is not important right now, but when we go back and add activities with resources it will result in a cleaner hierarchy.

Step 6 - Change Job Name

Select the new sub-activity, and change the name to "Temporal". The hierarchy should now look something like this:

Note that the active duration of "Temporal" is 60, even though we did not manually set it at this level. It inherited this property value from "Activity-1".

Step 7 - Add More Layers to Job Hierarchy

While the new activity is still selected, click the "New Job" button.

These will be the activities that we add to our new project.

Creating a Project, Step 1

Project Creation

This walks you through the process of making a project, adding jobs, and making a project instance.

Step 1 - Projects Tab

Go to the Projects tab.

Step 2 - Create New Project Type

Click on the "New Project" button at the bottom of the left-side panel.

Step 3 - Display Project Properties

Select the new flow. The properties will now display in the middle panel.

Step 4 - Add Jobs to Project

Click on the "Add Task" button at the bottom of the left-side panel.

Step 5 - Select Multiple Jobs at Once

In the resulting dialog, select "Temporal-1". Hold down the shift key and select "Temporal-3". This will select all three temporal activities.

Hit OK.

The activities will be added to the flow and displayed in the project tree, and in the PERT chart on the right side.

Step 6 - Create New Project Instance

Select "Flow-1" (if necessary), and click the "New Instance" button in the lower-left of the display.

This will create "Flow-1-1", a new flow instance that can be scheduled.

You are now ready to schedule.

Schedule

Go to the "Schedule" menu and select "Schedule".

Hit OK in the resulting dialog box to proceed with scheduling. You will see a progress bar briefly. This shows scheduling progress, but because this is such a small model, it is likely to only flash up for a second or two.

View Results

Go to the "Displays" menu and select "Gantt Chart" from the list of display options.

This will give you a default Gantt Chart that shows the temporal view of your schedule.

This model does not yet have any constraints or variation in activity duration, so you should wind up with parallel lines. The top-most line shows the project summary, and the other three lines represent each of the three scheduled activities.

Elaborating the Model

Constraint Creation

This walks you through the process of adding constraints to your model and rescheduling.

Transition

Now that we have schedule results, we will start elaborating our model and see what that does to our schedule results. Go back to the "Edit" tab in the upper left in order to make model modifications.

Step 1 - Select a Project

In the "Projects" tab, select "Flow-1".

Step 2 - Create Constraint Start

Right-click on "Temporal-2-1" and select "Create Constraint Start".

Step 3 - Create Constraint Finish

Right-click on "Temporal-2-1" and select "Create Constraint Finish"

Step 4 - Constraint Wizard

In the resulting dialog, click the "Create Constraint" button at the bottom.

Step 5 - View Updated PERT Chart

The PERT Chart will now update with the new constraint.

Step 6 - Create Another Constraint

Now create a constraint from "Temporal-2-1" to "Temporal-3-1" by following the same procedure. Once you are done, the PERT should look like this:

Reschedule

Go to the "Schedule" menu and select "Schedule" to update the schedule.

View Updated Results

Click on the Gantt Chart tab to see the updated schedule. To reset the date range in force on the Gantt, click on the clock icon on the toolbar.

The Gantt should now look something like this:

Adding Resource Requirements

Now we will once again go back to the "Edit" tab to add resources and resource requirements.

Creating Resources and Requirements

Adding Resources to the Model

This walks you through the process of:

Resource Creation

This walks you through the process of creating new resource types and instances for use in scheduling.

Step 1 - Resources Tab

Go to the Resources tab.

Step 2 - Create New Resource Type

Click on the "New Resource" button at the bottom of the left-side panel.

Step 3 - Display Resource Properties

Select the resulting resource. The resource's properties will show in the middle panel and the rest of the buttons in the lower left will enable.

Step 4 - Create Resource Instances

Click twice on the "New Instance" button at the bottom of the left-side panel.

This will create two new resource instances that can then be used in scheduling.

Creating a Resource Set

Resource Set Creation

This walks you through the process of creating a new resource set and adding resources to it.

Step 1 - Resource Sets Tab

Go to the Resource Sets tab.

Step 2 - Create New Resource Set

Click on the "New Resource Set" button at the bottom of the left-side panel.

Step 3 - Add Resources to Resource Set

Select the resulting resource set, and click on the "Resource" button at the bottom of the left-side panel.

Step 4 - View Resource Tree

Aurora will display a dialog with the resource tree.

Step 5 - Select Resources

Select Resource-1-1 and Resource-1-2 (click on Resource-1-1, then hold down the Shift key and click on Resource-1-2).

Step 6 - View Resources in the Resource Set

Aurora will update the GUI to show the resources in the set.

Aurora will now recognize that either Resource-1-1 or Resource-1-2 (or both) may be used to satisfy a requirement for ResourceSet-1.

Create Jobs with Resource Requirements

Adding Jobs with Resource Requirements

This walks you through the process of adding new job templates that have resource requirements.

It then walks you through the process of adding these new jobs to your project.

Step 1 - Activities Tab

Go to the "Activities" tab.

Step 2 - Create New Job

Select "Activity-1" (if it is not already selected).

Click on the "New Task" button at the bottom of the left-side panel.

Step 3 - Change Job Properties

Select the resulting job to show its properties in the middle panel. Change its name to "Resourced".

The hierarchy should now look something like this:

Step 4 - Change Job Requirements

Click on the "Requirements" tab in the central property area.

Step 5 - Add Resource to Job Requirement

Click on "Add" button in the resource requirements panel.

Step 6 - View Available Resources

Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

Step 7 - Select Resource/Resource Set

Select "ResourceSet-1" from the resource set section and click "OK".

Step 8 - View New Resource Requirement

The resource requirement view will update to show the new resource requirement.

Step 9 - Add Jobs to Hierarchy

With the "Resourced" job selected, click on the "New Job" button at the bottom of the left-side panel 6 times.

The resulting hierarchy should look like this:

Step 1 - Add Resourced Jobs to Project

Go to the Projects tab.

Step 2 - Select Project Instance

Select the flow instance.

Step 3 - Add Jobs to Project Instance

Click on the "Add Task" button at the bottom of the left-side panel.

Step 4 - Select Jobs to Add

Select the 6 new jobs from the resulting dialog (select "Resourced-1", hold down the Shift key, and select "Resourced-6").

Step 5 - View the Jobs Added to the Project

Aurora will add the jobs to the flow instance (note that if you had selected the flow type instead, the jobs would have been added to both).

Linking the New Jobs

This walks you through the process of splicing the new jobs in using two different techniques.

Initial Constraint Creation - Adding Constraints Manually

In the PERT chart, create constraints from "Temporal-1-1-1" to "Resourced-1-1", and "Resourced-1-1" to "Temporal-3-1-1" via the right-click menus. If you need a refresher on how to do this, go back to the constraint creation description.

Hit the arrange toolbar button at the top of the PERT chart.

The result should look similar to this:

Tabular Editor Constraint Creation

We want to constrain all of the resourced jobs to fall between "Temporal-1-1-1" and "Temporal-3-1-1". We could do this manually in the PERT chart by creating a series of constraints via the right-click menu; for this many similar constraints that is rather painful, so we will use the Tabular Editor instead. The Tabular Editor is very useful for any sort of batch editing operation.

Step 1 - Open Tabular Editor

Open a Tabular Editor by going to the "Displays" menu and selecting "Tabular Editor":

Aurora will open a Tabular Editor showing all job instances and many property columns.

Step 2 - Select Columns

To configure the Tabular Editor to only include the columns we are interested in, click on the column selector icon.

In the resulting dialog box, click the "None" button at the top to deselect all columns.

Select "name" (second from the top), then select "predecessors" and "successors" (may need scroll to the very bottom).

Click "OK".

Step 3 - View Tabular Editor

Aurora will display a configured Tabular Editor.

Step 4 - Sort by Column Header

Click in the "name" column header to sort by name.

Step 5 - Select and Copy Constraint Predecessors

In the "predecessors" column, select "Temporal-1-1-1" and hit Ctrl and c to copy the constraint value.

Select the predecessor cells for all of the "Resourced" jobs (but not "Temporal-1-1-1") hit Ctrl and v to paste the constraint value.

The result should look like this:

Step 6 - Select and Copy Constraint Successors

In the "successors" column, select "Temporal-3-1-1" and hit Ctrl and c to copy the constraint value.

Select the successor cells for all of the "Resourced" jobs (but not "Temporal-1-1-1") hit Ctrl and v to paste the constraint value. The result should look like this:

Step 7 - View and Arrange the PERT Chart

Go back to the Edit tab, which should still have Projects selected.

Select "Flow-1-1" (if it is not already selected) to show its PERT chart.

Hit the arrange button to update the layout.

The result should look similar to this:

Reschedule

Update Schedule and View Results

This walks you through the process of rescheduling and looking at the schedule results.

Reschedule

Update the schedule by going to the Schedule menu and selecting Schedule. "OK" through the options

dialog box.

View Results

View Updated Grantt

Go to the Gantt Chart and update the bounds by clicking on the clock icon. The plot should now look something like this:

Note that because of the temporal constraint with "Temporal-1-1-1", all of the resourced jobs start after "Temporal-1-1-1" has finished. Because of the resource requirements, only two may occur at a given time, because there are only two resources available.

View Resource Results

Step 1 - Open Spatial Plot

Open a resource plot by going to the "Displays" menu and selecting "Spatial Plot":

The spatial plot is suitable for viewing resources that tend to have few jobs using them at a given time (e.g. space zones, or labor if you are working with a barchart model).

Step 2 - Select Resources

Aurora will open a configuration dialog. Select which resources you want to view, and click the "Add" button at the bottom of the display. They should then show up on the right side (which depicts what will be included in the display).

Hit "OK" to close the configuration window and view the plot.

Step 3 - View the Spatial Plot

Aurora will show you the selected resources, each in its own section, with jobs that use said resources spread out based on the timing of the jobs.

You can view (and edit) the properties of any of the assigned jobs by double-clicking on that job's box in the spatial plot.

Closing Remarks

Basic Wizard Complete

Congratulations! You have finished the initial model creation tutorial.

To expand on your knowledge, please see the tutorial base page for more tutorials, or look through the basic model creation procedures to get a more generalized knowledge of the model creation techniques.

Scheduling From Scratch - Full View

Simple Model Creation and Scheduling

Activity Definition

First you need to define activity templates. This will make it quick and easy to add a standard type of activity to our project.

  1. Go to the Activities tab.

  2. Click on the New Job button at the bottom of the left-side panel.

  3. Select the new activity. The properties will now display in the middle panel.

  1. Set "active duration" to 60.

Don't worry about the other properties for now.

  1. While the new activity is still selected, click the "New Job" button.

This new activity will represent the parent types for activities without resources. Note that the additional layer is not important right now, but when we go back and add activities with resources it will result in a cleaner hierarchy.

  1. Select the new sub-activity, and change the name to "Temporal". The hierarchy should now look something like this:

  1. With the "Temporal" activity selected, click on the "New Job" button three times.

These will be the activities that we add to our new project.

Project Creation

  1. Go to the Projects tab

  1. Click on the "New Project" button at the bottom of the left-side panel.

  2. Select the new flow. The properties will now display in the middle panel.

  3. Click on the "Add Job" button at the bottom of the left-side panel.

  1. In the resulting dialog, select "Temporal-1". Hold down the shift key and select "Temporal-3". This will select all three temporal activities.

Hit OK.

The activities will be added to the flow and displayed in the project tree, and in the PERT chart on the right side.

  1. Select "Flow-1" (if necessary), and click the "New Instance" button in the lower-left of the display.

This will create "Flow-1-1", a new flow instance that can be scheduled.

You are now ready to schedule.

Schedule

  1. Go to the "Schedule" menu and select "Schedule".

Hit OK in the resulting dialog box to proceed with scheduling. You will see a progress bar briefly. This shows scheduling progress, but because this is such a small model, it is likely to only flash up for a second or two.

View Results

  1. Go to the "Displays" menu and select "Gantt Chart" from the list of display options.

This will give you a default Gantt Chart that shows the temporal view of your schedule.

This model does not yet have any constraints or variation in activity duration, so you should wind up with parallel lines. The top-most line shows the project summary, and the other three lines represent each of the three scheduled activities.

Next Step

Now that we have schedule results, we will start elaborating our model and see what that does to our schedule results. Go back to the "Edit" tab in the upper left in order to make model modifications.

Constraint Creation

Add Constraints

  1. In the "Projects" tab, select "Flow-1".

  1. In the PERT Chart on the right side, right-click on "Temporal-1-1" and select "Create Constraint Start".

  1. Right-click on "Temporal-2-1" and select "Create Constraint Finish".

  1. In the resulting dialog, click the "Create Constraint" button at the bottom.

  1. The PERT Chart will now update with the new constraint.

  1. Now create a constraint from "Temporal-2-1" to "Temporal-3-1" by following the same procedure. Once you are done, the PERT should look like this:

  1. Go to the "Schedule" menu and select "Schedule" to update the schedule.

  2. Click on the Gantt Chart tab to see the updated schedule. To reset the date range in force on the Gantt, click on the clock icon on the toolbar.

Next Step

Now we will once again go back to the "Edit" tab to add resources and resource requirements.

Adding Resources

Create Resources

  1. Go to the Resources tab.

  1. Click on the "New Resource" button at the bottom of the left-side panel.

  1. Select the resulting resource. The resource's properties will show in the middle panel and the rest of the buttons in the lower left will enable.

  1. Click twice on the "New Instance" button at the bottom of the left-side panel.

This will create two new resource instances that can then be used in scheduling.

Create a Resource Set
  1. Go to the Resource Sets tab.

  1. Click on the "New Resource Set" button at the bottom of the left-side panel.

  1. Select the resulting resource set, and click on the "Resource" button at the bottom of the left-side panel.

  1. Aurora will display a dialog with the resource tree.

  1. Select Resource-1-1 and Resource-1-2 (click on Resource-1-1, then hold down the Shift key and click on Resource-1-2).

  1. Aurora will update the GUI to show the resources in the set.

Aurora will now recognize that either Resource-1-1 or Resource-1-2 (or both) may be used to satisfy a requirement for ResourceSet-1.

Create an Activity with Resource Requirements
  1. Go to the "Activities" tab.

  1. Select "Activity-1" (if it is not already selected).

Click on the "New Job" button at the bottom of the left-side panel.

  1. Select the resulting job to show its properties in the middle panel. Change its name to "Resourced".

The hierarchy should now look something like this:

  1. Click on the "Requirements" tab in the central property area.

  1. Click on "Add" button in the resource requirements panel.

  1. Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

  1. Select "ResourceSet-1" from the resource set section and click "OK".

  1. The resource requirement view will update to show the new resource requirement.

  1. With the "Resourced" job selected, click on the "New Job" button at the bottom of the left-side panel 6 times.

The resulting hierarchy should look like this:

Add Activities to Project
  1. Go to the Projects tab.

  1. Select the flow instance.

  1. Click on the "Add Job" button at the bottom of the left-side panel.

  1. Select the 6 new jobs from the resulting dialog (select "Resourced-1", hold down the Shift key, and select "Resourced-6").

  1. Aurora will add the jobs to the flow instance (note that if you had selected the flow type instead, the jobs would have been added to both).

  1. In the PERT chart, create constraints from "Temporal-1-1-1" to "Resourced-1-1", and "Resourced-1-1" to "Temporal-3-1-1" via the right-click menus. If you need a refresher on how to do this, go back to the constraint creation description.

Hit the arrange toolbar button at the top of the PERT chart.

The result should look similar to this:

We want to constrain all of the resourced jobs to fall between "Temporal-1-1-1" and "Temporal-3-1-1". We could do this manually in the PERT chart by creating a series of constraints via the right-click menu; for this many similar constraints that is rather painful, so we will use the Tabular Editor instead. The Tabular Editor is very useful for any sort of batch editing operation.

Tabular Editor for Constraint Creation

  1. Open a Tabular Editor by going to the "Displays" menu and selecting "Tabular Editor":

Aurora will open a Tabular Editor showing all job instances and many property columns.

  1. To configure the Tabular Editor to only include the columns we are interested in, click on the column selector icon.

In the resulting dialog box, click the "None" button at the top to deselect all columns.

Select "name" (second from the top), then scroll to the very bottom and select "predecessors" and "successors".

Click "OK".

  1. Aurora will display a configured Tabular Editor.

  1. Click in the "name" column header to sort by name.

  1. In the "predecessors" column, select "Temporal-1-1-1" and hit Ctrl and c to copy the constraint value.

Select the predecessor cells for all of the "Resourced" jobs (but not "Temporal-1-1-1") hit Ctrl and v to paste the constraint value.

The result should look like this:

  1. In the "successors" column, select "Temporal-3-1-1" and hit Ctrl and c to copy the constraint value.

Select the successor cells for all of the "Resourced" jobs (but not "Temporal-1-1-1") hit Ctrl and v to paste the constraint value. The result should look like this:

  1. Go back to the Edit tab, which should still have Projects selected.

Select "Flow-1-1" (if it is not already selected) to show its PERT chart.

Hit the arrange button to update the layout.

The result should look similar to this:

Schedule

  1. Update the schedule by going to the Schedule menu and selecting Schedule. "OK" through the options dialog box.

  2. Go to the Gantt Chart and update the bounds by clicking on the clock icon. The plot should now look something like this:

Note that because of the temporal constraint with "Temporal-1-1-1", all of the resourced jobs start after "Temporal-1-1-1" has finished. Because of the resource requirements, only two may occur at a given time, because there are only two resources available.

Viewing Resource Results

  1. Open a resource plot by going to the "Displays" menu and selecting "Spatial Plot":

The spatial plot is suitable for viewing resources that tend to have few jobs using them at a given time (e.g. space zones, or labor if you are working with a barchart model).

  1. Aurora will open a configuration dialog. Select which resources you want to view, and click the "Add" button at the bottom of the display. They should then show up on the right side (which depicts what will be included in the display).

Hit "OK" to close the configuration window and view the plot.

  1. Aurora will show you the selected resources, each in its own section, with jobs that use said resources spread out based on the timing of the jobs.

You can view (and edit) the properties of any of the assigned jobs by double-clicking on that job's box in the spatial plot.

Viewing Schedule Results

This tutorial presupposes that you have a schedule to view. If you do not have a model that can schedule, please see the Scheduling From Scratch Tutorial.

Regardless of the model, you can view a Gantt chart.

If you have resources and resource requirements in your model, you can also view resource plots.

Finally, if you need to see your schedule results in a tabular view (similar to Excel), you can view a Tabular Editor.

Viewing a Gantt Chart

Go to the "Displays" menu and select "Gantt Chart" from the list of display options.

This will give you a default Gantt Chart that shows the temporal view of your schedule.

To change the time scale, click on the timeline. Aurora will show a slider bar that you can use to adjust the scale.

Viewing a Resource Plot

There are three different resource plots available:

This plot is good for viewing resources that are usually used by one job (or very few jobs) at a time. Zones are a good example of a common resource that you would view with the Spatial Plot.

This plot is good for viewing resources that may be used by a number of different jobs at the same time. Labor is a good example of a common resource that you would view with the Histogram Plot.

Viewing a Spatial Plot

Go to the "Displays" menu and select "Spatial Plot" from the list of display options.

Aurora will open a new Spatial Plot, and pop up a configuration dialog that allows you to select the resources that you would like to view.

For the Spatial Plot, you will usually select resources that are used by one job at a time, or only a few jobs at a time (e.g. zones).

The right side of the configuration dialog shows the resources that will be included in the display. You can transfer multiple resources by multi-selecting resources (hold down the Control key and click), and clicking the "Add" button at the bottom. You can also transfer resources one at a time.

Aurora will transfer the selected resources to the right side. You can repeat this process to add more resources.

When you are done, click "OK".

Aurora will generate a Spatial Plot for the selected resources.

The X-axis represents time (increasing from left to right), and each resource is assigned to its own row. Utilization is indicated by a blue box in the resource’s row (representing an activity that uses the resource), the width of which indicates the span of time that the resource is in use. Double clicking on the box will pop up a dialog showing the properties of the job it represents.

To change the time scale, click on the timeline. Aurora will show a slider bar that you can use to adjust the scale.

Viewing a Histogram Plot

Go to the "Displays" menu and select "Histogram Plot" from the list of display options.

Aurora will open a new Histogram Plot, and pop up a configuration dialog that allows you to select the resources that you would like to view.

For the Histogram Plot, you will usually select resources that are used by multiple job at a time (otherwise the Spatial Plot is likely to be a better choice).

The right side of the configuration dialog shows the resources that will be included in the display. You can transfer multiple resources by multi-selecting resources (hold down the Control key and click), and clicking the "Add" button at the bottom. You can also transfer resources one at a time.

In order to view these resources effectively in a histogram, you must add them as a group (so that they will show up pooled together). Select all of the resources that should appear in a single pool (e.g. all 30804 resources), and click "Add Group".

Aurora will pop up a dialog asking what the composite resource's name should be. It defaults to the name of the first selected resource. In this case the three bars reflect the various options for the 30804 resource type.

Aurora will transfer the new composite resource to the right side. You can repeat this process to add more resources and/or resource groups.

When you are done, click "OK".

Aurora will generate a Histogram Plot for the selected resources and resource groups.

The X-axis represents time (increasing from left to right), and each resource is assigned to its own row. Within a row, utilization amount is represented on the vertical axis, with the top of the row indicating the maximum amount of the resource. The background color indicates the availability of the resource: a white background indicates that the resource (or some amount of the resource, depending on the span of the color) is available, while a blue background indicates that it is unavailable. Black boxes represent activities utilizing a resource, with the width of the box indicating the span of usage time and height representing the amount of the resource in use.

If you click on the plot, Aurora will show all jobs that are active at that point in time.

Double clicking on an activity will bring up a dialog displaying its properties.

To change the time scale, click on the timeline. Aurora will show a slider bar that you can use to adjust the scale.

Viewing a Tabular Editor

Go to the "Displays" menu and select "Tabular Editor" from the list of display options.

This will give you a default Tabular Editor that shows an Excel-style view of your model and schedule results. By default the Tabular Editor will show a variety of properties for job instances.

To configure the Tabular Editor to only include the columns we are interested in, click on the column selector icon.

In the resulting dialog box, click the "None" button at the top to deselect all columns.

Select "IP Number" and "name" from the top of the listing. These will allow us to identify the job in question.

Scroll down to the "Schedule Results" section (note the property color-coding; this allows you to readily find a property category in the long property list), and select "start date" and "end date".

Scroll down to the "Assignments" section, and select "resource assignments".

If there are additional properties that you would like to see, select those as well.

When you are done, click "OK".

Aurora will show a version of the Tabular Editor that only shows the columns that you selected.

You can sort by by value (e.g. by start date) by clicking in the column header.

Basic Working Procedures

There are a number of common tasks that may be performed within Aurora.

The most common of these tasks are discussed here. Once you are comfortable with these procedures, you may want to expand you knowledge by exploring Aurora's more advanced functionality.

In general, you will follow this high-level process:

When you are satisfied with the schedule, you may choose to:

It is highly recommended that you save your model periodically throughout the process.

Entering Model Data

Before you schedule, you need to have a model to schedule. It need not be the complete model - it is common to enter most of a model, schedule, elaborate your model, schedule, etc.

There are a number of ways you can enter the required model data.

The most common of these are:

Note that these techniques are not mutually exclusive: it would be common to import the basis of your model, elaborate it by making manual model modifications, and transferring data from another source via copy and paste. In addition, any of these techniques may be used to start from an empty file, or a file that already exists - be it a template, or a model to be updated.

Throughout the process of entering your model data, it is important to be able to look at what you have so far. The primary tools for this are:

The Edit Tab - this is the de-facto default, and allows you to see your elements by type
The PERT Chart - this is useful for viewing your network of jobs and their constraints
The Tabular Editor - this is useful for viewing an Excel-style summary of your current model

Importing Model Data

In many cases, scheduling data exists in another system. In such a situation, it should be transferred as directly as possible to avoid data corruption.

Import options include:

Importing from MS Project

Once you have imported your data, you can go ahead and schedule, or you can elaborate the model via any of the model entry techniques and then schedule.

Importing from MS Project

This section explains how to export a Microsoft Project file into Aurora, the different import options available in Aurora, and the process to export a file out of Aurora and re-import into Microsoft Project.

Note that the Microsoft Project XML format is a de facto industry standard that many other Project Management packages support, for example:

So the information here can be used when utilizing any software that supports Microsoft Project XML.

For example, if using Primavera P6, one can use the export to Microsoft Project XML option to transfer information to Aurora, then use the import from Microsoft Project XML option to transfer information to Aurora.

Below are the steps to import and export MS Project XML files in and out of Aurora:

Step 1: Export MS Project file as an MS Project XML.
Step 2: Import MS Project XML file into Aurora

Step 3: Export Aurora edited file back to Microsoft

Project

Aurora XML Import/Export Step 1

Exporting the Microsoft Project file as an MS Project XML

In Microsoft Project, go to File -> Save As...

Then select Save as type: XML format

This will save the file into a format readable by Aurora's built-in Import function.

Aurora XML Import/Export Step 2

Import an XML file saved from MS Project into Aurora

In Aurora, go to File -> MS Project XML -> Import

Locate the XML file you saved earlier via Microsoft Project, then click Open

Before the import is completed, Aurora provides the following options:

Explanation on the options:

Aurora XML Import/Export Step 3

Export an Aurora file back into Microsoft Project

In Aurora, go to File -> MS Project XML -> Export to save the current project as a XML to be read by Microsoft Project.

Navigate to the desired directory, fill in the file name and click Save

Then in Microsoft Project, go to the Open... option under File

And select file format as XML:

Find and open the newly saved XML file, then import as New Project. This will reopen the file in MS Project and will contain all the modifications made in Aurora.

Manual Modeling

Sooner or later you will need to do manual modeling in Aurora, even if it is only to add a resource for a what-if scenario.

Creating a Schedule from Scratch is a good resource if you are starting with an empty model, or need to make extensive model changes.

If you only need to add one or two elements, you can jump to the appropriate section:

If you need to make edits rather than creating new elements, you can jump to the edit information:

Creating a Schedule from Scratch

If you are starting with a completely empty file in Aurora, you will need to work from the bottom up to create your schedule. If you want a concrete walk-through to produce a simple sample schedule, please see the Scheduling From Scratch Tutorial.

  1. First you will need to define the resources that are available for use in your domain.

A resource is something required by a job or another resource in order to do work or operate (e.g. manpower, space, equipment). In general you should only model the resources which are restricted in some way, because these are the resources which impact the timing of your schedule.

Except where stated otherwise, the methods described here will create resource types. Resource types can be thought of as templates from which “real” resources (aka resource instances) can be generated. Consider a bag of white flour: the resource type for a bag of white flour would represent the general properties of a bag of white flour (e.g. that it’s white and not wheat flour) but wouldn’t refer to any particular bag of white flour in the world. From this resource type, however, one could create a number of resource instances that refer to specific bags of white flour, e.g. in a particular warehouse at a particular time.

For more information on this idea see Type vs. Instances section.

Resource creation is carried out in the Resources tab. If you want to create a completely new resource type, make sure nothing is selected in the resource list.

Click on the "New Resource" button at the bottom of the left-side panel.

If you want to base your resource type off of an existing resource, select the existing resource, then:

If you want to create a resource that is available in scheduling, you need to create a resource instance.

Select the desired resource type and click the “New Instance” button (note that you must have at least one resource type before you can make an instance).

Aurora will create a new resource instance under the selected resource type. Initially the instance will have all of the same properties as the originating type, but you can change the properties as needed.

For this instance to be allocated, either jobs will have to require it directly, or you will need to add the new instance to a resource set (indicating that the new resource is equivalent to some other existing resources).

Select the resource that you want to edit from the resource list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name, and the quantity to reflect how much of that resource is available.

For a more complete discussion of the possible resource properties, please see Resource Properties.

Note that if you edit a resource type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child resource.

  1. Next, you may want to collect some of your resources into sets if they’re interchangeable in certain situations.

Resource sets group resources that are interchangeable in a given situation. For example, there might be a 30804 resource set made up of all 30804 mechanics. Any of them would be acceptable for a job that had a requirement for a 30804 requirement. They may also be used as a convenience method for calling out all of a type of resource. For example, there might be a resource set of all left wing zones; a job that needed to lock out the left wing would call out the left wing resource set and demand the full set (rather than a set quantity, as in the more standard resource set usage).

Note that although many elements of an Aurora model are hierarchical in nature, with both types and instances, that is not the case for resource sets. All resource sets are considered to be instances, and may only have resource instances added to them.

Do you have resource instances yet If not, you should probably go make some.

Resource set creation is carried out in the “Resource Sets” tab.

Click on the "New Resource Set" button at the bottom of the left-side panel.

Aurora will create a new resource set that you can then edit.

To add a resource instance to a resource set, select the resource set in the resource set list and click the “Resource” button at the bottom of the list. This will pop up a dialog allowing you to choose which resource(s) you’d like to add to the set:

Note that you can select multiple resource instances by holding the shift key while clicking. You cannot add resource types to resource sets, but you can select a resource type as a convenience: all resource instances under that type will then be added to the set.

You can also add the resources from another resource set by choosing them in the “By Resource Set” tab.

When you have selected the resource instance(s) you’d like to add to the resource set being edited, click “OK” to add them. Note that if the resource set already had some resources in it, those resources will be augmented with the new selections (instead of being replaced).

Select the resource set that you want to edit from the resource set list. Its properties will be displayed in the central property panel.

Edit as necessary. Note also that you can edit the resource instances within a resource set by clicking on them in the resource set list to display their properties in the central property panel. See Editing a Resource for more information.

For a more complete discussion of the possible resource set properties, please see Resource Set Properties.

  1. With resources and resource sets defined, you will now be able to create the basic jobs that need to be carried out as part of your schedule.

An activity is a single job. You can also consider it an atomic task. Jobs generally require a constant set of resources throughout their life span. They should be a logical unit in which to consider the schedule.

Except where stated otherwise, the methods described will create job types. Job types can be thought of as templates from which “real” jobs (aka jobinstances) can be generated. Consider nailing two boards together: the job type representing this action would describe the general atomic process of using a hammer and nail to connect two boards. From this job type one could create a number of job instances, each of which would represent the job of nailing two specific boards together in a particular time and place. For more information on this idea see Types vs. Instances.

Job type creation is carried out in the Activities tab (whereas a job instance is created by adding a job to a flow instance). If you want to create a completely new job type, make sure nothing is selected in the job list.

Click on the New Job button at the bottom of the left-side panel.

If you want to base your job type off of an existing job, select the existing job, then:

If you want to create a job instance, you’ll need to do it by adding the corresponding job type to a flow instance, which will create an instance of that job type in the flow. Job instances cannot exist alone or in a flow type because they represent real activities carried out at actual times and in actual places, and so cannot be associated with anything but other real jobs. For more information on flows, see Creating a Flow.

Select the job that you want to edit from the job list in the "Activities" tab, or the flow/job hierarchy in the "Projects" tab (the process for editing a job is the same for types and instances). Its properties will be displayed in the central property panel.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to something appropriately descriptive; the plot name to show an abbreviated name or identification number that you want to see on the schedule result views ; and the active duration to indicate how long the task is expected to take.

For a more complete discussion of the possible job properties, please see Job Properties.

Note that if you edit a job type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child job.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

You will see any existing resources with an “Add” button at the bottom. Click this button.

Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

Select the element that you want to include as a requirement and click the “OK” button.

The resource requirement view will update to show the new resource requirement.

The new requirement will assume that you need a quantity of one of the specified resource or resource set. If this is not accurate, edit the number in the property pane appropriately. Note that the quantity metric should be relative to the quantity metric used in defining the resources (e.g. if you defined a piece of space to be in square meters, you should not calculate the required quantity in square feet).

You can always delete requirements by clicking the “Delete” button (marked by a large blue “X” to the right of the requirement.

All requirements that are lined up together are “and” requirements - all of them are required in the specified quantities in order for the schedule to be satisfied. If you need to specify an alternative set of resource requirements ((A and B and C) or (D and E)), use the "+" button at the top of the requirements display to add another list of alternative requirements.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

This will show any existing requirements.

You can change the quantity required by changing the number in the numeric box at the left end of the definition.

You can change which resource is required by clicking on the notepad/pencil icon to the right of the definition. This will bring up the resource selection dialog.

You can delete a requirement by clicking the "x" to the right of the definition.

Note that, unlike the property editing and resource requirement specification and editing, constraints only make sense when defined in the context of a flow (either flow type or flow instance). As such, you should be working in the "Projects" tab when creating constraints.

Right-click the job that you want to be the first job in the constraint in the job list on the left

Select “Create Constraint Start” from the resulting drop-down.

Right-click the job that you want to be the second job in the constraint.

Select “Create Constraint Finish” from the resulting drop-down (or cancel the constraint creation by selecting “Cancel Constraint”).

The Constraint Wizard popup will appear.

This is where you define the characteristics of the desired constraint. The default constraint type is a standard finish-to-start (basic precedence) constraint. If this is what you want, you can just hit “Return” to create the constraint; otherwise you can change the properties appropriately and hit "Create Constraint" at the bottom when you are done.

Constraints have a number of properties, accessible either when creating a constraint or later when editing a constraint. This section briefly covers the most commonly used properties. A more extensive discussion may be found here.

The first property in the display (below the constraint type combo box) allows you to select the desired constraint type; most of the time this will be set to Temporal Constraint.

For information on the different types of constraints please see Types of Constraints.

The default “Normal” selection indicates that this temporal constraint relates the start or end time of the first job to the start or end time of the second job.

Selecting “Normal” in the temporal constraint type combo box enables the job relationship property combo box directly below it, by default set to Finish <= Start. This property defines the exact nature of the temporal relationship between the two activities. Finish <= Start translates into the plain English statement “the second job should start when the first job finishes, or later”. Mathematically this can be represented by the equation:

finish(first) <= start(second).

Note that the first job is the job you set out to edit.

Next, Offset allows you to introduce lag time into the temporal relationship. Finish <= Start with an offset of one hour, for example, means that the start of the second job should occur at least an hour after the finish of the first job. Or, mathematically:

finish(first) + offset <= start(second)

You can ignore bridging constraint for now (it is an informative property; see Constraint Properties for more information).

The active property simply determines whether or not this constraint is active or not: un-checking this will cause Aurora to act as if the constraint doesn’t exist, so we’ll leave it checked for now.

If you want the constraint to be a preference constraint rather than a precedence constraint, change importance to be less than .9.

Click “Create Constraint” to finish.

  1. In order to combine the basic jobs defined in the last step into bigger tasks representing the more general goals of your schedule, you’ll need to group those jobs into clusters called flows.

A flow is a grouping of jobs which go together. The flow for baking a cake, for example, might include basic tasks for measuring ingredients, mixing them together into a batter, and putting the batter into the oven.

Except where stated otherwise, the methods described here will create flow types. Flow types can be thought of as templates from which “real” flows (aka flow instances) can be generated. Consider baking a birthday cake: the flow type representing this process would enumerate the steps involved, e.g. mixing ingredients, baking in the oven for some amount of time, adding candles, etc., but wouldn’t refer to the cake for any person in particular. From this flow type, however, one could create a number of flow instances, each of which would describe the baking of a particular birthday cake for a particular person.

For more information on this idea see Types vs. Instances.

If you want to create a completely new flow type, make sure nothing is selected in the task list, then click the “New Project” button at the bottom of the task list.

If you want to base a flow type off of an existing flow, select the existing task, then:

If you want to create a flow that will be scheduled, you must create a flow instance.

Select the desired flow type and click the “New Instance” button (note that you must have at least one flow type in order to create a flow instance).

Aurora will create a new flow instance under the selected flow type. Initially the instance will have all of the same properties as the originating type, including any jobs that the parent flow had. You can change the properties as needed, including adding job instances directly to the flow instance.

Select the flow that you want to edit from the flow list. Its properties will be displayed in the central property panel and the appropriate PERT chart will be displayed on the right side. Note that this works for types and instances alike.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name. You may also want to change the “early start date” to reflect the earliest possible start time, or “late end date” to reflect the latest it should be complete (e.g. a delivery date). Note that altering these dates will propagate to any jobs if their dates lie outside of these bounds.

For a more complete discussion of the possible flow properties, please see Flow Properties.

The other primary type of edit is adding jobs to a flow.

Note that if you edit a flow type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child flow.

Select the flow that you want to expand (selecting a job within the flow will do the trick, too).

Click on the "Add Job" button at the bottom of the left-side panel.

A dialog showing all the existing jobs will pop up.

If no jobs are listed then you will need to go to the Activities tab and add at least one.

Select the job you want to add (or the job off of which you want to base your job), and click “OK”. Note that you can select and add multiple jobs by holding down the shift or control key.

The new jobs will be added at the end of the task listing, under the flow. You can now select them and edit them.

For more information, see Editing a Job.

  1. Finally, you’ll need to specify how jobs and flows should be ordered, and which resources they need.

A constraint is a relationship defined between two jobs. The most common kind of constraint is a temporal constraint, which defines a temporal relationship between two jobs. It indicates whether on job should occur before, after, at the same time as, or not at the same time as another job. Any relationship (less than or equal to, greater than or equal to, and equal to) is supported. The impact of the relationship depends on whether the specified relation is declared to be between the start or finish of each job.

For more information, please see Constraint Definition.

Make sure that you are in the "Projects" tab, and that there are at least two jobs available. If you are planning to define a constraint between jobs in different flows, the flows (and hence jobs) involved should be instances rather than types.

Right-click the job that you want to be the first job in the constraint, either in the job list on the left, or the PERT chart (or any other graphical plot).

Select “Create Constraint Start” from the resulting drop-down.

Right-click the job that you want to be the second job in the constraint.

Select “Create Constraint Finish” from the resulting drop-down (or cancel the constraint creation by selecting “Cancel Constraint”).

The Constraint Wizard popup will appear.

This is where you define the characteristics of the desired constraint. The default constraint type is a standard finish-to-start (basic precedence) constraint. If this is what you want, you can just hit “Return” to create the constraint; otherwise you can change the properties appropriately and hit "Create Constraint" at the bottom when you are done.

Constraints have a number of properties, accessible either when creating a constraint or later when editing a constraint. This section briefly covers the most commonly used properties. A more extensive discussion may be found here.

The first property in the display (below the constraint type combo box) allows you to select the desired constraint type; most of the time this will be set to Temporal Constraint.

For information on the different types of constraints please see Types of Constraints.

The default “Normal” selection indicates that this temporal constraint relates the start or end time of the first job to the start or end time of the second job.

Selecting “Normal” in the temporal constraint type combo box enables the job relationship property combo box directly below it, by default set to Finish <= Start. This property defines the exact nature of the temporal relationship between the two activities. Finish <= Start translates into the plain English statement “the second job should start when the first job finishes, or later”. Mathematically this can be represented by the equation:

finish(first) <= start(second).

Note that the first job is the job you set out to edit.

Next, Offset allows you to introduce lag time into the temporal relationship. Finish <= Start with an offset of one hour, for example, means that the start of the second job should occur at least an hour after the finish of the first job. Or, mathematically:

finish(first) + offset <= start(second)

You can ignore bridging constraint for now (it is an informative property; see Constraint Properties for more information).

The active property simply determines whether or not this constraint is active or not: un-checking this will cause Aurora to act as if the constraint doesn’t exist, so we’ll leave it checked for now.

If you want the constraint to be a preference constraint rather than a precedence constraint, change importance to be less than .9.

Click “Create Constraint” to finish.

The right-click constraint creation approach is often the most convenient way in which to create constraints, but it is not the only option.

There are two primary ways to access the properties of a constraint after it has been created:

Select one of the constrained jobs, and go to the "Constraints" tab. There, you will find a list of all constraints associated with this job. You can select one of these constraints to view and/or edit it.

From either view, you can edit any of the properties associated with the constraint (see Constraint Options for more details). From the job-level view, you can also delete the constraint by clicking on the "x Delete" button at the top; you cannot do this from the constraint property pop-up.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

You will see any existing resources with an “Add” button at the bottom. Click this button.

Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

Select the element that you want to include as a requirement and click the “OK” button.

The resource requirement view will update to show the new resource requirement.

The new requirement will assume that you need a quantity of one of the specified resource or resource set. If this is not accurate, edit the number in the property pane appropriately. Note that the quantity metric should be relative to the quantity metric used in defining the resources (e.g. if you defined a piece of space to be in square meters, you should not calculate the required quantity in square feet).

You can always delete requirements by clicking the “Delete” button (marked by a large blue “X” to the right of the requirement.

All requirements that are lined up together are “and” requirements - all of them are required in the specified quantities in order for the schedule to be satisfied. If you need to specify an alternative set of resource requirements ((A and B and C) or (D and E)), use the "+" button at the top of the requirements display to add another list of alternative requirements.

  1. If you have a work schedule in force, you will need to create a calendar.

A calendar defines the times during which a job can occur. It is usually a work schedule, associated with one or more labor resources. However, it may also define daylight hours, the time during which high-noise jobs may take place, etc.

A calendar is made up of three primary components: a shift schedule, defining the pattern of work within a day; a workday specification, defining which days are standard work days; and a holiday set, defining exceptions to the standard work schedule.

During scheduling, any calendars that are associated with a job (either directly, or via any resource requirements) are cross-referenced to find the time during which a job may viably schedule.

Calendar creation is carried out in the "Calendars” tab.

Click on the "New Calendar" button at the bottom of the left-side panel.

Aurora will create a new calendar that you can then edit.

Select the calendar that you want to edit from the calendar list. Its properties will be displayed in the central property panel, and the work schedule will be displayed in a calendar table view at the right.

Edit "Name" and "Description" as appropriate.

Now update the complex calendar properties (discussed below). As you make changes, the calendar view on the right side will update to reflect changes to work schedule, work days, and holiday set.

The daily schedule defines when work can occur on a normal work day. For example, the traditional business schedule is 9 to 5, which would be modeled as a single shift starting at 09:00 and going to 17:00.

To edit an existing shift, click on the cell that you want to edit (e.g. "End Time" in the example below).

Update the shift start or end to the desired time. Note that the shift start must always be before the shift end, so if you need to move the whole shift later in such a way that it would not overlap with its old times, you will need to edit the "End Time" and then the "Start Time".

To add a shift, click the “Add Shift” button at the bottom of the “Daily Schedule” view.

Aurora will open a dialog in which you can define the bounds of the new shift.

Set the desired name, start time, and end time, and click "OK".

The new shift will show up in the daily schedule, and will also show up in the calendar view at the right.

A shift break defines some non-work time within a shift. Lunch would be a good example of a shift break.

To add a shift break, first select the shift to which you want to add a break. Then click the "Add Break" button at the bottom of the daily schedule.

Aurora will add a break set for a default time.

You may now edit the shift break's start and end times as appropriate.

To remove a shift, first select the shift that you want to remove.

Click the "Remove" button at the bottom of the daily schedule.

Aurora will update the display to reflect the removed shift.

To remove a shift break, first select the shift break that you want to remove.

Click the "Remove" button at the bottom of the daily schedule.

Aurora will update the display to reflect the removed shift break.

In the "Work Days" section of the calendar properties, toggle the work days to correspond with the actual required work days.

Aurora will update the display appropriately.

A holiday set defines the set of exceptions to a calendar. These exceptions will most commonly be holidays: days that would normally be work days, but are not work days. The set may also contain work exceptions: days that would normally be non-work days, but are work days. A holiday set may belong to multiple calendars. If this is the case, any edit to the holidays will impact all of the client calendars.

To associate a holiday set with the current calendar, click on the "Select" button next to the "Holiday Set" field.

Aurora will open a dialog showing existing holiday sets.

If the dialog is blank, you will need to create a holiday set.

Click the "New Holiday Set" button at the bottom of the holiday set selection dialog.

Aurora will create a new holiday set. In most cases you will want to edit the holiday set's properties before selecting it for the calendar's use.

Click on the "Edit Holiday Set" button at the bottom of the dialog.

Aurora will open a holiday set details dialog.

In this dialog, you can enter a descriptive name, and set the basic holidays up by selecting those that you want to include. You can also define supplemental custom holidays (non-work days) and work exceptions (work days that would normally be non-work days).

Coming soon.

Coming soon.

When you are done making edits, click "OK". Aurora will save your edits and close the dialog.

Select the holiday set that you want to assign, and click "Select Holiday Set" at the bottom of the dialog.

When selecting a holiday set, be aware that if multiple calendars use the same holiday set, any edits to that set impact all such calendars. This is true even if the holiday set edit took place from the point of view of a calendar (e.g. toggling work days).

If you want to use that holiday set, but want to be sure that edits will not impact multiple calendars, you can first copy the holiday set and then select the new copy instead of the original set.

Once you have selected a holiday set, Aurora will update the calendar's display appropriately.

  1. Once you are done creating your model, you will schedule the model and view the results.

Modeling via Copy and Paste

There are many cases where it may be more efficient to model via copying and pasting. This is done in the tabular editor where you can see the different options such as activities or resources and resource set. Select the type of data that you wish to build on, such as activities, and look at the format of all the data. Most of the data will be the same for each activity so you can just add lines for the new activities. So it is best to start by cutting and pasting new lines from lines that already exist and then changing the data only in the fields that need to be changed, for example the name of the task, the duration of the task and the constraints on the task.

Cutting and pasting may also be useful if you have data coming from another data source such as excel or another spreadsheet. In this case you may be able to copy large chunks of data from the spreadsheet into the tabular editor as long as the columns are lined up in the same way when you cut and paste so you can cut and paste multiple columns and rows of data at the same time.

Viewing the Model

There are three primary ways to view your model data:

The most common way to view model data in a small model is in the "Edit" tab. This is your default tab on startup, and does not require any special set-up. It is also the most structured way to view the properties for an element.

The advantage of this view is that the schedule model elements are divided by type, and it is easy to view the properties of a specific schedule model element (by clicking on it). Because the property view has special widgets for the different types of properties, it is usually also easy to make specific property edits.

The primary disadvantages of accessing data via the "Edit" tab is that you can only look at one element at a time, and it does not lend itself to copying and pasting values.

Go to the "Displays" menu and select "Tabular Editor" from the list of display options.

This will give you a default Tabular Editor that shows an Excel-style view of your model and schedule results. By default the Tabular Editor will show a variety of properties for job instances.

To configure the Tabular Editor to only include the columns we are interested in, click on the column selector icon.

In the resulting dialog box, click the "None" button at the top to deselect all columns.

Select "IP Number" and "name" from the top of the listing. These will allow us to identify the job in question.

Now select any other properties in which you are interested (note that the property categories are color-coded to make the properties easier to find).

When you are done, hit "OK".

You now have an Excel-style view of your data.

You can sort by clicking a column header, auto-filter by right-clicking a column header and selecting the desired target value, and copy and paste the way you would with Excel.

In the "Edit" tab, a PERT Chart will show by default on the right side when you select a flow or a job in a flow.

Within this PERT Chart you can see jobs and their constraints. For details on a job, you can click to select it in the project tree, or double-click to open a dialog with the job's properties.

If you want to see a larger PERT Chart (or would like multiple PERT Charts, configured in different ways), then you can create a separate PERT Chart that will show up in its own tab.

Select "PERT Chart" from the "Displays" menu.

When you first open a new PERT Chart, Aurora will prompt you to indicate which flows should be included.

In most cases you can just switch the toggle to "All flows"; this will guarantee that you are seeing all jobs. However, if you only want to work with one or two flows, you can select them specifically.

When you are done, click "OK", and Aurora will populate your PERT Chart.

When you first access a PERT Chart (whether it is the default PERT or a separate PERT tab), there are certain basic configurations that you will need to make.

In a new PERT, the jobs will be displayed in a line down the Y-Axis.

Hit the arrange toolbar button at the top of the PERT chart.

This will arrange your PERT chart so that it is easier to view effectively.

Scheduling

What does scheduling do?

In scheduling, the Aurora scheduling engine considers all instance elements in the model (flows, jobs, resources, and constraints), and attempts to find a set of dates and resource assignments that satisfy all model requirements.

Before Scheduling

Before scheduling, you must have instances to schedule (otherwise the scheduling will not have an effect). Hopefully you already have instances in your model, but if not, create some.

Creating Instances

If you have a fully defined model, but only flow types and no flow instances, you need to create flow instances.

If you want to create a flow that will be scheduled, you must create a flow instance.

Select the desired flow type and click the “New Instance” button (note that you must have at least one flow type in order to create a flow instance).

Aurora will create a new flow instance under the selected flow type. Initially the instance will have all of the same properties as the originating type, including any jobs that the parent flow had. You can change the properties as needed, including adding job instances directly to the flow instance.

Each of the three primary data elements in Aurora (flows, jobs, and resources) can exist as types, instances, or both, e.g. the flow type “bake a birthday cake” vs. the flow instance “bake Jim’s birthday cake,” the resource type “a dozen eggs” vs. the resource instance “the dozen eggs in my refrigerator,” etc. This creational flexibility is designed to give users maximum power in the creation of models representing their domains.

When the models are complete and it’s time to generate a schedule, however, instances are all that matter.

Because a schedule is only useful if it describes real things, flow, job, and resource types become meaningless when scheduling. It’s important, therefore, that every flow, job, and resource you’d like to be included in your schedule exists in Aurora as an instance, not just a type. It’s fine to have both – a job type and a job instance based on that type, for example – but unless at least one instance of a type element exists, that element will be completely ignored.

The processes for creating instances of flows, jobs, and resources are described in the same sections that detail the creation of those types; you can refer back to those sections for specific details. There is one point that bears repeating here, though, and that relates to the creation of flow instances: when an instance is created of a flow type, instances will also be created for each of the job types in that flow type. This makes sense because a flow instance (a “real” collection of jobs) must contain only “real” jobs.

Error/Warning Dialog

Before scheduling, Aurora runs a set of model analysis methods to catch common modeling problems.

If it finds errors, it will report back to the user without scheduling. If it only finds warnings, it will report them to the user, but will go ahead and schedule. If the repeated appearance of the same warnings becomes annoying, you can suppress the warnings by checking the "Suppress Warnings" option when you trigger the scheduling process.

The error and warning window shows the problems by category, along with an indication of whether the problem is a warning or an error.

Each tab gives details about the jobs involved in the problem to help you resolve the issue.

If you hover over the title of a tab, Aurora will give you a brief explanation of the error as a refresher.

The possible issues are as follows:

Errors

Logic errors are things that would result in inevitable conflicts if Aurora went ahead and tried to schedule.

The set of error checks is not complete, so there may be times that you schedule and get unavoidable conflicts. If a particular area comes up frequently, or proves to be problematic, Stottler Henke adds a new error check for it.

Aurora currently checks for the following errors:

Capacity Violation Error

This error indicates that a job requires more of a resource than is ever available. This may occur in two cases: a single resource requirement (either for a specific resource or a set) requires a greater quantity than is ever available; or if a job has multiple requirements, each of which is satisfiable, but in combination they would require a greater quantity than is ever available.

The error report specifies the problem job (IP Number and name), and resource or resource set at issue.

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Concurrency Overlap Error

This error indicates that two or more jobs that must occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on the concurrent jobs in combination, because they are guaranteed to overlap (and so all of both sets of requirements must be simultaneously satisfiable).

Note that there are cases where the overlap may or may not be a problem. This may occur when there are several jobs of different durations that are connected by a series of concurrent constraints. This situation results in a Concurrency Overlap Warning, instead.

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.

You can open the first job in question by double-clicking on that job's line.

To resolve the problem you have four options:

Dependency Loops

This error indicates that your network of constrained jobs has a loop (e.g. A --> B --> C --> A).

The easiest way to find the loop is usually via the PERT chart:

Make sure that your PERT includes all jobs.

Click on the "Filter PERT Plot" option at the top of the loop display.

This will filter your PERT to only include the jobs involved in the loop.

Now click "Arrange PERT Plot" (which should now be enabled) to lay the jobs out so that the loops are obvious.

Aurora will arrange your filtered PERT to show the loops.

Once you have resolved the loop (deleted one or more constraints), toggle "Filter PERT Plot" again to remove the filter (otherwise the filter will stay on your conditional appearances even after the loop window has closed).

Duration Error

This error indicates that a job's duration has not been set. Note that for scheduling only the "active duration" matters, so that is the only thing that needs to be set (but it must be set).

The error report specifies the problem job (IP Number and name), and the duration problem.

You can open the job in question by double-clicking on that job's line.

Set the "active duration" in either the "Duration Info" tab or the "Scheduling Attributes" tab (it is the same property, although it is easier to locate in the "Duration Info" tab).

Flow Date/Job Date Inconsistency Error

This error indicates that the "early start date" and/or "late end date" associated with one of the flow instances is incompatible with the "early start date" and/or "late end date" associated with one of the job instances that belongs in that flow. This matters because if a flow's dates are more restrictive than a job's dates, the job inherits the flow's dates.

For example, if a flow's "late end date" is 1/1/2012, and a job's "late end date" is 2/1/2012, the scheduler will use the earlier late end date, 1/1/2012. This is potentially problematic if the job's early start date is 1/15/2012. Under these circumstances, the date inconsistency error would be displayed.

The error report specifies the problem job (IP Number and name), the flow instance that the job belongs to, and the relationship problem.

You can open the job in question by double-clicking on that job's line.

There are three options for resolving this error:

Infeasible Unbreakable Jobs

This error indicates that a job cannot break across a shift break, or cannot break across a day break, and the calendars involved are such that there is never a time that these requirements may be met. If a job cannot break across a shift break, it means that it cannot be started on one shift and continued on another. If a job cannot break across a day break, it means that it cannot be started on a shift one day, and continued on a shift another day. In performing the check, the system computes the composite calendars that would be involved, and then sees whether there is ever a shift or day or work that would accommodate the specified requirements.

The error report specifies the problem job (IP Number and name), the required duration, and the minimum work duration available for that job's needs, based on the composite calendar. If the conflict information involves "longest shift", the problem is with a job that cannot break across shifts; if the conflict information involves "longest day", the problem is with a job that cannot break across days.

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have three options:

Warnings

Logic warnings are things that may indicate model state problems, and/or may result in conflicts depending on context.

Aurora currently checks for the following warning situations:

Concurrency Overlap Warning

This warning indicates that two or more jobs that may need to occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on clusters of concurrent jobs in combination, because they may need to overlap, and if they do then all of both sets of requirements must be simultaneously satisfiable.

Note that this does not indicate that there will be a problem (unlike the concurrency overlap error); however, if you go ahead and schedule anyway, and there is a conflict involving the specified jobs, you will need to treat it as equivalent to the error case. This check's primary goal is to prepare you for the possibility of conflicts and pre-explain their presence; unfortunately it indicates a situation complicated enough that without scheduling the system cannot readily determine whether the overlap is avoidable.

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.

You can open the first job in question by double-clicking on that job's line.

Before attempting to correct the problem, try scheduling and see if there is a conflict. If there is a conflict, you have four options to resolve the problem:

Non-Milestone Warning

This warning indicates that a job has a duration of 0, even though it is not a milestone and has not been canceled (all active jobs with a duration of 0 should really be milestones).

The warning report specifies the problem job (IP Number and name).

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Note that it will not hurt anything to ignore this warning. It merely indicates that some informative properties are not consistent with your schedule model.

Schedule Issue Troubleshooting

Coming soon.

Viewing Schedule Results

Once a schedule has been generated, there are a number of different ways to visually explore the results. You can use the many displays built in to Aurora to visualize a schedule’s timeline, see how specific resources are being utilized, or carry out just about any other analysis you might be interested in.

The most commonly used displays are:

There are three different resource plots available:

This plot is good for viewing resources that are usually used by one job (or very few jobs) at a time. Zones are a good example of a common resource that you would view with the Spatial Plot.

This plot is good for viewing resources that may be used by a number of different jobs at the same time. Labor is a good example of a common resource that you would view with the Histogram Plot.

All of the displays have some features in common.

While the many displays available in Aurora look and act quite differently from one another, there are a few basic pieces of functionality that apply to all of them.

Note that you may have many displays open at one time (including more than one of a given type). If you have a very large number open, you may find that the update time at the end of scheduling may take longer, as Aurora must update all of the displays. You can close any display by right-clicking on the tab and selecting "Close".

Once you are comfortable with these methods of viewing schedule results, you may want to explore the intermediate methods of viewing schedule results.

Understanding the Schedule

Coming soon

Refining the Model

Coming soon

Removing Jobs

The easiest way to remove a job is to select it and select "Delete Job" from the right-click menu. This simple technique does have some pitfalls, however, in that if it is part of a network then simply deleting it results in holes in the network.

For example, consider a string of jobs A --> B --> C. If you delete B, A and C will no longer have any sort of relationship, even though it is very likely that A --> C is the desired result.

There are three ways to handle this difficulty:

Schedule Distribution

Coming soon

Printing the Schedule

Printing is done as in most applications by selecting the file menu and selecting print.

It is highly recommended that you always utilize the print preview option suddenly access by file print preview to have an idea of what will be printed before you actually print.

Because of the shape of many of the drawings in Aurora you may wish to utilize the landscape mode and also you may wish to utilize more than one page if you have a larger model.

The image below shows the print preview window which may vary depending on your particular operating system.

After you are satisfied with the print preview go back and select File -> Print and get a dialog box similar to what you see below:

Of course your print out dialogue will look different from what is above because of different operating systems and different printers with different print drivers.

There is also the page setup option found under File menu -> Page Setup as shown in the image below. This can also be used to modify details of the printout.

Model Management

Coming soon

Saving Your Model

To save your model it is similar to most programs where you simply select from the File menu and select either Save or Save As. If the model has never been saved before you select the save option, the Save As dialogue will come up as shown below:

You can select where to place the file and what to name the file. Aurora files are saved with the .cmp file extension.

Basic Techniques

There are a number of simple tasks and techniques that will come up again and again as you work with Aurora. These are the tools that will, in combination, allow you to achieve your goals in Aurora.

If you would like an overview of functionality from the point of view of the complex task that you are trying to achieve, please see the quick start tutorials for a concrete walk-through, or the basic working procedures for a more general task-oriented how-to.

However, if you are interested in learning more about the tools and techniques at your disposal, the following categories of techniques are available for perusal:

Modeling:

Visualization:

Analysis:

Creating Model Elements

Go to the section corresponding with the type of element that you want to create.

Creating a Resource

A resource is something required by a job or another resource in order to do work or operate (e.g. manpower, space, equipment). In general you should only model the resources which are restricted in some way, because these are the resources which impact the timing of your schedule.

Resource Types vs. Resource Instances

Except where stated otherwise, the methods described here will create resource types. Resource types can be thought of as templates from which “real” resources (aka resource instances) can be generated. Consider a bag of white flour: the resource type for a bag of white flour would represent the general properties of a bag of white flour (e.g. that it’s white and not wheat flour) but wouldn’t refer to any particular bag of white flour in the world. From this resource type, however, one could create a number of resource instances that refer to specific bags of white flour, e.g. in a particular warehouse at a particular time.

For more information on this idea see Type vs. Instances section.

Creating a Resource Type

Resource creation is carried out in the Resources tab. If you want to create a completely new resource type, make sure nothing is selected in the resource list.

Click on the "New Resource" button at the bottom of the left-side panel.

If you want to base your resource type off of an existing resource, select the existing resource, then:

Creating a Resource Instance

If you want to create a resource that is available in scheduling, you need to create a resource instance.

Select the desired resource type and click the “New Instance” button (note that you must have at least one resource type before you can make an instance).

Aurora will create a new resource instance under the selected resource type. Initially the instance will have all of the same properties as the originating type, but you can change the properties as needed.

For this instance to be allocated, either jobs will have to require it directly, or you will need to Add a Resource to a Resource Set (indicating that the new resource is equivalent to some other existing resources).

Editing a Resource

Select the resource that you want to edit from the resource list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name, and the quantity to reflect how much of that resource is available.

For a more complete discussion of the possible resource properties, please see Resource Properties.

Note that if you edit a resource type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child resource.

Creating a Resource Set

Resource sets group resources that are interchangeable in a given situation. For example, there might be a 30804 resource set made up of all 30804 mechanics. Any of them would be acceptable for a job that had a requirement for a 30804 requirement. They may also be used as a convenience method for calling out all of a type of resource. For example, there might be a resource set of all left wing zones; a job that needed to lock out the left wing would call out the left wing resource set and demand the full set (rather than a set quantity, as in the more standard resource set usage).

Note that although many elements of an Aurora model are hierarchical in nature, with both types and instances, that is not the case for resource sets. All resource sets are considered to be instances, and may only have resource instances added to them.

Prerequisites
Creating a Resource Set

Resource set creation is carried out in the “Resource Sets” tab.

Click on the "New Resource Set" button at the bottom of the left-side panel.

Aurora will create a new resource set that you can then edit.

Adding a Resource to a Resource Set

To add a resource instance to a resource set, select the resource set in the resource set list and click the “Resource” button at the bottom of the list. This will pop up a dialog allowing you to choose which resource(s) you’d like to add to the set:

Note that you can select multiple resource instances by holding the shift key while clicking. You cannot add resource types to resource sets, but you can select a resource type as a convenience: all resource instances under that type will then be added to the set.

You can also add the resources from another resource set by choosing them in the “By Resource Set” tab.

When you have selected the resource instance(s) you’d like to add to the resource set being edited, click “OK” to add them. Note that if the resource set already had some resources in it, those resources will be augmented with the new selections (instead of being replaced).

Editing a Resource Set

Select the resource set that you want to edit from the resource set list. Its properties will be displayed in the central property panel.

Edit as necessary. Note also that you can edit the resource instances within a resource set by clicking on them in the resource set list to display their properties in the central property panel. See Editing a Resource for more information.

For a more complete discussion of the possible resource set properties, please see Resource Set Properties.

Creating a Job

An activity is a single job. You can also consider it an atomic task. Jobs generally require a constant set of resources throughout their life span. They should be a logical unit in which to consider the schedule.

Job Types vs. Job Instances

Except where stated otherwise, the methods described will create job types. Job types can be thought of as templates from which “real” jobs (aka job instances) can be generated. Consider nailing two boards together: the job type representing this action would describe the general atomic process of using a hammer and nail to connect two boards. From this job type one could create a number of job instances, each of which would represent the job of nailing two specific boards together in a particular time and place. For more information on this idea see Types vs. Instances.

Creating a Job

Job type creation is carried out in the Activities tab (whereas an job instance is created by adding a job to a flow instance). If you want to create a completely new job type, make sure nothing is selected in the job list.

Click on the New Job button at the bottom of the left-side panel.

If you want to base your job type off of an existing job, select the existing job, then:

If you want to create a job instance, you’ll need to do it by adding the corresponding job type to a flow instance, which will create an instance of that job type in the flow. Job instances cannot exist alone or in a flow type because they represent real activities carried out at actual times and in actual places, and so cannot be associated with anything but other real jobs. For more information on flows, see Creating a Flow.

Editing a Job

Select the job that you want to edit from the job list in the "Activities" tab, or the flow/job hierarchy in the "Projects" tab (the process for editing a job is the same for types and instances). Its properties will be displayed in the central property panel.

Property Editing

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to something appropriately descriptive; the plot name to show an abbreviated name or identification number that you want to see on the schedule result views ; and the active duration to indicate how long the task is expected to take.

For a more complete discussion of the possible job properties, please see Job Properties.

Note that if you edit a job type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child job.

Defining Resource Requirements

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

You will see any existing resources with an “Add” button at the bottom. Click this button.

Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

Select the element that you want to include as a requirement and click the “OK” button.

The resource requirement view will update to show the new resource requirement.

The new requirement will assume that you need a quantity of one of the specified resource or resource set. If this is not accurate, edit the number in the property pane appropriately. Note that the quantity metric should be relative to the quantity metric used in defining the resources (e.g. if you defined a piece of space to be in square meters, you should not calculate the required quantity in square feet).

You can always delete requirements by clicking the “Delete” button (marked by a large blue “X” to the right of the requirement.

All requirements that are lined up together are “and” requirements - all of them are required in the specified quantities in order for the schedule to be satisfied. If you need to specify an alternative set of resource requirements ((A and B and C) or (D and E)), use the "+" button at the top of the requirements display to add another list of alternative requirements.

Editing Resource Requirements

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

This will show any existing requirements.

You can change the quantity required by changing the number in the numeric box at the left end of the definition.

You can change which resource is required by clicking on the notepad/pencil icon to the right of the definition. This will bring up the resource selection dialog.

You can delete a requirement by clicking the "x" to the right of the definition.

Creating a Flow

A flow is a grouping of jobs which go together. The flow for baking a cake, for example, might include basic tasks for measuring ingredients, mixing them together into a batter, and putting the batter into the oven.

Prerequisites
Flow Types vs. Flow Instances

Except where stated otherwise, the methods described here will create flow types. Flow types can be thought of as templates from which “real” flows (akaflow instances) can be generated. Consider baking a birthday cake: the flow type representing this process would enumerate the steps involved, e.g. mixing ingredients, baking in the oven for some amount of time, adding candles, etc., but wouldn’t refer to the cake for any person in particular. From this flow type, however, one could create a number of flow instances, each of which would describe the baking of a particular birthday cake for a particular person.

For more information on this idea see Types vs. Instances.

Creating a Flow Type

If you want to create a completely new flow type, make sure nothing is selected in the task list, then click the “New Project” button at the bottom of the task list.

If you want to base a flow type off of an existing flow, select the existing task, then:

Creating a Flow Instance

If you want to create a flow that will be scheduled, you must create a flow instance.

Select the desired flow type and click the “New Instance” button (note that you must have at least one flow type in order to create a flow instance).

Aurora will create a new flow instance under the selected flow type. Initially the instance will have all of the same properties as the originating type, including any jobs that the parent flow had. You can change the properties as needed, including adding job instances directly to the flow instance.

Editing a Flow

Select the flow that you want to edit from the flow list. Its properties will be displayed in the central property panel and the appropriate PERT chart will be displayed on the right side. Note that this works for types and instances alike.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name. You may also want to change the “early start date” to reflect the earliest possible start time, or “late end date” to reflect the latest it should be complete (e.g. a delivery date). Note that altering these dates will propagate to any jobs if their dates lie outside of these bounds.

For a more complete discussion of the possible flow properties, please see Flow Properties.

The other primary type of edit is adding jobs to a Flow.

Note that if you edit a flow type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child flow.

Adding a Job to a Flow

Select the flow that you want to expand (selecting a job within the flow will do the trick, too).

Click on the "Add Job" button at the bottom of the left-side panel.

A dialog showing all the existing jobs will pop up.

If no jobs are listed then you will need to go to the Activities tab and add at least one.

Select the job you want to add (or the job off of which you want to base your job), and click “OK”. Note that you can select and add multiple jobs by holding down the shift or control key.

The new jobs will be added at the end of the task listing, under the flow. You can now select them and edit them.

For more information, see Editing a Job.

Creating a Constraint

A constraint is a relationship defined between two jobs. The most common kind of constraint is a temporal constraint, which defines a temporal relationship between two jobs. It indicates whether on job should occur before, after, at the same time as, or not at the same time as another job. Any relationship (less than or equal to, greater than or equal to, and equal to) is supported. The impact of the relationship depends on whether the specified relation is declared to be between the start or finish of each job.

For more information, please see Constraint Definition.

Prerequisites

Make sure that you are in the "Projects" tab, and that there are at least two jobs available. If you are planning to define a constraint between jobs in different flows, the flows (and hence jobs) involved should be instances rather than types.

Defining a Constraint

Right-click the job that you want to be the first job in the constraint, either in the job list on the left, or the PERT chart (or any other graphical plot).

Select “Create Constraint Start” from the resulting drop-down.

Right-click the job that you want to be the second job in the constraint.

Select “Create Constraint Finish” from the resulting drop-down (or cancel the constraint creation by selecting “Cancel Constraint”).

The Constraint Wizard popup will appear.

This is where you define the characteristics of the desired constraint. The default constraint type is a standard finish-to-start (basic precedence) constraint. If this is what you want, you can just hit “Return” to create the constraint; otherwise you can change the properties appropriately and hit "Create Constraint" at the bottom when you are done.

Constraint Options

Constraints have a number of properties, accessible either when creating a constraint or later when editing a constraint. This section briefly covers the most commonly used properties. A more extensive discussion may be found here.

The first property in the display (below the constraint type combo box) allows you to select the desired constraint type; most of the time this will be set to Temporal Constraint.

For information on the different types of constraints please see Types of Constraints.

The default “Normal” selection indicates that this temporal constraint relates the start or end time of the first job to the start or end time of the second job.

Selecting “Normal” in the temporal constraint type combo box enables the job relationship property combo box directly below it, by default set to Finish <= Start. This property defines the exact nature of the temporal relationship between the two activities. Finish <= Start translates into the plain English statement “the second job should start when the first job finishes, or later”. Mathematically this can be represented by the equation:

finish(first) <= start(second).

Note that the first job is the job you set out to edit.

Next, Offset allows you to introduce lag time into the temporal relationship. Finish <= Start with an offset of one hour, for example, means that the start of the second job should occur at least an hour after the finish of the first job. Or, mathematically:

finish(first) + offset <= start(second)

You can ignore bridging constraint for now (it is an informative property; see Constraint Properties for more information).

The active property simply determines whether or not this constraint is active or not: un-checking this will cause Aurora to act as if the constraint doesn’t exist, so we’ll leave it checked for now.

If you want the constraint to be a preference constraint rather than a precedence constraint, change importance to be less than .9.

Click “Create Constraint” to finish.

Additional Constraint Creation Methods

The right-click constraint creation approach is often the most convenient way in which to create constraints, but it is not the only option.

Editing a Constraint

There are two primary ways to access the properties of a constraint after it has been created:

From either view, you can edit any of the properties associated with the constraint (see Constraint Options for more details). From the job-level view, you can also delete the constraint by clicking on the "x Delete" button at the top; you cannot do this from the constraint property pop-up.

Creating a Calendar

A calendar defines the times during which a job can occur. It is usually a work schedule, associated with one or more labor resources. However, it may also define daylight hours, the time during which high-noise jobs may take place, etc.

A calendar is made up of three primary components: a shift schedule, defining the pattern of work within a day; a workday specification, defining which days are standard work days; and a holiday set, defining exceptions to the standard work schedule.

During scheduling, any calendars that are associated with a job (either directly, or via any resource requirements) are cross-referenced to find the time during which a job may viably schedule.

Creating a Calendar

Calendar creation is carried out in the "Calendars” tab.

Click on the "New Calendar" button at the bottom of the left-side panel.

Aurora will create a new calendar that you can then edit.

Editing a Calendar

Select the calendar that you want to edit from the calendar list. Its properties will be displayed in the central property panel, and the work schedule will be displayed in a calendar table view at the right.

Edit "Name" and "Description" as appropriate.

Now update the complex calendar properties (discussed below). As you make changes, the calendar view on the right side will update to reflect changes to work schedule, work days, and holiday set.

Editing the Daily Schedule

The daily schedule defines when work can occur on a normal work day. For example, the traditional business schedule is 9 to 5, which would be modeled as a single shift starting at 09:00 and going to 17:00.

To edit an existing shift, click on the cell that you want to edit (e.g. "End Time" in the example below).

Update the shift start or end to the desired time. Note that the shift start must always be before the shift end, so if you need to move the whole shift later in such a way that it would not overlap with its old times, you will need to edit the "End Time" and then the "Start Time".

To add a shift, click the "Add Shift" button at the bottom of the "Daily Schedule" view.

A shift break defines some non-work time within a shift. Lunch would be a good example of a shift break.

To add a shift break, first select the shift to which you want to add a break. Then click the "Add Break" button at the bottom of the daily schedule.

Aurora will add a break set for a default time.

You may now edit the shift break's start and end times as appropriate.

To remove a shift, first select the shift that you want to remove.

Click the "Remove" button at the bottom of the daily schedule.

Aurora will update the display to reflect the removed shift.

To remove a shift break, first select the shift break that you want to remove.

Click the "Remove" button at the bottom of the daily schedule.

Aurora will update the display to reflect the removed shift break.

In the "Work Days" section of the calendar properties, toggle the work days to correspond with the actual required work days.

Aurora will update the display appropriately.

Selecting a Holiday Set

A holiday set defines the set of exceptions to a calendar. These exceptions will most commonly be holidays: days that would normally be work days, but are not work days. The set may also contain work exceptions: days that would normally be non-work days, but are work days. A holiday set may belong to multiple calendars. If this is the case, any edit to the holidays will impact all of the client calendars.

To associate a holiday set with the current calendar, click on the "Select" button next to the "Holiday Set" field.

Aurora will open a dialog showing existing holiday sets.

If the dialog is blank, you will need to create a holiday set.

Click the "New Holiday Set" button at the bottom of the holiday set selection dialog.

Aurora will create a new holiday set. In most cases you will want to edit the holiday set's properties before selecting it for the calendar's use.

To edit a holiday set, select the holiday set in the holiday selection dialog.

Click on the "Edit Holiday Set" button at the bottom of the dialog.

Aurora will open a holiday set details dialog.

In this dialog, you can enter a descriptive name, and set the basic holidays up by selecting those that you want to include. You can also define supplemental custom holidays (non-work days) and work exceptions (work days that would normally be non-work days).

Coming soon

Coming soon

When you are done making edits, click "OK". Aurora will save your edits and close the dialog.

Select the holiday set that you want to assign, and click "Select Holiday Set" at the bottom of the dialog.

When selecting a holiday set, be aware that if multiple calendars use the same holiday set, any edits to that set impact all such calendars. This is true even if the holiday set edit took place from the point of view of a calendar (e.g. toggling work days).

If you want to use that holiday set, but want to be sure that edits will not impact multiple calendars, you can first copy the holiday set and then select the new copy instead of the original set.

Once you have selected a holiday set, Aurora will update the calendar's display appropriately.

Toggling Work Days

Coming soon

Varying Schedule by Day

Coming soon

Editing Model Elements

Go to the section corresponding with the type of element that you want to edit.

Editing a Resource

Select the resource that you want to edit from the resource list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name, and the quantity to reflect how much of that resource is available.

For a more complete discussion of the possible resource properties, please see Resource Properties.

Note that if you edit a resource type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child resource.

Editing a Resource Set

Select the resource set that you want to edit from the resource set list. Its properties will be displayed in the central property panel.

Edit as necessary. Note also that you can edit the resource instances within a resource set by clicking on them in the resource set list to display their properties in the central property panel. See Editing a Resource for more information.

For a more complete discussion of the possible resource set properties, please see Resource Set Properties.

Editing a Job

Select the job that you want to edit from the job list in the "Activities" tab, or the flow/job hierarchy in the "Projects" tab (the process for editing a job is the same for types and instances). Its properties will be displayed in the central property panel.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to something appropriately descriptive; the plot name to show an abbreviated name or identification number that you want to see on the schedule result views ; and the active duration to indicate how long the task is expected to take.

For a more complete discussion of the possible job properties, please see Job Properties.

Note that if you edit a job type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child job.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

You will see any existing resources with an “Add” button at the bottom. Click this button.

Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

Select the element that you want to include as a requirement and click the “OK” button.

The resource requirement view will update to show the new resource requirement.

The new requirement will assume that you need a quantity of one of the specified resource or resource set. If this is not accurate, edit the number in the property pane appropriately. Note that the quantity metric should be relative to the quantity metric used in defining the resources (e.g. if you defined a piece of space to be in square meters, you should not calculate the required quantity in square feet).

You can always delete requirements by clicking the “Delete” button (marked by a large blue “X” to the right of the requirement.

All requirements that are lined up together are “and” requirements - all of them are required in the specified quantities in order for the schedule to be satisfied. If you need to specify an alternative set of resource requirements ((A and B and C) or (D and E)), use the "+" button at the top of the requirements display to add another list of alternative requirements.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

This will show any existing requirements.

You can change the quantity required by changing the number in the numeric box at the left end of the definition.

You can change which resource is required by clicking on the notepad/pencil icon to the right of the definition. This will bring up the resource selection dialog.

You can delete a requirement by clicking the "x" to the right of the definition.

Note that, unlike the property editing and resource requirement specification and editing, constraints only make sense when defined in the context of a flow (either flow type or flow instance). As such, you should be working in the "Projects" tab when creating constraints.

Right-click the job that you want to be the first job in the constraint, either in the job list on the left, or the PERT chart (or any other graphical plot).

Select “Create Constraint Start” from the resulting drop-down.

Right-click the job that you want to be the second job in the constraint.

Select “Create Constraint Finish” from the resulting drop-down (or cancel the constraint creation by selecting “Cancel Constraint”).

The Constraint Wizard popup will appear.

This is where you define the characteristics of the desired constraint. The default constraint type is a standard finish-to-start (basic precedence) constraint. If this is what you want, you can just hit “Return” to create the constraint; otherwise you can change the properties appropriately and hit "Create Constraint" at the bottom when you are done.

Constraints have a number of properties, accessible either when creating a constraint or later when editing a constraint. This section briefly covers the most commonly used properties. A more extensive discussion may be found here.

The first property in the display (below the constraint type combo box) allows you to select the desired constraint type; most of the time this will be set to Temporal Constraint.

For information on the different types of constraints please see Types of Constraints.

The default “Normal” selection indicates that this temporal constraint relates the start or end time of the first job to the start or end time of the second job.

Selecting “Normal” in the temporal constraint type combo box enables the job relationship property combo box directly below it, by default set to Finish <= Start. This property defines the exact nature of the temporal relationship between the two activities. Finish <= Start translates into the plain English statement “the second job should start when the first job finishes, or later”. Mathematically this can be represented by the equation:

finish(first) <= start(second).

Note that the first job is the job you set out to edit.

Next, Offset allows you to introduce lag time into the temporal relationship. Finish <= Start with an offset of one hour, for example, means that the start of the second job should occur at least an hour after the finish of the first job. Or, mathematically:

finish(first) + offset <= start(second)

You can ignore bridging constraint for now (it is an informative property; see Constraint Properties for more information).

The active property simply determines whether or not this constraint is active or not: un-checking this will cause Aurora to act as if the constraint doesn’t exist, so we’ll leave it checked for now.

If you want the constraint to be a preference constraint rather than a precedence constraint, change importance to be less than .9.

Click “Create Constraint” to finish.

Editing a Flow

Select the flow that you want to edit from the flow list. Its properties will be displayed in the central property panel and the appropriate PERT chart will be displayed on the right side. Note that this works for types and instances alike.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name. You may also want to change the “early start date” to reflect the earliest possible start time, or “late end date” to reflect the latest it should be complete (e.g. a delivery date). Note that altering these dates will propagate to any jobs if their dates lie outside of these bounds.

For a more complete discussion of the possible resource properties, please see Flow Properties.

The other primary type of edit is adding jobs to a flow.

Note that if you edit a flow type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child flow.

Editing a Resource 2

Select the resource that you want to edit from the resource list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name, and the quantity to reflect how much of that resource is available.

For a more complete discussion of the possible resource properties, please see Resource Properties.

Note that if you edit a resource type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child resource.

Editing a Resource 3

Select the resource that you want to edit from the resource list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to be an appropriately descriptive name, and the quantity to reflect how much of that resource is available.

For a more complete discussion of the possible resource properties, please see Resource Properties.

Note that if you edit a resource type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child resource.

Editing a Job 3

Select the job that you want to edit from the job list in the "Activities" tab, or the flow/job hierarchy in the "Projects" tab (the process for editing a job is the same for types and instances). Its properties will be displayed in the central property panel.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to something appropriately descriptive; the plot name to show an abbreviated name or identification number that you want to see on the schedule result views ; and the active duration to indicate how long the task is expected to take.

For a more complete discussion of the possible job properties, please see Job Properties.

Note that if you edit a job type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child job.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

You will see any existing resources with an “Add” button at the bottom. Click this button.

Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

Select the element that you want to include as a requirement and click the “OK” button.

The resource requirement view will update to show the new resource requirement.

The new requirement will assume that you need a quantity of one of the specified resource or resource set. If this is not accurate, edit the number in the property pane appropriately. Note that the quantity metric should be relative to the quantity metric used in defining the resources (e.g. if you defined a piece of space to be in square meters, you should not calculate the required quantity in square feet).

You can always delete requirements by clicking the “Delete” button (marked by a large blue “X” to the right of the requirement.

All requirements that are lined up together are “and” requirements - all of them are required in the specified quantities in order for the schedule to be satisfied. If you need to specify an alternative set of resource requirements ((A and B and C) or (D and E)), use the "+" button at the top of the requirements display to add another list of alternative requirements.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

This will show any existing requirements.

You can change the quantity required by changing the number in the numeric box at the left end of the definition.

You can change which resource is required by clicking on the notepad/pencil icon to the right of the definition. This will bring up the resource selection dialog.

You can delete a requirement by clicking the "x" to the right of the definition.

Note that, unlike the property editing and resource requirement specification and editing, constraints only make sense when defined in the context of a flow (either flow type or flow instance). As such, you should be working in the "Projects" tab when creating constraints.

Right-click the job that you want to be the first job in the constraint, either in the job list on the left, or the PERT chart (or any other graphical plot).

Select “Create Constraint Start” from the resulting drop-down.

Right-click the job that you want to be the second job in the constraint.

Select “Create Constraint Finish” from the resulting drop-down (or cancel the constraint creation by selecting “Cancel Constraint”).

The Constraint Wizard popup will appear.

This is where you define the characteristics of the desired constraint. The default constraint type is a standard finish-to-start (basic precedence) constraint. If this is what you want, you can just hit “Return” to create the constraint; otherwise you can change the properties appropriately and hit "Create Constraint" at the bottom when you are done.

Constraints have a number of properties, accessible either when creating a constraint or later when editing a constraint. This section briefly covers the most commonly used properties. A more extensive discussion may be found here.

The first property in the display (below the constraint type combo box) allows you to select the desired constraint type; most of the time this will be set to Temporal Constraint.

For information on the different types of constraints please see Types of Constraints.

The default “Normal” selection indicates that this temporal constraint relates the start or end time of the first job to the start or end time of the second job.

Selecting “Normal” in the temporal constraint type combo box enables the job relationship property combo box directly below it, by default set to Finish <= Start. This property defines the exact nature of the temporal relationship between the two activities. Finish <= Start translates into the plain English statement “the second job should start when the first job finishes, or later”. Mathematically this can be represented by the equation:

finish(first) <= start(second).

Note that the first job is the job you set out to edit.

Next, Offset allows you to introduce lag time into the temporal relationship. Finish <= Start with an offset of one hour, for example, means that the start of the second job should occur at least an hour after the finish of the first job. Or, mathematically:

finish(first) + offset <= start(second)

You can ignore bridging constraint for now (it is an informative property; see Constraint Properties for more information).

The active property simply determines whether or not this constraint is active or not: un-checking this will cause Aurora to act as if the constraint doesn’t exist, so we’ll leave it checked for now.

If you want the constraint to be a preference constraint rather than a precedence constraint, change importance to be less than .9.

Click “Create Constraint” to finish.

About Gantt Charts

The Gantt chart (based on a design developed by Henry Gantt in 1910) plots jobs in a schedule by the temporal order in which they’ll be carried out.

An example Gantt chart is shown above. The X-axis represents time (increasing from left to right), and jobs are drawn as rectangles with start points and lengths corresponding to their start dates and completion times respectively. Jobs that overlap in time (i.e. jobs that occur simultaneously for some or all of their duration) are stacked vertically, leading to a general trend (with the default display settings) of jobs being drawn from the chart’s upper-left towards its lower-right.

Editing a Resource Set 2

Select the resource set that you want to edit from the resource set list. Its properties will be displayed in the central property panel.

Edit as necessary. Note also that you can edit the resource instances within a resource set by clicking on them in the resource set list to display their properties in the central property panel. See Editing a Resource for more information.

For a more complete discussion of the possible resource set properties, please see Resource Set Properties.

Editing a Job 2

Select the job that you want to edit from the job list in the "Activities" tab, or the flow/job hierarchy in the "Projects" tab (the process for editing a job is the same for types and instances). Its properties will be displayed in the central property panel.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel.

Edit as necessary; you will probably want to change the name to something appropriately descriptive; the plot name to show an abbreviated name or identification number that you want to see on the schedule result views ; and the active duration to indicate how long the task is expected to take.

For a more complete discussion of the possible job properties, please see Job Properties.

Note that if you edit a job type that has children (either types or instances), this change may propagate to the children, if that property has not been edited on the child job.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

You will see any existing resources with an “Add” button at the bottom. Click this button.

Aurora will open a dialog showing all available resources and resource sets. Each is displayed with its description (if any) in parentheses after the name.

Select the element that you want to include as a requirement and click the “OK” button.

The resource requirement view will update to show the new resource requirement.

The new requirement will assume that you need a quantity of one of the specified resource or resource set. If this is not accurate, edit the number in the property pane appropriately. Note that the quantity metric should be relative to the quantity metric used in defining the resources (e.g. if you defined a piece of space to be in square meters, you should not calculate the required quantity in square feet).

You can always delete requirements by clicking the “Delete” button (marked by a large blue “X” to the right of the requirement.

All requirements that are lined up together are “and” requirements - all of them are required in the specified quantities in order for the schedule to be satisfied. If you need to specify an alternative set of resource requirements ((A and B and C) or (D and E)), use the "+" button at the top of the requirements display to add another list of alternative requirements.

Select the job that you want to edit from the element list. Its properties will be displayed in the central property panel. Within this panel select the “Requirements” tab.

This will show any existing requirements.

You can change the quantity required by changing the number in the numeric box at the left end of the definition.

You can change which resource is required by clicking on the notepad/pencil icon to the right of the definition. This will bring up the resource selection dialog.

You can delete a requirement by clicking the "x" to the right of the definition.

Note that, unlike the property editing and resource requirement specification and editing, constraints only make sense when defined in the context of a flow (either flow type or flow instance). As such, you should be working in the "Projects" tab when creating constraints.

Right-click the job that you want to be the first job in the constraint, either in the job list on the left, or the PERT chart (or any other graphical plot).

Select “Create Constraint Start” from the resulting drop-down.

Right-click the job that you want to be the second job in the constraint.

Select “Create Constraint Finish” from the resulting drop-down (or cancel the constraint creation by selecting “Cancel Constraint”).

The Constraint Wizard popup will appear.

This is where you define the characteristics of the desired constraint. The default constraint type is a standard finish-to-start (basic precedence) constraint. If this is what you want, you can just hit “Return” to create the constraint; otherwise you can change the properties appropriately and hit "Create Constraint" at the bottom when you are done.

Constraints have a number of properties, accessible either when creating a constraint or later when editing a constraint. This section briefly covers the most commonly used properties. A more extensive discussion may be found here.

The first property in the display (below the constraint type combo box) allows you to select the desired constraint type; most of the time this will be set to Temporal Constraint.

For information on the different types of constraints please see Types of Constraints.

The default “Normal” selection indicates that this temporal constraint relates the start or end time of the first job to the start or end time of the second job.

Selecting “Normal” in the temporal constraint type combo box enables the job relationship property combo box directly below it, by default set to Finish <= Start. This property defines the exact nature of the temporal relationship between the two activities. Finish <= Start translates into the plain English statement “the second job should start when the first job finishes, or later”. Mathematically this can be represented by the equation:

finish(first) <= start(second).

Note that the first job is the job you set out to edit.

Next, Offset allows you to introduce lag time into the temporal relationship. Finish <= Start with an offset of one hour, for example, means that the start of the second job should occur at least an hour after the finish of the first job. Or, mathematically:

finish(first) + offset <= start(second)

You can ignore bridging constraint for now (it is an informative property; see Constraint Properties for more information).

The active property simply determines whether or not this constraint is active or not: un-checking this will cause Aurora to act as if the constraint doesn’t exist, so we’ll leave it checked for now.

If you want the constraint to be a preference constraint rather than a precedence constraint, change importance to be less than .9.

Click “Create Constraint” to finish.

About Gantt Charts 2

The Gantt chart (based on a design developed by Henry Gantt in 1910) plots jobs in a schedule by the temporal order in which they’ll be carried out.

An example Gantt chart is shown above. The X-axis represents time (increasing from left to right), and jobs are drawn as rectangles with start points and lengths corresponding to their start dates and completion times respectively. Jobs that overlap in time (i.e. jobs that occur simultaneously for some or all of their duration) are stacked vertically, leading to a general trend (with the default display settings) of jobs being drawn from the chart’s upper-left towards its lower-right.

Editing a Constraint

There are two primary ways to access the properties of a constraint after it has been created:

From either view, you can edit any of the properties associated with the constraint (see Constraint Options for more details). From the job-level view, you can also delete the constraint by clicking on the "x Delete" button at the top; you cannot do this from the constraint property pop-up.

Editing a calendar

Select the calendar that you want to edit from the calendar list. Its properties will be displayed in the central property panel, and the work schedule will be displayed in a calendar table view at the right.

Edit "Name" and "Description" as appropriate.

Now update the complex calendar properties (discussed below). As you make changes, the calendar view on the right side will update to reflect changes to work schedule, work days, and holiday set.

The daily schedule defines when work can occur on a normal work day. For example, the traditional business schedule is 9 to 5, which would be modeled as a single shift starting at 09:00 and going to 17:00.

To edit an existing shift, click on the cell that you want to edit (e.g. "End Time" in the example below).

Update the shift start or end to the desired time. Note that the shift start must always be before the shift end, so if you need to move the whole shift later in such a way that it would not overlap with its old times, you will need to edit the "End Time" and then the "Start Time".

To add a shift, click the "Add Shift" button at the bottom of the "Daily Schedule" view.

Aurora will open a dialog in which you can define the bounds of the new shift.

Set the desired name, start time, and end time, and click "OK".

The new shift will show up in the daily schedule, and will also show up in the calendar view at the right.

A shift break defines some non-work time within a shift. Lunch would be a good example of a shift break.

To add a shift break, first select the shift to which you want to add a break. Then click the "Add Break" button at the bottom of the daily schedule.

Aurora will add a break set for a default time.

You may now edit the shift break's start and end times as appropriate.

To remove a shift, first select the shift that you want to remove.

Click the "Remove" button at the bottom of the daily schedule.

Aurora will update the display to reflect the removed shift.

To remove a shift break, first select the shift break that you want to remove.

Click the "Remove" button at the bottom of the daily schedule.

Aurora will update the display to reflect the removed shift break.

In the "Work Days" section of the calendar properties, toggle the work days to correspond with the actual required work days.

Aurora will update the display appropriately.

A holiday set defines the set of exceptions to a calendar. These exceptions will most commonly be holidays: days that would normally be work days, but are not work days. The set may also contain work exceptions: days that would normally be non-work days, but are work days. A holiday set may belong to multiple calendars. If this is the case, any edit to the holidays will impact all of the client calendars.

To associate a holiday set with the current calendar, click on the "Select" button next to the "Holiday Set" field.

Aurora will open a dialog showing existing holiday sets.

If the dialog is blank, you will need to create a holiday set.

Click the "New Holiday Set" button at the bottom of the holiday set selection dialog.

Aurora will create a new holiday set. In most cases you will want to edit the holiday set's properties before selecting it for the calendar's use.

To edit a holiday set, select the holiday set in the holiday selection dialog.

Click on the "Edit Holiday Set" button at the bottom of the dialog.

Aurora will open a holiday set details dialog.

In this dialog, you can enter a descriptive name, and set the basic holidays up by selecting those that you want to include. You can also define supplemental custom holidays (non-work days) and work exceptions (work days that would normally be non-work days).

Coming soon

Coming soon

When you are done making edits, click "OK". Aurora will save your edits and close the dialog.

Select the holiday set that you want to assign, and click "Select Holiday Set" at the bottom of the dialog.

When selecting a holiday set, be aware that if multiple calendars use the same holiday set, any edits to that set impact all such calendars. This is true even if the holiday set edit took place from the point of view of a calendar (e.g. toggling work days).

If you want to use that holiday set, but want to be sure that edits will not impact multiple calendars, you can first copy the holiday set and then select the new copy instead of the original set.

Once you have selected a holiday set, Aurora will update the calendar's display appropriately.

Editing a Holiday Set

To edit a holiday set, select the holiday set in the holiday selection dialog.

Click on the "Edit Holiday Set" button at the bottom of the dialog.

Aurora will open a holiday set details dialog.

In this dialog, you can enter a descriptive name, and set the basic holidays up by selecting those that you want to include. You can also define supplemental custom holidays (non-work days) and work exceptions (work days that would normally be non-work days).

Coming soon

Coming soon

When you are done making edits, click "OK". Aurora will save your edits and close the dialog.

Viewing Model Data

There are three primary ways to view your model data:

Viewing Model Data in the Edit Tab

The most common way to view model data in a small model is in the "Edit" tab. This is your default tab on startup, and does not require any special set-up. It is also the most structured way to view the properties for an element.

The advantage of this view is that the schedule model elements are divided by type, and it is easy to view the properties of a specific schedule model element (by clicking on it). Because the property view has special widgets for the different types of properties, it is usually also easy to make specific property edits.

The primary disadvantages of accessing data via the "Edit" tab is that you can only look at one element at a time, and it does not lend itself to copying and pasting values.

Viewing a Tabular Editor

Go to the "Displays" menu and select "Tabular Editor" from the list of display options.

This will give you a default Tabular Editor that shows an Excel-style view of your model and schedule results. By default the Tabular Editor will show a variety of properties for job instances.

To configure the Tabular Editor to only include the columns we are interested in, click on the column selector icon.

In the resulting dialog box, click the "None" button at the top to deselect all columns.

Select "IP Number" and "name" from the top of the listing. These will allow us to identify the job in question.

Now select any other properties in which you are interested (note that the property categories are color-coded to make the properties easier to find).

When you are done, hit "OK".

You now have an Excel-style view of your data.

You can sort by clicking a column header, auto-filter by right-clicking a column header and selecting the desired target value, and copy and paste the way you would with Excel.

Viewing a PERT Chart

In the "Edit" tab, a PERT Chart will show by default on the right side when you select a flow or a job in a flow.

Within this PERT Chart you can see jobs and their constraints. For details on a job, you can click to select it in the project tree, or double-click to open a dialog with the job's properties.

If you want to see a larger PERT Chart (or would like multiple PERT Charts, configured in different ways), then you can create a separate PERT Chart that will show up in its own tab.

Creating a Separate PERT Chart

Select "PERT Chart" from the "Displays" menu.

When you first open a new PERT Chart, Aurora will prompt you to indicate which flows should be included.

In most cases you can just switch the toggle to "All flows"; this will guarantee that you are seeing all jobs. However, if you only want to work with one or two flows, you can select them specifically.

When you are done, click "OK", and Aurora will populate your PERT Chart.

Basic PERT Configuration

When you first access a PERT Chart (whether it is the default PERT or a separate PERT tab), there are certain basic configurations that you will need to make.

In a new PERT, the jobs will be displayed in a line down the Y-Axis.

Hit the arrange toolbar button at the top of the PERT chart.

This will arrange your PERT chart so that it is easier to view effectively.

Viewing Schedule Results

Once a schedule has been generated, there are a number of different ways to visually explore the results. You can use the many displays built in to Aurora to visualize a schedule’s timeline, see how specific resources are being utilized, or carry out just about any other analysis you might be interested in.

The most commonly used displays are:

Resource plots show how the resources in your model are utilized over time.

There are three different resource plots available:

This plot is good for viewing resources that are usually used by one job (or very few jobs) at a time. Zones are a good example of a common resource that you would view with the Spatial Plot.

This plot is good for viewing resources that may be used by a number of different jobs at the same time. Labor is a good example of a common resource that you would view with the Histogram Plot.

All of the displays have some features in common.

While the many displays available in Aurora look and act quite differently from one another, there are a few basic pieces of functionality that apply to all of them.

Note that you may have many displays open at one time (including more than one of a given type). If you have a very large number open, you may find that the update time at the end of scheduling may take longer, as Aurora must update all of the displays. You can close any display by right-clicking on the tab and selecting "Close".

Once you are comfortable with these methods of viewing schedule results, you may want to explore the intermediate methods of viewing schedule results.

Viewing a Gantt Chart

Go to the "Displays" menu and select "Gantt Chart" from the list of display options.

This will give you a default Gantt Chart that shows the temporal view of your schedule.

To change the time scale, click on the timeline. Aurora will show a slider bar that you can use to adjust the scale.

To close the Gantt chart tab, right click it and select “Close.”

About Gantt Charts

The Gantt chart (based on a design developed by Henry Gantt in 1910) plots jobs in a schedule by the temporal order in which they’ll be carried out.

An example Gantt chart is shown above. The X-axis represents time (increasing from left to right), and jobs are drawn as rectangles with start points and lengths corresponding to their start dates and completion times respectively. Jobs that overlap in time (i.e. jobs that occur simultaneously for some or all of their duration) are stacked vertically, leading to a general trend (with the default display settings) of jobs being drawn from the chart’s upper-left towards its lower-right.

Viewing a Resource Plot

Resource plots show how the resources in your model are utilized over time.

There are three different resource plots available:

This plot is good for viewing resources that are usually used by one job (or very few jobs) at a time. Zones are a good example of a common resource that you would view with the Spatial Plot.

This plot is good for viewing resources that may be used by a number of different jobs at the same time. Labor is a good example of a common resource that you would view with the Histogram Plot.

Viewing a Spatial Plot

Go to the "Displays" menu and select "Spatial Plot" from the list of display options.

Aurora will open a new Spatial Plot, and pop up a configuration dialog that allows you to select the resources that you would like to view.

For the Spatial Plot, you will usually select resources that are used by one job at a time, or only a few jobs at a time (e.g. zones).

The right side of the configuration dialog shows the resources that will be included in the display. You can transfer multiple resources by multi-selecting resources (hold down the Control key and click), and clicking the "Add" button at the bottom. You can also transfer resources one at a time.

Aurora will transfer the selected resources to the right side. You can repeat this process to add more resources.

When you are done, click "OK".

Aurora will generate a Spatial Plot for the selected resources.

The X-axis represents time (increasing from left to right), and each resource is assigned to its own row. Utilization is indicated by a blue box in the resource’s row (representing an activity that uses the resource), the width of which indicates the span of time that the resource is in use. Double clicking on the box will pop up a dialog showing the properties of the job it represents.

To change the time scale, click on the timeline. Aurora will show a slider bar that you can use to adjust the scale.

To close the Spatial Plot tab, right click it and select “Close.”

Viewing a Tabular Editor

Go to the "Displays" menu and select "Tabular Editor" from the list of display options.

This will give you a default Tabular Editor that shows an Excel-style view of your model and schedule results. By default the Tabular Editor will show a variety of properties for job instances.

To configure the Tabular Editor to only include the columns we are interested in, click on the column selector icon.

In the resulting dialog box, click the "None" button at the top to deselect all columns.

Select "IP Number" and "name" from the top of the listing. These will allow us to identify the job in question.

Scroll down to the "Schedule Results" section (note the property color-coding; this allows you to readily find a property category in the long property list), and select "start date" and "end date".

Scroll down to the "Assignments" section, and select "resource assignments".

If there are additional properties that you would like to see, select those as well.

When you are done, click "OK".

Aurora will show a version of the Tabular Editor that only shows the columns that you selected.

You can sort by by value (e.g. by start date) by clicking in the column header.

To close the Tabular Editor tab, right click it and select “Close.”

Viewing Reports

Coming soon

Intermediate Users

This is very much in-progress, but the following topics have been completed (the same list is included in Intermediate Users, Intermediate Procedures, and Intermediate Techniques, to try to make it easier to find):

Intermediate Working Procedures

This is very much in-progress, but the following topics have been completed (the same list is included in Intermediate Users, Intermediate Procedures, and Intermediate Techniques, to try to make it easier to find):

Entering/Updating Model Data

Coming soon (note that some sub-topics have been completed)

Work Assignments

There are often things that take time out of a mechanic's day, such as meetings and training sessions. These may be one-time sessions, or daily or weekly events that occur on a regular schedule. These could be modeled with jobs, except that in that case other jobs could not split across them (e.g. Job 1 starts on Monday; on Tuesday morning there is a crew meeting, and then Job 1 finishes).

This class of non-assembly activities is covered by work assignments.

A work assignment has associated resources (usually labor), and information about when it is supposed to occur. They are allocated first in the scheduling process, so all regular jobs fall in around and across work assignments.

You can make work assignments manually by constructing a job and toggling the "work assignment" flag. This approach works best for one-time work assignments. In general it is safer to use the work assignment utility to manage your work assignments.

After creating your work assignments (but before scheduling), you may want to set the work assignment date bounds to work well with your schedule model by editing the work assignment flow's dates.

To access the work assignment management utility, go to the "Utilities" menu and select "Work Assignments...".

Aurora will open the work assignment editor. From here you can:

Creating Work Assignments

To create a work assignment, click the "Add" button at the bottom of the work assignment editor.

Aurora will create a new work assignment, and pop open the detailed work assignment editor.

Enter an indicative label, and select the resources to which you want this to apply by clicking on the "Select" button.

Aurora will open a dialog showing all resources and resources sets.

You can select multiple resources and sets by holding down Control (for specific selection) or Shift (for a range selection) before clicking subsequent resources.

When your selections are complete, click "OK".

You are now ready to specify the time range for this work assignment. You have three basic options: "One Time", "Every Day", and "Selected Days".

By default, the "Every Day" tab is selected. This is where you want to be for things like crew meetings; it will add a work assignment for every work day (so if you're on a 5 day schedule, and want the work assignment to be 5 days per week, this will do the trick).

One Time Details

Every Day Details

One Time Work Assignment

In the detailed work assignment editor, go to the "One Time" tab.

Here you can enter the time-range for the work assignment, and the day on which the work assignment should occur.

Once you hit "OK", the text in the work assignment editor will update appropriately.

Daily Work Assignment

In the detailed work assignment editor, go to the "Every Day" tab (you should already be there if this is a new work assignment).

Here you can enter the time-range during which this work assignment should occur each day, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

Periodic Work Assignment

In the detailed work assignment editor, go to the "Selected Days" tab.

Here you can enter the time-range during which this work assignment should occur each day, on which days it should occur, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

Editing Work Assignments

In general, it is safest to edit work assignments from within the work assignment utility; that is what is covered below. However, in some cases you may want to do something with work assignments that the utility cannot handle. In that case you can manually edit work assignments.

To edit a work assignment, select the work assignment that you want to edit and click the "Edit" button at the bottom of the work assignment editor.

Aurora will open the detailed work assignment editor, going to the tab that matches the current properties the best and initializing the display appropriately.

Warning: if you have manually edited the work assignment calendar, some types of edits (e.g. adding another shift) will not survive another pass through the detailed work assignment editor, because the editor cannot model those changes. When you click "OK" after editing, Aurora sends edits based on what is currently in the detailed work assignment editor, and if it cannot model the previous calendar change it will effectively overwrite the change. If you make such manual modifications to the calendar, it is a good idea to note as much in the work assignment's name.

Within the detailed work assignment editor, you can change the work assignment name, the resource selections, and any of the time-frame specifics in the tabs at the bottom (including changing the type of work assignment set-up, by switching tabs and making edits as appropriate).

In the detailed work assignment editor, go to the "One Time" tab.

Here you can enter the time-range for the work assignment, and the day on which the work assignment should occur.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Every Day" tab (you should already be there if this is a new work assignment).

Here you can enter the time-range during which this work assignment should occur each day, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Selected Days" tab.

Here you can enter the time-range during which this work assignment should occur each day, on which days it should occur, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

Manually Editing Work Assignments

Coming soon

Deleting Work Assignments

To delete a work assignment, select the work assignment that you want to edit and click the "Remove" button at the bottom of the work assignment editor.

Aurora will remove the work assignment.

Note that you can also manually delete a work assignment in the "Projects" tab, just as you would a regular job. The disadvantage of this is that it may leave remnants (e.g. the work assignment's calendar).

Controlling the Work Assignment Time Range

Many work assignments are repeating occurrences (e.g. crew meeting). If not bounded, they will go out in time and make your schedule results displays difficult to handle. You can set each one's end date individually in the work assignment editor, but it is easier to manage all of them at once by editing the "early start date" and "late end date" of the work assignment flow. This will automatically fence the dates during scheduling.

If you make your work assignments in the work assignment utility , they will be added to a separate "Work Assignments" flow.

Select the "Work Assignments" flow, and go to the "Schedule Results" tab.

Here you can set the "early start date" and "late end date" to make sure that the work assignments are only occurring during the model's work time. The "early start date" should correspond with the earliest "early start date" among the project flows (since no real work can occur before then, anyway).

The "late end date" can be set to a time when you're sure work should be over, plus a margin of error. Note that you can always change these dates later if the project dates slip.

Scheduling

What does scheduling do?

In scheduling, the Aurora scheduling engine considers all instance elements in the model (flows, jobs, resources, and constraints), and attempts to find a set of dates and resource assignments that satisfy all model requirements.

Before Scheduling

Before scheduling, you must have instances to schedule (otherwise the scheduling will not have an effect). Hopefully you already have instances in your model, but if not, create some.

Creating Instances

If you have a fully defined model, but only flow types and no flow instances, you need to create flow instances.

If you want to create a flow that will be scheduled, you must create a flow instance.

Select the desired flow type and click the “New Instance” button (note that you must have at least one flow type in order to create a flow instance).

Aurora will create a new flow instance under the selected flow type. Initially the instance will have all of the same properties as the originating type, including any jobs that the parent flow had. You can change the properties as needed, including adding job instances directly to the flow instance.

Each of the three primary data elements in Aurora (flows, jobs, and resources) can exist as types, instances, or both, e.g. the flow type “bake a birthday cake” vs. the flow instance “bake Jim’s birthday cake,” the resource type “a dozen eggs” vs. the resource instance “the dozen eggs in my refrigerator,” etc. This creational flexibility is designed to give users maximum power in the creation of models representing their domains.

When the models are complete and it’s time to generate a schedule, however, instances are all that matter.

Because a schedule is only useful if it describes real things, flow, job, and resource types become meaningless when scheduling. It’s important, therefore, that every flow, job, and resource you’d like to be included in your schedule exists in Aurora as an instance, not just a type. It’s fine to have both – a job type and a job instance based on that type, for example – but unless at least one instance of a type element exists, that element will be completely ignored.

The processes for creating instances of flows, jobs, and resources are described in the same sections that detail the creation of those types; you can refer back to those sections for specific details. There is one point that bears repeating here, though, and that relates to the creation of flow instances: when an instance is created of a flow type, instances will also be created for each of the job types in that flow type. This makes sense because a flow instance (a “real” collection of jobs) must contain only “real” jobs.

Error/Warning Dialog

Before scheduling, Aurora runs a set of model analysis methods to catch common modeling problems.

If it finds errors, it will report back to the user without scheduling. If it only finds warnings, it will report them to the user, but will go ahead and schedule. If the repeated appearance of the same warnings becomes annoying, you can suppress the warnings by checking the "Suppress Warnings" option when you trigger the scheduling process.

The error and warning window shows the problems by category, along with an indication of whether the problem is a warning or an error.

Each tab gives details about the jobs involved in the problem to help you resolve the issue.

If you hover over the title of a tab, Aurora will give you a brief explanation of the error as a refresher.

The possible issues are as follows:

Errors

Logic errors are things that would result in inevitable conflicts if Aurora went ahead and tried to schedule.

The set of error checks is not complete, so there may be times that you schedule and get unavoidable conflicts. If a particular area comes up frequently, or proves to be problematic, Stottler Henke adds a new error check for it.

Aurora currently checks for the following errors:

Capacity Violation Error

This error indicates that a job requires more of a resource than is ever available. This may occur in two cases: a single resource requirement (either for a specific resource or a set) requires a greater quantity than is ever available; or if a job has multiple requirements, each of which is satisfiable, but in combination they would require a greater quantity than is ever available.

The error report specifies the problem job (IP Number and name), and resource or resource set at issue.

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Concurrency Overlap Error

This error indicates that two or more jobs that must occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on the concurrent jobs in combination, because they are guaranteed to overlap (and so all of both sets of requirements must be simultaneously satisfiable).

Note that there are cases where the overlap may or may not be a problem. This may occur when there are several jobs of different durations that are connected by a series of concurrent constraints. This situation results in a Concurrency Overlap Warning, instead.

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.

You can open the first job in question by double-clicking on that job's line.

To resolve the problem you have four options:

Dependency Loops

This error indicates that your network of constrained jobs has a loop (e.g. A --> B --> C --> A).

The easiest way to find the loop is usually via the PERT chart:

Make sure that your PERT includes all jobs.

Click on the "Filter PERT Plot" option at the top of the loop display.

This will filter your PERT to only include the jobs involved in the loop.

Now click "Arrange PERT Plot" (which should now be enabled) to lay the jobs out so that the loops are obvious.

Aurora will arrange your filtered PERT to show the loops.

Once you have resolved the loop (deleted one or more constraints), toggle "Filter PERT Plot" again to remove the filter (otherwise the filter will stay on your conditional appearances even after the loop window has closed).

Duration Error

This error indicates that a job's duration has not been set. Note that for scheduling only the "active duration" matters, so that is the only thing that needs to be set (but it must be set).

The error report specifies the problem job (IP Number and name), and the duration problem.

You can open the job in question by double-clicking on that job's line.

Set the "active duration" in either the "Duration Info" tab or the "Scheduling Attributes" tab (it is the same property, although it is easier to locate in the "Duration Info" tab).

Flow Date/Job Date Inconsistency Error

This error indicates that the "early start date" and/or "late end date" associated with one of the flow instances is incompatible with the "early start date" and/or "late end date" associated with one of the job instances that belongs in that flow. This matters because if a flow's dates are more restrictive than a job's dates, the job inherits the flow's dates.

For example, if a flow's "late end date" is 1/1/2012, and a job's "late end date" is 2/1/2012, the scheduler will use the earlier late end date, 1/1/2012. This is potentially problematic if the job's early start date is 1/15/2012. Under these circumstances, the date inconsistency error would be displayed.

The error report specifies the problem job (IP Number and name), the flow instance that the job belongs to, and the relationship problem.

You can open the job in question by double-clicking on that job's line.

There are three options for resolving this error:

Infeasible Unbreakable Jobs

This error indicates that a job cannot break across a shift break, or cannot break across a day break, and the calendars involved are such that there is never a time that these requirements may be met. If a job cannot break across a shift break, it means that it cannot be started on one shift and continued on another. If a job cannot break across a day break, it means that it cannot be started on a shift one day, and continued on a shift another day. In performing the check, the system computes the composite calendars that would be involved, and then sees whether there is ever a shift or day or work that would accommodate the specified requirements.

The error report specifies the problem job (IP Number and name), the required duration, and the minimum work duration available for that job's needs, based on the composite calendar. If the conflict information involves "longest shift", the problem is with a job that cannot break across shifts; if the conflict information involves "longest day", the problem is with a job that cannot break across days.

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have three options:

Warnings

Logic warnings are things that may indicate model state problems, and/or may result in conflicts depending on context.

Aurora currently checks for the following warning situations:

Concurrency Overlap Warning

This warning indicates that two or more jobs that may need to occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on clusters of concurrent jobs in combination, because they may need to overlap, and if they do then all of both sets of requirements must be simultaneously satisfiable.

Note that this does not indicate that there will be a problem (unlike the concurrency overlap error); however, if you go ahead and schedule anyway, and there is a conflict involving the specified jobs, you will need to treat it as equivalent to the error case. This check's primary goal is to prepare you for the possibility of conflicts and pre-explain their presence; unfortunately it indicates a situation complicated enough that without scheduling the system cannot readily determine whether the overlap is avoidable.

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.

You can open the first job in question by double-clicking on that job's line.

Before attempting to correct the problem, try scheduling and see if there is a conflict. If there is a conflict, you have four options to resolve the problem:

Non-Milestone Warning

This warning indicates that a job has a duration of 0, even though it is not a milestone and has not been canceled (all active jobs with a duration of 0 should really be milestones).

The warning report specifies the problem job (IP Number and name).

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Note that it will not hurt anything to ignore this warning. It merely indicates that some informative properties are not consistent with your schedule model.

Schedule Issue Troubleshooting

Coming soon.

Viewing Schedule Results

Once a schedule has been generated, there are a number of different ways to visually explore the results. You can use the many displays built in to Aurora to visualize a schedule’s timeline, see how specific resources are being utilized, or carry out just about any other analysis you might be interested in.

The most commonly used displays are:

There are three different resource plots available:

This plot is good for viewing resources that are usually used by one job (or very few jobs) at a time. Zones are a good example of a common resource that you would view with the Spatial Plot.

This plot is good for viewing resources that may be used by a number of different jobs at the same time. Labor is a good example of a common resource that you would view with the Histogram Plot.

All of the displays have some features in common.

While the many displays available in Aurora look and act quite differently from one another, there are a few basic pieces of functionality that apply to all of them.

Note that you may have many displays open at one time (including more than one of a given type). If you have a very large number open, you may find that the update time at the end of scheduling may take longer, as Aurora must update all of the displays. You can close any display by right-clicking on the tab and selecting "Close".

Once you are comfortable with these methods of viewing schedule results, you may want to explore the intermediate methods of viewing schedule results.

CCPM Procedures

There are two primary stages when working with a CCPM model:

What is CCPM?

CCPM Model Development

Before you create a CCPM model, you must have a schedule model that has the "safe duration" and "aggressive duration" properties set on each job. If you only have active durations, you can calculate proportional durations in Excel and copy and paste them across in the Tabular Editor.

Once you have a model with both safe and aggressive durations, you will follow these steps to create a CCPM model:

Once you have developed a CCPM model, you are ready to execute it.

Generate a Safe Duration Schedule

Set the active duration values to safe by going to the "Schedule" menu, the "Duration Standard" sub-menu, and selecting "Safe".

Note that even if "Safe" was selected already, this may have an impact if any of the "active duration" properties differ from the "safe duration" properties (as this action copies the "safe duration" values over to the "active duration" slot).

Schedule.

Fence Project End

Fencing the project end is optional, but can be useful if you want to take advantage of any permissible slack time while still meeting the deadline determined by the safe duration schedule.

If you have an external deadline, use that instead.

Once you have a safe duration schedule, it is easiest to fence the project end appropriately from the Tabular Editor. Create a new Tabular Editor or use an existing one.

Switch the selected element type to be projects instances.

In the resulting display, sort by "end date"

Take the latest end date (in this case 12/1/2010 11:00), and paste it to all "late end date" cells.

Your projects are now properly fenced.

Generate an Aggressive Duration Schedule

Set the active duration values to be aggressive by going to the "Schedule" menu, the "Duration Standard" sub-menu, and selecting "Aggressive".

Note that even if "Aggressive" was selected already, this may have an impact if any of the "active duration" properties differ from the "aggressive duration" properties (as this action copies the "aggressive duration" values over to the "active duration" slot).

Schedule.

Find the Critical Chain

To find the critical chain, go to the CCPM menu and select the "Find Critical Chain" menu item.

Aurora will calculate the critical chain (the longest causal path through the schedule), set the "original critical chain" property on those jobs determined to be on the critical chain, and if you have the default display settings, will highlight the critical chain on the displays in yellow.

This Gantt shows the current critical chain highlighted in yellow.

Insert Buffers

To insert buffers, go to the CCPM menu and select the "Insert Buffers" menu item.

Aurora will find all of the points at which other jobs feed into the critical chain. It will calculate the longest causal chain from that feeding chain back, and create a buffer with a duration based on that feeding chain.

It will also use the critical chain jobs to determine the length of the project buffer using the same type of analysis.

Finally, Aurora will reschedule the model to place all buffers appropriately (such that they sit just before their associated critical chain elements, but do not create any instant buffer incursion).

PERT Chart with the critical chain and buffers inserted.

Gantt Chart with the critical chain and buffers inserted. The gap between the end of the critical chain and the project buffer is caused by our safe-duration-determined fence. If we had left it unfenced, the project buffer would start just after FAD01SAMPLE9.

Avoiding Instant Buffer Incursion

Coming soon.

CCPM Execution

Before you perform CCPM execution, you must have a CCPM model. If your model does not have a critical chain and buffers, go back and make a CCPM model.

There are three main steps in CCPM Execution, and they loop until the project is done:

The user can monitor project progress at a high level by keeping an eye on buffer incursion information and checking the fever chart.

Re-Level Schedule

Prioritize Jobs

The basis for CCPM Execution is the task priority list (the floor should always be working the highest priority workable job). In order to update the priority list to take new actuals into account, you must periodically re-prioritize the jobs.

This is achieved by going to the "CCPM Execution" menu and clicking on "Analyze Progress".

This propagates any actuals (so that no unworked jobs will schedule before the most recent actual), updates the schedule, and analyzes buffer incursion information based on the updated schedule.

Aurora then derives the new set of task priorities from the updated buffer incursion information.

Aurora automatically pops up the Buffer Incursion Report so that the user can get a quick view of any problems.

To access the task priority list, go to the "Reports" menu and select "Task Priorities".

Aurora will open the current task priority report.

Assign Jobs

Assigning jobs is usually handled externally to Aurora. It may be done by going off a Tabular Editor printout posted on the floor.

Regardless of method, the underlying process is the same:

The task assigner starts at the top of the priority list, and looks down it for the first job that meets the following criteria:

View Task Priorities

To access the task priority list, go to the "Reports" menu and select "Task Priorities".

Aurora will open the current task priority report.

Enter Actuals

Getting actuals ("actual start", "actual end", "job status", etc.) back into Aurora is critical, because without this information Aurora cannot produce an updated priority list.

There are some basic methods for getting actuals into Aurora:

Manual Actuals Entry

There are two ways to manually enter actuals in Aurora.

Input via the Gantt Chart:

Right click on a task that you wish to edit, then go to the Show Job Properties options. This will open up the Edit Job dialog.

Screen shot 2011-05-03 at 5.13.16 PM.png

You can also get to the Edit Job dialog by scrolling to the task you wish to edit in the Edit Pane, then selecting the Actuals Tab in the Properties pane for the chosen task:

Screen shot 2011-05-03 at 5.15.30 PM.png

In the Edit job dialog that appears, click on the Actuals tab.

Screen shot 2011-05-03 at 5.09.25 PM.png

You then have the options to change the Job Status to different states via the drop down menu:

Other available options include:

Actual Start

Actual End

Remaining Duration

As of time

Penetrating China memberships

Actual Start Set

Actual End Set

Percent Complete

Actuals Copy and Paste

Coming soon.

Execution Status Monitoring

The user can monitor project progress at a high level by keeping an eye on buffer incursion information and checking the fever chart.

Buffer Incursion Report

The buffer incursion report opens automatically when Aurora is done updating the scheduling and priorities. You can also open it any time by going to the "Reports" menu and selecting "Buffer Incursions".

Aurora will show a report with each buffer, current incursion, and which job is driving the most incursion.

Fever Chart

The fever chart gives a good high-level view of project health (current state and history).

You can open a fever chart by going to the "Displays" menu and selecting "Fever Chart".

Aurora will open a new fever chart with an update point for each time "Analyze Progress" was run.

A fever chart for a project that is mostly done. In the middle of the project it ran into some problems, but it is now mostly recovered.

The current project state is shown in red.

Note that in an ideal world, a project would run the progress line right up the yellow/green border (to be deeper in green is wasteful, and to be closer to red is risky).

Setting Fever Chart Color Bounds

Coming soon

Viewing Schedule Results - Intermediate

Coming soon

Understanding the Schedule

Coming soon

Running What-If Scenarios

Coming soon

Analysis Tasks

Coming soon

Analyzing a Conflict

Coming soon

Analyzing Schedule Gaps

Coming soon

Finding a Schedule's Bottleneck

Coming soon

Refining the Model

Coming soon (note that some sub-topics have been completed)

Moving a Job

There are two primary ways to move a job from one flow to another:

Moving a Job via Right-Click

Find the job that you want to move (in the project tree, as shown here, or in one of the graphical displays), and right-click on it.

In the resulting menu, select "Change Control Station...".

Aurora will open a dialog in which you can choose the destination flow (all flows except the job's current flow are listed).

Select the flow that you want, and click "OK".

The job will now show up under the other flow in the project tree, and will use the new flow's dates for any fencing needs.

Moving a Job in the Tabular Editor

Go to a "Tabular Editor", or create a new one if you don't have one (or do not want to interfere with the ones that you have available). Configure the columns so that "flow" is included.

Find the target job(s) in the tabular editor, and edit or copy/paste the flow to be the desired destination flow.

If you specify a flow that does not exist in the model, you will receive an error, and the job will not move.

If the flow is known, the job will now show up under the other flow in the project tree, and will use the new flow's dates for any fencing needs.

Utilities Menu

Run Logic Checks

Aurora can run a set of model analysis methods to catch common modeling problems.

To check whether you have resolved the errors, you can run the logic checks by going to the "Utilities" menu and selecting "Run Logic Checks".

\\psf\Home\Desktop\Run Logic Checks.ipp.bmp

If it finds errors or warnings, it will report back to the user. If it only finds warnings

The error and warning window shows the problems by category, along with an indication of whether the problem is a warning or an error.

\\psf\Home\Desktop\pre schedule error checking failure.ipp.bmp

Each tab gives details about the jobs involved in the problem to help you resolve t issue.

If you hover over the title of a tab, Aurora will give you a brief explanation of the error as a refresher.

\\psf\Home\Desktop\error mouseover explanation.ipp.bmp

The possible issues are as follows:

Errors

Logic errors are things that would result in inevitable conflicts if Aurora went ahead

and tried to schedule.

The set of error checks is not complete, so there may be times that you schedule

and get unavoidable conflicts. If a particular area comes up frequently, or proves

to be problematic, Stottler Henke adds a new error check for it.

Aurora currently checks for the following errors:

Capacity Violation Error

This error indicates that a job requires more of a resource than is ever available. This may occur in two cases: a single resource requirement (either for a specific resource or a set) requires a greater quantity than is ever available; or if a job has multiple requirements, each of which is satisfiable, but in combination they would require a greater quantity than is ever available.

\\psf\Home\Desktop\capacity error.ipp.bmp

The error report specifies the problem job (IP Number and name), and resource or resource set at issue.

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Concurrency Overlap Error

This error indicates that two or more jobs that must occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on the concurrent jobs in combination, because they are guaranteed to overlap (and so all of both sets of requirements must be simultaneously satisfiable).

Note that there are cases where the overlap may or may not be a problem. This may occur when there are several jobs of different durations that are connected by a series of concurrent constraints. This situation results in a concurrency overlap warning, instead.

\\psf\Home\Desktop\concurrency overlap error.ipp.bmp

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.

You can open the first job in question by double-clicking on that job's line.

To resolve the problem you have four options:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Add a compatibility relationship between the jobs in question (this will only work if the resource involved is a compatibility target).

Remove or soften the constraint enforcing concurrency; this may be a concurrent constraint, a start=start constraint, or a finish=finish constraint.

Dependency Loops

This error indicates that your network of constrained jobs has a loop (e.g. A --> B --> C --> A).

\\psf\Home\Desktop\loop error.ipp.bmp

The easiest way to find the loop is usually via the PERT chart:

Make sure that your PERT includes all jobs.

Click on the "Filter PERT Plot" option at the top of the loop display.

\\psf\Home\Desktop\loop error - filter PERT.ipp.bmp

This will filter your PERT to only include the jobs involved in the loop.

Now click "Arrange PERT Plot" (which should now be enabled) to lay the jobs out so that the loops are obvious

\\psf\Home\Desktop\loop error - arrange PERT.ipp.bmp

Aurora will arrange your filtered PERT to show the loops.

\\psf\Home\Desktop\arranged loop.ipp.bmp

Once you have resolved the loop (deleted one or more constraints), toggle "Filter PERT Plot" again to remove the filter (otherwise the filter will stay on your conditional appearances even after the loop window has closed).

\\psf\Home\Desktop\loop error - unfilter PERT.ipp.bmp

Duration Error

This error indicates that a job's duration has not been set. Note that for scheduling only the "active duration" matters, so that is the only thing that needs to be set (but it must be set).

\\psf\Home\Desktop\unset duration error.ipp.bmp

The error report specifies the problem job (IP Number and name), and the duration problem.

You can open the job in question by double-clicking on that job's line.

Set the "active duration" in either the "Duration Info" tab or the "Scheduling Attributes" tab (it is the same property, although it is easier to locate in the "Duration Info" tab).

Flow Date/Job Date Inconsistency Error

This error indicates that the "early start date" and/or "late end date" associated with one of the flow instances is incompatible with the "early start date" and/or "late end date" associated with one of the job instances that belongs in that flow. This matters because if a flow's dates are more restrictive than a job's dates, the job inherits the flow's dates.

For example, if a flow's "late end date" is 1/1/2012, and a job's "late end date" is 2/1/2012, the scheduler will use the earlier late end date, 1/1/2012. This is potentially problematic if the job's early start date is 1/15/2012. Under these circumstances, the date inconsistency error would be displayed.

\\psf\Home\Desktop\date inconsistency error.ipp.bmp

The error report specifies the problem job (IP Number and name), the flow instance that the job belongs to, and the relationship problem.

You can open the job in question by double-clicking on that job's line.

There are three options for resolving this error:

Change the job's dates to agree with the flow's dates.

Change the flow's dates to agree with the job's dates.

Move the job to a different flow that will agree better.

Infeasible Unbreakable Jobs

This error indicates that a job cannot break across a shift break, or cannot break across a day break, and the calendars involved are such that there is never a time that these requirements may be met. If a job cannot break across a shift break, it means that it cannot be started on one shift and continued on another. If a job cannot break across a day break, it means that it cannot be started on a shift one day, and continued on a shift another day. In performing the check, the system computes the composite calendars that would be involved, and then sees whether there is ever a shift or day or work that would accommodate the specified requirements.

\\psf\Home\Desktop\unbreakable error.ipp.bmp

The error report specifies the problem job (IP Number and name), the required duration, and the minimum work duration available for that job's needs, based on the composite calendar. If the conflict information involves "longest shift", the problem is with a job that cannot break across shifts; if the conflict information involves "longest day", the problem is with a job that cannot break across days.

You can open the job in question by double-clicking on that job's line.

Shortening the job's duration to that specified in the conflict information (e.g. change job 6's duration to 7 hours, in the example above).

Switching the calendars involved (by reassigning the job calendar, flow calendar, and/or resource calendars - as necessary)

Editing the calendars involved (by editing the calendar specified by the job, flow, and/or resources).

Warnings

Logic warnings are things that may indicate model state problems, and/or may result in conflicts depending on context.

Aurora currently checks for the following warning situations:

Concurrency Overlap Warning

This warning indicates that two or more jobs that may need to occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on clusters of concurrent jobs in combination, because they may need to overlap, and if they do then all of both sets of requirements must be simultaneously satisfiable.

Note that this does not indicate that there will be a problem (unlike the concurrency overlap error); however, if you go ahead and schedule anyway, and there is a conflict involving the specified jobs, you will need to treat it as equivalent to the error case. This check's primary goal is to prepare you for the possibility of conflicts and pre-explain their presence; unfortunately it indicates a situation complicated enough that without scheduling the system cannot readily determine whether the overlap is avoidable.

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.You can open the first job in question by double-clicking on that job's line.

Before attempting to correct the problem, try scheduling and see if there is a conflict. If there is a conflict, you have four options to resolve the problem:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Add a compatibility relationship between the jobs in question (this will only work if the resource involved is a compatibility target).

Remove or soften the constraint enforcing concurrency; this may be a concurrent constraint, a start=start constraint, or a finish=finish constraint.

Non-Milestone Warning

This warning indicates that a job has a duration of 0, even though it is not a milestone and has not been canceled (all active jobs with a duration of 0 should really be milestones).

\\psf\Home\Desktop\non-milestone warning.ipp.bmp

The warning report specifies the problem job (IP Number and name).

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Change the job's active duration to be non-zero.

Set the "job type" property to be "Milestone".

Note that it will not hurt anything to ignore this warning. It merely indicates that some informative properties are not consistent with your schedule model.

Find Redundant Constraints

Aurora includes a utility called find redundant constraints to help find any redundant links. This option is found under the utilities menu and is called find redundant constraints.

To have Aurora check for Redundant Links, go to the Utilities menu and select Find Redundant Constraints.

Selecting this will result in the calculation of redundant constraints and the display of the redundant constraints report as shown below. If any redundant strings are found they will be included in the list which provides information not only on the predecessor and successor that are redundant but any alternate path that make the link redundant. Also provided is the option to remove these redundant links which essentially one can make the selection and all the items that are checked will be eliminated once the remove constraints button is pressed.

Aurora will then look for redundant constraints in your flow and generate a report. The image below is from a sample file:

The following options are provided near the top of the dialog:

Export table to a Character Delimited file Screen shot 2011-04-28 at 10.25.01 AM.png

This exports the report into a .CSV file, which can then be opened in a spreadsheet program such as Excel, or Numbers.

Print Screen shot 2011-04-28 at 10.25.23 AM.png

Clicking on the Print Icon will print the table on display.

Print Preview Screen shot 2011-04-28 at 10.25.32 AM.png

Shows a preview of the table to be printed.

Define Filters Screen shot 2011-04-28 at 10.25.37 AM.png

This allows you to set filters to display constraints that meet only certain criteria.

All/None/Inverse Screen shot 2011-04-28 at 10.25.43 AM.png

This allows you to select all or none of the redundant constraints listed in the report.

All

None

Inverse

Then once you decide which constraint to remove from your flow based on this report, simply select them via the checkbox, then click on the Remove Constraints button.

Screen shot 2011-04-27 at 3.25.21 PM.png

Run Mass Job Removal

A new dialogue box like below will appear:

Baseline Schedule

Before creating a CCPM schedule, you can use baseline the schedule to create a snapshot, which can be used to compare with the newly generated CCPM schedule. Baselining caches all the information about where things are currently scheduled, for later reference. To do so, go to the Utilities menu, and choose Baseline Schedule:

This will fill the baseline start date and baseline end date boxes with date currently in your project:

Screen shot 2011-04-28 at 2.17.41 PM.png

Later in the Gantt display, you can use the function Compare Current Schedule with a Snapshot to compare the Baseline against the schedule in its current state:

Screen shot 2011-04-28 at 2.16.13 PM.png

Clear Baseline

Snapshot Baseline

Set Stable Schedule

Clear Stable Schedule

Bridging Constraints control

Preference Constraints Control

Work Assignments

There are often things that take time out of a mechanic's day, such as meetings and training sessions. These may be one-time sessions, or daily or weekly events that occur on a regular schedule. These could be modeled with jobs, except that in that case other jobs could not split across them (e.g. Job 1 starts on Monday; on Tuesday morning there is a crew meeting, and then Job 1 finishes).

This class of non-assembly activities is covered by work assignments.

To access the work assignment management utility, go to the "Utilities" menu and select "Work Assignments...".

Aurora will open the work assignment editor. From here you can:

To create a work assignment, click the "Add" button at the bottom of the work assignment editor.

Aurora will create a new work assignment, and pop open the detailed work assignment editor.

Enter an indicative label, and select the resources to which you want this to apply by clicking on the "Select" button.

Aurora will open a dialog showing all resources and resources sets.

You can select multiple resources and sets by holding down Control (for specific selection) or Shift (for a range selection) before clicking subsequent resources.

When your selections are complete, click "OK".

You are now ready to specify the time range for this work assignment. You have three basic options: "One Time", "Every Day", and "Selected Days".

By default, the "Every Day" tab is selected. This is where you want to be for things like crew meetings; it will add a work assignment for every work day (so if you're on a 5 day schedule, and want the work assignment to be 5 days per week, this will do the trick).

In the detailed work assignment editor, go to the "One Time" tab.

Here you can enter the time-range for the work assignment, and the day on which the work assignment should occur.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Every Day" tab (you should already be there if this is a new work assignment).

Here you can enter the time-range during which this work assignment should occur each day, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Selected Days" tab.

Here you can enter the time-range during which this work assignment should occur each day, on which days it should occur, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

Note that regardless of which range seems most appropriate, the tabs are independent, so you can't start entering data in one tab, and switch to another tab and have the information propagate.

In general, it is safest to edit work assignments from within the work assignment utility; that is what is covered below. However, in some cases you may want to do something with work assignments that the utility cannot handle. In that case you can manually edit work assignments.

To edit a work assignment, select the work assignment that you want to edit and click the "Edit" button at the bottom of the work assignment editor.

Aurora will open the detailed work assignment editor, going to the tab that matches the current properties the best and initializing the display appropriately.

Warning: if you have manually edited the work assignment calendar, some types of edits (e.g. adding another shift) will not survive another pass through the detailed work assignment editor, because the editor cannot model those changes. When you click "OK" after editing, Aurora sends edits based on what is currently in the detailed work assignment editor, and if it cannot model the previous calendar change it will effectively overwrite the change. If you make such manual modifications to the calendar, it is a good idea to note as much in the work assignment's name.

If it finds errors or warnings, it will report back to the user. If it only finds warnings

The error and warning window shows the problems by category, along with an indication of whether the problem is a warning or an error.

\\psf\Home\Desktop\pre schedule error checking failure.ipp.bmp

Each tab gives details about the jobs involved in the problem to help you resolve t issue.

If you hover over the title of a tab, Aurora will give you a brief explanation of the error as a refresher.

\\psf\Home\Desktop\error mouseover explanation.ipp.bmp

Concurrency Overlap Error

The possible issues are as follows:

Errors

Logic error are things that would result in inevitable conflicts if Aurora went ahead

and tried to schedule.

The set of error checks is not complete, so there may be times that you schedule

and get unavoidable conflicts. If a particular area comes up frequently, or proves

to be problematic, Stottler Henke adds a new error check for it.

Aurora currently checks for the following errors:

Capacity Violation Error

This error indicates that a job requires more of a resource than is ever available. This may occur in two cases: a single resource requirement (either for a specific resource or a set) requires a greater quantity than is ever available; or if a job has multiple requirements, each of which is satisfiable, but in combination they would require a greater quantity than is ever available.

\\psf\Home\Desktop\capacity error.ipp.bmp

The error report specifies the problem job (IP Number and name), and resource or resource set at issue.

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Concurrency Overlap Error

This error indicates that two or more jobs that must occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on the concurrent jobs in combination, because they are guaranteed to overlap (and so all of both sets of requirements must be simultaneously satisfiable).

Note that there are cases where the overlap may or may not be a problem. This may occur when there are several jobs of different durations that are connected by a series of concurrent constraints. This situation results in a concurrency overlap warning, instead.

\\psf\Home\Desktop\concurrency overlap error.ipp.bmp

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.

You can open the first job in question by double-clicking on that job's line.

To resolve the problem you have four options:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Add a compatibility relationship between the jobs in question (this will only work if the resource involved is a compatibility target).

Remove or soften the constraint enforcing concurrency; this may be a concurrent constraint, a start=start constraint, or a finish=finish constraint.

Dependency Loops

This error indicates that your network of constrained jobs has a loop (e.g. A --> B --> C --> A).

\\psf\Home\Desktop\loop error.ipp.bmp

The easiest way to find the loop is usually via the PERT chart:

Make sure that your PERT includes all jobs.

Click on the "Filter PERT Plot" option at the top of the loop display.

\\psf\Home\Desktop\loop error - filter PERT.ipp.bmp

This will filter your PERT to only include the jobs involved in the loop.

Now click "Arrange PERT Plot" (which should now be enabled) to lay the jobs out so that the loops are obvious

\\psf\Home\Desktop\loop error - arrange PERT.ipp.bmp

Aurora will arrange your filtered PERT to show the loops.

\\psf\Home\Desktop\arranged loop.ipp.bmp

Once you have resolved the loop (deleted one or more constraints), toggle "Filter PERT Plot" again to remove the filter (otherwise the filter will stay on your conditional appearances even after the loop window has closed).

\\psf\Home\Desktop\loop error - unfilter PERT.ipp.bmp

Duration Error

This error indicates that a job's duration has not been set. Note that for scheduling only the "active duration" matters, so that is the only thing that needs to be set (but it must be set).

\\psf\Home\Desktop\unset duration error.ipp.bmp

The error report specifies the problem job (IP Number and name), and the duration problem.

You can open the job in question by double-clicking on that job's line.

Set the "active duration" in either the "Duration Info" tab or the "Scheduling Attributes" tab (it is the same property, although it is easier to locate in the "Duration Info" tab).

Flow Date/Job Date Inconsistency Error

This error indicates that the "early start date" and/or "late end date" associated with one of the flow instances is incompatible with the "early start date" and/or "late end date" associated with one of the job instances that belongs in that flow. This matters because if a flow's dates are more restrictive than a job's dates, the job inherits the flow's dates.

For example, if a flow's "late end date" is 1/1/2012, and a job's "late end date" is 2/1/2012, the scheduler will use the earlier late end date, 1/1/2012. This is potentially problematic if the job's early start date is 1/15/2012. Under these circumstances, the date inconsistency error would be displayed.

\\psf\Home\Desktop\date inconsistency error.ipp.bmp

The error report specifies the problem job (IP Number and name), the flow instance that the job belongs to, and the relationship problem.

You can open the job in question by double-clicking on that job's line.

There are three options for resolving this error:

Change the job's dates to agree with the flow's dates.

Change the flow's dates to agree with the job's dates.

Move the job to a different flow that will agree better.

Infeasible Unbreakable Jobs

This error indicates that a job cannot break across a shift break, or cannot break across a day break, and the calendars involved are such that there is never a time that these requirements may be met. If a job cannot break across a shift break, it means that it cannot be started on one shift and continued on another. If a job cannot break across a day break, it means that it cannot be started on a shift one day, and continued on a shift another day. In performing the check, the system computes the composite calendars that would be involved, and then sees whether there is ever a shift or day or work that would accommodate the specified requirements.

\\psf\Home\Desktop\unbreakable error.ipp.bmp

The error report specifies the problem job (IP Number and name), the required duration, and the minimum work duration available for that job's needs, based on the composite calendar. If the conflict information involves "longest shift", the problem is with a job that cannot break across shifts; if the conflict information involves "longest day", the problem is with a job that cannot break across days.

You can open the job in question by double-clicking on that job's line.

Shortening the job's duration to that specified in the conflict information (e.g. change job 6's duration to 7 hours, in the example above).

Switching the calendars involved (by reassigning the job calendar, flow calendar, and/or resource calendars - as necessary)

Editing the calendars involved (by editing the calendar specified by the job, flow, and/or resources).

Warnings

Logic warnings are things that may indicate model state problems, and/or may result in conflicts depending on context.

Aurora currently checks for the following warning situations:

Concurrency Overlap Warning

This warning indicates that two or more jobs that may need to occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on clusters of concurrent jobs in combination, because they may need to overlap, and if they do then all of both sets of requirements must be simultaneously satisfiable.

Note that this does not indicate that there will be a problem (unlike the concurrency overlap error); however, if you go ahead and schedule anyway, and there is a conflict involving the specified jobs, you will need to treat it as equivalent to the error case. This check's primary goal is to prepare you for the possibility of conflicts and pre-explain their presence; unfortunately it indicates a situation complicated enough that without scheduling the system cannot readily determine whether the overlap is avoidable.

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.You can open the first job in question by double-clicking on that job's line.

Before attempting to correct the problem, try scheduling and see if there is a conflict. If there is a conflict, you have four options to resolve the problem:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Add a compatibility relationship between the jobs in question (this will only work if the resource involved is a compatibility target).

Remove or soften the constraint enforcing concurrency; this may be a concurrent constraint, a start=start constraint, or a finish=finish constraint.

Non-Milestone Warning

This warning indicates that a job has a duration of 0, even though it is not a milestone and has not been canceled (all active jobs with a duration of 0 should really be milestones).

\\psf\Home\Desktop\non-milestone warning.ipp.bmp

The warning report specifies the problem job (IP Number and name).

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Change the job's active duration to be non-zero.

Set the "job type" property to be "Milestone".

Note that it will not hurt anything to ignore this warning. It merely indicates that some informative properties are not consistent with your schedule model.

Analyze Jobs Behind

Open Delay Estimates

Entering Actuals

Getting actuals ("actual start", "actual end", "job status", etc.) back into Aurora is critical, because without this information Aurora cannot produce an updated priority list.

There are some basic methods for getting actuals into Aurora:

There are two ways to manually enter actuals in Aurora.

Input via the Gantt Chart:

Right click on a task that you wish to edit, then go to the Show Job Properties options. This will open up the Edit Job dialog.

Screen shot 2011-05-03 at 5.13.16 PM.png

You can also get to the Edit Job dialog by scrolling to the task you wish to edit in the Edit Pane, then selecting the Actuals Tab in the Properties pane for the chosen task:

Screen shot 2011-05-03 at 5.15.30 PM.png

In the Edit job dialog that appears, click on the Actuals tab.

Screen shot 2011-05-03 at 5.09.25 PM.png

You then have the options to change the Job Status to different states via the drop down menu:

Screen shot 2011-05-03 at 5.11.35 PM.png

Other available options include:

Actual Start

Actual End

Remaining Duration

As of time

Penetrating China memberships

Actual Start Set

Actual End Set

Percent Complete

Via copy and paste or cross-referenced copy and paste into the Tabular Editor (usually originating from Excel)

Coming soon

Coming soon

Behavior of Actuals

Coming soon

Updating the Schedule

Aurora offers the functionality to edit a project on a job-by-job, or resource-by-resource level, to reflect any unexpected changes or delays to the schedule.

Schedule Distribution

Coming soon

Model/Data Management

Coming soon (note that some sub-topics have been completed)

Intermediate Techniques

This is very much in-progress, but the following topics have been completed (the same list is included in Intermediate Users, Intermediate Procedures, and Intermediate Techniques, to try to make it easier to find):

Refined Modeling Techniques

Coming soon

Moving a Job

There are two primary ways to move a job from one flow to another:

Find the job that you want to move (in the project tree, as shown here, or in one of the graphical displays), and right-click on it.

In the resulting menu, select "Change Control Station...".

Aurora will open a dialog in which you can choose the destination flow (all flows except the job's current flow are listed).

Select the flow that you want, and click "OK".

The job will now show up under the other flow in the project tree, and will use the new flow's dates for any fencing needs.

Go to a "Tabular Editor", or create a new one if you don't have one (or do not want to interfere with the ones that you have available). Configure the columns so that "flow" is included.

Find the target job(s) in the tabular editor, and edit or copy/paste the flow to be the desired destination flow.

If you specify a flow that does not exist in the model, you will receive an error, and the job will not move.

If the flow is known, the job will now show up under the other flow in the project tree, and will use the new flow's dates for any fencing needs.

Capacity Routines

Coming soon

Scheduling Options

"Schedule" menu and selecting "Settings...".

Aurora will open the schedule settings configuration window.

Check the "distribute work" checkbox.

When it is checked, Aurora will perform a post-processing step that attempts to spread work more evenly among possible resources.

The same schedule with work distribution turned on.

resource leveling - leveled usage.ipp.bmp

Resource Level-Loading

By default, Aurora tends to concentrate work in as few resources as possible (allowing the user to readily see how much availability is in the system).

Scheduling results for a string of inter-constrained jobs with identical resource requirements and two satisfying options in default schedule mode.

For certain activities (e.g. creating barcharts), this behavior is not desirable. In those cases you can change the way the model will schedule by going to the "Schedule" menu and selecting "Settings...".

Aurora will open the schedule settings configuration window.

Check the "distribute work" checkbox.

When it is checked, Aurora will perform a post-processing step that attempts to spread work more evenly among possible resources.

The same schedule with resource leveling turned on.

Schedule Settings Configuration

In Aurora, you can specify different parameters, also known as "prioritizers" to modify the algorithm utilized to perform the resource-constrained scheduling. Since resource-constrained scheduling is an NP-hard computational problem there is no algorithm that can guarantee optimal results for real world problems. Aurora includes many advanced techniques to determine more optimal results, but depending on the structure of network model its resource loading, different results may be found by changing the scheduling settings.

Description of the settings shown in this dialog:

Line Late end prioritizer

More to come

defined risk prioritizer

More to come

on hold delay prioritizer

More to come

latest part prioritizer

More to come

latest EPD prioritizer

More to come

subsequent duration prioritizer

More to come

critical path prioritizer

Schedule the project with focus on Critical Path detection

area based prioritizer

More to come

Work Assignments

If it finds errors or warnings, it will report back to the user. If it only finds warnings

The error and warning window shows the problems by category, along with an indication of whether the problem is a warning or an error.

\\psf\Home\Desktop\pre schedule error checking failure.ipp.bmp

Each tab gives details about the jobs involved in the problem to help you resolve the issue.

If you hover over the title of a tab, Aurora will give you a brief explanation of the error as a refresher.

\\psf\Home\Desktop\error mouseover explanation.ipp.bmp

The possible issues are as follows:

Errors

Logic errors are things that would result in inevitable conflicts if Aurora went ahead

and tried to schedule.

The set of error checks is not complete, so there may be times that you schedule

and get unavoidable conflicts. If a particular area comes up frequently, or proves

to be problematic, Stottler Henke adds a new error check for it.

Aurora currently checks for the following errors:

Capacity Violation Error

This error indicates that a job requires more of a resource than is ever available. This may occur in two cases: a single resource requirement (either for a specific resource or a set) requires a greater quantity than is ever available; or if a job has multiple requirements, each of which is satisfiable, but in combination they would require a greater quantity than is ever available.

\\psf\Home\Desktop\capacity error.ipp.bmp

The error report specifies the problem job (IP Number and name), and resource or resource set at issue.

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Concurrency Overlap Error

This error indicates that two or more jobs that must occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on the concurrent jobs in combination, because they are guaranteed to overlap (and so all of both sets of requirements must be simultaneously satisfiable).

Note that there are cases where the overlap may or may not be a problem. This may occur when there are several jobs of different durations that are connected by a series of concurrent constraints. This situation results in a concurrency overlap warning, instead.

\\psf\Home\Desktop\concurrency overlap error.ipp.bmp

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.

You can open the first job in question by double-clicking on that job's line.

To resolve the problem you have four options:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Add a compatibility relationship between the jobs in question (this will only work if the resource involved is a compatibility target).

Remove or soften the constraint enforcing concurrency; this may be a concurrent constraint, a start=start constraint, or a finish=finish constraint.

Dependency Loops

This error indicates that your network of constrained jobs has a loop (e.g. A --> B --> C --> A).

\\psf\Home\Desktop\loop error.ipp.bmp

The easiest way to find the loop is usually via the PERT chart:

Make sure that your PERT includes all jobs.

Click on the "Filter PERT Plot" option at the top of the loop display.

\\psf\Home\Desktop\loop error - filter PERT.ipp.bmp

This will filter your PERT to only include the jobs involved in the loop.

Now click "Arrange PERT Plot" (which should now be enabled) to lay the jobs out so that the loops are obvious

\\psf\Home\Desktop\loop error - arrange PERT.ipp.bmp

Aurora will arrange your filtered PERT to show the loops.

\\psf\Home\Desktop\arranged loop.ipp.bmp

Once you have resolved the loop (deleted one or more constraints), toggle "Filter PERT Plot" again to remove the filter (otherwise the filter will stay on your conditional appearances even after the loop window has closed).

\\psf\Home\Desktop\loop error - unfilter PERT.ipp.bmp

Duration Error

This error indicates that a job's duration has not been set. Note that for scheduling only the "active duration" matters, so that is the only thing that needs to be set (but it must be set).

\\psf\Home\Desktop\unset duration error.ipp.bmp

The error report specifies the problem job (IP Number and name), and the duration problem.

You can open the job in question by double-clicking on that job's line.

Set the "active duration" in either the "Duration Info" tab or the "Scheduling Attributes" tab (it is the same property, although it is easier to locate in the "Duration Info" tab).

Flow Date/Job Date Inconsistency Error

This error indicates that the "early start date" and/or "late end date" associated with one of the flow instances is incompatible with the "early start date" and/or "late end date" associated with one of the job instances that belongs in that flow. This matters because if a flow's dates are more restrictive than a job's dates, the job inherits the flow's dates.

For example, if a flow's "late end date" is 1/1/2012, and a job's "late end date" is 2/1/2012, the scheduler will use the earlier late end date, 1/1/2012. This is potentially problematic if the job's early start date is 1/15/2012. Under these circumstances, the date inconsistency error would be displayed.

\\psf\Home\Desktop\date inconsistency error.ipp.bmp

The error report specifies the problem job (IP Number and name), the flow instance that the job belongs to, and the relationship problem.

You can open the job in question by double-clicking on that job's line.

There are three options for resolving this error:

Change the job's dates to agree with the flow's dates.

Change the flow's dates to agree with the job's dates.

Move the job to a different flow that will agree better.

Infeasible Unbreakable Jobs

This error indicates that a job cannot break across a shift break, or cannot break across a day break, and the calendars involved are such that there is never a time that these requirements may be met. If a job cannot break across a shift break, it means that it cannot be started on one shift and continued on another. If a job cannot break across a day break, it means that it cannot be started on a shift one day, and continued on a shift another day. In performing the check, the system computes the composite calendars that would be involved, and then sees whether there is ever a shift or day or work that would accommodate the specified requirements.

\\psf\Home\Desktop\unbreakable error.ipp.bmp

The error report specifies the problem job (IP Number and name), the required duration, and the minimum work duration available for that job's needs, based on the composite calendar. If the conflict information involves "longest shift", the problem is with a job that cannot break across shifts; if the conflict information involves "longest day", the problem is with a job that cannot break across days.

You can open the job in question by double-clicking on that job's line.

Shortening the job's duration to that specified in the conflict information (e.g. change job 6's duration to 7 hours, in the example above).

Switching the calendars involved (by reassigning the job calendar, flow calendar, and/or resource calendars - as necessary)

Editing the calendars involved (by editing the calendar specified by the job, flow, and/or resources).

Warnings

Logic warnings are things that may indicate model state problems, and/or may result in conflicts depending on context.

Aurora currently checks for the following warning situations:

Concurrency Overlap Warning

This warning indicates that two or more jobs that may need to occur concurrently have resource requirements that would in combination be too great for the resources' capacity, and are not compatible on those requirements. It basically runs the capacity violation error check on clusters of concurrent jobs in combination, because they may need to overlap, and if they do then all of both sets of requirements must be simultaneously satisfiable.

Note that this does not indicate that there will be a problem (unlike the concurrency overlap error); however, if you go ahead and schedule anyway, and there is a conflict involving the specified jobs, you will need to treat it as equivalent to the error case. This check's primary goal is to prepare you for the possibility of conflicts and pre-explain their presence; unfortunately it indicates a situation complicated enough that without scheduling the system cannot readily determine whether the overlap is avoidable.

The error report specifies the problem jobs (IP Number and name), and resource or resource set at issue.You can open the first job in question by double-clicking on that job's line.

Before attempting to correct the problem, try scheduling and see if there is a conflict. If there is a conflict, you have four options to resolve the problem:

Increase the resource's capacity (either globally by using quantity, or for a specific time frame by using capacity routines).

Decrease the quantity required by the resource requirement.

Add a compatibility relationship between the jobs in question (this will only work if the resource involved is a compatibility target).

Remove or soften the constraint enforcing concurrency; this may be a concurrent constraint, a start=start constraint, or a finish=finish constraint.

Non-Milestone Warning

This warning indicates that a job has a duration of 0, even though it is not a milestone and has not been canceled (all active jobs with a duration of 0 should really be milestones).

\\psf\Home\Desktop\non-milestone warning.ipp.bmp

The warning report specifies the problem job (IP Number and name).

You can open the job in question by double-clicking on that job's line.

To resolve the problem you have two options:

Change the job's active duration to be non-zero.

Set the "job type" property to be "Milestone".

Note that it will not hurt anything to ignore this warning. It merely indicates that some informative properties are not consistent with your schedule model.

Managing Work Assignments

To access the work assignment management utility, go to the "Utilities" menu and select "Work Assignments...".

Aurora will open the work assignment editor. From here you can:

To create a work assignment, click the "Add" button at the bottom of the work assignment editor.

Aurora will create a new work assignment, and pop open the detailed work assignment editor.

Enter an indicative label, and select the resources to which you want this to apply by clicking on the "Select" button.

Aurora will open a dialog showing all resources and resources sets.

You can select multiple resources and sets by holding down Control (for specific selection) or Shift (for a range selection) before clicking subsequent resources.

When your selections are complete, click "OK".

You are now ready to specify the time range for this work assignment. You have three basic options: "One Time", "Every Day", and "Selected Days".

By default, the "Every Day" tab is selected. This is where you want to be for things like crew meetings; it will add a work assignment for every work day (so if you're on a 5 day schedule, and want the work assignment to be 5 days per week, this will do the trick).

In the detailed work assignment editor, go to the "One Time" tab.

Here you can enter the time-range for the work assignment, and the day on which the work assignment should occur.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Every Day" tab (you should already be there if this is a new work assignment).

Here you can enter the time-range during which this work assignment should occur each day, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Selected Days" tab.

Here you can enter the time-range during which this work assignment should occur each day, on which days it should occur, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

Note that regardless of which range seems most appropriate, the tabs are independent, so you can't start entering data in one tab, and switch to another tab and have the information propagate.

In general, it is safest to edit work assignments from within the work assignment utility; that is what is covered below. However, in some cases you may want to do something with work assignments that the utility cannot handle. In that case you can manually edit work assignments.

To edit a work assignment, select the work assignment that you want to edit and click the "Edit" button at the bottom of the work assignment editor.

Aurora will open the detailed work assignment editor, going to the tab that matches the current properties the best and initializing the display appropriately.

Warning: if you have manually edited the work assignment calendar, some types of edits (e.g. adding another shift) will not survive another pass through the detailed work assignment editor, because the editor cannot model those changes. When you click "OK" after editing, Aurora sends edits based on what is currently in the detailed work assignment editor, and if it cannot model the previous calendar change it will effectively overwrite the change. If you make such manual modifications to the calendar, it is a good idea to note as much in the work assignment's name.

Within the detailed work assignment editor, you can change the work assignment name, the resource selections, and any of the time-frame specifics in the tabs at the bottom (including changing the type of work assignment set-up, by switching tabs and making edits as appropriate).

In the detailed work assignment editor, go to the "One Time" tab.

Here you can enter the time-range for the work assignment, and the day on which the work assignment should occur.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Every Day" tab (you should already be there if this is a new work assignment).

Here you can enter the time-range during which this work assignment should occur each day, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

In the detailed work assignment editor, go to the "Selected Days" tab.

Here you can enter the time-range during which this work assignment should occur each day, on which days it should occur, and the time range during which you want this work assignment to go on. Note that you can set the dates here, but if your goal is simply to keep the bounds roughly the same as the rest of your project, you can ignore the dates here and instead set the dates associated with the work assignment flow.

Once you hit "OK", the text in the work assignment editor will update appropriately.

To delete a work assignment, select the work assignment that you want to edit and click the "Remove" button at the bottom of the work assignment editor.

Aurora will remove the work assignment.

Note that you can also manually delete a work assignment in the "Projects" tab, just as you would a regular job. The disadvantage of this is that it may leave remnants (e.g. the work assignment's calendar).

Baselining the Schedule

Before creating a CCPM schedule, you can use baseline the schedule to create a snapshot, which can be used to compare with the newly generated CCPM schedule. Baselining cache all the information about where things are currently scheduled, for later reference. To do so, go to the Utilities menu, and choose Baseline Schedule:

This will fill the baseline start date and baseline end date boxes with date currently in your project:

Later in the Gantt display, you can use the function Compare Current Schedule with a Snapshot to compare the Baseline against the schedule in its current state:

Screen shot 2011-04-28 at 2.16.13 PM.png

Mass Job Removal

Coming soon

Refined Display Access

Coming soon (note that some sub-topics have been completed)

Viewing Resource Plots with Resource Groups

Coming soon

Display Markup

Coming soon

Display Configuration

Coming soon

Conditional Appearance Configuration

All of the graphical displays (PERT, Gantt, resource plots) allow you to configure the appearance of the jobs. Default configurations are set from the plot configuration panel, but the Style and Filtration configuration offers much broader criteria-based appearance control.

Note that this conditional appearance information is independent from one display to another, although they can be saved for re-use across displays.

To open the Style and Filtration editor, click on the toolbar button with a painter's palette on it. It is in the same location (near the left side in the "Configuration" section) on all displays.

criteria editor trigger button.ipp.bmp

Aurora will open the Style and Filtration editor.

basic criteria editor.bmp

From this editor you can view, edit, add, and remove appearance criteria.

When the dialog first opens, by default it will take you to the "Combined" tab, which shows you all of the criteria that have been defined.

If you are primarily interested in a certain type of appearance (e.g. fill color), or want to add a new criteria for that type, it is usually easiest to go to the corresponding tab (e.g. Fill or Border).

This allows you to readily see all of the criteria that will be directly interacting with each other, and will allow Aurora to pre-set some of the information if you create a new rule.

The basic methodology for dealing with the various kinds of criteria is the same: define the desired style/appearance, and define the filter for which jobs should have that appearance.

The style/appearance options will be covered separately for each appearance type.

hmtoggle_plus1.gif Adding a Rule

Adding a new appearance rule will be simplest and most effective if you go to the appropriate tab (e.g. Include/Exclude, Fill, etc.), because Aurora will automatically set and limit the options appropriately. This example will show the process for adding a fill color rule, but the basic process is the same. The type-specific options are addressed in the specific rule categories.

First, go to the tab of the desired rule category:

rule type tabs.ipp.bmp

All of the existing rules that meet the specified type category will display on the left side. If there aren't any existing rules of that category, the left side will be blank.

fill window.bmp

Select the plus button.bmp button that is beneath the list of existing rules, in the lower left corner of the display.

Aurora will create and select a new rule.

new rule.ipp.bmp

Enter a descriptive name for the new rule. This is optional, but helpful for later reference. If you do not enter a name, Aurora will automatically generate one based on the criteria.

Once you have entered a name, configure the desired appearance in the upper right side of the dialog.

hmtoggle_plus1.gif Adding an Untargeted Rule

If you are in the "Combined" tab when you add a rule, either by creating a new rule or adding an appearance rule to an existing appearance configuration, you must define all of the rule details.

When the rule is first added, it doesn't know what kind of rule it is:

blank rule definition.bmp

The first step is to select the desired rule type from the drop-down:

rule type options.ipp.bmp

Depending on which rule type you select, there will often but not always be follow-up configuration options (e.g. selecting a color, etc.). These options will be the same as the options you get when creating a rule from a specific rule category tab.

The actual details will vary based on the type of rule. For "Fill", for example, you can select Fill Color or Fill Pattern, and then specify what the desired color or pattern should be.

new rule configuration.ipp.bmp

The last step is to enter the desired criteria. Any jobs that meet the specified criteria will use the specified appearance (unless an earlier rule in the same category also matches; interaction details are discussed in the specific type sections).

A filter defines a desired property/relation/value trio. Any job for which the specified property has the specified relation with the specified value will be considered a match.

The first step of defining a filter is to define the desired property.

property selection.ipp.bmp

Once you specify the desired property, the middle box will populate with acceptable relationships.

relation selection.ipp.bmp

Most of the relations are fairly self explanatory, but there are some complex relations.

Having defined the desired relation, you can specify the target value. In most cases you will enter the target value via the dropdown/text entry field on the right side. Complex relations are the primary exception to this.

The dropdown will be populated by possible values based on the file's contents.

value selection.ipp.bmp

You can select one of the listed values, or you can type something in the text field box. If you want an exact relationship, it is usually appropriate to select something from the list. However, if you want a more refined relationship (e.g. "starts with" for a text property), typing something will often make sense.

manual entry.ipp.bmp

Whether you select or manually enter a value, Aurora will add a notation to the right of the filter definition indicating how many matches there are in the file.

In many cases, a single filter (e.g. "name contains Test") is insufficient, because you are actually interested in a specific combination of conditions.

You can build a composite filter out of multiple simple filters to capture these more complex conditions.

For more detailed information on filters, please see Filter Definition.

hmtoggle_plus1.gif Removing a Rule

Select the desired rule, and select the minus button.bmp button on the lower left, below the rule list.

delete rule.ipp.bmp

Aurora will delete the selected rule.

hmtoggle_plus1.gif Editing a Rule

After an appearance rule has been created, you can go back and change it at any time. You may augment it, edit the rule properties, and/or edit the filter condition.

Editing the rule properties will not impact the filter condition, and vice versa.

If you edit the condition, you can add conditions without impacting the existing filters; you can change the target value; you can change the relation; or you can change the property (this last is equivalent to deleting a condition and starting a new one - it will wipe out the selected relation and the target property value).

hmtoggle_plus1.gif Augmenting a Rule

You may augment an existing appearance rule by adding another appearance aspect to it.

To do this you will need to work in the "Combined" tab (because otherwise the logic that simplifies the rule display will prevent you from adding a complementary rule.

Select the target rule, and select the add rule type button.bmp button at the bottom of the list of existing rules.

Aurora will add a new rule section. You must configure it before it will do anything.

When the rule is first added, it doesn't know what kind of rule it is:

blank rule definition.bmp

The first step is to select the desired rule type from the drop-down:

rule type options.ipp.bmp

Depending on which rule type you select, there will often but not always be follow-up configuration options (e.g. selecting a color, etc.). These options will be the same as the options you get when creating a rule from a specific rule category tab.

The different sub-tabs reflect categories of rules that interact. They are designed to easily view and add certain types of rules.

Note that you can also access the specific sub-categories from the "Combined" tab. This is primarily useful for augmenting an existing rule. Creating a new rule is easier from the correct sub-tab, because Aurora will automatically limit the relevant options.

hmtoggle_plus1.gif Include/Exclude

The rules that dictate what should be included in the display are managed by the "Include/Exclude" tab.

hmtoggle_plus1.gif Include/Exclude Rule Logic

If there are no rules dictating inclusion or exclusion, Aurora assumes that all jobs should be included.

If there is one or more inclusion rule, Aurora will only include jobs that match that rule or rules.

If there is one or more exclusion rule, Aurora will only include jobs that do not match that rule or rules.

If there are both inclusion and exclusion rules, Aurora evaluates the rules in order, but does not cross reference them. If you have an inclusion rule followed by an exclusion rule, if a job matches both the inclusion rule and the exclusion rule, it will be included still (because the inclusion rule is first).

Note that this is somewhat different than logical intuition would dictate.

To attain the logical inclusion/exclusion cross-reference effect, you must instead manipulate the condition itself.

Suppose that you have jobs A1, A2, A3, B1, B2, and B3.

If you want to include all A jobs except for A2, you could not define "include A jobs, exclude jobs with 2". You could, however, define the condition as "match all of name startswith A and name does not contain 2". For more information, please see Complex Filter Relations.

hmtoggle_plus1.gif Defining an Include/Exclude Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Include/Exclude tab:

At the top of the new rule, select "Include" or "Exclude" ("Include" is selected by default).

If you are creating the rule from the Combined tab:

Select "inclusion" or "exclusion" from the Rule Type dropdown.

Enter the desired filter condition.

hmtoggle_plus1.gif Fill Rule Tab

The rules that dictate the fill content of the job objects are managed by the "Fill" tab.

hmtoggle_plus1.gif Fill Rule Logic

If there are no rules dictating fill, Aurora uses the default fill color (defined in Plot Configurations) for all jobs.

If there is one or more fill color rule, Aurora will use the fill color of the first matching rule.

If there is one or more fill pattern rule, Aurora will use the fill pattern of the first matching rule.

If there are both fill color and fill pattern rules, Aurora will take the first match for each fill type for each job.

For example, if you have jobs A1, A2, A3, B1, B2, and B3, and define a red fill color for all jobs with a name that starts with A, and a striped fill pattern for all jobs with a name that contains 2, then all of the A jobs would be red, all of the B jobs would be the default color, and A2 and B2 would have stripes (so A2 would be both red and striped).

hmtoggle_plus1.gif Defining a Fill Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Fill tab:

At the top of the new rule, select "Fill Color" or "Fill Pattern" from the dropdown ("Fill Color" is selected by default).

If you are creating the rule from the Combined tab:

Select "fill color" or "fill pattern" from the Rule Type dropdown.

Hit the Select button, and specify the desired color or pattern.

Enter the desired filter condition.

hmtoggle_plus1.gif Tags Rule Tab

Enter topic text here.

hmtoggle_plus1.gif Border Rule Tab

Enter topic text here.

hmtoggle_plus1.gif Font Rule Tab

Enter topic text here.

hmtoggle_plus1.gif Other Rules

Enter topic text here.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Adding an Appearance Rule

Adding a new appearance rule will be simplest and most effective if you go to the appropriate tab (e.g. Include/Exclude, Fill, etc.), because Aurora will automatically set and limit the options appropriately. This example will show the process for adding a fill color rule, but the basic process is the same. The type-specific options are addressed in the specific rule categories.

First, go to the tab of the desired rule category:

rule type tabs.ipp.bmp

All of the existing rules that meet the specified type category will display on the left side. If there aren't any existing rules of that category, the left side will be blank.

fill window.bmp

Select the plus button.bmp button that is beneath the list of existing rules, in the lower left corner of the display.

Aurora will create and select a new rule.

new rule.ipp.bmp

Enter a descriptive name for the new rule. This is optional, but helpful for later reference. If you do not enter a name, Aurora will automatically generate one based on the criteria.

Once you have entered a name, configure the desired appearance in the upper right side of the dialog.

hmtoggle_plus1.gif Adding an Untargeted Rule

If you are in the "Combined" tab when you add a rule, either by creating a new rule or adding an appearance rule to an existing appearance configuration, you must define all of the rule details.

When the rule is first added, it doesn't know what kind of rule it is:

blank rule definition.bmp

The first step is to select the desired rule type from the drop-down:

rule type options.ipp.bmp

Depending on which rule type you select, there will often but not always be follow-up configuration options (e.g. selecting a color, etc.). These options will be the same as the options you get when creating a rule from a specific rule category tab.

The actual details will vary based on the type of rule. For "Fill", for example, you can select Fill Color or Fill Pattern, and then specify what the desired color or pattern should be.

new rule configuration.ipp.bmp

The last step is to enter the desired criteria. Any jobs that meet the specified criteria will use the specified appearance (unless an earlier rule in the same category also matches; interaction details are discussed in the specific type sections).

A filter defines a desired property/relation/value trio. Any job for which the specified property has the specified relation with the specified value will be considered a match.

The first step of defining a filter is to define the desired property.

property selection.ipp.bmp

Once you specify the desired property, the middle box will populate with acceptable relationships.

relation selection.ipp.bmp

Most of the relations are fairly self explanatory, but there are some complex relations.

Having defined the desired relation, you can specify the target value. In most cases you will enter the target value via the dropdown/text entry field on the right side. Complex relations are the primary exception to this.

The dropdown will be populated by possible values based on the file's contents.

value selection.ipp.bmp

You can select one of the listed values, or you can type something in the text field box. If you want an exact relationship, it is usually appropriate to select something from the list. However, if you want a more refined relationship (e.g. "starts with" for a text property), typing something will often make sense.

manual entry.ipp.bmp

Whether you select or manually enter a value, Aurora will add a notation to the right of the filter definition indicating how many matches there are in the file.

In many cases, a single filter (e.g. "name contains Test") is insufficient, because you are actually interested in a specific combination of conditions.

You can build a composite filter out of multiple simple filters to capture these more complex conditions.

For more detailed information on filters, please see Filter Definition.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Adding an Untargeted Rule

When the rule is first added, it doesn't know what kind of rule it is:

blank rule definition.bmp

The first step is to select the desired rule type from the drop-down:

rule type options.ipp.bmp

Depending on which rule type you select, there will often but not always be follow-up configuration options (e.g. selecting a color, etc.). These options will be the same as the options you get when creating a rule from a specific rule category tab.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Removing an Appearance Rule

Select the desired rule, and select the minus button.bmp button on the lower left, below the rule list.

delete rule.ipp.bmp

Aurora will delete the selected rule.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Editing an Appearance Rule

After an appearance rule has been created, you can go back and change it at any time. You may augment it, edit the rule properties, and/or edit the filter condition.

Editing the rule properties will not impact the filter condition, and vice versa.

If you edit the condition, you can add conditions without impacting the existing filters; you can change the target value; you can change the relation; or you can change the property (this last is equivalent to deleting a condition and starting a new one - it will wipe out the selected relation and the target property value).

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Augmenting an Appearance Rule

You may augment an existing appearance rule by adding another appearance aspect to it.

To do this you will need to work in the "Combined" tab (because otherwise the logic that simplifies the rule display will prevent you from adding a complementary rule.

Select the target rule, and select the add rule type button.bmp button at the bottom of the list of existing rules.

Aurora will add a new rule section. You must configure it before it will do anything.

When the rule is first added, it doesn't know what kind of rule it is:

blank rule definition.bmp

The first step is to select the desired rule type from the drop-down:

rule type options.ipp.bmp

Depending on which rule type you select, there will often but not always be follow-up configuration options (e.g. selecting a color, etc.). These options will be the same as the options you get when creating a rule from a specific rule category tab.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Appearance Rule Types

There are several types of rules, organized into tabs for easier management:

inclusion

exclusion

tag

fill color

fill pattern

border color

border width

text color

font

rounded box

desaturate

darken

brighten

All of them are available from the "Combined" tab, but in most cases it will be easier to create rules if you go to the requisite sub-tab (since Aurora can automatically configure some of the choices, and limit the options for others).

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Include/Exclude Rule Tab

The rules that dictate what should be included in the display are managed by the "Include/Exclude" tab.

hmtoggle_plus1.gif Include/Exclude Rule Logic

If there are no rules dictating inclusion or exclusion, Aurora assumes that all jobs should be included.

If there is one or more inclusion rule, Aurora will only include jobs that match that rule or rules.

If there is one or more exclusion rule, Aurora will only include jobs that do not match that rule or rules.

If there are both inclusion and exclusion rules, Aurora evaluates the rules in order, but does not cross reference them. If you have an inclusion rule followed by an exclusion rule, if a job matches both the inclusion rule and the exclusion rule, it will be included still (because the inclusion rule is first).

Note that this is somewhat different than logical intuition would dictate.

To attain the logical inclusion/exclusion cross-reference effect, you must instead manipulate the condition itself.

Suppose that you have jobs A1, A2, A3, B1, B2, and B3.

If you want to include all A jobs except for A2, you could not define "include A jobs, exclude jobs with 2". You could, however, define the condition as "match all of name startswith A and name does not contain 2". For more information, please see Complex Filter Relations.

hmtoggle_plus1.gif Defining an Include/Exclude Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Include/Exclude tab:

At the top of the new rule, select "Include" or "Exclude" ("Include" is selected by default).

If you are creating the rule from the Combined tab:

Select "inclusion" or "exclusion" from the Rule Type dropdown.

Enter the desired filter condition.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Include Appearance Rule

Inclusion rules dictate the jobs that should be included in the display.

hmtoggle_plus1.gif Logic

If there are no rules dictating inclusion or exclusion, Aurora assumes that all jobs should be included.

If there is one or more inclusion rule, Aurora will only include jobs that match that rule or rules.

If there are both inclusion and exclusion rules, Aurora evaluates the rules in order, but does not cross reference them. If you have an inclusion rule followed by an exclusion rule, if a job matches both the inclusion rule and the exclusion rule, it will be included still (because the inclusion rule is first).

Note that this is somewhat different than logical intuition would dictate.

To attain the logical inclusion/exclusion cross-reference effect, you must instead manipulate the condition itself.

Suppose that you have jobs A1, A2, A3, B1, B2, and B3.

If you want to include all A jobs except for A2, you could not define "include A jobs, exclude jobs with 2". You could, however, define the condition as "match all of name startswith A and name does not contain 2". For more information, please see Complex Filter Relations.

hmtoggle_plus1.gif Defining an Inclusion Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Include/Exclude tab:

Do nothing ("Include" is selected by default).

If you are creating the rule from the Combined tab:

Select "inclusion" from the Rule Type dropdown.

Enter the desired filter condition.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Exclude Appearance Rule

Exclusion rules dictate the jobs that should not be included in the display.

hmtoggle_plus1.gif Logic

If there are no rules dictating inclusion or exclusion, Aurora assumes that all jobs should be included.

If there is one or more exclusion rule, Aurora will only include jobs that do not match that rule or rules.

If there are both inclusion and exclusion rules, Aurora evaluates the rules in order, but does not cross reference them. If you have an inclusion rule followed by an exclusion rule, if a job matches both the inclusion rule and the exclusion rule, it will be included still (because the inclusion rule is first).

Note that this is somewhat different than logical intuition would dictate.

To attain the logical inclusion/exclusion cross-reference effect, you must instead manipulate the condition itself.

Suppose that you have jobs A1, A2, A3, B1, B2, and B3.

If you want to include all A jobs except for A2, you could not define "include A jobs, exclude jobs with 2". You could, however, define the condition as "match all of name startswith A and name does not contain 2". For more information, please see Complex Filter Relations.

hmtoggle_plus1.gif Defining an Exclusion Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Include/Exclude tab:

Toggle the Include/Exclude options at the top of the rule from "Include" (the default) to "Exclude".

If you are creating the rule from the Combined tab:

Select "exclusion" from the Rule Type dropdown.

Enter the desired filter condition.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Mixed Inclusion/Exclusion Logic

If there are both inclusion and exclusion rules, Aurora evaluates the rules in order, but does not cross reference them. If you have an inclusion rule followed by an exclusion rule, if a job matches both the inclusion rule and the exclusion rule, it will be included still (because the inclusion rule is first).

Note that this is somewhat different than logical intuition would dictate.

To attain the logical inclusion/exclusion cross-reference effect, you must instead manipulate the condition itself.

Suppose that you have jobs A1, A2, A3, B1, B2, and B3.

If you want to include all A jobs except for A2, you could not define "include A jobs, exclude jobs with 2". You could, however, define the condition as "match all of name startswith A and name does not contain 2". For more information, please see Complex Filter Relations.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Fill Rule Tab

The rules that dictate the fill content of the job objects are managed by the "Fill" tab.

hmtoggle_plus1.gif Fill Rule Logic

If there are no rules dictating fill, Aurora uses the default fill color (defined in Plot Configurations) for all jobs.

If there is one or more fill color rule, Aurora will use the fill color of the first matching rule.

If there is one or more fill pattern rule, Aurora will use the fill pattern of the first matching rule.

If there are both fill color and fill pattern rules, Aurora will take the first match for each fill type for each job.

For example, if you have jobs A1, A2, A3, B1, B2, and B3, and define a red fill color for all jobs with a name that starts with A, and a striped fill pattern for all jobs with a name that contains 2, then all of the A jobs would be red, all of the B jobs would be the default color, and A2 and B2 would have stripes (so A2 would be both red and striped).

hmtoggle_plus1.gif Defining a Fill Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Fill tab:

At the top of the new rule, select "Fill Color" or "Fill Pattern" from the dropdown ("Fill Color" is selected by default).

If you are creating the rule from the Combined tab:

Select "fill color" or "fill pattern" from the Rule Type dropdown.

Hit the Select button, and specify the desired color or pattern.

Enter the desired filter condition.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Fill Color Appearance Rule

Fill color rules dictate the fill for jobs displayed in the plot. The default fill color is dictated by the Plot Configurations.

hmtoggle_plus1.gif Logic

If there are no rules dictating fill, Aurora uses the default fill color (defined in Plot Configurations) for all jobs.

If there is one or more fill color rule, Aurora will use the fill color of the first matching rule.

If there are both fill color and fill pattern rules, Aurora will take the first match for each fill type for each job.

For example, if you have jobs A1, A2, A3, B1, B2, and B3, and define a red fill color for all jobs with a name that starts with A, and a striped fill pattern for all jobs with a name that contains 2, then all of the A jobs would be red, all of the B jobs would be the default color, and A2 and B2 would have stripes (so A2 would be both red and striped).

hmtoggle_plus1.gif Defining a Fill Color Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Fill tab:

Do nothing ("Fill Color" is selected by default).

If you are creating the rule from the Combined tab:

Select "fill color" from the Rule Type dropdown.

Hit the Select button, and specify the desired color.

Enter the desired filter condition.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Fill Pattern Appearance Rule

Fill pattern rules dictate whether jobs displayed in the plot have any internal patterning. By default they do not.

hmtoggle_plus1.gif Logic

If there is one or more fill pattern rule, Aurora will use the fill pattern of the first matching rule.

If there are both fill color and fill pattern rules, Aurora will take the first match for each fill type for each job.

For example, if you have jobs A1, A2, A3, B1, B2, and B3, and define a red fill color for all jobs with a name that starts with A, and a striped fill pattern for all jobs with a name that contains 2, then all of the A jobs would be red, all of the B jobs would be the default color, and A2 and B2 would have stripes (so A2 would be both red and striped).

hmtoggle_plus1.gif Defining a Fill Pattern Rule

Hit the plus button.bmp button in the lower left to add a rule, and enter a rule name/description (if desired).

If you are creating the rule from the Fill tab:

At the top of the new rule, select "Fill Pattern" from the dropdown ("Fill Color" is selected by default).

If you are creating the rule from the Combined tab:

Select "fill pattern" from the Rule Type dropdown.

Hit the Select button, and specify the desired pattern.

Enter the desired filter condition.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Mixed Color/Pattern Logic

If there are both fill color and fill pattern rules, Aurora will take the first match for each fill type for each job.

For example, if you have jobs A1, A2, A3, B1, B2, and B3, and define a red fill color for all jobs with a name that starts with A, and a striped fill pattern for all jobs with a name that contains 2, then all of the A jobs would be red, all of the B jobs would be the default color, and A2 and B2 would have stripes (so A2 would be both red and striped).

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Tags Rule Tab

Enter topic text here.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Border Rule Tab

Enter topic text here.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Font Rule Tab

Enter topic text here.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Other Rule Types

Enter topic text here.

This help file was created with an unregistered evaluation copy of Help & Manual. © EC Software. All rights reserved. This message will not appear if you compile this help file with the registered version of Help & Manual.

Label Configuration

All of the graphical displays (PERT, Gantt, resource plots) allow you to configure the labels used on the jobs. Note that the labeling is independent from one display to another, although they can be saved for re-use across displays.

To open the label editor, click on the toolbar button with an L on it. It is in the same location (near the left side) on all displays.

Aurora will open the label manager.

The default primary label ("Primary Key Fn") will show whatever view method has been selected via the View menu, "Job Display Basis" item.

Within the label configuration manager, you can:

Resize/Move a Label

To move a label, click and hold your left mouse button anywhere in the blue area of the label, and then drag it to the new desired location.

This figure shows the "Primary Key Fn" label has been moved from its original location.

Screen shot 2011-04-29 at 11.35.49 AM.png

To resize a label, click and drag the bright blue corner area. This provides the ability to modify the width and height of the blue rectangle that contains the label.

In this screen, the label's width was resized by dragging on the blue corner of the rectangle.

Remember, the gray outline in the canvas, represents where the actual task/element is in your chart. In the case of the Gantt chart, the default label configuration displays labels on the OUTSIDE border of the task element, as shown in the figure below (you can customize to display the text anywhere in or outside the task display):

Screen shot 2011-04-29 at 4.54.27 PM.png

Edit a Label

To edit the text displayed by the label, select the label, and then edit the settings below:

Screen shot 2011-04-29 at 1.25.54 PM.png

Label Functions (Content)

You can choose different functions to display in the label. This is done by selecting the options available in the drop down bar, such as:

  • Task Name

  • IP Number

  • duration

  • Custom (labels based on any properties associated with the activities)

Screen shot 2011-04-29 at 1.31.33 PM.png

"Custom..." brings up another dropdown box that allows you to select a target property:

Screen shot 2011-04-29 at 1.32.19 PM.png

Label Sizing

You can edit the size and font of a label. Clicking on the Screen shot 2011-04-29 at 1.33.29 PM.png button next to the function dropdown will

open a dialog box allowing you to specify font information.

label sizing.bmp

In many cases some labels are more important than others, but you would like to show as much

information as possible. In such a situation you can set both a regular font size (at the top of the dialog)

and a minimum font size (the number next to the "Shrink to size" checkbox).

If there is enough room, Aurora will show all labels at the regular font size. However, if space is

somewhat short, Aurora will shrink some of the labels based on the minimum size information, in an effort

to show as much information as possible.

An example of the resize's effect is shown below. The box at the left uses the preferred font sizes (12 for

the IP number, 11 for everything else). The box at right uses the minimum font sizes (12 for the IP

number, 9 for everything else). The actual configuration was not changed between the two screenshots -

the PERT was simply resized.

label example - preferred sizes.bmplabel example - minimum sizes.bmp

Multi-Line Labels

The Lines option lets you add additional lines of text within a label.

Screen shot 2011-04-29 at 1.35.49 PM.png

Using this functionality you can display multiple lines of information in a single label, where each line

contains a different type of information.

3-line label definition.bmp

This will result in:

3-line label result.bmp

Note that you can get a similar but effect by defining the functions in separate labels, but the behavior is

somewhat different in terms of label distribution and information display in smaller boxes.

The following label definition (the same basic definition across multiple labels)

3 sep label definition.bmp

will give this result:

3 sep label result.bmp

Each approach has advantages and disadvantages, depending on intent. If you use a multi-line label, the

later lines are more likely to get cut off, but the earlier lines will be intact, even if they have more content

than usual (note the IP number for CA185... in the two examples).

However, if you definitely want information included on a box, giving it a separate label is the best way to insure its presence.

Defining labels separately also allows you to set the alignment and wrapping policies independently. Although multi-line labels allow you to define multiple functions and fonts, the alignment and wrapping policy must be consistent for everything included in the label.

Label Alignment

You can control the alignment (positioning of the label within the label definition box) using the alignment control towards the bottom of the label definitions.

Screen shot 2011-04-29 at 4.38.14 PM.png

In the image below, you can see that the text is positioned at Left/Middle:

Screen shot 2011-04-29 at 4.39.26 PM.png

Label Wrapping

You can specify the wrapping policy for each label. The way wrapping works varies somewhat between internal labels (which are defined to be within an activity's box), and external labels (which are defined to be outside of an activity's box, and are primarily used in the Gantt Chart).

Internal Label Wrapping

Internal labels wrap automatically. If you select an internal label, the "wrapping" property is disabled.

The default wrapping policy will wrap a property value if necessary to make it fit. If the property is too long to display in wrapped form in the defined label rectangle, Aurora will check to see whether a smaller minimum size is associated with the label function, and if so will shrink the property value in an attempt to fit more information. See Setting a Label's Size.

External Label Wrapping

External labels (labels that are completely outside the job box) have additional text-wrapping properties

external label wrapping.ipp.bmp

If the label overlaps the job box at all, the "Wrapping" property will be grayed out and the default auto-wrap will be in force.

There are three wrapping options:

None - the label will just keep going until it falls off the screen

Percentage - the label's wrap-width will be based on a percentage of the job's width on the display. If you

select this, you will also need to enter the desired percentage in the second box (e.g. enter 50 to indicate

50%, half the job's width).

Fixed - the label's wrap-width will be based on a set number of pixels, regardless of zoom level or job

width. If you select this, you will also need to enter the desired number of pixels in the second box (ideal

values will vary depending on your display, but 50 will tend to result in a wrap area between half an inch

and an inch wide).

Label Tooltip

In addition to the labels, which are always visible, you can also specify a tooltip which will show when you hover your mouse over an element on the plot. Although you can specify a number of labels, you can only specify one tooltip to be displayed with an element.

Select a label (note that this should not be necessary, and will be changed at some point), and then specify which tooltip you would like to use at the bottom of the label definition screen.

Screen shot 2011-04-29 at 4.41.17 PM.png

The selected information will then display on mouseover in a small pop-up label. In this example the tooltip has been configured to show resource assignments:

label tooltip.ipp.bmp

External Label Properties

In addition to the regular label properties, external labels (labels that are completely outside the job box) have additional text-wrapping properties.

If the label overlaps the job box at all, the "Wrapping" property will be grayed out.

There are three wrapping options:

Create a Label

To create a new label, in the Label Configuration dialog, click the Create button to make sure it's highlighted:

Screen shot 2011-04-29 at 4.44.48 PM.png

Now that Create is highlighted, move your mouse anywhere over the canvas, click then drag your mouse to create a square/rectangular shape as desired:

Screen shot 2011-04-29 at 4.45.31 PM.png

Once a shape is draw, click on the Edit button again. Now you can move the shape around, resize it, and edit the different display settings as shown in the Resize/Move a Label section.

Screen shot 2011-04-29 at 4.48.43 PM.png

Delete a Label

To delete a label, click on the label that you wish to delete and make sure that it's highlighted:

Screen shot 2011-04-29 at 4.49.48 PM.png

Then click on the Remove button to delete the label.

Save a Label Configuration

You can save a label configuration for later use.

To save a label configuration, click on the disk icon in the Label Configuration editor.

This will bring up the Save Label Configuration dialog.

Viewing a Split Display

The split display is helpful for cross-referencing two different displays. It has an upper half and a lower half, and any of the different graphical displays may appear in either half of the split displays. By default the two displays coordinate appearance and selection, making it easy to track data between the two.

You may create a split display by selecting "Split Display" from the "Displays" menu:

You may alternately create a split display by right-clicking on the tab for an existing display, and transferring it to a new or existing split display. This latter option is especially useful if you already have a configured display, and want to start doing some cross-reference analysis with it.

Gantt Section Configuration

Coming soon

Viewing Snapshots

Coming soon

Data Management

Coming soon

CCPM

Coming soon

Analysis Techniques

Coming soon

Flagging Jobs

Coming soon

Specific Job Conditional Appearance

Coming soon

Flagging Constraints

Coming soon

Change Log

Coming soon

Upstream Jobs Report

Coming soon

Downstream Jobs Report

The downstream job report permits one to select any activity and the report will determine what activities occur downstream or after the current activity.

Screen shot 2011-05-05 at 3.29.18 PM.png

Hour Summary:

*not functional at the moment

Buffer Incursions:

Aurora will show a report with each buffer, current incursion, and which job is driving the most

incursion.

buffer incursion report.ipp.bmp

Advanced Users

Coming soon

Modeling Tips

Coming soon

Inner Workings

Coming soon

Scheduling

Coming soon

Compatibility

A compatibility between two jobs indicates that they may occur at the same time, even if that would normally cause a resource conflict - as long as all of the resources that would be over capacity are compatibility targets.

A forced compatibility obeys the rules of regular compatibility, but indicates that the two jobs should select the same resource if they schedule at the same time, instead of its being an option.

In scheduling, compatibility will only ever come into play if two jobs schedule in an overlapping time frame. Compatibility does not directly influence when jobs schedule. Each job will take the earliest possible slot - it's just if two jobs are compatible, the second job to schedule might be able to schedule earlier than it otherwise would because of the compatibility.

Consider an example where A and B both need the same resource, but are not compatible.

If we take the same scenario, but A and B are compatible, and R1 is a compatibility target, the result will change.

Note that the actual quantities have not been modified; the shorter boxes are strictly a display feature to indicate that the jobs are sharing space (and to prevent the resource display from showing an over-allocation that is not there). The Resource Plots use the same technique to show compatible jobs.

However, if A's early start date was set to a later date, there would be nothing to cause B to also schedule later unless there was an additional constraint between them (e.g. a concurrent constraint).

If we are dealing with regular compatibility (forced is set to false), the results may also change it there is a second resource option. In the example above, only R1 was available. Consider what would happen if A and B could use either R1 or R2.

Even though A and B are compatible, there is no guarantee that they will double up on a single resource - if forced compatibility is set to false.

If forced compatibility is set to true and they overlap in time, then they will use the same resource, if possible.

Final Shift Remnant Rounding

The final shift remnant rounding (aka "end shift trim") prevents small chunks of finish-up work at the start of a shift. For example, if a 6 hour job schedules such that the last 5 minutes are at the start of a shift, should those 5 minutes be included in the schedule? If "end shift trim" is not set, they will be included. However, if "end shift trim" is set to 5 minutes or more, those final 5 minutes will be removed from the schedule (resulting in a job with a scheduled work time of 5 hours, 55 minutes).

This alteration is not permanent; if the job slips so that the last hour is on that shift, and the "end shift trim" is set to less than an hour, the final block would be left without alteration.

The schedule in which A does not have "end shift trim" set (equivalent to "end shift trim" = 0).

The schedule with A's "end shift trim" set to 5 minutes, the duration of the previous final work chunk.

A has been delayed by 5 minutes, resulting in a final chunk of 10 minutes. Note that the former full duration has been restored, since the final chunk did not meet the trim criteria.

Aurora takes the trimming criteria into account in the course of search, and is sometimes able to take advantage of the shift trimming to schedule a job earlier than it could be otherwise. Take the case below with A and B, where A schedules first in the process and then B schedules.

The schedule in which B does not have "end shift trim" set. It will not quite fit in the slot before A (which starts at the beginning of the shift), and so has to be delayed until after A completes.

The schedule with B's "end shift trim" set to 5 minutes. Note that because Aurora uses this knowledge when performing the search, it is able to slip B in before A, because with the trim in effect B can fit in until A begins.

B has been delayed by 5 minutes, so the end shift trim no longer has any effect - so B must again schedule after A is done.

Resource Set Overlap Handling

In some cases a job may have multiple resource requirements that contain one or more of the same resources as options.

For example, job A may require (Bob or Joe or Henry) and (Joe or Henry or Ted).

During the preliminary resource search, Aurora looks at each resource requirement individually. So if, for example, only Joe was available in the earliest slot, Aurora would initially think that (Bob or Joe or Henry) and (Joe or Henry or Ted) were both satisfiable - because they are, individually.

In order to avoid allocating Joe for both requirements (thus creating a conflict), Aurora performs a final sanity check on the resource search, to make sure that if there are overlapping requirements then they are satisfiable taking all of them into account.

In this case, since only Joe is available, Aurora would conclude that that slot was not acceptable, and would continue searching. If it then found a slot where both Joe and Henry were available, it would run the cross check and establish that both requirements could be satisfied, and would go ahead and schedule in that slot.

Advanced Working Procedures

Coming soon

Running a Multi-Ship Model

Coming soon

Resource Optimization

Coming soon

Schedule Compression

Coming soon

Capacity Change Constraints

Coming soon