Solved Past Papers
Solved Past Papers
The cash flow forecasting is a financial planning tools that shows the predicted flow of cash in and
out of project or organization each month. Forecasting will enable you to plan ahead so that you
can anticipate periods of cash shortage and take corrective action.
20. Define version control?
Version control is a method of tracking changes to document and files so that you can always know
which version is the current iteration. Projects typically result in the creation of a lot of documents,
from project reports to deliverables.
21. What is project mitigation?
Mitigation is a strategic risk response wherein a project team takes active steps to reduce the
probability or impact of a negative risk to a project.
22. What is resource scheduling?
Resource scheduling refers to the set of actions and methodology used by organizations to
efficiently assign the resources they have to jobs, tasks or project they need to complete, and
schedule start and end dates for each tasks or project based on resource availability.
23. Define statement of work?
A statement of work (SOW) is a document routinely employed in the field of project management.
It defines project-specific activities, deliverables and timelines for a vendor providing services to the
client.
24. Write name for any two resource scheduling techniques?
I. Critical path method (CPM)
II. Program evaluation review technique (PERT)
You can use these methods to calculate the assumed start and finish dates, based on the
known scope of the project.
25. How we find the time estimation for a project?
Step 1: Understand what’s required. Start by identifying all of the work that needs to be done
within the project.
Step 2: Order these activities. Now, list all of the activities you identified in the order in which they
need to happen.
26. What is incremental model?
The incremental model is a method of software development where the product is designed,
implemented and tested incrementally (a little more is added each time) until the product is
finished. It involves both development and maintenance.
27. What are stake holders?
The individuals whose interest may be positively or negatively affected as a result of project
execution or successful project completion.
28. Define activity?
A distinct, scheduled portion of work performed during the course of a project is
called activity.
29. Write name for any two software process model?
• Waterfall model
• V model
• RAD model
• Spiral model
• Agile model
BY Kashii Malik & Farii Gondal Page 3 of 49
Software Project Management
The documents utilized in bid and proposal activities, which include the buyer’s Invitation for Bid,
Invitation for Negotiations, Request for Information, Request for Quotation, Request for Proposal,
and seller’s responses.
41. What is critical path?
The critical path is the sequence of activities that represents the longest path through a project,
which determines the shortest possible project duration.
42. What is project outsourcing?
Outsourcing allows a company to subcontract a particular area within the organization. A company
may outsource project management or any other task or department for one or more reason.
43. What is resource acquisition?
Resource acquisition focuses on defining the needs for the project, and obtaining the right
resources for the team and other resources and tools available to manage the effort.
44. Define PERT?
PERT stands for Program Evaluation Review Technique breaks down the individuals tasks of a
project for analysis.
45. Define project charter?
The project charter establishes a partnership between the performing and requesting organizations
.It is used to establish internal agreements within an organization to assure proper delivery under
the contract. The approved project charter formally initiates the project.
46. Explain business case? Write four dimension of a project?
The business case or similar document describes the necessary information from a business
standpoint to determine whether or not the project is worth the required investment. It is
commonly used for decision making by managers or executives above the project level.
i. Project Objectives. Having a set of objectives, expectations of the outcomes is why projects are
developed, planned, funded, and executed. Being explicit about the objectives, and having
everyone involved, and who may be affected, is essential.
ii. Project Scope. The scope describes what will and will not be done as a part of the project. Failing
to have an explicit scope encourages ‘project creep’ and lessens the accountability. In the ERP
implementations I have been involved in, project creep is an ever present cancer on the project,
and those that failed to be absolutely explicit about the scope, and enforced it ruthlessly, failed to
meet expectations in numerous ways.
iii. Project Budget. How much the project is expected to cost. Pretty basic, but ignored often, and
subject to blow-out as the scope creeps out of control. The only ones who benefit are the
consultants who either fix the problems (often they are a part of the problem) and your
competitors.
iv. Project Timetable. Every project needs a timetable, with milestones connected to the scope and
costs, as well as performance.
47. What is CMMI?
Project Controlling uses data from monitor activity to bring actual performance to planned
performance.
52. What do you mean by software configuration management?
Software Configuration Management(SCM) is a process to systematically manage, organize, and
control the changes in the documents, codes, and other entities during the Software Development
Life Cycle. The primary goal is to increase productivity with minimal mistakes. SCM is part of cross-
disciplinary field of configuration management and it can accurately determine who made which
revision.
53. What do you mean by resource planning in software in deployment project of any software?
Resource planning is a process of allocating tasks to human and non-human resources so that
they’re maximized for efficiency. Resource planning helps project managers manage resource
utilization and track resource capacity, to keep projects on budget.
Resource planning helps you to organize your team so that they know exactly what projects they're
working on. More importantly a resource planner that accurately tracks and manages your resource
capacity ensures that you're managing your team's time effectively and not burning anybody out.
54. What is payback period with reference to cost benefit analysis?
59. Write names down any two mistakes related to project development?
Some of the more significant mistakes along the development-speed dimensions of people,
process, product, and technology are as follows.
1: Undermined motivation
2: Weak personnel.
3: Uncontrolled problem employees
5: Adding people to a late project
BY Kashii Malik & Farii Gondal Page 8 of 49
Software Project Management
Project Procurement Management is part of the project management process in which products or
services are aquired or purchased from outside the existing employee base (which would work on
the project) in order to complete the task or project. There are essentially two different types of
procurements, one in which the company is responsible for the particular product or service under
a legal contract, this PPM includes contract management responsibilities that issue specific tasks to
various team members. Both of these project management processes are imperative to a
company’s success.
65. What is the difference between testing and debugging?
Testing:
Testing is the process of verifying and validating that a software or application is bug free, meets
the technical requirements as guided by its design and development and meets the user
requirements effectively and efficiently with handling all the exceptional and boundary cases.
Debugging:
Debugging is the process of fixing a bug in the software. It can defined as the identifying, analyzing
and removing errors. This activity begins after the software fails to execute properly and concludes
by solving the problem and successfully testing the software. It is considered to be an extremely
complex and tedious task because errors need to be resolved at all stages of debugging.
66. Define preliminary investigation?
Preliminary investigation is the first phase. In this phase, the system is investigated. The objective of
this phase is to conduct an initial analysis and findings of the system.
67. Define change control?
Change Control is focused on identifying, documenting and controlling changes to the project and
the project baselines. In the change management system, you manage the changes related to the
project scope, planning, and baselines.
68. What is Gantt Chart?
A Gantt chart can be helpful to visualize the project timeline and whether they are tracking to the
proper constraints.
69. Write name of any two cost benefit analysis techniques?
i. Risk profile analysis
ii. Using decision trees
70. Differentiate between Schedule Variance and Cost Variance?
Schedule variance Cost variance
Schedule variance (SV) is a measure of Cost variance (CV) is the amount of
schedule performance expressed as budget deficit or surplus at a given
the difference between the earned point in time, expressed as the
value and the planned value. It is the difference between earned value and
amount by which the project is ahead the actual cost. It is a measure of cost
or behind the planned delivery date, at performance on a project. It is equal to
a given point in time. It is a measure of the earned value (EV) minus the actual
schedule performance on a project. It cost (AC).
is equal to the earned value (EV) minus
the planned value (PV).
“Subjective”
1. Write a detailed note on Step Wise project planning with diagram?
• Step 0: Select project • Step 6: Identify activity risk
• Step 1: Identify project scope and objectives • Step 7: Allocate resources
• Step 2: Identify project infrastructure • Step 8: Review/publicize plan
• Step 3: Analyse project characteristics • Step 9 and 10: Execute plan and lower
• Step 4: Identify project products and activities level of planning
• Step 5: Estimate effort for each activity
Step 0 : Select project:
This is called step 0 because in a way of project planning, it is outside the main project planning
process. Possibility study suggests us that the project is worthwhile or not.
Step 1 : Identify project scope and objectives:
The activities in this step ensure that all parties to the project agree on the objectives and are
dedicated to the success of the project.
1: Identify objectives and practical measures of the effectiveness in meeting those
objectives
2: Establish project authority.
3: Stakeholders analysis – Identify all stakeholders in the project and their interest.
4: Modify objectives in the light of stakeholder analysis.
5: Establish method of communication
Step 2 : Identify project Infrastructure:
Projects are rarely carried out in a vacuum. There is usually some kind of infrastructure into which
the project must fit. Where the project managers are new to the organization, they must find out
the precise nature of this infrastructure.
1: Identify relationship between the project and strategic planning
2: Identify installation standards and procedures.
3: Identify project team organization.
Step 3: Analyze project Characteristics:
The general purpose of this part of planning operation is to ensure that the appropriate methods
are used for the project.
1: Distinguish the project as either objective- product driven
2: Analyze other project characteristics (including quality –based ones)
3: Identify high level project risks
3: Take into account user requirement concerning implementation.
4: Select development methodology and life cycle approach.
5: Review overall resources estimates
Step 4 : Identify project products and activities:
The more detailed planning of the individual activities now takes place. The longer term planning is
broad and in outline, while the more immediate tasks are planned in some detail.
1: Identify and describes project products ( or deliverables )
2: Document generic product flows
3: Record product instance
4: produce ideal activity network
5: Modify the ideal to take into account need for stages and checkpoints.
BY Kashii Malik & Farii Gondal Page 12 of 49
Software Project Management
4. How to define project scope? Explain project activities and work break down structure?
Project scope is the part of project planning that involves determining and documenting a list of
specific project goals, deliverables, features, functions, tasks, deadlines, and ultimately costs. In
other words, it is what needs to be achieved and the work that must be done to deliver a project.
Below is an overview of some of the key processes to follow in order to define scope correctly.
• Define the Product Requirements:
• Define the Process Requirements:
• Involve the correct stakeholders:
• Identify the limitations
• Change Management
Activities:
1. Project Planning: It is a set of multiple processes, or we can say that it a task that performed
before the construction of the product starts.
2. Scope Management: It describes the scope of the project. Scope management is important
because it clearly defines what would do and what would not. Scope Management create the
project to contain restricted and quantitative tasks, which may merely be documented and
successively avoids price and time overrun.
3. Estimation management: This is not only about cost estimation because whenever we start to
develop software, but we also figure out their size(line of code), efforts, time as well as cost.
4. Scheduling Management: Scheduling Management in software refers to all the activities to
complete in the specified order and within time slotted to each activity. Project managers define
multiple tasks and arrange them keeping various factors in mind.
For scheduling, it is compulsory -
• Find out multiple tasks and correlate them. • Calculate the total time from start to finish.
• Divide time into units. • Break down the project into modules.
• Assign the respective number of work-units for every job.
BY Kashii Malik & Farii Gondal Page 15 of 49
Software Project Management
5. Project Resource Management: In software Development, all the elements are referred to as
resources for the project. It can be a human resource, productive tools, and libraries.
Resource management includes:
• Create a project team and assign responsibilities to every team member
• Developing a resource plan is derived from the project plan.
• Adjustment of resources.
6. Project Risk Management: Risk management consists of all the activities like identification,
analyzing and preparing the plan for predictable and unpredictable risk in the project.
Several points show the risks in the project:
• The Experienced team leaves the project, and the new team joins it.
• Changes in requirement.
• Change in technologies and the environment.
• Market competition.
7. Project Communication Management: Communication is an essential factor in the success of the
project. It is a bridge between client, organization, team members and as well as other stakeholders
of the project such as hardware suppliers.
From the planning to closure, communication plays a vital role. In all the phases, communication
must be clear and understood. Miscommunication can create a big blunder in the project.
8. Project Configuration Management: Configuration management is about to control the changes
in software like requirements, design, and development of the product.
Work Breakdown Structure:
Dividing complex projects to simpler and manageable tasks is the process identified as Work
Breakdown Structure (WBS).
Usually, the project managers use this method for simplifying the project execution. In WBS, much
larger tasks are broken down to manageable chunks of work. These chunks can be easily supervised
and estimated.
WBS is not restricted to a specific field when it comes to application. This methodology can be used
for any type of project management.
Characteristics of the Work Breakdown Structure:
Not every breakdown of project deliverables can be classified as a WBS. For it to be called a work
breakdown structure, it must have certain characteristics:
Hierarchy: The WBS is hierarchical in nature. Each “child” level exists in a strict hierarchical
relationship with the parent level. The sum of all the child elements should give you the parent
element.
100% rule: Every level of decomposition must make up 100% of the parent level. It should also have
at least two child elements.
Mutually exclusive: All elements at a particular level in a WBS must be mutually exclusive. There
must be no overlap in either their deliverables or their work. This is meant to reduce
miscommunication and duplicate work.
Outcome-focused: The WBS must focus on the result of work, i.e. deliverables, rather than the
activities necessary to get there. Every element should be described via nouns, not verbs. This is a
big source of confusion for beginners to WBS.
Following are a few reasons for creating a WBS in a project:
• Accurate and readable project organization.
There are many design goals for WBS. Some important goals are as follows:
• Giving visibility to important work efforts.
• Giving visibility to risky work efforts.
• Illustrate the correlation between the activities and deliverables.
• Show clear ownership by task leaders.
5. How we can select an appropriate process model. Differentiate between V-model and water fall
model?
Developer gold planting – It is frequent that developers attempt to try new technologies that they
saw in other projects, which is not actually necessary.
Technology related classic mistakes
This type of mistakes is about technologies use during the project.
Silver-bullet syndrome – Thinking that certain approach will solve every issue, and that approach
has not already used by developers (eg: Object oriented design)
Overestimated savings from new tools or methods – New practices will introduce a new risk as
team has to go through a learning-curve to become familiar.
Switching tools in the middle of a project – Using new tools will add a learning curve, rework and
inevitable mistakes to project schedule
Lack of automated source-code control – If two or more developers are working on the same part
of the project, it is necessary to adhere to source-code control practices. If not developers have to
spend time on resolving conflicting changes.
7. You have a project completing in 12 month and total cost of project is $100,000. Six months have
been passed (and schedule says that 50% of work should be completed). Six months have been
passed and $60,000 is spent but on closer look you find that only 40% of work is completed so
far. Calculate SPI and CPI to determine whether the project is on-time and on-budget after 6
months.
Actual Cost(AC) = 60, 000 dollar
8. Risk can be dealt by how many ways explain them in detail with examples?
When you’re planning your project, risks are still uncertain: they haven’t happened yet. But
eventually, some of the risks that you plan for do happen, and that’s when you have to deal with
them. There are four basic ways to handle a risk.
Avoid: The best thing you can do with a risk is avoid it. If you can prevent it from happening, it
definitely won’t hurt your project. The easiest way to avoid this risk is to walk away from the cliff,
but that may not be an option on this project.
Mitigate: If you can’t avoid the risk, you can mitigate it. This means taking some sort of action that
will cause it to do as little damage to your project as possible.
Transfer: One effective way to deal with a risk is to pay someone else to accept it for you. The most
common way to do this is to buy insurance.
Accept: When you can’t avoid, mitigate, or transfer a risk, then you have to accept it. But even
when you accept a risk, at least you’ve looked at the alternatives and you know what will happen if
it occurs. If you can’t avoid the risk, and there’s nothing you can do to reduce its impact, then
accepting it is your only choice.
9. Differentiate between Software prototyping model and agile process model?
Prototyping
Prototyping begins before development is underway. Prototypes can range from a quick sketch on
a whiteboard to a fully interactive mockup.
The first step is an initial prototype of the project, which will be presented so you can give
feedback. Each prototype is then refined, and the process uses a trial-and-error approach until the
last prototype is finalised, and development can begin.
Prototyping allows you to experiment and spot bugs early on in the process. You and your team can
see how your product would be used, and how each change would impact the end-result. You can
also easily change direction if you find that you have too many features or the design is not user-
friendly.
During the prototype model, you’re constantly kept updated throughout the process, and your
feedback is continually incorporated. This can lead to a better overall result for end users.
Agile Development
Agile is a development methodology. Basically, the developers will develop and test in different
stages (iterations) instead of waiting until the whole product has been completed.
Agile is popular due to its detailed, accurate, consistent, and simple nature. The software is
delivered in small parts, which are considered to be miniature projects themselves. Just as the
director of a play will work on each scene individually before putting it all together, the agile model
is about breaking a large project down into multiple iterations.
These iterations are called sprints, and they can help minimise risk. That’s because the agile
development methodology involves a cycle of planning, testing, integration, and risk evaluation.
This reduces the chances that your project will fail.\
When should you use prototyping?
Prototyping is a good choice if you have an idea or plan for your project, but you’re wondering
whether it will be feasible. It can also provide you and your team with clarity if you’re not entirely
sure about the direction or requirements of your project.
You may also find that you’re ready to get started on a project, but investors or stakeholders are
unable to see the value. In this case, you can provide decision-makers with an interactive wireframe
so you can communicate key ideas.
BY Kashii Malik & Farii Gondal Page 22 of 49
Software Project Management
Prototyping is also a solid choice if you have a small budget. The more time spent in development,
the more your project is likely to cost. Instead, working with increasingly functional prototypes will
mean that developers can spot issues and bugs early on. That way, large problems can be solved
well before development has begun- when issues are much more time-consuming and expensive to
fix.
When should you use agile development?
Agile is a good choice if your requirements are continually changing. You can pivot later in the
development process, instead of following a predetermined structure or development plan.
With agile development, it’s easy to measure your progress, since you can easily see how much
work has been completed. It may also be the best option if you’re on a tight deadline, since agile
allows for a rapid delivery.
The key with agile? Ensure you have an experienced project manager, so that the project doesn’t
become a large series of sprints which can lead to a budget blowout.
10. Explain function point estimation, Cocomo estimation and Line of code software estimation
techniques and example?
Estimation of the size of software is an essential part of Software Project Management. It helps the
project manager to further predict the effort and time which will be needed to build the project.
Various measures are used in project size estimation. Some of these are as follows:
1. Lines of Code (LOC):
Estimation is done on behalf of number of line of codes in the software product.
As the name suggest, LOC count the total number of lines of source code in a project. The units of
LOC are:
• KLOC- Thousand lines of code
• NLOC- Non comment lines of code
• KDSI- Thousands of delivered source instruction
The size is estimated by comparing it with the existing systems of same kind. The experts use it to
predict the required size of various components of software and then add them to get the total
size.
Advantages:
• Universally accepted and is used in many models like COCOMO.
• Estimation is closer to developer’s perspective.
• Simple to use.
Disadvantages:
• Different programming languages contains different number of lines.
• No proper industry standard exist for this technique.
• It is difficult to estimate the size using this technique in early stages of project.
2. Function Point Analysis:
Estimation is done on behalf of number of function points in the software product.
In this method, the number and type of functions supported by the software are utilized to find
FPC(function point count). The steps in function point analysis are:
• Count the number of functions of each proposed type.
• Compute the Unadjusted Function Points(UFP).
• Find Total Degree of Influence(TDI).
• Compute Value Adjustment Factor(VAF).
BY Kashii Malik & Farii Gondal Page 23 of 49
Software Project Management
External Inputs 3 4 6
External Output 4 5 7
External Inquiries 3 4 6
• Find Total Degree of Influence: Use the ’14 general characteristics’ of a system to find the degree
of influence of each of them. The sum of all 14 degrees of influences will give the TDI. The range of
TDI is 0 to 70. The 14 general characteristics are: Data Communications, Distributed Data
Processing, Performance, Heavily Used Configuration, Transaction Rate, On-Line Data Entry, End-
user Efficiency, Online Update, Complex Processing Reusability, Installation Ease, Operational Ease,
Multiple Sites and Facilitate Change.
Each of above characteristics is evaluated on a scale of 0-5.
• Compute Value Adjustment Factor(VAF): Use the following formula to calculate VAF
VAF = (TDI * 0.01) + 0.65
• Find the Function Point Count: Use the following formula to calculate FPC
FPC = UFP * VAF
Advantages:
o It can be easily used in the early stages of project planning.
o It is independing on the programming language.
o It can be used to compare different projects even if they use different technologies
(database, language etc).
BY Kashii Malik & Farii Gondal Page 24 of 49
Software Project Management
Disadvantages:
o It is not good for real time systems and embedded systems.
o Many cost estimation models like COCOMO uses LOC and hence FPC must be converted to
LOC.
3. COCOMO:
COCOMO stands for COnstructive COst MOdel, developed by Barry W. Boehm. It divides the
software product into three categories of software: organic, semi-detached and embedded.
The Constructive Cost Model (COCOMO) is an algorithmic software cost estimation model
developed by Barry Boehm. The model uses a basic regression formula, with parameters that are
derived from historical project data and current project characteristics.
COCOMO consists of a hierarchy of three increasingly detailed and accurate forms. The first level,
Basic COCOMO is good for quick, early, rough order of magnitude estimates of software costs, but
its accuracy is limited due to its lack of factors to account for difference in project attributes (Cost
Drivers). Intermediate COCOMO takes these Cost Drivers into account and Detailed COCOMO
additionally accounts for the influence of individual project phases.
i. Basic COCOMO:
Basic COCOMO computes software development effort (and cost) as a function of program size.
Program size is expressed in estimated thousands of lines of code (KLOC).
COCOMO applies to three classes of software projects:
o Organic projects - "small" teams with "good" experience working with "less than rigid"
requirements
o Semi-detached projects - "medium" teams with mixed experience working with a mix of
rigid and less than rigid requirements
o Embedded projects - developed within a set of "tight" constraints (hardware, software,
operational, ...)
The basic COCOMO equations take the form:
Effort Applied = ab(KLOC)bb [ man-months ]
Development Time = cb(Effort Applied)db [months]
People required = Effort Applied / Development Time [count]
Basic COCOMO is good for quick estimate of software costs. However it does not account for
differences in hardware constraints, personnel quality and experience, use of modern tools and
techniques, and so on.
ii. Intermediate COCOMO:
Intermediate COCOMO computes software development effort as function of program size and a
set of "cost drivers" that include subjective assessment of product, hardware, personnel and
project attributes. This extension considers a set of four "cost drivers", each with a number of
subsidiary attributes:-
Product attributes
o Required software reliability
o Size of application database
o Complexity of the product
Hardware attributes
o Run-time performance constraints
o Memory constraints
o Volatility of the virtual machine environment
BY Kashii Malik & Farii Gondal Page 25 of 49
Software Project Management
Ecnomic Assessment:
12. What is risk analysis? Explain any two types of risk in detail?
Risk Analysis:
Risk analysis involves examining how project outcomes and objectives might change due to the
impact of the risk event.
Once the risks are identified, they are analysed to identify the qualitative and quantitative impact of
the risk on the project so that appropriate steps can be taken to mitigate them. The following
guidelines are used to analyse risks.
Types of risks:
Five Types of Risk In Software Project Management are as follows:
o New, unproven technologies
o User and functional requirements
o Application and system architecture
o Performance
o Organizational
o Estimation
• New, unproven technologies. The majority of software projects entail the use of new technologies.
Ever-changing tools, techniques, protocols, standards, and development systems increase the
probability that technology risks will arise in virtually any substantial software engineering effort.
Training and knowledge are of critical importance, and the improper use of new technology most
often leads directly to project failure.
• User and functional requirements. Software requirements capture all user needs with respect to
the software system features, functions, and quality of service. Too often, the process of
requirements definition is lengthy, tedious, and complex. Moreover, requirements usually change
with discovery, prototyping, and integration activities. Change in elemental requirements will likely
propagate throughout the entire project, and modifications to user requirements might not
translate to functional requirements. These disruptions often lead to one or more critical failures of
a poorly-planned software development project.
• Application and system architecture. Taking the wrong direction with a platform, component, or
architecture can have disastrous consequences. As with the technological risks, it is vital that the
team includes experts who understand the architecture and have the capability to make sound
design choices.
• Performance. It’s important to ensure that any risk management plan encompasses user and
partner expectations on performance. Consideration must be given to benchmarks and threshold
testing throughout the project to ensure that the work products are moving in the right direction.
• Organizational. Organizational problems may have adverse effects on project outcomes. Project
management must plan for efficient execution of the project, and find a balance between the needs
of the development team and the expectations of the customers. Of course, adequate staffing
includes choosing team members with skill sets that are a good match with the project.
• Estimation. The time required to develop the software is underestimating. Or the rate of defect
repair is underestimating. Or the size of software is underestimating.
13. Briefly describe change management and configuration management?
Project environments are dynamic and changes are constant in areas like process, planning, or
scope. You can group these changes into two categories:
• Change Management
• Configuration Management
“Change Management” is the first category. Here you manage changes related to project
management plans, processes, and baselines.
In the second category, you manage changes related to product scope, which is known as
configuration management.
Change requests are required when baselines are established and you have to make changes to
them. If the baselines are not set, no formal change request is required. Change requests and
configuration requests are part of the integration management system.
Change Management System:
Change Control is focused on identifying, documenting and controlling changes to the project and
the project baselines. In the change management system, you manage the changes related to the
project scope, planning, and baselines.
For example, you run out of money and you need additional funding to complete the project,
therefore, you will raise a change request for additional funds. Or, you may not be able to complete
your project within the specified time and require a time extension.
In the change management system, the change request is analyzed for any possible impact on any
other project objectives. Afterwards, the request is either approved or rejected.
To minimize disruption, a change management system must ensure that all parameters are
identified and analyzed for any possible impact.
If the change request is approved, you will update the concerned baseline, update the project
documents, and inform the concerned stakeholders.
Change Management Activities:
You do the following during change management:
• Identify the changes.
• Prepare a proper documentation for the changes.
• Review, analyze, and make a decision for the change request.
• Make sure that request is implemented, registered and communicated.
Configuration Management System:
Configuration Control focuses on the specifications of both the deliverables and the processes. In
the configuration management system, you manage the changes related to the product
specification and the process.
For example, suppose you are developing a product and the client requests the addition of some
extra features.
Since this change is related to the configuration of the product, you will deal with this change using
the configuration management system.
Configuration management documents how you will monitor and control changes. It; i a process of
defining configurable items (product, service, result, and component) and controlling changes to
such items.
The configuration management plan keeps version control of the product. Here you can keep a log
of all the changes made to any version of the product for review.
Configuration Management Activities:
You do the following during configuration management:
• Identify the configurable items.
• Record and prepare a report for all configurable items.
• Verify and conduct an audit of all configurations are as per the requirements.
14. Discuss the conventional work break down structure issue?
Conventional work breakdown structures frequently suffer from three fundamental flaws.
1. They are prematurely structured around the product design.
2. They are prematurely decomposed, planned, and budgeted in either too much or too little detail.
3. They are project-specific, and cross-project comparisons are usually difficult or impossible.
1.Conventional work breakdown structures are prematurely structured around the product
design:
Figure 10-1 shows a typical conventional WBS that has been structured primarily around the
subsystems of its product architecture, then further decomposed into the components of each
subsystem. A WBS is the architecture for the financial plan.
2. Scope constraint:
Defined upfront, the scope of the project should be clearly and regularly communicated to all
stakeholders to ensure that “scope creep”—the term used when changes are made to the scope
mid-project, without the same levels of control—is avoided. To keep the scope in check, you can:
✔Provide clear documentation of the full project scope at the beginning of the project, including all
requirements.
✔Set up a process for managing any changes, so if someone proposes a change, there is a
controlled system in place for how that change will be reviewed, approved or rejected, and
implemented if applicable.
✔Communicate the scope clearly and frequently with stakeholders.
3. Cost constraint:
A project’s budget includes both fixed and variable costs, including materials, permits, labor and the
financial impact of team members working on the project. A few of the ways to estimate the cost of
a project include:
✔Historical data: Looking at what similar projects cost in the recent past
✔Resources: Estimating the rate of cost for goods and labor.
✔Parametric: Comparing historical data with updated, relevant variables
✔Vendor bid: Averaging the total charge of several solid vendor bids
16. What is configuration management? Differentiate between configuration control and version
control?
Configuration management:
Configuration management is a process of tracking and controlling the changes in software in terms
of the requirements, design, functions and development of the product.
Configuration management is about to control the changes in software like requirements, design,
and development of the product.
The Primary goal is to increase productivity with fewer errors.
Some reasons show the need for configuration management:
• Several people work on software that is continually update.
• Help to build coordination among suppliers.
• Changes in requirement, budget, schedule need to accommodate.
• Software should run on multiple systems.
Tasks perform in Configuration management:
• Identification
• Baseline
• Change Control
• Configuration Status Accounting
• Configuration Audits and Reviews
People involved in configuration management:
• Project manager
• Configuration manager
• Developer
• User
project, we would not do all our detailed planning right at the beginning. We would formulate an outline
plan for the whole project and a detailed one for the first stage. More detailed planning of the later stages
would be done as they approached. This is because we would have more detailed and accurate information
upon which to base our plans nearer to the start of the later stages.
3. Project execution The project can now be executed. Individual projects are likely to differ considerably
but a classic project life-cycle is shown in Figure 1.1.
The stages in the life-cycle illustrated in Figure 1.1 above are described in a little more detail below:
Requirements analysis: This is finding out in detail what the users require of the system that the project is to
implement. Some work along these lines will almost certainly have been carried out when the project was
evaluated but now the original information obtained needs to be updated and supplemented. Several
different approaches to the users' requirements may be explored. For example, a small system that satisfies
some, but not all, of the users' needs at a low price may be compared to a system with more functions but at
a higher price.
Specification: Detailed documentation of what the proposed system is to do.
Design: A design that meets the specification has to be drawn up. This design activity will be in two stages.
One will be the external or user design. This lays down what the system is to look like to the users in terms of
menus, screen and report layouts and so on. The next stage produces the physical design, which tackles the
way in which the data and software procedures are be structured internally.
Coding: This might refer to writing code in a procedural language such as C or Ada, or might refer to the use
of a high level application builder. Even where software is not being built from scratch, some modification to
the base application might be required to meet the needs of the new application.
Verification and validation: Whether software is developed specially for the current application or not,
careful testing will be needed to check that the proposed system meets its requirements.
Implementation/installation: Some system development practitioners refer to the whole of the project
after design as 'implementation' (that is, the implementation of the design) while others insist that the term
refers to the installation of the system after the software has been developed. In this case it encompasses
such things as setting up data files and system parameters, writing user manuals and training users of the
new system.
Maintenance and support: Once the system has been implemented there will be a continuing need for the
correction of any errors that may have crept into the system and for extensions and improvements to the
system. Maintenance and support activities may be seen as a series of minor software projects. In many
environments, most software development is in fact maintenance.
18. Explain the risks that are involved in delaying the project. Also explain the version control and
configuration control management?
Risks involved in delaying the project:
There are number of risks that causes a project to be delayed are as follows:
1. Expansion of functionality
The expansion of functionality is a phenomenon in which new functionalities continue to be conceived
and requested as the project proceeds. The software can never be completed in this way.
2. Gold plating
Gold plating is a phenomenon in which programmers and designers try to make many details of the
software or design too elaborate. Much time is spent improving details, even though the improvements
were not requested by the customer or client. The details often add little to the desired result.
3. Neglecting quality control
Time pressure can sometimes cause programmers or project teams to be tempted to skip testing. This
frequently causes more delays than it prevents. The time that elapses before an error is discovered in
the software is associated with an exponential increase in the time that is needed to repair it.
19. Explain the COCOMO and PMI’s process group with a diagram?
COCOMO Model:
Cocomo (Constructive Cost Model) is a regression model based on LOC, i.e number of Lines of Code.
It is a procedural cost estimate model for software projects and often used as a process of reliably
predicting the various parameters associated with making a project such as size, effort, cost, time
and quality. It was proposed by Barry Boehm in 1970 and is based on the study of 63 projects,
which make it one of the best-documented models.
The key parameters which define the quality of any software products, which are also an outcome
of the Cocomo are primarily Effort & Schedule:
• Effort: Amount of labor that will be required to complete a task. It is measured in person-
months units.
• Schedule: Simply means the amount of time required for the completion of the job, which
is, of course, proportional to the effort put. It is measured in the units of time such as
weeks, months.
Models of COCOMO:
Different models of Cocomo have been proposed to predict the cost estimation at different levels,
based on the amount of accuracy and correctness required. All of these models can be applied to a
variety of projects, whose characteristics determine the value of constant to be used in subsequent
calculations. These characteristics pertaining to different system types are mentioned below.
i. Organic – A software project is said to be an organic type if the team size required is adequately
small, the problem is well understood and has been solved in the past and also the team members
have a nominal experience regarding the problem.
ii. Semi-detached – A software project is said to be a Semi-detached type if the vital characteristics
such as team-size, experience, knowledge of the various programming environment lie in between
that of organic and Embedded. The projects classified as Semi-Detached are comparatively less
familiar and difficult to develop compared to the organic ones and require more experience and
better guidance and creativity. Eg: Compilers or different Embedded Systems can be considered of
Semi-Detached type.
iii. Embedded – A software project with requiring the highest level of complexity, creativity, and
experience requirement fall under this category. Such software requires a larger team size than the
other two models and also the developers need to be sufficiently experienced and creative to
develop such complex models.
Types of Models:
COCOMO consists of a hierarchy of three increasingly detailed and accurate forms. Any of the three
forms can be adopted according to our requirements. These are types of COCOMO model:
i. Basic COCOMO Model
ii. Intermediate COCOMO Model
iii. Detailed COCOMO Model
The first level, Basic COCOMO can be used for quick and slightly rough calculations of Software
Costs. Its accuracy is somewhat restricted due to the absence of sufficient factor considerations.
Intermediate COCOMO takes these Cost Drivers into account and Detailed COCOMO additionally
accounts for the influence of individual project phases, i.e in case of Detailed it accounts for both
these cost drivers and also calculations are performed phase wise henceforth producing a more
accurate result.
i. Initiating:
The initiating process group is generally when a project is formally approved and
assigned a project manager. The group includes two primary processes: developing the
project charter and identifying the project stakeholders.
The two outcomes of this process group are the project charter document and the
stakeholder register. The stakeholder register lists who the project stakeholders are, what
their stake in the project is, and what they expect in regards to frequency and form of
communication.
The project charter should include the business case for the project (why it should be
completed), as well as a high-level overview of the project’s scope, deliverables, and
objectives.
Typically, a project charter will also include:
➢ Resources required
➢ Key stakeholders
➢ A high-level timeline with key milestones
➢ A high-level cost estimate
➢ Any known risks, issues, or dependencies
ii. Planning:
The planning group is the largest of the five process groups, consisting of 24 processes in
total. This group of processes is designed to help you plan your entire project in detail, from
the scope, schedule, and budget, through to how you will manage the key stakeholders. The
primary outcome of this planning stage is a project management plan (PMP).
For larger projects, the PMP may have sub-plans to further outline some of the critical
areas, such as the project schedule or quality management. For smaller projects, processes
may simply be covered in separate subsections or fleshed out in an appendix.
The PMP is a “living document” that is updated and revised throughout the project as
changes occur.
iii. Executing:
The executing group is where most of the action happens on a project. It is also where most
of the budget is spent and where the actual project deliverables are produced.
The executing process group includes ten project management processes. It is primarily
focused around managing project activities and tasks to ensure progress is occurring,
communications are happening, risk responses are being implemented, and stakeholders
are being engaged.
The most significant role for the project manager during this phase is directing and
managing the project work and managing the project knowledge (requirements
documentation, meeting minutes, lessons learned). Other typical responsibilities of the
project manager include acquiring project resources, developing and managing the project
team, and managing communications.
iv. Controlling and monitoring:
The controlling and monitoring process group is the second largest, containing twelve
project processes. These processes happen throughout the entire project and are in place to
ensure there is sufficient oversight. This will also help identify and mitigate any potential
issues.
Inevitably, something unexpected will come up during the project life cycle. The processes
in this process group are designed to help you update the plan, modify your team’s
activities, and get everything back on track.
One of the essential processes in this group is monitoring the project work. This requires the
tracking of the overall project and its key aspects. This process is critical in limiting overages
and project errors. Often, project management software is used to monitor and report on
progress.
v. Closing:
The closing process group only has one primary process: close out the project or phase. This
process involves ensuring the customer has accepted all final phase or project deliverables.
Documentation should also be completed and stored and any loose ends of the project or
phase should be tied up.
20. Consider a project with the following functional units:
• Number of user inputs=50 • Number of user files=06
• number of user outputs=40 • Number of external
• number of user enquiries=35 interfaces=4
Assuming all complexity adjustment factors and weighing factors as average, what is the function
point for the project?
BY Kashii Malik & Farii Gondal Page 39 of 49
Software Project Management
Explanation:
Step-1: As complexity adjustment factor is average (given in question), hence,
scale = 3.
F = 14 * 3 = 42
Step-2:
CAF = 0.65 + ( 0.01 * 42 ) = 1.07
Step-3: As weighting factors are also average (given in question) hence we will multiply each
individual function point to corresponding values in TABLE.
UFP = (50*4) + (40*5) + (35*4) + (6*10) + (4*7) = 628
Step-4:
Function Point = 628 * 1.07 = 671.96
Counting Function Point (FP):
Step-1:
F = 14 * scale
Scale varies from 0 to 5 according to character of Complexity Adjustment Factor (CAF). Below table
shows scale:
0 - No Influence
1 - Incidental
2 - Moderate
3 - Average
4 - Significant
5 – Essential
Step-2: Calculate Complexity Adjustment Factor (CAF).
CAF = 0.65 + ( 0.01 * F )
Step-3: Calculate Unadjusted Function Point (UFP).
TABLE (Required)
FUNCTION UNITS LOW AVG HIGH
EI 3 4 6
EO 4 5 7
EQ 3 4 6
ILF 7 10 15
EIF 5 7 10
21. Write a note on organizational structures. Explain its types along with advantages and
disadvantages for each type?
Organizational structure is an enterprise environmental factor, which can affect the availability of
resources and influence how projects are conducted. Organizational structures range from
functional to projectized, with a variety of matrix structures in between as follows:
1. Functional (Centralized) Organizational Structure:
This structure of organization is based on hierarchical structure of functions. A functional manger in
this kind of organization has complete authority. All of the project work typically happens within a
particular department, and that department’s manager is completely in charge of everything.
• The project team members report to a functional manager.
• Project management decisions have to be cleared with functional managers.
• Project managers are assistants to the functional managers in getting the work done.
• Project managers spend a lot of time doing administrative tasks.
• They are called project expediters in functional organizations.
Advantages:
• Broad specialist base available
• Shared knowledge of latest technology
• Flexible resource scheduling
Disadvantages:
• Less Project Manager authority
• Complex coordination
• No one person responsible for an entire project
2. Matrix Organizational Structure:
Matrix organizations as the name suggests minimizes the difference between Functional and the
Projectized Organizations. It also takes advantage of the strengths of these two set-ups. The gap
however is so big that even the Matrix organization had to be divided in to three categories – Weak
Matrix, Balanced Matrix and Strong Matrix:
• Weak Matrix– This structure is bent towards functional structure. The decisions making still
happens with the functional manager’s cooperation or approval. The project managers do have
some authority; however, they hold close to no authority over the resources on a project.
Project expediters and project coordinators can work in weak matrix organizations, too.
• Balanced Matrix – Clearly the authority level is balanced. Project managers share authority with
the functional managers. Project manager, however, has to run his people management
decisions by the functional manager, but vice versa, the functional manager too have to run the
project decisions by the project manager. Resources working in a balanced matrix organization
report to a project manager and a functional manager equally.
• Strong Matrix – A strong matrix organization has its focus majorly on the delivery of the project.
In this set-up, the project managers have more authority than the functional managers. The
people management decision making lies with the functional manager and the team still reports
to both managers. The team is appraised based on their project performance as well as their
functional expertise.
Advantage:
• Identifying the problems early
• Good control over projects
• Change management becomes easier and in
• Better coordination between the departments a timely manner
BY Kashii Malik & Farii Gondal Page 41 of 49
Software Project Management
Disadvantage:
• Duplicate Reporting – team members have two different bosses, one their functional
manager, another project manager of the project they have been assigned to.
• Sometimes conflicts would arise between departments.
• Information and workflow in multiple directions
3. Projectized Organizational Structure:
In a Projectized set-up, every entity is organized around projects. Once a project is complete, the
team is released. The resources of that project are reassigned to another project. The project
manager makes every crucial decision including that on budget. All of the decisions about a
project’s schedule, quality, and resources are taken by the project manager. All said and done, the
complete accountability lies with the project manager and he becomes responsible for the success
or failure of the project. For example, a contractor or a consulting company is organized like this.
Advantage:
• Team reports to one manager
• No multi-direction flow, only single point focus on projects
• Change response happen rapidly
• High project commitment
• Accountability for strong and disciplined line of communication and status updates.
Disadvantage:
• High cost to the enterprise
• Team members cannot appraise their skill sets
• Duplication of resources
• Career insecurity
4. Composite Organizational Structure:
The last type of organization, a composite organization, is one that changes the authority level of
the project manager from project to project. In one project, it might be more like that of
Projectized organization, and in another project, more like a functional organization.
The diagram below depicts how from Functional to Projectized, the authority of a Project Manager goes on
increasing.
22. What is preliminary investigation? What’s the importance of this investigation? At which point
during SDLC this investigation is being done? What is the end product of this investigation?
Preliminary Investigation:
Preliminary investigation is the first phase of the systems development life cycle in which a brief
feasibility study is performed to assess whether or not a full-scale project should be undertaken.
The preliminary investigation is carried out to determine the scope and objectives of the new
system and to investigate whether there is a feasible solution. New applications normally originate
from end-user requests and are weighed against the other requests for IS resources before
approval to develop the system is granted. At this stage an analyst or small project team is
authorized to investigate the real potential of the new application. During this brief study the
analyst must investigate the problem and the existing system sufficiently to be able to identify the
true extent and purpose of the new application.
The purpose of the preliminary investigation is to determine whether the problem or deficiency in
the current system really exists. The project team may reexamine some of the feasibility aspects of
the project. At this point, the purpose is to make a “go” or “no-go” decision.
The output from this preliminary investigation is a statement of scope and objectives (often termed
the project charter) together with a feasibility report. This document is submitted to management
where a decision is made as to whether or not the development project should continue.
23. Write a note on any two of the following:
(a) Skill requirements for the project manager.
1. Communication
Project managers must have strong communication skills to be able to convey messages to clients
and team members. They need this skill to effectively share their vision, goals, ideas and issues.
They also need communication skills to produce presentations and reports.
2. Leadership
Strong leadership skills are critical for project managers. They allow leaders to oversee and
coordinate tasks as well as motivate and encourage the team and define the road map to
successfully complete the project.
3. Team management
Besides leading a team from a strategic perspective, project managers also need to manage from an
operational point of view. An effective team manager excels at administering and coordinating
groups of individuals by promoting teamwork, delegating tasks, resolving conflict, setting goals, and
evaluating performance. Leadership is about inspiring others to walk with you; team management
makes sure your team has the right shoes.
4. Organization
To ensure processes are running smoothly and in line with common goals, project managers must
have strong organizational skills. While this includes the ability to multitask, it also includes
prioritizing tasks, compartmentalizing projects and documenting everything for easy access and
future reference.
5. Negotiation
A project manager must be effective at negotiating terms with suppliers, clients and other
stakeholders. You must also employ negotiation skills when working with your team as well to bring
everyone in line with strategic goals or manage interpersonal conflicts within the team.
6. Problem-solving
A project manager must be able to gather information, weigh the associated pros and cons and
then formulate the best solution. Strong problem-solving skills will allow project managers to have
a structured approach to solving problems to achieve a positive result.
(b) Process groups in project management.
Previously explained….
leading in to a node having been completed and the event of all activities leading out of that
node being in a position to be started.
In Figure 6.9 node 3 is the event that both coding and data take-on have been completed and
activity program testing is free to start. Installation may be started only when event 4 has been
achieved, that is, as soon as program testing has been completed.
and 5 as described in Section 6.9. In other words, all events, except the first and the last, must
have at least one activity entering them and at least one activity leaving them and all activities
must start and end with an event.
ix. Precedents are the immediate preceding activities:
In Figure 6.9, the activity Program test cannot start until both Code and Data take-on have been
completed and activity Install cannot start until Program test has finished. Code and Data take-
on can therefore be said to be precedents of Program test, and Program test is a precedent of
Install. Note that we do not speak of Code and Data take-on as precedents of Install - that
relationship is implicit in the previous statement.
24. What is difference between ROI (return or investigation) and payback period? Explain with
example?
Payback Period gives you the number of years would you be paid back the amount you invested.
Example: I have invested 10,000$ and every year, I am getting say 1000$, so the payback period is
10 years. (1000$ * 10years = 10,000$)
Return on Investment gives you the AMOUNT you would get in return as a result of your
investment.
Example: I have invested 15000$ and return on investment in terms of percentage is 5% after 3
years, so Return on Investment after 3 years= 0.05 * 15000 = 750$
The payback period is the period of time over which the return is received. The return on
investment is the amount of money received from your investment.
25. Suppose you are managing a software development project. The project is expected to be
completed in 6 months at a cost of $15,000 per months, after 4 months, planned completion
should have been 70%. But you realize that the project is 50% completed at a cost of $70,000.
(A). Find BCWP, BCWS, and ACWP
(B). Calculate SPI and CPI and interpret these indexes?
(C) Calculate EAC for this project.
SOL(A):
ACWP (Actual cost of work performed) = $70,000
BCWP (Budget cost of work performed) = $45,000
BCWS (Budget cost of work scheduled) = $60,000
SOL(B):
CPI = Cost Performance Index = BCWP/ACWP
CPI = $45,000 / $70,000
CPI = $0.64
AS CPI = 0.64 < 1 so, project is over the budget.
29. Find critical path by performing complete forward and backward pass.
Activity Description Preceding Activity Activity duration
A Approval of None 5
application
B Construction plan A 15
C Traffic study A 10
D Service availability A 5
check
E Staff report B, C 15
F Commission B, C, D 10
Approval
G Wait for F 170
construction
H Occupancy E, G 35
30. Draw an activity network using backward pass, for the activities mentioned below. Identify the
critical path?
S/NO Activity Duration (Days) Depends on
L Planning 3
M Requirements 4 L
Confirming
N Project Designing 7 M
O Implementation 6 L,N
P Testing 5 L,N,O
Q Integration 3 M,N,O,P
31. Draw an activity network using forward pass, for the activities mentioned below. Identify the
critical path.
S/NO Activity Duration(Days) Depends on
A Requirement 8
gathering
B Requirement 3 A
checking
C Project designing 8 B
D Implementation 12 A, C
E Testing 3 A, C, D
F Integration 4 A, B, C, D