/* * Launch of LV2c in the Black Rock Desert 2008 */ project Brd2008 "LV2c for the Black Rock Desert" "1.0" 2008-07-16 - 2008-09-28 { timeformat "%Y-%m-%d" currency "USD" # Compare baseline with a delayed one scenario plan "Plan" { scenario delayed "Delayed" } } # Macro with paramater: # macro foo [ # task foo { } # ] # Macro with one paramater # macro bar [ # task ${1} { } # flags flags risky flags veryrisky flags bigeffort # In order to do a simple profit and loss analysis of the project we # specify accounts. One for the development costs, one for the # documentation costs and one account to credit the customer payments # to. account costs "Costs" cost account rev "Payments" revenue # Global vacations go here # vacation "Labor Day" 2005-09-05 # 2 days Christmas break (27th not included!) # vacation "Christmas" 2005-12-25 - 2005-12-27 # The daily default rate of all resources. rate 0 # Resource definitions resource dev "Developers" { resource andrew "Andrew G." resource dan "Dan K." {limits { weeklymax 4h}} # Gone 8/5 - 8/12 resource dave "Dave C." {limits { weeklymax 4h}} resource eric "Eric H." resource frank "Frank M." resource ian "Ian O." resource jamey "Jamey S." resource maria "Maria W." resource tim "Tim B." {limits { weeklymax 8h}} } # This resource does not do any work. # resource confRoom "Conference Room" { # efficiency 0.0 # } # Now we specify the work packages. The whole project is described as # a task that contains sub tasks. These sub tasks are then broken down # into smaller tasks and so on. The innermost tasks describe the real # work and have resources allocated to them. Many attributes of tasks # are inherited from the enclosing task. This saves you a lot of # writing. # ------------------------------------------------------------------- # Define Milestones # ------------------------------------------------------------------- # --------------------------------------------------------------------------------------------- # Tasks # --------------------------------------------------------------------------------------------- task lv2c "Milestones to hit" { start 2008-07-16 task dryrun "Dry run of entire PSAS infrastructure" {start 2008-08-30 milestone} task gonogo "Go/No Go Decision" {start 2008-09-10 milestone} task paymentin "Registration *AT* AHPRA" {start 2008-09-17 milestone} task launchday "Launch LV2c at BRD 2008" {start 2008-09-27 milestone} # ---------------------------------------------------------------------------------------------------------------------------------------- task airframe "Airframe" { task testrecovery "test full recovery system at altitude" {depends !nosecone, !modules, !recoverysystem } task nosecone "Nosecone" { task makemold "Complete mold" {effort 4h allocate dan} task makeplug "Complete plug" {effort 1h depends !makemold allocate dan} task assemblemolds "Paint and assemble molds" {effort 1h depends !makeplug allocate dan} task layup "Layup nosecone" {effort 4h depends !assemblemolds allocate dan} task makerings "make interface rings (tip and bottom)" {effort 4h depends !layup allocate dan} task attachrings "Attach interface rings" {effort 1h depends !makerings allocate dan} task attachsprings "Attach parachute ejection method (springs, surgical tubing, etc)" {effort 1h allocate dan} } task modules "Modules" { task buildcoupler "Make coupler with a parachute anchor" {effort 3h allocate dave} } task fins "Fins" { task dies "Make top and bottom dies" {effort 4h allocate dave} task usedies "Make fin clamps" {effort 1h allocate dave depends !dies} task rippingfins "Rip out fins" {effort 2h allocate dave depends !usedies} task paintfins "Spray paint fins" {effort 2h allocate dave depends !rippingfins} } task recoverysystem "Recovery system" { task srs "Separation ring system" { task cad "Draw up SRS" {effort 5h allocate eric} task cam "Create tool paths" {effort 2h allocate dan depends !cad} task machine "Machine out 2z SRS" {effort 4h allocate dan depends !cam} task addelectrodes "Add electrodes in SRS" {effort 1h allocate dan depends !machine} task rigfortest "Rig for test" {effort 1h allocate dan depends !addelectrodes} task test "Test separation system in a vacuum" {effort 4h allocate tim depends !rigfortest} task rigforrectest "Rig SRS for recovery system test" {effort 1h allocate dan depends !test} # task rigforflight "Rig SRS for flight" {effort 1h allocate dan} #TODO: Depends on recovery system test } task parachutes "Parachutes" { task getmaterial "Get material, including rigging" {effort 1d allocate tim} task testfit "Test fit rough cut in airframe" {effort 1h allocate tim depends !getmaterial} task assemble "Sew and fit drogue, main chute, bags" {effort 5d allocate tim depends !testfit} } task linecutters "make new linecutters" { task search4jigs "Search for the line cutter jigs" {effort 5h allocate andrew} task makejigs "Make new jigs" {effort 1d allocate tim depends !search4jigs} task makecutters "Make new cutters" {effort 1d allocate tim depends !makejigs} task heattreat "heat treat cutters" {effort 2h allocate tim depends !makecutters} task rigfortest "Rig for testing" {effort 4h allocate tim depends !heattreat} } } task motor "N motor" { task cutfairing "Cut motor fairing to size" {effort 2h allocate dan} task attachfins "Attach fins to motor fairing" {effort 4h allocate tim depends !cutfairing} task attachretainer "Attach motor retainer to fairing" {effort 2h allocate dan depends !attachfins} } #task makepretty "Paint rocket, add logos, etc." {effort 1d allocate frank} #task testassembly "Test the entire airframe assembly" } # ---------------------------------------------------------------------------------------------------------------------------------------- #task taskstuff "todostuff" {effort 1h allocate someone depends !something} task avionics "Avionics" { task prgmrecnode "Program COTS recovery node" } # ---------------------------------------------------------------------------------------------------------------------------------------- task groundsupport "Ground Support" { task testsetup "Actually setup all of the ground support equipment (spec. LT)" {length 1d} task dustoff "Dust off ground support, get it together" {length 1d} } } # --------------------------------------------------------------------------------------------- # Misc Other Stuff # --------------------------------------------------------------------------------------------- # Bookings should be put here # supplement resource r1 { # This is the work that has been done up until now by r1. # booking 2003-06-06 2003-06-07 t1 { sloppy 2 } # booking 2003-06-08 2003-06-09 t1 { sloppy 2 } # booking 2003-06-11 2003-06-12 t1 { sloppy 2 } # } # A traditional Gantt Chart for the TaskJugglerUI taskreport "Gantt Chart" { headline "Black Rocket Desert 2008 Scheduling" columns hierarchindex, name, start, end, duration, chart # For this report we like to have the abbreviated weekday in front # of the date. %a is the tag for this. timeformat "%a %Y-%m-%d" loadunit days hideresource 1 } # A list of tasks showing the resources assigned to each task. taskreport "Task Usage" { headline "Task Usage Report" columns hierarchindex, name, start, end, duration, cost, revenue timeformat "%Y-%m-%d" loadunit days hideresource 0 } # A list of all tasks with the percentage complete for each task taskreport "Tracking Gantt" { headline "Tracking Gantt Chart" columns hierarchindex, name, start, end, duration, completed, chart timeformat "%a %Y-%m-%d" loadunit days hideresource 1 } # A graph showing resource allocation. It identifies whether each # resource is under- or over-allocated for. resourcereport "Resource Graph" { headline "Resource Allocation Graph" columns no, name, rate, utilization, freeload, chart loadunit days hidetask 1 } # A list of all project resources, both human and material resources, # together with the costs for each. resourcereport "Resource Sheet" { headline "Resource Sheet" columns no, name, efficiency, id, rate loadunit days hidetask 1 } # A list of resources and each task associated with each resource. resourcereport "Resource Usage" { headline "Resource Usage Report" columns no, name, utilization, freeload, cost loadunit days hidetask 0 } # This report looks like a regular calendar that shows the tasks by # their dates. htmlweeklycalendar "Calendar.html" { } # This report is a status report for the current week. It also # provides an outlook for the next week. htmlstatusreport "Status-Report.html" { } # A P&L report for the project. htmlaccountreport "Accounting.html" { # Besides the number of the account and the name we have a column # with the total values (at the end of the project) and the values # for each month of the project. columns no, name, scenario, total, monthly headline "P&L for the Project" caption "The table shows the profit and loss analysis as well as the cashflow situation of the Accounting Software Project." # Since this is a cashflow calculation we show accumulated values # per account. accumulate scenarios plan, delayed }