Software Project Management (20CS0544) QA
Software Project Management (20CS0544) QA
Subject with Code : Software Project Management (20CS0544) Course & Branch : B.Tech - CSE
Year & Sem : IV-B.Tech & I-Sem Regulation : R20
UNIT –I
PROJECT EVALUATION AND PROJECT PLANNING
Course Code: 20CS0544 R20
1 a) What is the importance of software project management? [L1][CO1] [6M]
Software Project
A Software Project is the complete procedure of software development from
requirement gathering to testing and maintenance, carried out according to the
execution methodologies, in a specified period of time to achieve intended software
product.
Need of software project management
Software is said to be an intangible product. Software development is a kind of all
new stream in world business and there‘s very little experience in building software
products. Most software products are tailor made to fit client‘s requirements. The
most important is that the underlying technology changes and advances so
frequently and rapidly that experience of one product may not be applied to the other
one. All such business and environmental constraints bring risk in software
development hence it is essential to manage software projects efficiently.
Project Estimation
For an effective management accurate estimation of various measures is a must.
With correct estimation managers can manage and control the project more
efficiently and effectively.
Project estimation may involve the following:
• Software size estimation
Software size may be estimated either in terms of KLOC (Kilo Line of
Code) or by calculating number of function points in the software. Lines
of code depend upon coding practices and Function points vary according
to the user or software requirement.
• Effort estimation
The managers estimate efforts in terms of personnel requirement and man-
hour required to produce the software. For effort estimation software size
should be known. This can either be derived by managers‘ experience,
organization‘s historical data or software size can be converted into efforts
by using some standard formulae.
• Time estimation
Once size and efforts are estimated, the time required to produce the
software can be estimated. Efforts required is segregated into sub
Course Code: 20CS0544 R20
categories as per the requirement specifications and interdependency of
various components of software. Software tasks are divided into smaller
Course Code: 20CS0544 R20
Course Code: 20CS0544 R20
tasks, activities or events by Work Breakthrough Structure (WBS). The
tasks are scheduled on day-to-day basis or in calendar months.
The sum of time required to complete all tasks in hours or days is the total
time invested to complete the project.
Cost estimation
This might be considered as the most difficult of all because it depends
on more elements than any of the previous ones. For estimating project
cost, it is required to consider - o Size of software o Software
quality o Hardware o Additional software or tools, licenses etc.
o Skilled personnel with task-specific skills
o Travel involved o
Communication o
Training and support
METHODOLOGIES:
Project Methodologies
Following are the most frequently used project management methodologies in the
project management practice:
1 - Adaptive Project Framework
In this methodology, the project scope is a variable. Additionally, the time and the
cost are constants for the project. Therefore, during the project execution, the
project scope is adjusted in order to get the maximum business value from the
project.
2 - Agile Software Development
Agile software development methodology is for a project that needs extreme
agility in requirements. The key features of agile are its short-termed delivery
cycles (sprints), agile requirements, dynamic team culture, less restrictive project
control and emphasis on real-time communication.
3 - Crystal Methods
In crystal method, the project processes are given a low priority. Instead of the
processes, this method focuses more on team communication, team member skills,
people and interaction. Crystal methods come under agile category. 4 - Dynamic
Systems Development Model (DSDM)
This is the successor of Rapid Application Development (RAD) methodology. This
is also a subset of agile software development methodology and boasts about the
training and documents support this methodology has. This method emphasizes
more on the active user involvement during the project life cycle.
Course Code: 20CS0544 R20
Course Code: 20CS0544 R20
5 - Extreme Programming (XP)
Lowering the cost of requirement changes is the main objective of extreme
programming. XP emphasizes on fine scale feedback, continuous process, shared
understanding and programmer welfare. In XP, there is no detailed requirements
specification or software architecture built.
6 - Feature Driven Development (FDD)
This methodology is more focused on simple and well-defined processes, short
iterative and feature driven delivery cycles. All the planning and execution in this
project type take place based on the features.
7 - Information Technology Infrastructure Library (ITIL)
This methodology is a collection of best practices in project management. ITIL
covers a broad aspect of project management which starts from the organizational
management level.
8 - Joint Application Development (JAD)
Involving the client from the early stages with the project tasks is emphasized by
this methodology. The project team and the client hold JAD sessions
collaboratively in order to get the contribution from the client. These JAD sessions
take place during the entire project life cycle.
9- Lean Development (LD)
Lean development focuses on developing change-tolerance software. In this
method, satisfying the customer comes as the highest priority. The team is
motivated to provide the highest value for the money paid by the customer. 10-
PRINCE2
PRINCE2 takes a process-based approach to project management. This
methodology is based on eight high-level processes.
11- Rapid Application Development (RAD)
This methodology focuses on developing products faster with higher quality. When
it comes to gathering requirements, it uses the workshop method. Prototyping is
used for getting clear requirements and re-use the software components to
accelerate the development timelines.
In this method, all types of internal communications are considered informal. 12-
Rational Unified Process (RUP)
RUP tries to capture all the positive aspects of modern software development
methodologies and offer them in one package. This is one of the first project
management methodologies that suggested an iterative approach to software
development.
13- Scrum
This is an agile methodology. The main goal of this methodology is to improve
team productivity dramatically by removing every possible burden. Scrum projects
are managed by a Scrum master. 14- Spiral
Spiral methodology is the extended waterfall model with prototyping. This method
is used instead of using the waterfall model for large projects.
15- Systems Development Life Cycle (SDLC)
This is a conceptual model used in software development projects. In this method,
there is a possibility of combining two or more project management methodologies
Course Code: 20CS0544 R20
for the best outcome. SDLC also heavily emphasizes on the use of documentation
and has strict guidelines on it.
Course Code: 20CS0544 R20
16- Waterfall (Traditional)
This is the legacy model for software development projects. This methodology has
been in practice for decades before the new methodologies were introduced. In this
model, development lifecycle has fixed phases and linear timelines. This model is
not capable of addressing the challenges in the modern software development
domain.
Course Code: 20CS0544 R20
2 Draw the architecture of SDLC and explain in detail. [L1][CO1]
Software Development Life Cycle (SDLC) is a process used by the software [12M]
industry to design, develop and test high quality softwares. The SDLC aims to
produce a high-quality software that meets or exceeds customer expectations,
reaches completion within times and cost estimates.
• SDLC is the acronym of Software Development Life Cycle.
• It is also called as Software Development Process.
• SDLC is a framework defining tasks performed at each step in the software
development process.
• ISO/IEC 12207 is an international standard for software life-cycle
processes. It aims to be the standard that defines all the tasks required for
developing and maintaining software.
SDLC
SDLC is a process followed for a software project, within a software organization.
It consists of a detailed plan describing how to develop, maintain, replace and alter
or enhance specific software. The life cycle defines a methodology for improving
the quality of software and the overall development process.
The following figure is a graphical representation of the various stages of a typical
SDLC.
There might be more than one set of users of a system and there might be
different groups of staff who are involved its development. There is a need for
well defined objectives that are accepted by all these people. Where there is more
than one user group, then a project authority needs to be identified. Such a
project authority has overall authority over what the project is to achieve.
This authority is often held by a project steering committee, which has overall
responsibility for setting, monitoring and modifying objectives. The project
manager still has responsibility for running the project on a day to day basis, but
has to report to the steering committee at regular intervals. Only the steering
committee can authorize changes to the project objectives and resources.
Measures of effectiveness
Effective objectives are concrete and well defined. Vague aspirations such as 'to
improve customer relations' are unsatisfactory. Objectives should be such that it
is obvious to all whether the project has been successful or not. Ideally there
should be measures of effectiveness, which tell us how successful the project has
been. For example, 'to reduce customer complaints by 50%' would be more
satisfactory as an objective than 'to improve customer relations'.
While project management takes a project from its starting point to its end,
strategic project management looks at the big picture. It links the project to how it
benefits the company‘s efficiency and competitiveness.
Strategic project management identifies and implements the organisation‘s
longterms goals and objectives into the project. With top tier management
involvement, it explains why the organisation exists and the context within which
it operates.
There are three common components which drive the project to its ultimate
goal for the company: 1. Strategic analysis
This forms the basis for which projects an organisation chooses to undertake. Each
project needs to link to the organisation‘s mission and be key to meeting long-term
objectives.
However, bearing in mind that strategic management is about the big picture, it
also addresses external factors that could affect progress. Thus, project managers
often use strategic analysis tools such as PESTLE to identify potential issues and
minimise their impact.
2. Strategic choice
Just how does a company decide which projects to be involved with? Managing
multiple projects is a complex task, and something that project managers do in
their daily routine. But deciding on the ‗right‘ projects is an important step which
requires a strategic choice.
Essentially, it means identifying projects that meet the aspirations and expectations
of stakeholders, while also playing to the company‘s strengths. There‘s also a need
to identify and take advantage of external opportunities, while avoiding external
threats.
3. Strategic implementation
With the scene set, the third stage of strategic management is implementation.
Here, strategic project management sets out the long-, medium- and short-term
goals for projects and programmes.
Every company wants to grow. So they need to take advantage of opportunities they
create for themselves and optimise external influences. Strategic
Course Code: 20CS0544 R20
implementation examines all kinds of benefits, including:
• The use and benefits of collaborative tools in projects
• How people and resources are assigned
• The ‗why?‘ of projects, not just at a base level, but from the top of a
company.
Measuring the success of strategic project management
Any strategy and project within the ‗bigger picture‘ needs to have indicators
to measure success. The same is true for strategic project management.
Strategic project managers often use these four categories of performance
measurement:
1. Finance
2. Customer
3. Learning and growth
4. Internal business processes.
Course Code: 20CS0544 R20
9 [L3][CO2]
[12M]
UNIT–II
PROJECT LIFECYCLE AND EFFORT ESTIMATION
Course Code: 20CS0544 R20
1 a) List out the different Software process models? [L1][CO2] [6M]
Software Processes A software process is the set of activities and associated
outcome that produce a software product. Software engineers mostly carry out
these activities. These are four key process activities, which are common to all
software processes. These activities are:
1. Software specifications: The functionality of the software and
constraints on its operation must be defined.
2. Software development: The software to meet the requirement must be
produced.
3. Software validation: The software must be validated to ensure that it
does what the customer wants.
4. Software evolution: The software must evolve to meet changing client
needs.
Software Crisis
1. Size: Software is becoming more expensive and more complex with the
growing complexity and expectation out of software. For example, the
code in the consumer product is doubling every couple of years.
2. Quality: Many software products have poor quality, i.e., the software
products defects after putting into use due to ineffective testing technique.
For example, Software testing typically finds 25 errors per 1000 lines of
code.
3. Cost: Software development is costly i.e. in terms of time taken to develop
and the money involved. For example, Development of the FAA's
Advanced Automation System cost over $700 per lines of code.
4. Delayed Delivery: Serious schedule overruns are common. Very often the
software takes longer than the estimated time to develop, which in turn
leads to cost shooting up. For example, one in four large-scale
development projects is never completed.
Program vs. Software
Software is more than programs. Any program is a subset of software, and it
becomes software only if documentation & operating procedures manuals are
prepared.
There are three components of the software as shown in fig:
Course Code: 20CS0544 R20
1. Program: Program is a combination of source code & object code.
2. Documentation: Documentation consists of different types of manuals.
Examples of documentation manuals are: Data Flow Diagram, Flow Charts, ER
diagrams, etc.
3. A role/action model: This means the roles of the people involved in the
software process and the activities for which they are responsible.
Course Code: 20CS0544 R20
4. The waterfall approach: This takes the above activities and produces
them as separate process phases such as requirements specification,
software design, implementation, testing, and so on. After each stage is
defined, it is "signed off" and development goes onto the following stage.
Based on the customer evaluation, the software development process enters the
next iteration and subsequently follows the linear approach to implement the
feedback suggested by the customer. The process of iterations along the spiral
continues throughout the life of the software.
Spiral Model Application
The Spiral Model is widely used in the software industry as it is in sync with the
natural development process of any product, i.e. learning with maturity which
involves minimum risk for the customer as well as the development firms.
The following pointers explain the typical uses of a Spiral Model −
When there is a budget constraint and risk evaluation is
important.
• For medium to high-risk projects.
• Long-term project commitment because of potential changes to economic
priorities as the requirements change with time.
• Customer is not sure of their requirements which is usually the case.
• Requirements are complex and need evaluation to get clarity.
• New product line which should be released in phases to get enough
customer feedback.
• Significant changes are expected in the product during the development
cycle.
Spiral Model - Pros and Cons
The advantage of spiral lifecycle model is that it allows elements of the product
to be added in, when they become available or known. This assures that there is
no conflict with previous requirements and design.
This method is consistent with approaches that have multiple software builds and
releases which allows making an orderly transition to a maintenance activity.
Course Code: 20CS0544 R20
Another positive aspect of this method is that the spiral model forces an early user
involvement in the system development effort.
On the other side, it takes a very strict management to complete such products
Course Code: 20CS0544 R20
and there is a risk of running the spiral in an indefinite loop. So, the discipline of
change and the extent of taking change requests is very important to develop and
deploy the product successfully.
The advantages of the Spiral SDLC Model are as follows −
• Changing requirements can be accommodated.
• Allows extensive use of prototypes.
• Requirements can be captured more accurately.
• Users see the system early.
• Development can be divided into smaller parts and the risky parts can be
developed earlier which helps in better risk management.
The disadvantages of the Spiral SDLC Model are as follows −
• Management is more complex.
• End of the project may not be known early.
• Not suitable for small or low risk projects and could be expensive for
small projects.
• Process is complex
• Spiral may go on indefinitely.
• Large number of intermediate stages requires excessive documentation.
While technical assessments may feel impersonal and unnecessary, they can
actually help reduce bias in the hiring process by providing objective data on
individuals‘ knowledge.
3 - Identify practical knowledge
Though education history does give employers a good idea of a person‘s skill
set, it isn‘t a guarantee of aptitude. There‘s a difference between understanding a
coding language well enough to pass a class or earn a certification, and
understanding a coding language well enough to use it to build an app or
website. Generally, employers prefer practical skills over theoretical
understanding. Technical assessments can help identify gaps between learning
and practical ability. 4 - Quantify soft skills
Course Code: 20CS0544 R20
You‘d think that a technical assessment would skip right over soft skills in favor
Course Code: 20CS0544 R20
of hard skills. But technical assessments are actually a great way to show your soft
skills. With only hard skills but no soft skills such as problem solving, creativity,
ingenuity, patience, and persistence, you would never be able to excel on a
technical assessment. This means that these tests allow potential employers to see
evidence of these important soft skills, which is incredibly valuable because those
can be difficult to identify and judge from interviews and resumes.
5 - Faster hiring process
If you‘re actively job hunting, it‘s likely that you want to get settled in a new job
as soon as possible. But much of the time, for various reasons, the hiring process
can be slow and inefficient, leaving you in limbo with your current employer, or
lingering in unemployment. Technical assessments take much of the guesswork out
of the hiring process, which can shorten the time between first contact and first day
of work. It‘s a win-win situation.
Course Code: 20CS0544 R20
b) Describe about Agile process Model. [L1][CO2] [6M]
An agile methodology is an iterative approach to software development. Each
iteration of agile methodology takes a short time interval of 1 to 4 weeks. The agile
development process is aligned to deliver the changing business requirement. It
distributes the software with faster and fewer changes.
The single-phase software development takes 6 to 18 months. In single-phase
development, all the requirement gathering and risks management factors are
predicted initially.
The agile software development process frequently takes the feedback of workable
product. The workable product is delivered within 1 to 4 weeks of iteration.
Roles in Agile
There are two different roles in a Agile methodology. These are the Scrum Master
and Product Owner.
1. Scrum Master
The Scrum Master is a team leader and facility provider who helps the team
member to follow agile practices, so that the team member meets their
commitments and customers requirements. The scrum master plays the following
responsibilities:
o They enable the close co-operation between all the roles and functions. o
They remove all the blocks which occur.
o They safeguard the team from any disturbances. o They work with the
organization to track the progress and processes of
Course Code: 20CS0544 R20
the company.
o They ensure that Agile Inspect & Adapt processes are leveraged
correctly which includes o Planned meetings o Daily stand-ups o
Demo
o Review
o Retrospective meetings, and o Facilitate team meetings
and decision-making process.
2. Product Owner
The Product Owner is one who runs the product from a business perspective.
The Product Owner plays the following responsibilities:
o He defines the requirements and prioritizes their values.
o He sets the release date and contents. o He takes an active role in iteration
and releasing planning meetings. o He ensures that the team is working on the
most valued requirement.
o He represents the voice of the customer. o He accepts the user stories that
meet the definition of done and defined acceptance criteria.
4 Describe incremental delivery Plan model long with iterative process [L1][CO3] [12M]
model?
This is similar to the 'incremental prototyping' approach. One Principles of
Software of the most prominent advocates of this approach is Tom Gilb. The
approach Engineering Management involves breaking the system down into
small components which are then by Tom Gilb, published by implemented and
delivered in sequence. Each component that is delivered must Addison-Wesley in
1988, actually give some benefit to the user.
Course Code: 20CS0544 R20
1. Direct cost
2. Indirect cost
3. Fixed cost
4. Variable cost
5. Sunk cost
Direct cost
Direct costs are those directly linked to doing the work of the project. For
example, this could include hiring specialised contractors, buying software
licences or commissioning your new building.
Indirect cost
These costs are not specifically linked to your project but are the cost of doing
business overall. Examples are heating, lighting, office space rental (unless your
project gets its own offices hired specially), stocking the communal coffee
machine and so on.
Fixed cost
Fixed costs are everything that is a one-off charge. These fees are not linked to
how long your project goes on for. So if you need to pay for one-time advertising
to secure a specialist software engineer, or you are paying for a day of Agile
consultancy to help you start the project up the best way, those are fixed costs.
Variable cost
These are the opposite of fixed costs - charges that change with the length of
your project. It's more expensive to pay staff salaries over a 12 month project
than a 6 month one. Machine hire over 8 weeks is more than for 3 weeks. You get
the picture.
Sunk cost
These are costs that have already been incurred. They could be made up of any of
the types of cost above but the point is that they have happened. The money has
gone. These costs are often forgotten in business cases, but they are essential to
know about
―Sunk cost is a loss which should not play any part in determining the future of
the project." Unfortunately, project sponsors and other senior executives (and
even project managers) often value completion over usefulness and it does take
courage to suggest to your sponsor that you stop a project that has already seen
significant investment.
Course Code: 20CS0544 R20
b) Demonstrate the extreme programming process models. [L2][CO2] [6M]
Extreme Programming builds on these activities and coding. It is the detailed (not
the only) design activity with multiple tight feedback loops through effective
implementation, testing and refactoring continuously.
Course Code: 20CS0544 R20
Extreme Programming is based on the following values −
• Communication
• Simplicity
• Feedback
• Courage
• Respect
Definition:- XP is a lightweight, efficient, low-risk, flexible, predictable, scientific,
and fun way to develop a software.
eXtreme Programming (XP) was conceived and developed to address the specific
needs of software development by small teams in the face of vague and changing
requirements.
Extreme Programming is one of the Agile software development methodologies.
It provides values and principles to guide the team behavior. The team is expected
to self-organize. Extreme Programming provides specific core practices where −
• Each practice is simple and self-complete.
• Combination of practices produces more complex and emergent behavior.
This can be achieved with −
• Emphasis on continuous feedback from the customer
• Short iterations
• Design and redesign
• Coding and testing frequently
• Eliminating defects early, thus reducing costs
• Keeping the customer involved throughout the development
• Delivering working product to the customer Extreme Programming
involves −
• Writing unit tests before programming and keeping all of the tests running
at all times. The unit tests are automated and eliminates defects early, thus
reducing the costs.
• Starting with a simple design just enough to code the features at hand and
redesigning when required.
• Programming in pairs (called pair programming), with two programmers
at one screen, taking turns to use the keyboard. While one of them is at the
keyboard, the other constantly reviews and provides inputs.
• Integrating and testing the whole system several times a day.
• Putting a minimal working system into the production quickly and
upgrading it whenever required.
• Keeping the customer involved all the time and obtaining constant
feedback.
Iterating facilitates the accommodating changes as the software evolves with the
changing requirements.
Course Code: 20CS0544 R20
Sprint:
A Sprint is a time-box of one month or less. A new Sprint starts immediately after
the completion of the previous Sprint.
Release:
When the product is completed then it goes to the Release stage.
Sprint Review:
If the product still have some non-achievable features then it will be checked in
this stage and then the product is passed to the Sprint Retrospective stage.
Sprint Retrospective:
In this stage quality or status of the product is checked.
Product Backlog:
According to the prioritize features the product is organized.
Sprint Backlog:
Sprint Backlog is divided into two parts Product assigned features to sprint and
Sprint planning meeting.
Advantage of using Scrum framework:
• Scrum framework is fast moving and money efficient.
• Scrum framework works by dividing the large product into small
subproducts. It‘s like a divide and conquer strategy
• In Scrum customer satisfaction is very important.
• Scrum is adaptive in nature because it have short sprint.
Course Code: 20CS0544 R20
• As Scrum framework rely on constant feedback therefore the quality of
product increases in less amount of time Disadvantage of using Scrum
framework:
• Scrum framework do not allow changes into their sprint.
• Scrum framework is not fully described model. If you wanna adopt it you need
to fill in the framework with your own details like Extreme Programming(XP),
Kanban, DSDM.
• It can be difficult for the Scrum to plan, structure and organize a project that
lacks a clear definition.
• The daily Scrum meetings and frequent reviews require substantial resources.
Course Code: 20CS0544 R20
7 Describe various software effort and cost estimation techniques including [L1][CO3] [12M]
examples.
COCOMO MODEL
Boehm proposed COCOMO (Constructive Cost Estimation Model) in
1981.COCOMO is one of the most generally used software estimation models in
the world. COCOMO predicts the efforts and schedule of a software product
based on the size of the software.
The necessary steps in this model are:
1. Get an initial estimate of the development effort from evaluation of
thousands of delivered lines of source code (KDLOC).
2. Determine a set of 15 multiplying factors from various attributes of the
project.
3. Calculate the effort estimate by multiplying the initial estimate with all
the multiplying factors i.e., multiply the values in step1 and step2. The
initial estimate (also called nominal estimate) is determined by an
equation of the form used in the static single variable models, using
KDLOC as the measure of the size. To determine the initial effort Ei in
person-months the equation used is of the type is shown below
Ei=a*(KDLOC)b
The value of the constant a and b are depends on the project type. In
COCOMO, projects are categorized into three types:
1. Organic
2. Semidetached
3. Embedded
1.Organic: A development project can be treated of the organic type, if the
project deals with developing a well-understood application program, the size of
the development team is reasonably small, and the team members are
experienced in developing similar methods of projects. Examples of this type of
projects are simple business systems, simple inventory management
systems, and data processing systems.
2. Semidetached: A development project can be treated with semidetached type
if the development consists of a mixture of experienced and inexperienced staff.
Team members may have finite experience in related systems but may be
unfamiliar with some aspects of the order being developed. Example of
Semidetached system includes developing a new operating system (OS), a
Database Management System (DBMS), and complex inventory
management system.
3. Embedded: A development project is treated to be of an embedded type, if
the software being developed is strongly coupled to complex hardware, or if the
stringent regulations on the operational method exist. For Example: ATM, Air
Traffic control.
According to Boehm, software cost estimation should be done through three
stages:
1. Basic Model
2. Intermediate Model
3. Detailed Model
Course Code: 20CS0544 R20
1. Basic COCOMO Model: The basic COCOMO model provide an accurate
size of the project parameters. The following expressions give the basic
COCOMO estimation model:
Effort=a*(KLOC)b PM
Time=c*(efforts)dMonths
Where
KLOC is the estimated size of the software product indicate in Kilo Lines of
Code,
a,b,c,d are constants for each group of software products,
Time is the estimated time to develop the software, expressed in months,
Effort is the total effort required to develop the software product,
expressed in person months (PMs). Estimation of development effort
For the three classes of software products, the formulas for estimating the effort
based on the code size are shown below: Organic: Effort = 2.4(KLOC) 1.05
PM
Semi-detached: Effort = 3.0(KLOC) 1.12 PM
Embedded: Effort = 3.6(KLOC) 1.20 PM
Estimation of development time
For the three classes of software products, the formulas for estimating the
development time based on the effort are given below: Organic: Tdev =
2.5(Effort) 0.38 Months
Semi-detached: Tdev = 2.5(Effort) 0.35 Months
Embedded: Tdev = 2.5(Effort) 0.32 Months
Some insight into the basic COCOMO model can be obtained by plotting the
estimated characteristics for different software sizes. Fig shows a plot of
estimated effort versus product size. From fig, we can observe that the effort is
somewhat superliner in the size of the software product. Thus, the effort required
to develop a product increases very rapidly with project size.
Course Code: 20CS0544 R20
The development time versus the product size in KLOC is plotted in fig. From
fig it can be observed that the development time is a sub linear function of the
size of the product, i.e. when the size of the product increases by two times, the
time to develop the product does not double but rises moderately. This can be
explained by the fact that for larger products, a larger number of activities which
can be carried out concurrently can be identified. The parallel activities can be
carried out simultaneously by the engineers. This reduces the time to complete
the project. Further, from fig, it can be observed that the development time is
roughly the same for all three categories of products. For example, a 60 KLOC
program can be developed in approximately 18 months, regardless of whether it
is of organic, semidetached, or embedded type.
From the effort estimation, the project cost can be obtained by multiplying the
required effort by the manpower cost per month. But, implicit in this project cost
computation is the assumption that the entire project cost is incurred on account
of the manpower cost alone. In addition to manpower cost, a project would incur
costs due to hardware and software required for the project and the company
overheads for administration, office space, etc.
It is important to note that the effort and the duration estimations obtained using
the COCOMO model are called a nominal effort estimate and nominal duration
estimate. The term nominal implies that if anyone tries to complete the project in
a time shorter than the estimated duration, then the cost will increase drastically.
But, if anyone completes the project over a longer period of time than the
estimated, then there is almost no decrease in the estimated cost value.
Course Code: 20CS0544 R20
Example1: Suppose a project was estimated to be 400 KLOC. Calculate the
effort and development time for each of the three model i.e., organic, semi-
Course Code: 20CS0544 R20
detached & embedded.
Solution: The basic COCOMO equation takes the form:
Effort=a1*(KLOC) a2 PM
Tdev=b1*(efforts)b2 Months
Estimated Size of project= 400 KLOC
(i)Organic Mode
E = 2.4 * (400)1.05 = 1295.31 PM
D = 2.5 * (1295.31)0.38=38.07 PM
(ii)Semidetached Mode
E = 3.0 * (400)1.12=2462.79 PM
D = 2.5 * (2462.79)0.35=38.45 PM
(iii) Embedded Mode
E = 3.6 * (400)1.20 = 4772.81 PM
D = 2.5 * (4772.8)0.32 = 38 PM
Course Code: 20CS0544 R20
8 Explain in brief bottom-up and top-down approaches in software effort [L2][CO3] [12M]
estimation?
Using the Top-Down Approach
The top-down approach to defining project tasks involves starting with the
project goal or final deliverable and breaking it down into smaller planning
chunks. We call them work packages. Each of these work packages or ―chunks‖
is further refined into greater detail, and then work items are assigned to team
members.
The top-down approach works well when there‘s a clear insight into the details
of a project, and the leading project manager has a big picture of how the project
contributes to the organization.
The benefit of top-down is that the major tasks are quickly identified, and
the details are later refined by the project team. However, the downside is
that details might be missed without a detailed review by the project team. A
Top-Down Example
Let‘s say you‘re responsible for upgrading your application‘s hardware and
software layers. Based on past experience, you know you‘ll need to install a new
server, install the upgraded operating system, and then install the latest version
of the application software. These are all top-down tasks that can be assigned to
a project team to implement. The risk is that the application software doesn‘t
work on an upgraded software layer due to a conflicting API or compiled library.
The challenge is in all those pesky details that impact your project. Using the
Bottom-Up Approach
The bottom-up approach to answering ―What are the tasks?‖ relies on project
team members identifying the tasks and then organizing them into specific
groups or work packages. If you applied a bottom-up approach to identify tasks
for the software upgrade mentioned above, the entire project team would
brainstorm all the tasks required to correctly upgrade the system. There‘s also a
greater chance that a team member will identify an operating system conflict or
at least include a step to test that feature than in top-down planning. Ideas get
flowing and tasks can be written down on sticky note pads or index cards. All
these tasks can then be logically grouped into categories that make up each work
package.
The bottom-up approach results in a more detailed schedule, but it‘s also a
timeconsuming approach compared with the top-down task planning approach.
The schedule you create is based on direct input from experts who will be
implementing the project; it‘s also a useful technique to build teamwork.
Course Code: 20CS0544 R20
9 How the COSMIC full function point can be explored based on effort [L2][CO2] [12M]
estimation techniques?
A COSMIC Function Point (CFP):
● is a measure of the functional size of any type of software;
● represents a movement of data and any software;
● is one of the 4 types of data movements (Entry, Exit, Read, Write);
● can measure the smallest software function that exists and the largest software
function that can be built;
● can be used to compare the size of software pieces made in the past with those
of the present and those of the future;
● can compare the size of software functions independently of the methodology
used to build them.
The COSMIC measurement principle is:
The functional size of a piece of software is equal to the number of its data movements
Example 1: When there is a single data movement of the 4 types in Fig. 1, the functional
size is:
1 Entry + 1 Exit + 1 Read + 1 Write = 1 CFP + 1 CFP + 1 CFP + 1 CFP= 4 CFP.
Example 2: When there are two data movements of the 4 types in Fig. 1, the functional
size is:
2 Entries + 2 Exits + 2 Reads + 2 Writes = 2 CFP + 2 CFP + 2 CFP + 2 CFP = 8 CFP
10 a) Illustrate the following: [L2][CO3] [6M]
Staffing pattern with Norden’s work and Putnam’s works.
Staffing level Estimation: NORDEN WORK
Project manager has to figure out Staff Estimation after the effort required to
develop a software has been determined.
Norden Estimation:
He studied the Staffing patterns of R & D projects and proposed that Staffing
level patterns can be approximated by the "Rayleigh Distribution Curve"
which specifies that the relationship between applied effort and
Course Code: 20CS0544 R20
delivery time for software project. It is also called Putnam- NORDENRayleigh
Curve or PNR curve.
He represented the Rayleigh Curve by this equation
E=K/t2d*t*e-t2/2td2
L=CkK1/3td4/3
(Excellent environment)
Course Code: 20CS0544 R20
b) Basics of Software Estimation. [L2][CO3] [6M]
Course Code: 20CS0544 R20
Estimation is the process of finding an estimate, or approximation, which is a
value 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. Estimation is based on −
• Past Data/Past Experience
• Available Documents/Knowledge
• Assumptions
• Identified Risks
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.
Observations on Estimation
• Estimation need not be a one-time task in a project. It can take place
during − o Acquiring a Project. o Planning the Project.
o Execution of the Project as the need arises.
• Project scope must be understood before the estimation process begins. It
will be helpful to have historical Project Data.
• Project metrics can provide a historical perspective and valuable input for
generation of quantitative estimates.
• Planning requires technical managers and the software team to make an
initial commitment as it leads to responsibility and accountability.
• Past experience can aid greatly.
• Use at least two estimation techniques to arrive at the estimates and
reconcile the resulting values. Refer Decomposition Techniques in the
next section to learn about reconciling estimates.
• Plans should be iterative and allow adjustments as time passes and more
details are known.
General Project Estimation Approach
The Project Estimation Approach that is widely used is Decomposition
Technique. Decomposition techniques take a divide and conquer approach. Size,
Effort and Cost estimation are performed in a stepwise manner by breaking down
a Project into major Functions or related Software Engineering Activities.
Step 1 − Understand the scope of the software to be built.
Step 2 − Generate an estimate of the software size.
• Start with the statement of scope.
• Decompose the software into functions that can each be estimated
individually.
• Calculate the size of each function.
Course Code: 20CS0544 R20
• Derive effort and cost estimates by applying the size values to your
baseline productivity metrics.
Course Code: 20CS0544 R20
Course Code: 20CS0544 R20
• Combine function estimates to produce an overall estimate for the entire
project.
Step 3 − Generate an estimate of the effort and cost. You can arrive at the effort
and cost estimates by breaking down a project into related software engineering
activities.
• Identify the sequence of activities that need to be performed for the
project to be completed.
• Divide activities into tasks that can be measured.
• Estimate the effort (in person hours/days) required to complete each task.
• Combine effort estimates of tasks of activity to produce an estimate for
the activity.
• Obtain cost units (i.e., cost/unit effort) for each activity from the database.
• Compute the total effort and cost for each activity.
• Combine effort and cost estimates for each activity to produce an overall
effort and cost estimate for the entire project.
Step 4 − Reconcile estimates: Compare the resulting values from Step 3 to those
obtained from Step 2. If both sets of estimates agree, then your numbers are highly
reliable. Otherwise, if widely divergent estimates occur conduct further
investigation concerning whether −
• The scope of the project is not adequately understood or has been
misinterpreted.
• The function and/or activity breakdown is not accurate.
• Historical data used for the estimation techniques is inappropriate for the
application, or obsolete, or has been misapplied.
Step 5 − Determine the cause of divergence and then reconcile the estimates.
Estimation Accuracy
Accuracy is an indication of how close something is to reality. Whenever you
generate an estimate, everyone wants to know how close the numbers are to
reality. You will want every estimate to be as accurate as possible, given the data
you have at the time you generate it. And of course you don‘t want to present an
estimate in a way that inspires a false sense of confidence in the numbers.
Important factors that affect the accuracy of estimates are −
The accuracy of all the estimate‘s input data.
• The accuracy of any estimate calculation.
• How closely the historical data or industry data used to calibrate the
model matches the project you are estimating.
• The predictability of your organization‘s software development process.
• The stability of both the product requirements and the environment that
supports the software engineering effort.
• Whether or not the actual project was carefully planned, monitored and
controlled, and no major surprises occurred that caused unexpected
delays.
Course Code: 20CS0544 R20
Following are some guidelines for achieving reliable estimates −
• Base estimates on similar projects that have already been completed.
Course Code: 20CS0544 R20
Course Code: 20CS0544 R20
• Use relatively simple decomposition techniques to generate project cost
and effort estimates.
• Use one or more empirical estimation models for software cost and effort
estimation.
Refer to the section on Estimation Guidelines in this chapter.
To ensure accuracy, you are always advised to estimate using at least two
techniques and compare the results.
Estimation Issues
Often, project managers resort to estimating schedules skipping to estimate size.
This may be because of the timelines set by the top management or the marketing
team. However, whatever the reason, if this is done, then at a later stage it would
be difficult to estimate the schedules to accommodate the scope changes.
While estimating, certain assumptions may be made. It is important to note all
these assumptions in the estimation sheet, as some still do not document
assumptions in estimation sheets.
Even good estimates have inherent assumptions, risks, and uncertainty, and yet
they are often treated as though they are accurate.
The best way of expressing estimates is as a range of possible outcomes by saying,
for example, that the project will take 5 to 7 months instead of stating it will be
complete on a particular date or it will be complete in a fixed no. of months.
Beware of committing to a range that is too narrow as that is equivalent to
committing to a definite date. You could also include uncertainty as an
accompanying probability value. For example, there is a 90% probability that the
project will complete on or before a definite date.
• Organizations do not collect accurate project data. Since the accuracy of the
estimates depend on the historical data, it would be an issue.
• For any project, there is a shortest possible schedule that will allow you to
include the required functionality and produce quality output. If there is a
schedule constraint by management and/or client, you could negotiate on
the scope and functionality to be delivered.
• Agree with the client on handling scope creeps to avoid schedule overruns.
• Failure in accommodating contingency in the final estimate causes issues.
For e.g., meetings, organizational events.
• Resource utilization should be considered as less than 80%. This is because
the resources would be productive only for 80% of their time. If you assign
resources at more than 80% utilization, there is bound to be slippages.
Estimation Guidelines
One should keep the following guidelines in mind while estimating a project −
• During estimation, ask other people's experiences. Also, put your own
experiences at task.
Course Code: 20CS0544 R20
Assume resources will be productive for only 80 percent of their time.
Hence, during estimation take the resource utilization as less than 80%.
Resources working on multiple projects take longer to complete tasks
because of the time lost switching between them.
Include management time in any estimate.
Always build in contingency for problem solving, meetings and other
unexpected events.
Allow enough time to do a proper project estimate. Rushed estimates are
inaccurate, high-risk estimates. For large development projects, the
estimation step should really be regarded as a mini project.
Where possible, use documented data from your organization‘s similar
past projects. It will result in the most accurate estimate. If your
organization has not kept historical data, now is a good time to start
collecting it.
Use developer-based estimates, as the estimates prepared by people other
than those who will do the work will be less accurate.
Use several different people to estimate and use several different
estimation techniques.
Reconcile the estimates. Observe the convergence or spread among the
estimates. Convergence means that you have got a good estimate.
Wideband-Delphi technique can be used to gather and discuss estimates
using a group of people, the intention being to produce an accurate,
unbiased estimate.
Re-estimate the project several times throughout its life cycle.
Course Code: 19CS0537 R19
UNIT–III
ACTIVITYPLANNINGANDRISKMANAGEMENT
b)Draw and explain Sequencing and scheduling with a neat sketch. Sequencing [L1][CO3] [6M]
and Scheduling Activities
Project and its activities must be clearly defined to achieve the target.
An activity plan will contain the following factors:
• A project is basically, composed of number of interrelated activities.
• The initiation of a project happens only if at least one activity is ready to start.
• An activity is clearly defined with its start and end point that produce good
deliverables.
• Activity requiring resources must be analysed well in advance and made available
during the execution.
• Some activities would depend on other activities for them to complete.
• A project can attain its completion only when all activities have been completed.
Approaches to Identify Activities
The various approaches used in identifying activities are:
• Activity-based approach
• Product-based approach
• Hybrid approach
Activity-based approach:
In the activity-based approach, all the activities are listed and created for the project. This is
achieved by a brainstorming session where the entire project team analysis the various activities
needed a0t different stages with the help of similar projects. This approach usually generates the
list of activities using a work breakdown structure (WBS).WBS helps in identifying the lowest
level of effort i.e. the task required to complete a project by breaking down into lower sets of
tasks.
Course Code: 19CS0537 R19
Product-based approach:
• The product-based approach produces a product breakdown structure along with a
product flow diagram.
• The approach accepts the products as inputs which is transformed into an ordered list of
activities.
• Product Flow Diagram do not leave out any activity from its ordered list and adopts a
methodology which clearly specifies what are the products required and what are the
activities required to produce the product
Hybrid approach:
• WBS deals with list of final deliverables whereas PBS deals in producing the products
using the product flow diagram.
• Hybrid approach combines both the activity-based and product-based approach to
structure both activities and products.
• Structuring of product-based or activity-based approach depends on the nature of the
project type.
Course Code: 19CS0537 R19
Course Code: 19CS0537 R19
Sequencing and scheduling activities
Scheduling is required for every activity that is planned along with the
resources and can be represented using a bar chart.
The chart describes the nature of the development process and the resources
available for completing the specified activities
2 Illustrate different activity based approaches involved in activity Planning. [L2][CO3] [12M]
Activity-based approach:
In the activity-based approach, all the activities are listed and created for the project. This is
achieved by a brainstorming session where the entire project team analysis the various activities
needed a0t different stages with the help of similar projects. This approach usually generates the
list of activities using a work breakdown structure (WBS).WBS helps in identifying the lowest
level of effort i.e. the task required to complete a project by breaking down into lower sets of
tasks
Let's have a look at how critical path method is used in practice. The process of using critical path
method in project planning phase has six steps.
Step 1: Activity specification
You can use the Work Breakdown Structure (WBS) to identify the activities involved in the
project. This is the main input for the critical path method.
In activity specification, only the higher-level activities are selected for critical path method.
When detailed activities are used, the critical path method may become too complex to manage
and maintain.
Step 2: Activity sequence establishment
In this step, the correct activity sequence is established. For that, you need to ask three questions
for each task of your list.
• Which tasks should take place before this task happens.
• Which tasks should be completed at the same time as this task.
Which tasks should happen immediately after this task.
Step 3: Network diagram
Once the activity sequence is correctly identified, the network diagram can be drawn (refer to the
sample diagram above).
Although the early diagrams were drawn on paper, there are a number of computer softwares,
such as Primavera, for this purpose nowadays.
Step 4: Estimates for each activity
This could be a direct input from the WBS based estimation sheet. Most of the companies use
3point estimation method or COCOMO based (function points based) estimation methods for
tasks estimation.
You can use such estimation information for this step of the process.
Step 5: Identification of the critical path
For this, you need to determine four parameters of each activity of the network.
• Earliest start time (ES) - The earliest time an activity can start once the previous
dependent activities are over.
• Earliest finish time (EF) - ES + activity duration.
• Latest finish time (LF) - The latest time an activity can finish without delaying the
project.
• Latest start time (LS) - LF - activity duration.
Course Code: 19CS0537 R19
The float time for an activity is the time between the earliest (ES) and the latest (LS) start time or
between the earliest (EF) and latest (LF) finish times.
During the float time, an activity can be delayed without delaying the project finish date.
The critical path is the longest path of the network diagram. The activities in the critical path have
an effect on the deadline of the project. If an activity of this path is delayed, the project will be
delayed.
In case if the project management needs to accelerate the project, the times for critical path
activities should be reduced.
Step 6: Critical path diagram to show project progresses
Critical path diagram is a live artefact. Therefore, this diagram should be updated with actual
values once the task is completed.
This gives more realistic figure for the deadline and the project management can know whether
they are on track regarding the deliverables.
Late Finish (LF) is on the right corner box at the bottom and Late Start (LS) is plotted on the left
bottom corner box.
Activity name ―B‖ is in the 2nd box duration represented by 10 is on the 5th box at the middle.
Late Start (LS) is the latest date that the activity can finish without causing a delay to the project
completion date.
LS = LF – Duration
If Late Finish is 30 days and duration is 10 days, LS = 30 – 10 = 20 Days
Critical Path is the longest sequence of activity on a project that carry zero free float / slack.
Float Calculation
The whole idea of network diagram and finding the project duration is to identify the critical
path and total float. Float represents how much each individual activity can be delayed without
delaying successor activities or project completion date.
Total Float = LS – ES or LF – EF
Total Float shows the difference between the Earliest Start (ES) and Latest Start (LS) of an activity
before the completion date is delayed.
Risk Identification
The first step in identifying the risks a company faces is to define the risk universe. The risk
universe is simply a list of all possible risks. Examples include IT risk, operational risk, regulatory
risk, legal risk, political risk, strategic risk, and credit risk.
After listing all possible risks, the company can then select the risks to which it is exposed and
categorize them into core and non-core risks. Core risks are those that the company must take in
order to drive performance and long-term growth. Non-core risks are often not essential and can
be minimized or eliminated completely.
Risk Measurement
Risk measurement provides information on the quantum of either a specific risk exposure or an
aggregate risk exposure and the probability of a loss occurring due to those exposures. When
measuring specific risk exposure it is important to consider the effect of that risk on the overall
risk profile of the organization.
Some risks may provide diversification benefits while others may not. Another important
consideration is the ability to measure an exposure. Some risks may be easier to measure than
others. For example, market risk can be measured using observed market prices, but measuring
operational risk is considered both an art and a science.
Specific risk measures often give the profit and loss ("P/L") impact that can be expected if there
is a small change in that risk. They may also provide information on how volatile the P/L can be.
For example, the equity risk of a stock investment can be measured as the P/L impact of the stock
as a result of a 1 unit change in, say, the S&P500 index or as the standard deviation of the particular
stock.
Risk Mitigation
Having categorized and measured its risks, a company can then decide on which risks to eliminate
or minimize, and how many of its core risks to retain. Risk mitigation can be achieved through
an outright sale of assets or liabilities, buying insurance, hedging with derivatives, or
diversification.
It is important to report regularly on specific and aggregate risk measures in order to ensure that
risk levels remain at an optimal level. Financial institutions that trade daily will produce daily risk
reports. Other institutions may require less frequent reporting. Risk reports must be sent to risk
personnel who have the authority to adjust (or instruct others to adjust) risk exposures.
Risk Governance
Risk governance is the process that ensures all company employees perform their duties in
accordance with the risk management framework. Risk governance involves defining the roles of
all employees, segregating duties, and assigning authority to individuals, committees, and the
board for approval of core risks, risk limits, exceptions to limits, and risk reports, and also for
general oversight.
Course Code: 19CS0537 R19
5 Summarize the following: a) [L2][CO3] [12M]
Risk Identification
b) Risk Assessment
a) Risk Identification
Three steps as they cover risk identification specifically (while the remaining steps are about
validating and formalizing findings against the overall project‘s scope).
Course Code: 19CS0537 R19
Template specification
This is a risk statement based on feedback about causes, effects, impacts, areas of risk, and
events. A structured template helps you capture this in a consistent way.
Basic identification
Answering two questions about potential risks: why or why not us and whether they have been
experienced before. The former can be captured via SWOT analysis exercise while the latter is a
statement, ideally referenced from a project post mortem or lessons learned library.
Detailed identification
This step is more time-consuming than the previous ones but also delivers the detail you need to
properly assess risk. PMI identifies five tools to use:
• Interviewing
• Assumptions analysis
• Document reviews
• Delphi technique
• Brainstorming
Once you‘ve completed these steps you‘ll need to categorize risk in the next one — the External
cross-check step.
Step five is the Internal Cross-check which maps risks to corresponding elements in the scope
of work. At this point you will start forming a view of what project elements are riskier than
others, and what mitigation strategies to adopt.
The final step, Statement Finalization, packages findings in a series of diagrams covering risky
areas, causes, and impacts.
b) Risk Assessment:
Identifying, assessing, and controlling hazards and risks in the systematic process is the meaning
of risk assessment. Determining which safeguards are in place—or ought to be—to eliminate or
manage risk in the workplace in any conceivable circumstance is the responsibility of a competent
person. These evaluations aid in identifying these innate risks and offer countermeasures,
procedures, and controls to lessen their adverse effects on business operations.
Step 1
Course Code: 19CS0537 R19
Determine the dangers. Finding possible risks that, if they materialized, would have a negative
impact on the organization's ability to conduct business is the first stage in a risk assessment.
Natural catastrophes, cyber-attacks, utility outages, and power outages are examples of potential
risks that might be taken into account or discovered during the risk assessment process.
Step 2
Ascertain who or what might be affected. The next phase is identifying which corporate assets
would be adversely affected if the risk materialized after the identified risks. Critical
infrastructure, IT systems, business operations, business reputation, and even employee safety are
Step 3
Assess the hazards and create preventative measures. A risk analysis can assist in determining the
potential effects of risks on business assets and the protective actions that can be taken to lessen
or eliminate such effects. For example, risks could result in property damage, financial loss,
Make a record of your findings. The company needs to record the risk assessment results and
store them in conveniently accessible formal papers. In addition, records should contain
information on prospective risks and strategies for avoiding them.
Step 5
Conduct a frequent review and updating of the risk assessment. Potential threats, risks, and
associated controls can alter quickly in a present company context. To keep up with these
changes, it's critical for businesses to update their risk assessments regularly.
Course Code: 19CS0537 R19
6 Describe Two Network Planning models in Activity Planning in brief. [L1][CO4] [12M]
Network Model
Network analysis is a technique of planning, scheduling and controlling of a large and complex
project comprising various activities.
· Network technique provides a rational approach to the planning and controlling of
construction works.
· Application of such techniques is inevitable when there is a constraint on resources and a
need for higher productivity.
· Commonly used network techniques are CPM and PERT.
Critical Path Method (CPM)
· CPM was developed in 1956, in the USA, by a team of engineers working for Dupont
Corporation and Remington Rand.
· The method was successfully tried for the construction of chemical plant in Louisville,
USA.
· The method was also used with extraordinary success for carrying out the repair of a unit
in a chemical plant, resulting in nearly 30 % reduction in the shut down time.
· The usefulness of CPM was thus fully established.
· Presently this method is used worldwide in business and industry also.
Use of CPM provides meaningful answers to such questions as:
o What will be the completion time of the project? o If there is a delay in one activity, will
the entire project be delayed? If so, by how much?
b) What are the advantages & disadvantages observed in PERT Technique? [L1][CO4] [6M]
Advantages
1. Estimation of completion time of project is given by the PERT.
2. It supports the identification of the activities with slack time.
3. The start and dates of the activities of a specific project is determined.
4. It helps project manager in identifying the critical path activities.
5. PERT makes well organized diagram for the representation of large amount of data.
Disadvantages of PERT :
It has the following disadvantages :
1. The complexity of PERT is more which leads to the problem in implementation.
2. Labor
The labour resource concerns the staff involved in a project.Every staff member will not
necessarily be engaged for the entire duration of a project. Whilst the project manager will be
engaged from start to finish, the involvement of others can vary. Staff availability is also a factor.
An individual might be involved in another project at the organization or an earlier activity may
have taken longer than planned
3. Equipment
5.Money
Money is a secondary resource type in project management. It is used to purchase, acquire, and
maintain all other resources in a project. This is usually in the form of investment and business
capital.
5. Space
Space should be already available for projects that do not require hiring new
Course Code: 19CS0537 R19
staff. More space may be required when adding new staff (permanent or
temporary) to the team.
Space requirements may also vary during different stages of the project. For
example, developers for Quality Assurance may only needed at a later
stage of development. Similarly, user testing and user interviews (which
may require special facilities) are not done continuously. Management
should plan and adjust for space as required for each stage of the project.
Hiring remote and/or semi-remote staff is also an option to save costs on the
space resource. Automatic, the web development company behind Word
Press employs more than 700 remote staff.
7.Time : Time is the resource that is being offset against the other primary resources – project
timescales can be reduced by increasing other resources and will almost certainly be extended if
they are unexpectedly reduced.
b) How can you identify resource Requirements in producing a project? [L2][CO4] [6M]
Course Code: 19CS0537 R19
9 Illustrate various activities involved in creating critical paths or critical patterns? [L3][CO4] [12M]
1. List activities
Use a work breakdown structure to list all the project activities or tasks required to produce the
deliverables. The list of activities in the work breakdown structure serves as the foundation for
the rest of the CPM.
2. Identify dependencies Based on your work breakdown structure, determine the tasks
that are dependent on one another. This will also help you identify any work that can be done in
parallel with other tasks.
Here are the task dependencies based on the example above:
• Task B is dependent on A
• Task C is dependent on B
• Tasks C and D can run in parallel
• Task E is dependent on D
• Task F is dependent on C, D, and E
The list of dependent tasks is referred to as an activity sequence, which will be used to
determine the critical path.
• Staff costs These will include staff salaries as well as the other direct costs of
employmentsuch as the employer's contribution to social security funds, pension scheme
contributions, holiday pay and sickness benefit. These are commonly charged to projects at hourly
rates based on weekly work records completed by staff. Note that contract staff are usually
charged by the week or month - even when they are idle.
• Usage charges In some organizations, projects are charged directly for use of resources
such ascomputer time (rather than their cost being recovered as an overhead). This will normally
be on an 'as used' basis.
Course Code: 19CS0537 R19
UNIT–IV
PROJECTMANAGEMENTANDCONTROL
Course Code: 19CS0537 R19
1 Explain Creation of Framework for Project Management and Control. [L2][CO5] [12M]
A project management framework consists of the processes, tasks, and tools used to take a
project from start to finish. It encompasses all the key components required for planning,
managing, and governing projects.
The project management framework can be broken into three parts:
• Consistency: With a project management framework, processes are consistent across the
organization. This allows for greater precision in planning projects and setting
deadlines.
• Clarity: A framework clearly lays out all project tasks and the tools needed to complete
them, meaning there is no confusion when teams get to the execution stage.
• Simplification: When large projects are broken down into smaller tasks, it is easier for
• Optimization: A project management framework can help managers assess how much
time and money is spent on each project. This enables them to successfully allocate and
optimize resources for future projects.
Course Code: 19CS0537 R19
Communication: By meeting regularly with teams as outlined in their chosen framework,
information flow.
2 Demonstrate the Collection of Data Project Termination with suitable examples. [L2][CO5] [12M]
Course Code: 19CS0537 R19
3 Develop the following terms in brief a)
Review [L3][CO5] [12M]
b)Project Termination Review
a) Review :
A review is a systematic examination of a document by one or more people with the main aim
of finding and removing errors early in the software development life cycle. Reviews are used to
verify documents such as requirements, system designs, code, test plans and test cases.
Importance of Review Process:
• Productivity of Development team is improved and timescales reduced because the
correction of defects in early stages and work-products will help to ensure that those
work-products are clear and unambiguous.
• Testing costs and time is reduced as there is enough time spent during the initial phase.
• Reduction in costs because fewer defects in the final software.
Types of Defects during Review Process:
• Deviations from standards either internally defined or defined by regulatory or a trade
organisation.
• Requirements defects.
• Design defects.
• Incorrect interface specifications.
Reviews are usually performed manually while static analysis of the tools is performed using
tools.
Failure and Success are two basic reasons for terminating projects. In order to determine which
of the reason is relevant to a project, first the team needs to understand criteria for success and
failure and then evaluate the project against those criteria. Here‘re some tips on this point:
• Success: a project reaches success when its goals and objectives are accomplished on
time and under budget, deliverables are produced as expected by stakeholders, and the
final product is accepted by and handed over to the customer (end-user).
• Failure: a project is regarded as failed when its requirements are not met; the customer
refuses accepting the product; there‘re some technical issues that can‘t be resolved by
using existing tools and technologies; there‘s an unanticipated loss or lack of human,
funding and other valuable resources; the project effort becomes counter-productive
because initial goals and objectives are unmet.
4 Illustrate the visualizing progress in Project Management and Control. [L3][CO5] [12M]
Visualizing progress:
A manager needs some way of presenting that data to the greatest effect. Some methods of
presenting picture are,
Gantt chart – It is used to track project progress .It is the simple and the oldest form of
representing the progress of the project. It consists of an activity bar that indicates the scheduled
activity dates and the duration along with the activity floats.
Slip chart – It is a visual indication of activities that are not progressing to schedule.
Course Code: 19CS0537 R19
Alternative view of Gantt chart by providing a visual indication of those activities which are not
on schedule. The more bend in the greater the variation in the project plan. If the slip line deviates
more towards the non-achievement of project objectives then it has to be reconsidered.
Additional slip lines can be included at regular intervals.
Ball charts – The way of showing whether or not targets have been met or not. It is represented
in the form of circles that indicate the start and the end point completion of activities. Circles of
the ball chart mostly contain only two dates, the original and the revised one. An activity is
denoted by a red circle and green colour denotes that the activity is ahead of its schedule. Slippage
in the project completion date but it is overcome by the timeline charts
TimeLine - The timeline is a method of recording and displaying the way in which targets have
changed throughout the duration of the project.
Course Code: 19CS0537 R19
5 Explain Cost Monitoring in Project Control with simple examples. [L2][CO5] [12M]
• Expenditure monitoring is an important component of project control
• A project might be on time but only because more money has been spent on activities
than originally budgeted
• Cost chart is useful if we add project feature
• Computer based planning tool is used
• A project could be late because the staff originally committed, have not been deployed
In this case the project will be behind time but under budget
• A project could be on time but only because additional resources have been added and
so by over budget
• Need to monitor both achievements and costs
Course Code: 19CS0537 R19
6 Demonstrate the Earned Value Analysis in project management control. [L2][CO5] [12M]
• EVA provides different measures of progress for different types of tasks. It is the single
way for measuring everything in a project.
• Provides an ‗Early Warning‘ signal for prompt corrective action. The types of signals
can be the following:
a) Bad news does not age well – Holding on to the bad news does not help. The project
manager needs to take an immediate action.
b) Still time to recover – In case, the project is not going as per schedule and may get
delayed, the situation is needed to be taken care of by finding out the reasons that are
causing delay and taking the required corrective action.
c) Timely request for additional funds – While there is time to recover, the need for
additional resources or funds can be escalated with an early warning.
• It allows ‗rolling up‘ the progress of many tasks into an overall project status.
• It provides with a uniform unit of measure (dollars or work-hours) for the progress.
• Planned Value (PV) – The approved cost baseline for the work package. It was earlier
known as Budgeted Cost of Work Scheduled (BCWS).
• Earned Value (EV) – The budgeted value of the completed work packages. It used to
be known as Budgeted Cost of Work Performance at a specified point (BCWP).
Actual Cost (AC) – The actual cost incurred during the execution of work packages up to a
specified point in time. It was previously called Actual Cost of Work Performed (ACWP).
7 What is meant by project Monitoring? Explain it in detail. [L1][CO5] [12M]
Course Code: 19CS0537 R19
8 Prepare short notes on a)Project
Tracking [L3][CO5] [12M]
b)Change Control
a) Project tracking
Project tracking is a project management method used to track the progress of tasks in a
project. By tracking your project, you can compare actual to planned progress, and identify
issues that may prevent the project from staying on schedule and within budget.
Course Code: 19CS0537 R19
Tracking is the process of determining how well you are sticking to the cost estimate and
schedule.
It is the same as adapting the schedule according to the latest developments
Benefits:
Project tracking helps project managers and stakeholders know what work has been done,
the resources that have been used to execute those tasks, and help them create an earned
value analysis by measuring project variance and tracking milestones. Steps to track the
project:
b) Change control
Change control is a methodology used to manage any change requests that impact the
baseline of your project. It‘s a way to capture that change from the point where it‘s been
identified through every step of the project cycle. That includes evaluating the request
and then approving, rejecting or deferring it.
The purpose of this process is to make sure that you‘re not changing things in the project
that don‘t need to be changed. The last thing you want to do is disrupt the project for no good
reason, wasting valuable time and resources. Any changes that are approved are then documented.
The change control process is part of the larger change management plan.
Key Elements of Change Control
There are some key elements that build a change control framework for project management.
Here‘s a brief description of them.
• Change Control Board: A change control board is a group of representatives from the
project team that regularly meet to approve or disapprove change requests. If they
approve a change request, it can turn into a change order.
• Change Requests: A change request is a formal petition for change in a project. It‘s a
document that explains what are the changes to be made and the main reasons why they
should be implemented.
Change requests can either be submitted by internal or external project stakeholders. Our free
change request template can help you streamline this process.
• Change Orders: Once the change control board has approven a change request, a change
order is signed by the board and the clients or stakeholders.
This is an agreement from both parties to change the conditions that were first drafted in the
original contract. Our free change order template is a great tool to create your change
orders.
Change Log: A change log is a change management tool that‘s used to document all the
changes made to a project plan or any contracts. It‘s a must-have tool for any project manager.
Course Code: 19CS0537 R19
9 a)Explain about Software Configuration Management Control. [L2][CO5] [6M]
• Easy to communicate with team members to develop a better quality of the product.
• To track every member of the team with project workflow status.
• It updates each team member‘s code parallelly by considering different version control.
To manage the different tools and development processes in a software product.
• It is used to managing the software and hardware inside the application.
• It is used to controlling and managing defects, teamwork and process. It handles the
software budgeting as per the change in the application.
Advantages
Disadvantages
• It needs adequate resources with full knowledge about the software configuration
management tools.
• It requires more resources to work with the configuration management process for small
industries.
• It requires a highly configured desktop/laptop for the development stages.
b)Outline the use of Gantt charts and time line charts in visualizing project [L2][CO5] [6M]
progress with suitable diagrams.
o learn a clear concept of everything about Gantt vs. timeline graphic tools of project management
tools, you need to know the Gantt chart and timeline. Gantt chart is one of the most popular and
adopted tools of the project management skill that you can use to visualize a project you are dealing
with. The creator of the Gantt chart, Henry Gantt, defines many principles of the Gantt chart after
introducing it, which were: his tool is best to decide the number of tasks by following the time that
you will be needed to complete it. Even you can decide on Gantt chart what you will be doing
every day of a week or the month.
the Gantt chart, there are horizontal boxes that you can fill as per the frequency of the means you
can decide by ticking of filling the colors. It also represents how many times you will be doing
this particular activity in each month that you can later check whether you planned well and
followed or the plan you made was not easy to follow.
Course Code: 19CS0537 R19
ow is the Gantt chart suitable for your project? o, the Gantt chart is the best visual description
of your project to estimate the time for completing your project by setting the frequency of the
tasks to be performed. The Gantt chart is helpful in multiple ways. Some of which are discussed
below.
• It elaborates the details of the project by making it transparently visualized hile
seeking the interesting facts about the Gantt Chart vs. timeline, I found the Gant chart an amazing
tool that clearly and transparently elaborates the details of the project's tasks. So, you may say it
is a transparent visual description of your monthly plan, and that can even divide into chunks or
weeks and days by filling different colors in the boxes of the Gantt chart.
will make you able to follow the days and do the compulsory task you have already mentioned
over there. It also makes you clear handed in front of the owner and stakeholders as they can
also estimate the efforts you are making to make their project successful.
• It let you know about the schedule of the project and the task to complete we talk
about the Gantt Chart vs. timeline, then the Gantt chart is the best project management tool that
makes you able to schedule each day as per the tasks to complete. When you have set your per
day goal means you know very clearly that what you will be doing on Monday, Tuesday, and
Wednesday, and so on. You will be doing multiple specific and important tasks on a specific day
to attain the progress you have set as your goal or complete the work on time.
• It clearly explains the tasks of the team members you may say dependency antt chart
also helps you keep track of your team members' work as per the scheduled day and date while
making it easy to achieve the project goal. In this way, you can keep your team on the right track
as they know what they will be doing and what they will avoid during their work.
o, the dependency of the tasks is very clear in the Gantt chart that is a guide for you, the team
members, and the stakeholders.
• It will help you to track the progress of your project.
hen you know which team member will be doing which task on which day, you can better track
the project's progress by counting the frequency of the task done as per the committed date and
day. This will help you to analyse the working efficiency of the staff too. The modified Gantt
chart has been more beneficial with more features as you can reschedule the time to cope up
with the lacking of your tasks.
What is a timeline?
Course Code: 19CS0537 R19
o, during the journey of understanding about Gantt vs. timeline, here, we reach the timeline after
explaining the Gantt chart. Timeline is also a graphic visual explanation of your project
chronologically that clearly reflects the date when the project will be started and when it will be
completed before reaching the deadline. is slightly different from the Gantt chart as it does not
contain a long detail of horizontal and
vertical columns to elaborate the details. It just shows you the road map you need to follow, like
you will be starting from this task, then and then this. It is simpler as compared to the Gantt
chart.
meline, the project management tool is best as
• It elaborates the list of tasks you and your team will be performing throughout the
project management.
• It clearly describes the sequence of the tasks in proper order, not like the first roof then
pillar that is totally ruining.
• It let allows you to confirm the duration of the project.
• It also enables you to get your project goals by deciding the start and end date.
ow can a timeline help you while working on a project? ere, you will be able to clearly
understand the Gantt Chart vs. timeline comparison as you have already read about the Gantt chart
and now going to read about the timeline. Some important and distinctive features or the beneficial
points of the timeline of project management are listed below.
keeps you alert about the upcoming tasks. he timeline of the project is designed in a way that
you can easily track the upcoming tasks of the project. It is made just like the flow cart in vertical
bars linking the events or the tasks now to next and other next. You may say it is just like linking
the historical aspect of the projects that tells you which task you are doing and which is coming
ahead that makes you prepare before time and let you do some initials or to collect the necessary
material you need to start the next task.
helps you take U-turns if needed. also helps you to take a U-turn, which means when you find
anything disturbing or lacking in the project timeline, you can reset or do amendments in it while
taking a U-turn from the task number where you feel the problem.
allows you to grab the important events and let them schedule. nother feature of timeline
project that clearly reflects the difference between Gantt chart and timeline graph while learning
about Gantt Chart vs. timeline is its ability to grab your intentions towards the important events
you have scheduled before time like meeting with the boss or team members or the project
contractor. This is a leading feature that will keep you on the safe side, not being late or forgetting
about the scheduled meeting or other important events.
ou can take an easy and fast view of the project details while satisfying your boss or project
owner.
It is also easy to present the view of your whole journey during the completion of the project
that reveals the simple and short details of each event you have attended and the tasks you and
your team performed timely, reflecting the complete road map.
Course Code: 19CS0537 R19
10 a)List out the various types of Contracts in contract management. [L1][CO5] [6M]
he types of contracts in software project management can include fixed price, firm fixed price,
fixed price incentive fee, fixed price with economic price adjustments, purchase orders, cost
reimbursable, cost plus fixed fee, cost plus incentive fee, cost plus award fee, cost plus percentage
of cost, time and materials, and unit price contracts. Fixed Price Contracts
2. Purchase Orders
3. Cost Reimbursable Contract
4. Unit Price Contract
5. Time and Materials Contract
Fixed Price Contracts ith fixed price contracts, also known as lump sum contracts, the buyer
and service provider agree on a fixed price for the services in question. This type of contract is
low-risk for the buyer, but high-risk for the seller since the time and costs of the project could
exceed the fixed price. For this reason, a fixed price contract should include a detailed scope of
work that clearly outlines what the buyer can expect for the agreed-upon price. When the contract
is
Course Code: 19CS0537 R19
signed, the seller must complete the task or deliver the goods as agreed or risk being in breach
of contract. Types of fixed price contracts include the following:
• Firm Fixed Price Contracts: This type of fixed price contract is typically used in
government and partial government projects where the scope is defined in detail. This
makes it easy to create a request for proposals and to compare the bids you receive. The
downside for this contract is that deviating from the defined scope can be expensive.
• Fixed Price Incentive Fee Contracts: With this type of fixed price contract, the buyer also
offers a performance-based incentive as an extra payment to the seller. Performance can
be measured for this purpose by various metrics, including time, cost, or performance.
• Fixed Price Award Fee Contracts: As with the fixed price incentive fee, this type of
contract offers a bonus for exceeding a specific performance metric. For example, if the
seller delivers the product early, he or she could be eligible for a bonus equal to 10 percent
of the total contract.
• Fixed Price With Economic Price Adjustment: With this type of contract, although the
price is fixed, it can be readjusted with fluctuations in the market.
xed price contracts are commonly used on a deliverables basis for outsourcing and turnkey
procurement.
urchase Orders purchase order is a specific type of contract that is used only to purchase goods
and
commodities. ost
Reimbursable Contract
hen the scope of a project is unclear or subject to change, you should consider a cost reimbursable
contract. This document, sometimes called cost disbursable, is also useful when the risk of a
specific project is high. The seller provides work for a fixed time period or project, then increases
the bill to create profit after finishing the work. he amount of profit in this type of contract is often
based on performance metrics detailed in the document itself. The downside of this type of contract
lies with the buyer, who carries the risk for this type of contract since he or she pays all costs. The
full cost of the contract won't be defined until the work is done. For this reason, few businesses
opt to use a cost reimbursable contract.
ypes of cost reimbursable contracts include the following:
• Cost Plus Percentage of Costs/Cost Plus Fee: With this variation, the seller receives a
defined percentage of the total cost of the project upon completion. This is also an
arrangement that mainly benefits the seller.
• Cost Plus Fixed Fee: The seller receives costs incurred plus an additional flat fee that is
fixed in the contract. This amount is received when the contract is fulfilled regardless of
performance.
• Cost Plus Incentive Fee: This is a performance-based fee paid on top of actual costs. It is
a flat amount rather than a percentage.
• Cost Plus Award Fee: Similar to a cost plus incentive fee, this contract provides an award
on top of the costs incurred.
nit Price Contract
his type of contract, also called an hourly rate contract, combines elements of fixed price and cost
contracts. A unit price contract pays a specified hourly rate for every hour spent on the project.
It is commonly used by freelancer workers.
me and Materials Contract
his contract is used when labour is the main deliverable and typically provides the seller an hourly
rate.
Course Code: 19CS0537 R19
b)Explain the advantages & disadvantages of fixed price contract model. [L2][CO5] [6M]
dvantages of Fixed Price Contracts
Course Code: 19CS0537 R19
1. Cost Clarity is an advantage
A fixed-price contract provides a predictable scenario for the buyer and the seller, as well as
stability for both parties throughout the contract‘s duration. A buyer may be apprehensive that the
price of a good or service will rise unexpectedly, disrupting his business objectives. The seller
may be anxious that the value of his product or service will drop unexpectedly, lowering his
income with little or no notice. Fixing the price eliminates all of these concerns.
A buyer may also profit from the predictability of a fixed-price contract, because any degree of
uncertainty about the project‘s final cost surpassing earlier estimates is wholly transferred to the
seller. If you‘re buying supplies or resources, a fixed-price contract may be preferable to a contract
where costs may climb indefinitely over time because it offers you a concrete budget to deal with.
2. Market Change
When market forces alter the value of a product or service, including any materials or supplies
required in its creation, a fixed-price contract might be advantageous or disadvantageous. If
market forces drive the value of the commodity or service to skyrocket, the buyer benefits, but
the seller loses out on potential gains he could have made outside of the fixed-price contract. The
buyer is at a disadvantage and the seller is at an advantage when the price of a good or service
drops suddenly.
isadvantages
1. Comes at a higher price
A disadvantage is that certainty comes at a higher price.A fixed-price contract provides a buyer
with more certainty regarding the future expenses of the commodity or service specified in the
contract, but this certainty may come at a cost. The seller may recognise the risk he is taking by
fixing a price and charge more than he would for fluid pricing, or a price he could negotiate with
the seller on a regular basis, to pay for the higher risk the seller is incurring. 2. Planning takes a
long time
This contract type is not for you if you have a tight deadline for delivering your goods. To be
able to estimate accurately, the software company must first specify features in great detail,
Course Code: 19CS0537 R19
which can take weeks or months.
3. Process that is rigid
There is no way to change or add features after you sign the contract. Let‘s imagine the market
demand shifts, and a feature becomes obsolete or a new feature is required. You won‘t be able to
change the project‘s scope without negotiating each new feature and restarting the planning
process. This could cause a significant delay in the product‘s delivery.
4. Not recommended for large-scale projects
The fixed price strategy works effectively for smaller projects. The fixed approach, on the
other hand, will be overly stiff if your product is more sophisticated, such as an e-commerce
website or a multi-platform mobile app. Complex functions, dependencies, and long
implementations necessitate ongoing examination, modification, and adaptability. 5. There is
a chance of miscommunication
Clear and transparent communication is required to perform efficiently in a fixed price business.
If you overlook a detail or the project specifications are unclear, you can end up with something
that isn‘t exactly what you expected.
Course Code: 19CS0537 R19
UNIT–V
STAFFINGINSOFTWAREPROJECTS
Understanding Behavior
➢ Handling of projects with practical experience becomes a vital role in the
aspect of project management.
➢ The managers must be able to decide on whether it is better to have
experienced staff or get an expert advice.
➢ There are numerous theories defined to explain people‘s behavior.
➢ The theories are structures based on ―If A is the situation then B is likely
to be the solution‖.
➢ Other than the structures, there a wide range of influences on a situation
which are invisible to the users which makes it difficult to decide on the
solution.
Work Objectives
➢ Fredrick Taylor analyzed the productive way of doing things and trained
the workers with these objectives:
• To select the best people for the job
• To instruct them in the best methods
• To give them incentives based on their performance
➢ These work objectives defined by Taylor emphasis exclusively on the
financial basis of the staff motivation and performance-related pay.
➢ This encouragement to the staff will help the project group to work
together in achieving their goals which ultimately increases the
Course Code: 19CS0537 R19
productivity.
➢ People may be motivated by money, but they are motivated by other
factors as well.
Theory X and Theory Y
Some managers‘ work for money being instrumental or called as cash- oriented
persons can be categorized based on their individual attitudes.
➢ Donald McGregor labeled two different attitudes as Theory X and
Theory Y.
➢ Theory X includes
• On an average, not every human likes to work.
• Somebody must have the control and direct the person to
work.
• Generally, people do not like hold responsibilities.
➢ Theory Y includes
• People must like to work not forced to do it.
• External control is not the way to reach organizational goals.
• There must a commitment towards the work allocated to
individuals.
• An average human can learn to accept and seek responsibility.
• Creative qualities must be widely distributed.
➢ Individual‘s behavior towards the organization can be observed when
their boss is not available.
➢ Theory X environment makes everybody to relax which can be seen
visibly whereas Theory Y is more a goal oriented approach of the
people involved in the development.
➢ A reward does not need to be a financial reward but it could be
something like a sense of achievement.
This theory explains the expectations which have a greater influence towards the
organizational behavior.
3 List out the method so Staff Selection among those methods which are best [L1][CO6] [12M]
methods explain it.
Course Code: 19CS0537 R19
Motivational theories:
4 a) Explain in detail the Old Hack man Job Characteristic Model in software [L2][CO6] [6M]
projects.
Course Code: 19CS0537 R19
The Oldham-Hackman job characteristic model
Ethics relates to the moral obligation to respect the rights and interests of others –
goesbeyond strictly legal responsibilities.
Social Responsibility
Small companies also have an obligation to protect the
community. For example, the owner of a small chemical company
needs to communicate certain dangers to the community when
explosions or other disasters occur. The owner must also maintain
certain safety standards for protecting nearby residents from leaks that
affect the water or air quality. There are state and federal laws that
protect people from unethical environmental practices. Business
owners who violate these laws may face stiff penalties.
They may also be shut down.
Financial Ethics
Business owners must run clean operations with respect to
finances, investing and expanding their companies. For example,
organizations must not bribe state legislators for tax credits or special
privileges. Insider trading is also prohibited. Insider trading is when
managers or executives illegally apprise investors or outside parties of
privileged information affecting publicly traded stocks, according to
the Securities and Exchange Commission. The information helps some
investors achieve greater returns on their investments at the expense of
others. Executives in small companies must strive to help all
shareholders earn better returns on their money. They must also avoid
collusive arrangements with other companies to deliberately harm other
competitors.
Considerations
A small company's organizational ethics can also include taking
care of employees with mental illnesses or substance abuse problems,
such as drug and alcohol dependency. Ethical business
Course Code: 19CS0537 R19
owners help their employees overcome these types of problems when
possible. They often put them through employee advisor programs,
which involves getting them the treatment they need. Employees may
have issues that lead to these types of problems. Therefore, they deserve
a chance to explain their situations and get the help they need.
Professional ethics
Professionals have knowledge about the technical domain
that the general public does not. Ethical duty of the expert to warn lay
people of the risks involved in a particular course of action. Many
professions, or would be professions, have codes of conduct for their
members.
• Apart from stress, health and safety less likely to be an issue compared to other
engineering projects.
• but sometimes IT infrastructure may be set up as other building work is
going on
• UK law lays down that organizations employing over 5 staff should have
a written safety policy
• Management of safety should be embedded in project management.
• Top management must be committed to health and safety (H&S) policy
• Delegation of responsibilities relating to H&S should be clear
• Job descriptions should include H&S related responsibilities
• Need to ensure those given H&S responsibilities should understand and
accept them • There should be a designated safety officer
• Staff, particularly knowledgeable technical specialists, should consulted
about safety
• There should be an adequate H&S budget
Course Code: 19CS0537 R19
6 Prepare short notes on [L3][CO6] [12M]
a) Stress Health and safety Stress
• Edward Yourdon quotes a project manager: ‗Once a project gets rolling,
you should be expecting members to be putting in at least 60
hours a week The project manager must expect to put in as many hours as
possible.‘
• 1960 study in US: people under 45 who worked more than 48 hours a
week twice the risk of death from coronary heart disease.
• XP practice – maximum 40 hour working weekStress can be reduced by
good project management
Good project management should lead to:
• Reasonable estimates of effort
• Good project control leading fewer unexpected crises
• Making clear what is expected of each team member – reduces role
ambiguity
• Reduced role conflict where a person is torn between conflicting
responsibilities
Bullying tactics are a symptom of incompetent project
management.
b) Motivations:
Motivational theories:
Herzberg’s Two-
Factor Theory
➢ People tend to be dissatisfied about their job due to certain factors.
They are
• Hygiene or maintenance factors
• Motivators
➢ A hygiene factor makes the person dissatisfied if they are not rightly
used. For example, the working condition of the worker.
➢ Motivators can make the person feel that the job is worth doing it,
like a sense of achievement or the challenge of the work.
➢ Higher-level of maintenance factors can be provided by large
organizations whereas better motivation can be provided to workers
who work in smaller organizations.
Expectancy Theory of
Motivation
➢ Vroom identified three influencing factors on motivation. They are:
• Expectancy
• Instrumentality
• Perceived value
➢ Expectancy is a belief that working harder will lead to better
performance.
➢ Instrumentality is the belief that better performance will be
rewarded.
➢ Perceived value denotes the resulting reward.
➢ When all these factors are high, then the motivation level will also be
high. At the same time, a zero level for any one of the factor can
remove motivation completely.
➢ For example, when the developer is suppose to get a software package
supplied by a third party to work and it contains a bug, the
Course Code: 19CS0537 R19
worker gives up since how much hard work the worker puts in it will
not lead to success denotes zero expectancy.
➢ On the other side, if the user is not using the package supplied by the
developer, instead the user works on an alternative tool, it makes the
developer feel that it is waste of time and leads to zero
instrumentality.
➢ Suppose if the user is using the package but keeps on complaining
about the package and makes the developer responsibility for all
short-comings, then at some point of time the developer will not like
to get involved for implementing a newer package which leads to
low perceive value of reward.
7 What is the role of decision making in software projects and explain in detail. [L1][CO6] [12M]
Course Code: 19CS0537 R19
Decision making
Categories of Decisions
Department Structure
Chief
programmer,
Democratic,
and
The mixed control team organizations
➢ If the number of groups is larger, then the work will be slower because
of increased communication. So large projects must be formalized and
must be represented in an centralized structure.
➢ One way to avoid this, to reduce the number of people and giving them
more support to make the work done which led to the formulation of
chief programmer team.
➢ The chief programmer defines the specification, design, code, tests and
documents the entire software.
➢ The chief programmer can have a co-pilot who can assist in writing some
code and discussions.
Chief programmer
Team Members
Advantages:
Disadvantages:
Consequently, it suffers from less man-power turnover Mixed Control
Team Structure
The mixed team organization, as the name implies, draws upon the ideas
from both the democratic organization and the chiefprogrammer
organization. This team organization incorporates both hierarchical
reporting and democratic set up.
b) Virtual Teams
Virtual Teams
corporate activity.
personally sensitive
Face-to-face contacts
Team members need to build up their trust and confidence in their co-
workers
Decision making
Course Code: 19CS0537 R19
teleconferencing Activities
executed in
parallel
Some points needs
to be clarified
10 Define Communication Plan. Write down the results of communication plan in [L1][CO6] [12M]
projects.
Course Code: 19CS0537 R19
Communication plans
The result of the communication process could be documented in a table with the
following column headings.