MC4001 - Software Project Management
MC4001 - Software Project Management
UNIT -I
Project Management is the discipline of defining and achieving targets while optimizing the use
of resources (time, money, people, materials, energy, space, etc) over the course of a project (a set of activities
of finite duration).
What is software project management?(2 M)
Software project management is an art and discipline of planning and supervising software
projects. It is a sub-discipline of software project management in which software projects planned,
implemented, monitored and controlled.
The triangle illustrates the relationship between three primary forces in a project. Time is the
available time to deliver the project, cost represents the amount of money or resources available and
quality represents the fit-to-purpose that the project must achieve to be a success.
The normal situation is that one of these factors is fixed and the other two will vary in inverse
proportion to each other. For example time is often fixed and the quality of the end product will
depend on the cost or resources available. Similarly if you are working to a fixed level of quality then
the cost of the project will largely be dependent upon the time available (if you have longer you can
do it with fewer people).
What is a project?
The dictionary definitions put a clear emphasis on the project being a planned activity.
Some dictionary definitions:
“A specific plan or design” “A planned undertaking” “A large undertaking e.g. a public works
scheme” Longmans dictionary
Invisibility: When a physical artifact such as a bridge is constructed the progress can actually be seen. with
software, progress is not immediately visible. Software project management can be the process of making the
invisible visible.
Complexity: Per dollar, pound or euro spent, software products contain more complexity than other engineered
artifacts.
Conformity: The 'traditional' engineer usually works with physical systems and materials like cement and
steel. These physical systems have complexity, but are governed by consistent physical laws. Software
developers have to conform to the requirement of human clients. It is not just that individuals can be
inconsistent. Organizations, because of lapses in collective memory, in internal communication or in effective
decision making, can exhibit remarkable, ‘organizational stupidity'.
Flexibility: That software is easy to change is seen as strength. However, where the software system interfaces
with a physical or organizational system, it is accommodate the other components rather than vice versa. Thus
software systems are particularly subject to change.
Differentiate contract and technical project management? (13 m)
Contract Management and Technical Project Management
In-house projects are where the users and the developers of new software work for the same organization.
However, increasingly organizations contract out ICT development to outside developers.
Here, the client organization will often appoint a 'project manager' to supervise the contract who will
delegate many technically oriented decisions to the contractors.
Thus, the project manager will not worry about estimating the effort needed to write individual software
components as long as the overall project is within budget and on time.
On the supplier side, there will need to be project managers who deal with the more technical issues. This
book leans towards the concerns of these 'technical' project managers.
Activities covered by project management
A software project is not only concerned with the actual writing of software. Usually there are three
successive processes that bring a new system into being.
Feasibility study
Is project technically feasible and worthwhile from a business point ofview?(recommendation of
the feasibility study might be not to carry out the proposed project)
Planning
Only done if project is feasible - evolving plan allows us to control the project.
Execution
Implement plan, but plan may be changed as we go along
Write briefly about SDLC model? (15 m)
The software development life-cycle (ISO 12207)
The software development life cycle is a technical model. It identifies the technical constraints on the order
activities are done. This does NOT imply that a waterfall ‘approach is the only way to organize projects.
The technical model could be implemented as increments or in an evolutionary manner.
ISO 12207 life-cycles are:
1. Requirements analysis
2. Architecture Design
3. Code and test
4. Installation \ Acceptance support
Requirements analysis
– Requirements elicitation (kindle): what does the client need?
– Analysis: converting customer-facing‘ requirements into equivalents that developers can
understand
– Requirements will cover
• Functions
• Quality
• Resource constraints i.e. costs
– Requirement analysis has to face in (at least) two different directions. It needs to
communicate and elicit the requirements of the users, speaking in their language. It needs
to organize and translate those requirements into a form that developers can understand and
relate to.
Architecture Design
Software Software
Requirements Components
Context
Plan
Methods
Methodology = a set of methods + start and end dates for eachactivity, A way of working
staffing, tools and materialsetc
What is Management?
We have explored some of the special characteristics of software. We now look at the 'management' aspect
of software project management. It has been suggested that management involves the following activities:
planning deciding what is to be done;
organizing - making arrangements;
staffing - selecting the right people for the job etc.;
directing- giving instructions;
monitoring - checking on progress;
controlling - taking action to remedy hold-ups;
innovating - coming up with new solutions;
Representing - liaising with clients, users, developer, suppliers and other stakeholders.
Much of the project manager's time is spent on only three of the eight identified activities, viz., project
planning, monitoring and control. The time period during which these activities are carried out is indicated
in Fig. It shows that project management is carried out over three well-defined stages or processes,
irrespective of the methodology used.
Management Control
Management in general, involves setting objectives for a system and then monitoring the performance of the
system. In Figure 1.5 the ‘real world' is shown as being rather formless. Especially in the case of large
undertakings, there will be a lot going on about which management should be aware.
This will involve the local managers in data collection. Bare details, such as 'location X has processed 2000
documents', will not be very useful to higher management: data processing will be needed to transform this
raw data into useful information. This might be in such forms as 'percentage of records processed', 'average
documents processed per day per person' and 'estimated completion date'.
What are the key aspects in which modern software project management practices differ from those of
traditional software project management? ( 15 m)
Traditional versus Modern Project Management Practices:
Over the last two decades, the basic approach taken by the software industry to develop software has
undergone a radical change. Hardly any software is being developed from scratch any more. Software
development projects are increasingly being based on either tailoring some existing product or reusing
certain pre-built libraries
We will discuss some important differences between modern project management practices and traditional
practices.
Planning Incremental Delivery Few decades ago, projects were much simpler and therefore more
predictable than the present day projects. In those days, projects were planned with sufficient detail, much
before the actual project execution started. After the project initiation, monitoring and control activities
were carried out to ensure that the project execution proceeded as per plan. Now, projects are required to be
completed over a much shorter duration, and rapid application development and deployment are considered
key strategies. The traditional long-term planning has given way to adaptive short-term planning. Instead of
making a long-term project completion plan, the project manager now plans all incremental deliveries with
evolving functionalities. This type of project management is often called extreme project management.
Extreme project management is a highly flexible approach to project management that concentrates on the
human side of project management (e.g., managing project stakeholders), rather than formal and complex
planning and monitoring techniques.
Quality Management Of late, customer awareness about product quality has increased significantly; Tasks
associated with quality management have become an important responsibility of the project manager. The
key responsibilities of a project manager now include assessment of project progress and tacking the quality
of all intermediate artifacts.
Change Management Earlier, when the requirements were signed off by the customer, any changes to the
requirements were rarely entertained. Customer suggestions are now actively being solicited and
incorporated throughout the development process. To facilitate customer feedback, incremental delivery
models are popularly being used. Product development is being carried out through a series of product
versions implementing increasingly greater functionalities. Also customer feedback is solicited on each
version for incorporation. This has made it necessary for an organization to keep track of the various
versions and revisions through which the product develops. Another reason for the increased importance of
keeping track of the versions and revisions is the following. Application development through
customization has become a popular business model. Therefore, existence of a large number of versions of a
product and the need to support these by a development organization has become common. In this context,
the project manager plays a key role in product base lining and version control. This has made change
management a crucial responsibility of the project manager. Change management is also known as
configuration management.
This is called Step 0 because in a way it is outside the main project planning process.
Proposed projects do not appear out of thin-air some process must decide to initiate this project rather than
some other. While a feasibility study might suggest that there is a business case for the project, it would still
need to be established that it should have priority over other projects. This evaluation of the merits of projects
could be part of project portfolio management.
The activities in this step ensure that all the parties to the project agree on the objectives and are
committed to the success of the project. We have already looked at the importance of the correct definition of
objectives.
Step 1.1: Identify objectives and practical measures of the effectiveness in meeting those objectives
We have already noted that a single overall project authority needs to be established so that there
is unity of purpose among all those concerned.
Step 1.3: Stakeholder analysis identify all stakeholders in the project and their interests
Essentially all the parties who have an interest in the project need to be identified.
In order to gain the full cooperation of all concerned, it might be necessary to modify the project
objectives. This could mean adding new features to the system which give a benefit to some stakeholders as a
means of assuring their commitment to the project. This is potentially dangerous as the system size may be
increased and the original objectives obscured. Because of these dangers ,it is suggested that this process be
done consciously and in a controlled manner.
For internal staff this should be fairly straightforward, but a project leader implementing for
example, a payroll system would need to find a contact point with BACS (Bankers Automated Clearing
Scheme), for instance. This step could lead to the first draft of a communications plan.
Projects are never carried out in a vacuum. There is usually some kind of existing infrastructure
into which the project must fit. Where project managers are new to the organization, they must find out the
precise nature of this infrastructure. This could be the case where the project manager works for an outside
organization carrying out the work for a client.
Step 2.1: Identify relationship between the project and strategic planning
We know how project portfolio management supported the selection of the projects to be carried
out by an organization. Also, how programmed management can ensure that a group of projects contribute to a
common organizational strategy. There is also a technical framework within which the proposed new systems
are to fit. Hardware and software standards, for example, are needed so that various systems can communicate
with each other. These technical strategic decisions
should be documented as part of an enterprise architecture process. Compliance with the enterprisearchitecture
should ensure that successive ICT projects create software and other components compatible with those created
by previous projects and also with the existing hardware and software platforms.
Any organization that develops software should define their development procedures. As a
minimum, the normal stages in the software life cycle to be carried out should be documented along with the
products created at each stage. Change control and configuration management standards should be in place to
ensure that changes to requirements are implemented in a safe and orderly way. The procedural standards may
lay down the quality checks that need to be done at each point of the project life cycle or these may be
documented in a separate quality standards
and procedures manual. The organization, as part of its monitoring and control policy, may have a measurement
program me in place which dictates that certain statistics have to be collected at various stages of a project.
Finally the project manager should be aware of any project planning and control standards. These will relate to
how the project is controlled: for example, the way that the hours spent by team members on individual tasks
are recorded on timesheets control.
Project leaders, especially in the case of large projects, might have some control over the
way that their project team is to be organized. Often, though, the organizational structure will be dictated to
them. For example, a high-level managerial decision might have been taken that software developers and
business analysts will be in different groups, or that the development of business-to-consumer web applications
will be done within a separate group from that responsible for ‘traditional’ database applications.
If the project leader does have some control over the project team organization then this would best be
considered at a later stage (see Step 7: Allocate resources).
The general purpose of this part of the planning operation is to ensure that the appropriate
methods are used for the project.
Consideration must be given to the risks that threaten the successful outcome of the
project. Generally speaking, most risks can be attributed to the operational or development environment, the
technical nature of the project or the type of product being created.
The clients may have their own procedural requirements. For example, an organization
might mandate the use of a particular development method.
Step 3.5: Select development methodology and life-cycle approach
The development methodology and project life cycle to be used for the project will be
influenced by the issues raised above. The idea of a methodology, that is, the group of methods to be used in
a project, was already discussed. For many software developers, the choice of methods will seemobvious: they
will use the ones that they have always used in the past.. While the setting of objectives involves identifying the
problems to be solved, this part of planning is working out the ways in which these problems are to be solved.
For a project that is novel to the planner, some research into the methods typically used in the problem domain
is worthwhile. For example, sometimes, as part of a project, a questionnaire survey has to be conducted. There
are lots of books on the techniques used in such surveys and a wise move would be to look at one or two of
them at the planning stage.
Once the major risks have been identified and the broad project approach has been
decided upon, this would be a good point at which to re-estimate the effort and other resources required to
implement the project. Where enough information is available an estimate based on function points might be
appropriate.
The more detailed planning of the individual activities now takes place. The longer-term
planning is broad and in outline, while the more immediate tasks are planned in some detail.
Identifying all the things the project is to create helps us to ensure that all the activities
we need to carry out are accounted for. Some of these products will be handed over to the client at the end of
the project these are deliverables. Other products might not be in the final configuration, but are needed as
intermediate products used in the process of creating the deliverables. These products will include a large
number of technical products, such as training material and operating instructions. There will also be products
to do with the management and the quality of the project. Planning documents would, for example, be
management products. The products will form a hierarchy. The main products will have sets of component
products which in turn may have sub-component products and so on. These relationships can be documented in
a Product Breakdown Structure (PBS)- see Figure 1.5. In this example the products have been grouped into
those relating to the system as a whole, and those related to individual modules. A third ‘group’, which happens
to have only one product, is called ‘management products’ and consists of progress reports. The asterisk in the
progress reports indicates that there will be new instances of the entity ‘progress report’ created repeatedly
throughout the project. Note that in Figure 1.5 the only boxes that represent tangible products are those at the
bottom of the hierarchy that are not further subdivided. Thus there are only six individual product types shown
in the diagram. The boxes that are higher up for example ‘module products’ – are simply the names of groups
of items. Some products are created from scratch, for example new software components. A product could quite
easily be a document, such as a software design document. It might be a modified version of something that
already exists, such as an amended piece of code. A product could even be a person, such as a ‘trained user’, a
product of the process of training. These specify that products at the bottom of the PBS should be documented
by Product Descriptions which contain:
Fig 1.6 A Product Breakdown Structure (PBS) for the products needed to produce an invitation to tender (ITT)
Some products will need one or more other products to exist first before they can be
created. For example, a program design must be created before the program can be written and the program
specification must exist before the design can be commenced. These relationships can be portrayed in a Product
Flow Diagram (PFD). Figure 1.7 gives an example. Note that the ‘flow’ in the diagram is assumed to be from
top to bottom and left to right. In the example in Figure 1.7, ‘user requirements’ is in an oval which means that
it is used by the project but is not created by it. It is often convenient to identify an overall product at the bottom
of the diagram, in this case ‘integrated/tested software’, into which all the other products feed. PFDs should not
have links between products which loop back iteratively. This is emphatically not because iterations are not
recognized. On the contrary, the PFD allows for looping back at any point. For example, in the PFD shown
in Figure 1.7, say that during integration testing it was found that a user requirement had been missed in the
overall system specification. If we go back to overall system specification and change it we can see from the
PFD that all the products that follow it might need to be reworked. A new module might need to be designed
and coded, test cases would need to be added to check that the new requirements had been successfully
incorporated, and the integration testing would need to be repeated. The form that a PFD takes will depend on
assumptions and decisions about how
the project is to be carried out. These decisions may not be obvious from the PFD and so a textual description
explaining the reasons for the structure can be helpful.
Fig 1.7 A fragment of a Product Flow Diagram (PFD) for a software development task
Where the same generic PFD fragment relates to more than one instance of a particular type
of product, an attempt should be made to identify each of those instances. In the example in Figure1.5, it could
be that in fact there are just two component software modules in the software to be built.
In order to generate one product from another there must be one or more activities that carry out
the transformation. By identifying these activities we can create an activity network which shows the tasks that
have to be carried out and the order in which they have to be executed.
The activity networks are ‘ideal’ in the sense that no account has been taken of resource
constraints. For example, in Figure 1.8, it is assumed that resources are available for both software modules
to be developed in parallel. A good rule is that activity networks are never amended to take account of resource
constraints.
Fig 1.8 An example of an activity network
Step 4.5: Modify the ideal to take into account need for stages and checkpoints
Some overall estimates of effort, cost and duration will already have been done (see Step
3.6). At this point, estimates of the staff effort required, the probable elapsed time and the non-staff resources
needed for each activity will need to be produced. The method of arriving at each of these estimates will vary
depending on the type of activity. The difference between elapsed time and effort should be noted. Effort is the
amount of work that needs to be done. If a task requires three members of staff to work for two full days each,
the effort expended is six days. Elapsed time is the time between the start and end of a task. In our example
above, if the three members of staff start and finish at the same time then the elapsed time for the activity would
be two days. The individual activity estimates of effort should be summed to get an overall bottom-up estimate
which can be reconciled with the previous top-down estimate. The activities on the activity network can be
annotated with their elapsed times so that the overall duration of the project can be calculated.
The estimates for individual activities could reveal that some are going to take quite a
long time. Long activities make a project difficult to control. If an activity involving system testing is to take12
weeks, it would be difficult after six weeks to judge accurately whether 50 per cent of the work is completed. It
would be better to break this down into a series of smaller subtasks.
There might be a number of activities that are important, but individually take up very
little time. For a training course, there might be a need to book rooms and equipment, notify those attending,
and register students on the training system, order refreshments, copy training materials and so on. In a situation
like this it would be easier to bundle the activities into a single merged activity ‘make training course
arrangements’ which could be supplemented with a checklist.
In general, try to make activities about the length of the reporting period used for
monitoring and controlling the project. If you have a progress meeting every two weeks, then it would
convenient to have activities of two weeks’ duration on average, so that progress meetings would normally be
made aware of completed tasks each time they are held.
Risks inherent in the overall nature of the project have already been considered in Step 3.
We now want to look at each activity in turn and assess the risks to its successful outcome. Any plan is always
based on certain assumptions. Say the design of a component is planned to take five days. This is based on the
assumption that the client’s requirement is clear and unambiguous. If it is not then additional effort to clarify
the requirement would be needed.
The possibility that an assumption upon which a plan is based is incorrect constitutes a
risk. In this example, one way of expressing the uncertainty would be to express the estimate of effort as
arrange of values.
A project plan will be based on a huge number of assumptions, and so some way of
picking out the risks that are most important is needed. The damage that each risk could cause and the
likelihood of it occurring have to be gauged. This assessment can draw attention to the most serious risks. The
usual effect if a problem materializes is to make the task longer or more costly.
Step 6.2: Plan risk reduction and contingency measures where appropriate
It may be possible to avoid or at least reduce some of the identified risks. On the other hand,
contingency plans specify action that is to be taken if a risk materializes. For example, a contingency plan could
be to use contract staff if a member of the project team is unavailable at a key time because of serious illness.
Step 6.3: Adjust overall plans and estimates to take account of risks
We may change our plans, perhaps by adding new activities which reduce risks. For example, a
new programming language might mean we schedule training courses and time for the programmers to practice
their new programming skills on some non-essential work.
The type of staff needed for each activity is recorded. The staffs available for the project are
identified and are provisionally allocated to tasks.
Step 7.2: Revise plans and estimates to take into account resource constraints
Some staff may be needed for more than one task at the same time and, in this case, an order
of priority is established. The decisions made here may have an effect on the overall duration
of the project when some tasks are delayed while waiting for staff to become free. Ensuring someone isavailabl
e to start work on an activity as soon as the preceding activities have been completed might mean that they are
idle while waiting for the job to start and are therefore used inefficiently.
The product of Steps 7.1 and 7.2 would typically be a Gantt chart – see Figure 1.9. The Gantt chart gives a clear
picture of when activities will actually take place and highlights which ones will be executed at the same time.
Activity networks can be misleading in this respect.
Fig 1.9 Gantt chart showing when staff will be carrying out tasks
A danger when controlling any project is that an activity can reveal that an earlier activity was not properly
completed and needs to be reworked. This, at a stroke, can transform a project that appears to be progressing
satisfactorily into one that is badly out of control. It is important to know that when a task is reported as
completed, it really is – hence the importance of quality reviews. Each task should have quality criteria. These
are quality checks that have to be passed before the activity can be ‘signed off’ as completed.
Step 8.2: Document plans and obtain agreement
It is important that the plans be carefully documented and that all the parties to the project
understand and agree to the commitments required of them in the plan. This may sound obvious, but it is
amazing how often this is not done.
Once the project is under way, plans will need to be drawn up in greater detail for each activity
as it becomes due. Detailed planning of the later stages will need to be delayed because more information will
be available nearer the start of the stage. Of course, it is necessary to make provisional plans for the more
distant tasks, because thinking about what needs to be done can help unearth potential problems, but sight
should not be lost of the fact that these plans are provisional.
Conclusion
This chapter has presented a framework into which the techniques described in the other parts of
the book should slot. It is suggested that any planning approach should have the following elements:-
the establishment of project objectives;
the analysis of the characteristics of the project;
the establishment of an infrastructure consisting of an appropriate organization and set of standards,
methods and tools;
the identification of the products of the project and the activities needed to generate those products;
the allocation of resources to activities;
the establishment of quality controls.
Project planning is an iterative process. As the time approaches for particular activities to be
carried out they should be replanned in more detail.
TOTAL QUALITY MANAGEMENT
Six Sigma
What is Six Sigma? (2m)
Six Sigma is the process of producing high and improved quality output. This can be done in two phases –
identification and elimination. The cause of defects is identified and appropriate elimination is done which
reduces variation in whole processes. A six sigma method is one in which 99.99966% of all the products to
be produced have the same features and are of free from defects.
ISO 9126
Write short notes on ISO 9126 standard? (15 m)
What are the categories of quality model? Explain it. (13 m)
ISO 9126 is an international standard proposed to make sure ‘quality of all software – intensive
products’ which includes system like safety-critical where in case of failure of of software lives will be
jeopardy. ISO i.e. International Standard Organization and IEC i.e. International Electrical Organization
have developed ISO/IEC 9126 standards for software engineering –> Product Quality to provide an all-
inclusive specification and evaluation model for the quality of the software product.
The standard is divided into 4 parts as depicted in the following figure :
Part-1 Software Engineering – Product Quality “Quality model” :
It describes quality model framework which explains relationships between different approaches to quality as
well as identifying quality characteristics and sub-characteristics of software products.
Part-2 Software Engineering – Product Quality “External Metrices” :
It’s use is to describes external metrices that are used to measure characteristics and sub-characteristics which
are identifies in part 1.
Part-3 Software Engineering – Product Quality “Internal Metrices” :
It’s use is to describes internal metrices that are used to measure characteristics and sub-characteristics which
are identifies in part 1.
Part-3 Software Engineering – Product Quality “Quality in use metrices” :
It’s use is to identify metrices which are used to measure effects of combined quality characteristics for user.
As from above discussion, it is concluded that first three parts are concerned with describing and measuring
quality of software product and fourth part concerned about quality of software product from user point of
view.
Furthermore, first part i.e. Quality model is concerned classified into two categories as depicted in the
following figure :
Internal External Quality Part: It determines the quality of a software product through six
characteristics which are Functionality, Reliability, Usability, Efficiency, Maintainability and Portability.
Each characteristic is subdivided into related sub-characteristics which are also depicted in the above
example.
1. Functionality: The functions are those that will satisfy implied needs.
Suitability
Accuracy
Interoperability
Security
Functionality Compliance
2. Reliability: A set of attributes that will bear on the capability of software to maintain the level of
performance.
Maturity
Fault Tolerance
Recoverability
Reliability Compliance
3. Usability: A set of attributes that bear on the effort needed for use by a implied set of users.
Understandability
Learn ability
Operability
Attractiveness
Usability Compliance
4. Efficiency: A set of attributes that bear on the relationship between the level of performance of the
software under stated conditions.
Time Behavior
Resource Utilization
Efficiency Compliance
5. Maintainability: A set of attributes that bear on the effort needed to make specified modifications.
Analyzability
Changeability
Stability
Testability
Maintainability Compliance
6. Portability: A set of attributes that bear on the ability of software to be transferred from one environment
to another.
Adaptability
Install ability
Co-existence
Replace ability
Portability Compliance
****************UNIT I COMPLETED*******************
Referred In: Bob Hughes & Mike Cotterell “ Software Project Management”, fifth edition.
Gobalswamy ramesh, “Managing Global Software Projects”, 2003
www.w3schools.com
Wikipedia
UNIT II
SOFTWARE EVALUATION AND COSTING
Project Evaluation
Strategic Assessment–Technical Assessment–Cost Benefit Analysis–Cash Flow
Forecasting–Cost Benefit Evaluation Techniques–Risk Evaluation.
1. Economic Assessment
Why?
Consider whether the project is the best among other options
Prioritize the projects so that the resources can be allocated effectively if several projects are underway
How?
Cost-benefit analysis
Cash flow forecasting
Various cost-benefit evaluation techniques
NPV and IRR
Cost Benefit Analysis
Explain the cost benefit analysis (13 M)
The most common way of carrying out an economic assessment of a proposed information system or
software product, is by comparing the expected costs of development and operation of the system with the
benefits of having it in place.
The standard way of evaluating the economic benefits of any project is cost-benefit analysis, comprising of
two steps. The steps are listed below:
o Step 1: Identifying and estimating all of the costs and benefits of carrying out the project and
operating the delivered application:
These include the development costs, the operating costs and the benefits that are expected to accrue from
the new system. Where the proposed system is replacing an existing one, these estimates should reflect the
change in costs and benefits due to the new system.
o Step 2: Expressing these costs and benefits in common units:
The net benefit hat is the difference between the total benefit and the total cost of creating and operating the
system need to be evaluated. To do this, we must express each cost and each benefit in some common unit.
Cash Flow Forecasting
As important as estimating the overall costs and benefits of a project is the forecasting of the cash flows that
will take place and their timing.
A cash flow forecast will indicate when expenditure and income will take place. Money has to be spend for
expenses such as staff wages, during the development stages of a project.
Such expenditure cannot be deferred until income is received either from using the software if it is being
developed for in-house use or from selling it.
When estimating future cash flows, it is usual to ignore the effects of inflation. Forecasts of inflation rates
tend to be uncertain.
Moreover, if expenditure is increased due to inflation it is likely that income will increase proportionately
The cash flow forecast for four projects is illustrated in Table. Negative values represent expenditure and
positive values represent income.
In each case it is assumed that the cash flows take place at the end of each year. For short-term projects or
where there are significant seasonal cash flow patterns, quarterly, or even monthly, cash flow forecasts could
be appropriate.
Typically products generate a negative cash flow during their development followed by a positive cash flow
over their operating life. There might be decommissioning costs at the end of a product’s life.
Table : Four Project Cash Flow Projections – Figures and End of Year Totals (Rs.)
Cash flows take place at the end of each year. The year 0 figure represents the initial investment made at the
start of the project.
Cost-Benefit Evaluation-Techniques
Discuss about the cost benefit evaluation techniques.(15 M)
What is cost benefit analysis? In context to cost benefit analysis, define the following term precisely.
(13 M)
1. Net Profit (NP)
2. Payback Period (PP)
3. Return on Investment (ROI)
4. Net Present Value (NPV)
Costs and benefits have to be expressed using the same scale to be comparable
Usually expressed in payments at certain times (cash flow table)
Payments at different points in time are not comparable based only on the amount
Time of payment should be considered
Techniques
– Net profit
– Payback period
– Return on investment
– Net present value
– Internal rate of return
Net Profit
Difference between total cost and total income
Pros: Easy to calculate
Cons
– Does not show profit relative to size investment (e.g., consider Project 2)
– Does not consider timing of payments (e.g., compare Projects 1 and 3)
Not very useful other than for "back of envelope" evaluations
Payback Period
Time taken to break even or pay back the initial investment.
Pros
o Easy to calculate
o Gives some idea of cash flow impact
Cons: Ignores overall profitability
Not very useful by itself, but a good measure for cash flow impact
Return On Investment
Also known as the accounting rate of return (ARR), Provides a way of comparing the net profitability to
the investment required.
The common formula–>ROI = (average annual profit/total investment) X 100
Pros: Easy to calculate
Cons
o Does not consider the timing of payments
o Misleading: does not consider bank interest rates
Not very useful other than for "back of envelope" evaluations
Net Present Value
A project evaluation technique that takes into account the profitability of a project and the timing of the
cash flows that are produced
Sum of all incoming and outgoing payments, discounted using an interest rate, to a fixed point in time
(the present)
Present value = (value in year t)/(1+r)^t
o r is the discount rate
o t is the number of years into the future that the cash flow occurs
o (1+r)^t is known as discount factor
In the case of 10% rate and one year
o Discount factor = 1/(1+0.10) = 0.9091
In the case of 10% rate and two years
o Discount factor = 1/(1.10 x 1.10) = 0.8294
Pros
o Takes into account profitability
o Considers timing of payments
o Considers economic situation through discount rate
Cons: Discount rate can be difficult to choose
Standard measure to compare different options
Internal Rate of Return
Internal rate of return (IRR) is the discount rate that would produce an NPV of 0 for the project
Can be used to compare different investment opportunities
There is a Microsoft Excel function to calculate IRR
Pros: Calculates figure which is easily comparable to interest rates
Cons: Difficult to calculate (iterative)
Standard way to compare projects
RISK EVALUATION
Write short notes on risk evaluation in project evaluation.(15 M)
What is risk? Explain risk evaluation in detail.(13 M)
Definition of Risk
A risk is a potential problem – it might happen and it might not
Conceptual definition of risk
Risk concerns future happenings
Risk involves change in mind, opinion, actions, places, etc.
Risk involves choice and the uncertainty that choice entails
Two characteristics of risk
Uncertainty – the risk may or may not happen, that is, there are no 100% risks (those, instead, are called
constraints)
Loss – the risk becomes a reality and unwanted consequences or losses occur
Risk Categorization – Approach
Project risks
They threaten the project plan
If they become real, it is likely that the project schedule will slip and that costs will increase
Technical risks
They threaten the quality and timeliness of the software to be produced
If they become real, implementation may become difficult or impossible
Business risks
They threaten the viability of the software to be built
If they become real, they jeopardize the project or the product
Sub-categories of Business risks
Market risk – building an excellent product or system that no one really wants
Strategic risk – building a product that no longer fits into the overall business strategy for the
company
Sales risk – building a product that the sales force doesn't understand how to sell
Management risk – losing the support of senior management due to a change in focus or a change in
people
Budget risk – losing budgetary or personnel commitment
Known risks
Those risks that can be uncovered after careful evaluation of the project plan, the business and
technical environment in which the project is being developed, and other reliable information
sources (e.g., unrealistic delivery date)
Predictable risks
Those risks that are extrapolated from past project experience (e.g., past turnover)
Unpredictable risks
Those risks that can and do occur, but are extremely difficult to identify in advance
In-House
Developing a new IT application in-house:
Time is needed to develop the software
Would often require the recruitment of new technical staff to do the job
Usually, the new staff won’t be needed after the project is completed
Sometimes due to the novelty of the project there may be lack of executives to lead the effort
Outsourcing
Contracting the project out to an external IT development company (outsourcing):
Time is needed to develop the software
The conducting company will have technical and project expertise not readily available to the client
The client would still do management effort to establish and manage the contracts
Waterfall model
The waterfall model is a sequential approach, where each fundamental activity of a process represented
as a separate phase, arranged in linear order.
In the waterfall model, you must plan and schedule all of the activities before starting working on them
(plan-driven process).
Plan-driven process is a process where all the activities are planned first, and the progress is measured
against the plan. While the agile process, planning is incremental and it’s easier to change the process to
reflect requirement changes.
The phases of the waterfall model are:
Requirements
Design
Implementation
Testing
Maintenance
Classical model of system development.
Called one-shot or once-through model.
Limited scope of iteration. Is this strength or a limitation??
This is strength for the WF-model.
Because it is suitable for some projects especially for large projects, we want to avoid reworking tasks
that are thought to be completed.
Reworking tasks could result in late delivery.
Suitable for systems with well defined requirements.
Not suitable for systems of high uncertainty
V-Process model
The spiral model is similar to the incremental model, with more emphasis placed on risk analysis. The
spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation.
A software project repeatedly passes through these phases in iterations (called Spirals in this model).
The baseline spiral, starting in the planning phase, requirements is gathered and risk is assessed.
Each subsequent spiral builds on the baseline spiral. It is one of the software development models like
Waterfall, Agile, V-Model.
A greater level of detail is considered at each stage of the project.
Represented as a loop or a spiral where the system is considered in more detail.
This means greater confidence about the probability of success.
Each sweep is terminated by an evaluation before the next iteration is embarked upon.
Planning Phase: Requirements are gathered during the planning phase. Requirements like
‘BRS’ that is
‘Bussiness
Requirement
Specifications’ and
‘SRS’ that is ‘System
Requirement
specifications’.
Risk Analysis: In the
risk analysis phase,
a process is
undertaken to
identify risk and
alternate solutions. A
prototype is produced
at the end of the risk
analysis phase. If any
risk is found during
the risk analysis then
alternate solutions are suggested and implemented.
Engineering Phase: In this phase software is developed, along with testing at the end of the
phase. Hence in this phase the development and testing is done.
Evaluation phase: This phase allows the customer to evaluate the output of the project to date
before the project continues to the next spiral.
Advantages of Spiral model:
High amount of risk analysis hence, avoidance of Risk is enhanced.
Good for large and mission-critical projects.
Strong approval and documentation control.
Additional Functionality can be added at a later date.
Software is produced early in the software life cycle.
Disadvantages of Spiral model:
Can be a costly model to use.
Risk analysis requires highly specific expertise.
Project’s success is highly dependent on the risk analysis phase.
Doesn’t work well for smaller projects.
Prototype model
Prototype is a working model of one or more aspects of the projected system.
Goal:
Gain knowledge
reduce risk and uncertainty
verify a design or implementation approach
The prototype is constructed and tested, quickly and in expensively to test assumptions.
Classification of a prototype
Throw-away prototype:
Tests out some ideas.
Discarded when the true development of the operational system is started.
The prototype could be developed using a different SW and HW environment than those that will be
used for the final system.
Example: user interface
Prototype
Use a desktop application builder to produce an acceptable user interface.
Final system
Use a procedural programming language
Evolutionary prototypes
The prototype is developed and modified until it is finally in a state where it can become the operational
system.
Benefits of prototyping:
Learning by doing.
Improved communication.
Improved user involvement.
Clarification of partially-known requirements.
Demonstration of the consistency and completeness of a
Specification
Reduced need for documentation.
Reduced maintenance costs.
Feature constraint
Drawbacks of prototyping:
Users sometimes misunderstand the role of the prototype.
Lack of project standards possible.
Lack of control.
Additional expense.
Machine efficiency.
Close proximity of developers.
Forms of prototyping
Partial working model
Vertical: only some features are fully prototyped
Horizontal: all featured are prototyped but not in detail
Incremental model
Break the system into small components.
Implement and deliver small components in sequence.
Every delivered component provides extra functionality to the user.
Deliver full system in the beginning.
1. Bob Hughes & Mike Cotterell, “Software project management”, Tata McGraw-Hill Publications, Fifth
Edition 2012
2. S.A. Kelkar, “Software project management”, PHI, new Delhi, Third Edition, 2013
3. Www.wikipedia.org
UNIT - III
Estimation is the process of finding an estimate or approximation, which is a valve that can be
used for some purpose even if input data may be incomplete, uncertain, or unstable.
Estimation determines how much money, effort, resources and time it will take to build a specific
system or product.
This assumes that the targets are reasonable - the possibility of a project leaders achieving record levels
of productivity from the team, but still not meeting a deadline because of incorrect initial estimates is
not recognized.
Estimating the effort required to implement software is notoriously difficult. Some of the difficulties of
estimating are inherent in the very nature of software, especially its complexity and invisibility.
In addition the intensely human activities that make up system development cannot be treated in a
purely mechanistic way.
Other difficulties include:
Subjective nature of estimating
Political implications
Changing technology
Lack of homogeneity of project experience.
The four basic steps in software project estimation are-
Estimate the size of the development product
Estimate the effort in person-months or person-hours
Estimate the schedule in calendar months
Estimate the project cost in agreed currency
Where are estimates done? (2M)
Estimates are carried out at various stages of a software project for various reasons.
Strategic planning
Feasibility study
System specification
Evaluation of suppliers' proposals
Project planning
EXPERT JUDGMENT
What is the mean by expert judgment? (2m)
This is asking someone who is knowledgeable about either the application area or the development
environment to give an estimate of the effort needed to carry out a task.
This method will most likely be used when estimating the effort needed to change an existing piece of
software.
The estimator would have to carry out some kind of impact analysis in order to judge the proportion of
code that would be affected and from that derives an estimate. Someone already familiar with the
software would be in the best position to do this.
ESTIMATING BY ANALOGY
How to estimate Software project effort using analogies. (13m)
The use of analogy is also called case-based reasoning.
The estimator seeks out projects that have been completed and that have similar characteristics to the
new project. The effort that has been recorded for the matching source case can then be used as a base
estimate for the target.
The estimator should then try to identify any differences between the target and the source and make
adjustments to the base estimate for the new project.
A problem here is how you actually identify the similarities and differences between the different
systems.
Attempts have been made to automate this process.
One software application that has been developed to do this is ANGEL.
This identifies the source case that is nearest the target by measuring the Euclidean distance between
cases.
The source case that is at the shortest Euclidean distance from the target is deemed to be the closest
match.
The Euclidean distance is calculated:
Euclidean distance = square-root of (target_parameter1, Source_parameter1)2 + +
(target_parametern, Source_parametern) …
Function Point Analysis
The basis of function point analysis is that computer-based information systems comprise five major
components, or external users type that are of benefit to the users:
1) External input types are input transactions that update internal computer tiles.
2) External output types are transactions where data is output to the user. Typically these would he
printed reports, since screen displays would come under external inquiry types
3) Logical internal tile types are the standing files used by the system. The term 'file does not sit
easily with modern information systems. It refers to a group of data that is usually accessed
together. It might be made up of one or more record types.
4) External interface file types allow for output and input that might pass to and from other
computer applications. Files shared among applications would also be counted here.
5) External inquiry types - note the US spelling of inquiry - are transactions initiated by the user
that provide information but do not update the internal tiles. The user inputs some information
that directs the system to the details required
The analyst has to identify each instance of each external user type in the projected system. Each
component is then classified as having high, average or low complexity. The counts of each external
user type in each complexity hand arc multiplied by specified weights to get IT scores, which are
summed to obtain an overall FP count, which indicates the information processing size.
Estimates are really management targets;
Collect as much information about previous project as possible.
Top-down approaches will be used at the earlier stages of project planning while bottom-up
approaches will be on later stages
ACTIVITY PLANNING
What is activity planning? (2m)
What are the objectives of activity planning? (2m)
Introduction
A detailed plan for the project includes a schedule indicating the start and completion times for each
activity.
To be effective, a plan must be stated as a set of targets, the achievement or non-achievement of which
can be unambiguously measured. The activity plan does this by providing a target start and completion
date for each activity
The starts and completions of activities must be clearly visible and this is one of the reasons why it is
advisable to ensure that each and every project activity produces some tangible product or ‘deliverable’.
The objectives of activity planning
The objectives of activity planning is as follows:-
Feasibility assessment
Resource allocation
Detailed costing
Motivation providing
Coordination
Activity planning and scheduling techniques place an emphasis on completing the project in a minimum
time at an acceptable cost or, alternatively, meeting a set target date at minimum cost.
When to plan
Planning is an ongoing process of refinement, each iteration becoming more detailed and more accurate
than the last. Over successive iterations, the emphasis and purpose of planning will shift.
During the feasibility Study and project start-up, the main purpose of planning will be to estimate
timescales and the risks of not achieving target completion dates or keeping within budget. As the
project proceeds beyond the feasibility study, the emphasis will be placed upon the production of
activity plans for ensuring resource availability and cash flow control.
PROJECT SCHEDULES
How to schedule project? Explain it (13 m)
Before work commences on a project or, possibly, a stage of a larger project, the project plan must be
developed to the level of showing dates when each activity should start and finish and when and how
much of each resource will be required.
Once the plan has been refined to this level of detail we call it a project schedule. Creating a project
schedule comprises four main stages.
1) The first step in producing the plan is to decide what activities need to be carried out and in what
order they are to be done. From this we can construct an ideal activity plan that is, a plan of when
each activity would ideally be undertaken were resources not, a constraint. It is the creation of the
ideal activity plan.
2) The ideal activity plan will then be the subject of an activity risk analysis, aimed at identifying
potential problems. This might suggest alterations to the ideal activity plan and will almost certainly
have implications for resource allocation.
3) The third step is resource allocation. The expected availability of resources might place constraints
on when certain activities can be carried out, and our ideal plan might need to be adapted to take
account of this.
4) The final step is schedule production. Once resources have been allocated to each activity, we will
be in a position to draw up and publish a project schedule, which indicates planned start and
completion dates and a resource requirements statement for each activity.
The advantages of the WBS approach include the belief that it is much more likely to result in a task
catalogue that is complete and is composed of non- overlapping activities
Throughout a project, we will require a schedule that clearly indicates when each of the project’s
activities is planned to occur and what resources it will need.
One way of presenting such a plan is to use a bar chart as shown in Figure.
The chart shown has been drawn up taking account of the nature of the development process (that is,
certain tasks must be completed before others may start) and the resources that are available (for
example, activity C follows activity B because Ani cannot work on both tasks at the same time).
In drawing up the chart, we have therefore done two things, we have sequenced the tasks (that is,
identified the dependencies among activities dictated by the development process) and scheduled them
(that is, specified when they should take place).
SEQUENCING AND SCHEDULING ACTIVITIES
The scheduling has had to take account of the availability of staff and the ways in which the activities
have been allocated to them.
The schedule might look quite different were there a different number of staff or were we to allocate the
activities differently.
In the case of small projects, this combined sequencing, scheduling approach might be quite suitable,
particularly where we wish to allocate individuals to particular tasks at an early planning stage.
However, on larger projects it is better to separate out these two activities: to sequence the tasks
according to their logical relationships and then to schedule them taking into account resources and
other factors.
Approaches to scheduling that achieve this separation between the logical and the physical use networks
to model the project.
NETWORK PLANNING MODELS
Describe about network planning models in detail? (13 m)
These project scheduling techniques model the project’s activities and their relationships as a network.
In the network, time flows from left to right. The best known techniques are CPM (Critical Path
Method) and PERT (Program Evaluation Review Technique).
Both of these techniques used an activity-on-arrow approach to visualizing the project as a network
where activities are drawn as arrows joining circles, or nodes, which represent the possible start and/or
completion of an activity or set of activities.
More recently a variation on these techniques, called precedence networks, has become popular.
This method uses activity-on-node networks where activities are represented as nodes and the links
between nodes represent precedence (or sequencing) requirements.
This latter approach avoids some of the problems inherent in the activity-on-arrow representation and
provides more scope for easily representing certain situations.
It is this method that is adopted in the majority of computer applications currently available.
These three methods are very similar and it must be admitted that many people use the same name
(particularly CPM) indiscriminately to refer to any or all of the methods.
FORMULATING A NETWORK MODEL
The first stage in creating a network model is to represent the activities and their interrelationships as a
graph
Constructing Precedence Networks
Rules for constructing network models:
1) A project network should have only one start node
2) A project network should have only one end node
3) A node has duration
4) Links normally have no duration
5) Precedents are the immediate preceding activities
6) Time moves from left to right
Dangle
References:
1. Bob Hughes & Mike Cotterell, “Software project management”, Tata McGraw-Hill Publications, Fifth
Edition 2012
2. S.A. Kelkar, “Software project management”, PHI, new Delhi, Third Edition, 2013
3. Www.wikipedia.org
_________________________________________________________________________________
UNIT - IV
RISK MANAGEMENT
Risk Management: Introduction
Define Risk.(2M)
What is Risk management?(2m)
What are the key elements of the risk? (2M)
Risk is defined as 'an uncertain event or condition that, if it occurs, has a positive or negative effect on a
project's objectives.
The key elements of a risk follow
It relates to the future
It involves cause and effect
What are reactive and proactive risk strategies? (2M)
How are risk classified?(2m)
Risk is the potential future harm that may arise from some present action”
Management is a process that is used to minimize or eradicate risk before it can harm the productivity of
software.
There are two risk strategies namely reactive strategies and proactive strategies.
A reactive software engineer corrects a problem as it occurs, while a proactive software engineer starts
thinking about possible risks in a project before they occur.
There are several types of risk that can occur during a software development project.
The same is illustrated in table
NATURE OF RISK
To identify and managing the risks which cause the project to overrun its time-scale or budget, there are
three types of risks:-
those caused by the inherent difficulties of estimation --> Estimation errors
those due to assumptions made during the planning process --> Planning assumptions
those of unforeseen events occurring --> Eventualities
MANAGING RISK
How to manage the risks. Explain briefly (13 m)
The objective of risk management is to avoid or minimize the adverse effects of unforeseen events by
avoiding the risks or drawing up contingency plans for dealing with them.
There are number of models for risk management, but most are similar, in that they identify two main
components- risk identification and risk management.
Risk identification: It consists of listing all of the risks that can adversely affect the successful
execution of the project.
Risk Estimation: It consists of assessing the likelihood and impact of each hazard.
Risk Evaluation: It consists of ranking the risk and determining risk aversion strategies.
Risk planning: It consists of drawing up contingency plans and ,where appropriate, adding these
to the project's task structure. For smaller projects done by project manager and for large or
medium by risk manager.
Risk control: It concerns the major function of risk manager in minimizing and reacting to
problems throughout the project.
Risk Monitoring: It is an ongoing activity
Risk directing and risk staffing: Concerned with the day-to-day management of risk. Risk
aversion and problem solving strategies involves the use of additional staffs and this must be
planned for and directed.
Here the potential damage is assessed the money value of the development process.
Few risk exposure assessments are listed below:
o Requirement specification changes during coding phase
o Staffs inability to complete the task assigned affecting the critical activities.
o Specification process takes much longer than expected.
o Module testing produces errors of design phase.
Managers try to produce very precise estimates of loss or they expect something to happen. It is the duty
of the managers to prioritize the risk and handle them giving due importance to its existence.
The potential damage and the likelihood of risk are described by qualitative descriptors, depicts the
causes and the impact of the project are shown below:
A probability impact grid or summary risk profiles are described in a matrix which indicates the position
of risk. The top right of the matrix denotes the tolerance line with serious risks levels.
RESOURCE ALLOCATION
What is a resource? (2m)
The allocation of resources to activities will lead us to review and modify the ideal activity plan.
It may cause us to revise stage or project completion dates. In any event, it is likely to lead to a
narrowing of the time-spans within which activities may be scheduled.
The final result of resource allocation will normally be a number of schedules including:
activity schedule indicating the planned start and completion dates for each activity;
resource schedule showing the dates on which each resource will be required and the level of
that requirement
cost schedule showing the planned cumulative expenditure incurred by the use of resources over
time
The nature of resources:
A resource is any item or person required for the execution of the project.
Categories of resources are:-
o Labour
o Equipment
o Materials
o Space
o Services
o Time
o Money
SCHEDULING RESOURCES
What is scheduling? (2m)
How to schedule resources to the software project. Elaborate.(13 M)
Having produced the resource requirements list, the next stage is to map this onto the activity plan to
assess the distribution of resources required over the duration of the project.
This is best done by representing the activity plan as a bar chart and using this to produce a resource
histogram for each resource.
Each activity has been scheduled to start at its earliest start date a sensible initial strategy, since we
would, other things being equal, wish to save any float to allow for contingencies.
Earliest start date scheduling, as is the case with Amanda's project, frequently creates resource
histograms that start with a peak and then Mil off
Changing the level of resources on a project over time, particularly personnel, generally adds to the cost of a
project. Recruiting staff has costs and even where staffs are transferred internally, time will be needed for
familiarization with the new project environment.
Responsibility:
The overall responsibility for ensuring adequate progress on a project is often the role of the project-
steering committee or Project Board.
Day-to-day responsibility will be with the project manager and, in all but the smallest of projects;
aspects of this can be delegated to team leaders.
Figure illustrates the typical reporting structure found with medium and large projects
With small projects employing less number of staff individual team members usually report directly to
the project manager.
But in most cases team leaders will collate reports on their section’s progress and forward summaries to
the project manager. These, in turn, will be incorporated into project-level reports for the steering
committee and, via them or directly, progress reports for the client.
Assessing the Progress
Progress assessment will be made on the basis of information collected and collated at regular intervals
or when specific events occur.
Wherever possible, this information will be objective and tangible - whether or not a particular report
has been delivered. Progress assessment will have to rely on the judgment of the team members who are
carrying out the project activities.
Table: Categories of Reporting
Setting Checkpoints
A series of checkpoints in the initial activity plan need to be set. Checkpoints maybe:
Regular (Daily, for example)
Tied to specific events such as the production of a report or other deliverable
Taking Snapshots
The frequency with which a manager needs to receive information about progress will depend upon the
size and degree of risk of the project or that part of the project under their control. Team leaders, for
example, need to assess progress daily whereas project managers may find weekly or monthly reporting
appropriate.
In general, the higher the level, the less frequent and less detailed the reporting needs to be. A formal
weekly collection of information from staff carrying out activities is favored.
COST MONITORING
Write short notes on cost monitoring?(15m)
Expenditure monitoring is a vital component of project control because it provides an indication of the
effort that has gone into a project.
A project might be on time but only because more money has been spent on activities than originally
budgeted.
A cumulative expenditure chart such as that shown in Figure provides a simple method of comparing
actual and planned expenditure. Figure illustrates a project that is running late or one that is on time but
has shown substantial costs savings.
The current status of the project activities has to be taken into account before attempting to interpret the
meaning of recorded expenditure.
Cost charts become useful if we add projected future costs calculated by adding the estimated costs of
uncompleted work to the costs already incurred. Where a computer based planning tool is used, revision
of cost schedules is generally provided automatically once actual expenditure has been recorded.
PRIORITIZING MONITORING
The priority that must be applied in deciding the levels of monitoring is discussed below:
1) Critical path activities:
Any delay in an activity on the critical path will cause a delay in the completion date for the
project. Critical path activities are therefore likely to (have a very high priority) for close
monitoring.
2) Activities with no free float:
Free float is the amount of time an activity may be delayed without affecting any subsequent
activity.
A delay in any activity with no free float will delay at least some subsequent activities even
though, if the delay is less than the total float, it might not delay the project completion date.
These subsequent delays can have serious effects on our resource schedule as a delay in a
subsequent activity could mean that the resources for that activity will become unavailable
before that activity is completed because they are committed elsewhere.
3) Activities with less than a specified float:
If any activity has very little float it might use up this float before the regular activity
monitoring brings the problem to the project manager’s attention.
It is common practice to monitor closely those activities with less than one week free float.
4) High risk activities:
A set of high-risk activities should have been identified as part of the initial risk profiling
exercise.
If we are using the PERT three-estimate approach we will designate as high risk those
activities that have a high estimated duration variance.
These activities will be given close attention because they are most likely to overrun or
overspend.
5) Activities using critical resources
Activities can be critical because they are very expensive (as in the case of specialized
contract programmers). Staff or other resources might be available only for a limited period,
especially if they are controlled outside the project team.
In any event, an activity that demands a critical resource requires a high level of monitoring
Reference Books:-
1. Bob Hughes & Mike Cotterell, “Software project management”, Tata McGraw-Hill Publications,
Fifth Edition 2012
2. S.A. Kelkar, “Software project management”, PHI, new Delhi, Third Edition, 2013
3. Www.wikipedia.org
UNIT - V
EVOLUTION OF GLOBALIZATION
Explain the evolution of globalization? (13m)
The key aspects of the various stages of evolution of global teams are:-
CHALLENGES IN BUILDING GLOBAL TEAMS
What are the challenges in building global teams? (5m)
1. Poor communication
Most virtual teams cite communication as one of their greatest challenges. They lack informal, everyday
face to face communication, which often results in loss of information or miscommunication. The team
members often go for days without contact which can lead to a feeling of isolation.
2. Lack of social interaction
The second challenges of virtual teams are that virtual working can be draining, as it is hard for team
members to create working friendships. Team members do not see how their work and projects fit as a whole,
so they often become demotivated and despondent.
3. Lack of trust
Virtual working often creates mistrust among team members, which is often one of the biggest
challenges of managing virtual teams. Members rarely work at the same time, cannot see what others are doing
and do not get immediate responses. Trust is, therefore, a big problem which can be averted by creating
awareness of the contribution and achievements of every team member.
4. Diverse multicultural teams
Virtual teams often constitute people from different ethnic groups, with different cultures. As a result,
the team members have conflicting customs, work habits, and values. Overcoming cultural diversity
automatically becomes a challenge as everyone follows his or her way of working and leaders face the
challenge of finding common grounds
6. Physical distance
Lack of face to face interaction means cold relations among members, which pose great risks for the
competence of the virtual team.
8. Routine
Just like in any other working environment, working on a daily routine reduces motivation especially in
virtual teams.
9. Personal life and work-life imbalance
The concept of virtual teams involves tasks being accomplished from the same physical space, where
most team members go about their personal lives.
4) Project Plan
All activities surrounding the projects have to be meticulously planned for and the necessary resources
required to carry out the project have to be fully allocated.
5) Client Consultation
A detailed understanding of your client requirement is a must for a project manager, and thus regular meetings between client
and the project manager are deemed necessary at all stages of the project.
7) Technical Task
Technical skills have to be matched with the right people in terms of qualifications and expertise
8) Client Acceptance
Gaining acceptance from one’s client for any given project is critical. Thus a project manager needs to
develop a sound selling strategy at an early phase of the project in order to sell the project to the client.
10) Communication
The concept of communication in project management refers to the spoken and written
documentation, plans, and drawings used in the processes of an international project.
Most of the typical applications for the internet are characteristics by the following attributes:
o Very simple deployment model
o Need for mass customization
o Self service
o Convergence of media
o Importance of standards