[dsl.pert] PERT DSL¶ ↑
{{ parent: dsl }}
The System shall provide PERT DSL
to estimate software development effort by PERT method (See PERT method overview (rus)). An example of PERT DSL
file is as follows.
skip 'ident', 'top level header' pert 'ident.1', o: 10, m: 14, p: 22 pert 'ident.2', o: 10, m: 14, p: 22 pert 'ident.3', o: 10, m: 14, p: 22 # puts calculate
[dsl.pert.skip] Skip¶ ↑
The System shall provide PERT DSL
function skip
. This function shall have the same meaning, parameters and behavior as Tracing DSL
function skip
[[dsl.trace.skip]]
[dsl.trace.pert] Pert¶ ↑
The System shall provide PERT DSL
function pert
to evaluate PERT estimations of effort and error for the object development.
The pert
function must accept the following parameters.
Parameter | Type | M | Description :——– | —— | - | :——————— object | Object
| Y | Estimated object o: | Number | Y | Optimistic estimation m: | Number | Y | Most usual estimation p: | Number | Y | Pessimistic estimation
The pert
function must return hash of effort and error values {effort: 37, error: 3}
[dsl.pert.calc] Calculate¶ ↑
The System shall provide function calculate
for PERT DSL
. This function shall calculate summary effort, error and effort95% and return hash of the calculations result {effort: 47, error: 12, e95: 51}
.
Calculation result of PERT DSL
function calculate
Key | Type | Description :—– | :—– | :————————————————- effort | Number | Summary effort error | Number | Average error e95 | Number | Summary effort with 95% TBD: what this right name?
[dsl.pert.dup] Duplicates¶ ↑
When an estimation is being added through skip
and pert
functions, if requirement with the same id is already estimated, the System shall abort the execution with the following error message Requirement <id> is already estimated. Operation aborted.