Links
Software Test Estimation Techniques: Step By Step Guide

Firstly summarise this article

1
2
3
4
5
6
* Resources:  Resources are required to carry out any project tasks. They can be people, equipment, facilities, funding, or anything else
 capable of definition required for the completion of a project activity.
* Times : Time is the most valuable resource in a project. Every project has a  deadline to delivery.
* Human Skills : Human skills mean the knowledge and the experience of the Team members. They affect to your estimation. For example, a
 team, whose members have low testing skills, will take more time to finish the project than the one which has high testing skills.
* Cost: Cost is the project budget. Generally speaking, it means how much money it takes to finish the project.

Turn it into neatly formatted text, like this:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Resources
    Resources are required to carry out any
    project tasks.

    They can be people, equipment, facilities,
    funding, or anything else capable of
    definition required for the completion of
    a project activity.

Times
    Time is the most valuable resource in a
    project.

    Every project has a deadline to delivery.

Human Skills
    Human skills mean the knowledge and the
    experience of the Team members.

    They affect to your estimation.

    For example, a team, whose members have
    low testing skills, will take more time to
    finish the project than the one which has
    high testing skills.

Cost
    Cost is the project budget.

    Generally speaking, it means how much
    money it takes to finish the project.

Demonstration

asciinema recording

Final awk code

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
BEGIN {
    RS="\\* *"
    FS=": *"
    OFS=""
    cmd="str '[:lower:]' '[:upper:]'"
}

NR > 1 {
    printf "%s", $2 |& cmd;
    close(cmd, "to");
    $2 = "";
    cmd |& getline $2;
    fflush(cmd);
    close(cmd);

    print $1 "\n" $2;
    system("")
}

This is how to apply a shell script filter to an awk variable

Substitue $2 for any variable.

1
2
3
4
5
6
printf "%s", $2 |& cmd;
close(cmd, "to");
$2 = "";
cmd |& getline $2;
fflush(cmd);
close(cmd);