Spread Knowledge

CS605 - Software Engineering II - Lecture Handout 22

User Rating:  / 0
PoorBest 

Related Content: CS605 - VU Lectures, Handouts, PPT Slides, Assignments, Quizzes, Papers & Books of Software Engineering II

Relationship between people and effort

The relationship between the number of people and time to develop an application is not linear. It is not as simple as a 120 man-day project can be developed by 1 person working for 120 days or 120 people working for 1 day. The communication and coordination overhead plays a very significant role.

As can be recalled from our earlier discussions, total number of Channels of communication involving N people is given by the following formula.
C = N(N-1)/2

Now, if the communication overhead per channel is k, then work accomplished is given by:

Relationship between people and effort

It may be noted here that with only a 5% communication overhead per channel, the total work accomplished by a team of 6 people would be less than the volume of work completed by a team of 4 people. It is also interesting to note that it approaches 0 as the team size approaches 20.

Task Set Definition

A process model defines a task set which comprises of SE work tasks, milestones, and deliverables. This enable a software team to define, develop, and support the software.

Therefore, each software process should define a collection of task sets, designed to meet the needs of different types of projects. To determine the set of tasks to be performed the type of the project and the degree of rigor required needs to be established. Different types of projects and different degree of rigor. These projects could fall into the following categories:

    • Concept development projects
    • New application development
    • Application enhancement
    • Application maintenance
    • Reengineering projects
    The degree of rigor can also be categorized as Casual, Structured, Strict, or Quick Reaction. The following paragraphs elaborate each one of these.

    • Casual

    All process framework activities are applied, but only a minimum task set is required. It requires reduced umbrella tasks and reduced documentation. Basic principles of SE are however still followed.

    • Structured

    In this case a complete process framework is applied. Appropriate framework activities, related tasks, and umbrella activities (to ensure high quality) are also applied. SQA, SCM, documentation, and measurement are conducted in streamlined manner.

    • Strict

    In this case a full process is implemented and all umbrella activities are applied. The work products generated in this case are robust.

    • Quick Reaction

    This approach is taken in case of an emergency. In this case only task essential for maintaining good quality are applied. After the task has been accomplished, documents are updated by back-filling.

    The next question is how to decide about the degree of rigor. For this purpose an adaptation criterion has been developed. The following parameters are considered before a decision is made:

    • Size of the project
    • Number of potential users
    • Mission criticality
    • Application longevity
    • Stability of requirements
    • Ease of customer/developer communication
    • Size of the project
    • Number of potential users
    • Mission criticality
    • Application longevity
    • Stability of requirements
    • Ease of customer/developer communication

    These parameters are used to calculate what is known as Task Set Selector (TSS) which is then used to determine the degree of rigor. It is computed as follows:

    Each adaptation criteria is assigned a grade, weight, and entry point multiplier.

    1. A grade value of between 1 and 5 is assigned to each adaptation criteria as appropriate.
    2. The default value of the weighting factor (as given in the table below) is reviewed and modify if needed. The ranges should be between 0.8 to 1.2.

    Task Set Definition

    • Multiply the grade entered by the weight and by entry point multiplier for the type of project undertaken. The entry point multiplier takes a value of 0 or 1 and indicates the relevance of the adaptation criterion to the project type.

    Product = grade × weight × entry point multiplier

    The TSS is then computed as the average of all the entries in the product column. It is then used to determine the degree of rigor required as shown in the table below.

    TSS

    Degree of Rigor

     < 1.2

     Casual

     1.0 – 3.0

     Structured

     > 2.4

     Strict


    It may be noted that there is overlap in TSS values. This overlap is intentional and it depicts that sharp boundaries are impossible to define when making task set selection. In the final analysis, the TSS value, past experience, and common sense must all be factored into the choice of the task set for a project.

    This concept is demonstrated with the help of following example. In this case TSS value is computed for a new development project.

    Adaptation Criteria

    Grade

    Weight

    Entry point multiplier

    Product

     

     

    New Development

     

    Size of product

    2

    1.2

    1

    2.4

    Number of Users

    3

    1.1

    1

    3.3

    Business Criticality

    4

    1.1

    1

    4.4

    Longevity

    3

    0.9

    1

    2.7

    Stability of requirements

    2

    1.2

    1

    2.4

    Ease of communication

    2

    0.9

    1

    1.8

    Maturity of technology

    2

    0.9

    1

    1.8

    Performance Constraints

    3

    0.8

    1

    2.4

    Embedded / non-embedded

    3

    1.2

    1

    3.6

    Project Staffing

    2

    1.0

    1

    2.0

    Interoperability

    4

    1.1

    1

    4.4

    Reengineering factors

    0

    1.2

    0

    0

    TSS

    2.6


    Since the value of TSS is 2.6, the degree of rigor could be structured or strict. The project manager now needs to use his experience to determine which of the two approaches should be taken.

    TSS

    Degree of Rigor

    < 1.2

    Casual

    1.0 – 3.0

    Structured

    > 2.4

    Strict


    Example – SE Tasks for a Concept Development Project