21-22 Soln
21-22 Soln
B.TECH
(SEM VI) THEORY EXAMINATION 2021-22
SOFTWARE PROJECT MANAGEMENT
SECTION A
Solution: The project life cycle includes the steps required for project
managers to successfully manage a project from start to finish. There
are 5 phases to the project life cycle (also called the 5 process
groups)—initiating, planning, executing, monitoring/controlling, and
closing. The Project Life Cycle consists of four main phases through
which the Project Manager and his team try to achieve the objectives
that the project itself sets.
(d) Discuss about the Effort Estimation. 2 2
SECTION B
Solution: Staff selection is a term that refers to one of the personnel activities. The
purpose of the selection is to choose for the position (job) and for the organization (co-
workers, organizational culture, etc.) probably the most suitable candidate. Staff
Deployment & Staffing. Human Resources Management. Employee selection methods are
criteria for choosing an optimal candidate for a particular job position. They involve
reviewing an individual's capabilities, education, experiences and personality to determine
if they can perform key tasks and align with a company's overall culture. There are several
categories of employee selection methods, including tests or examinations, interviews and
background research. Hiring teams often use them to identify top candidates from a larger
list and see how they approach different work situations.
List of employee selection methods: A recruiter chooses top candidates from resumes and
other application materials sent through online job boards and portals. They typically use
a set of guidelines that show attributes a company prefers top candidates to have,
including relevant work experiences, skill sets and past training.
Screening: A recruiter might use this method to identify candidates from a previously
curated shortlist. It typically involves sending these candidates a series of questions by
email that further assess their qualifications and professionalism.
Assignment test: This selection method involves administering a test prompt that
resembles a similar work assignment that a candidate might receive in a company.
Recruiters often send the prompt through email to candidates from a shortlist. It can
provide more information about a candidate's practical skills for a job position, including
how they manage their time to meet a deadline efficiently. For example, a hiring manager
may require a copywriter to submit a writing sample using a company's internal style
guide or require a software engineer to prepare some lines of code for the organization's
website.
Solution:
(i) Software process and Process Models: Software is the set of instructions in the form of
programs to govern the computer system and to process the hardware components. To
produce a software product the set of activities is used. This set is called a software
process. The four basic process activities of specification, development, validation, and
evolution are organized differently in different development processes. The term software
specifies to the set of computer programs, procedures and associated documents
(Flowcharts, manuals, etc.) that describe the program and how they are to be used. A
software process is the set of activities and associated outcome that produce a software
product. a software process model is the mechanism of dividing software development
work into distinct phases to improve design, product management, and project
management. It is also known as a software development life cycle. The software
engineering paradigm which is also referred to as a software process model or Software
Development Life Cycle (SDLC) model is the development strategy that encompasses the
process, methods and tools.
(ii) Choice of Process models: 'The word "process* is sometimes used to emphasize the
idea of a system in action. In order to achieve an outcome, the system will have to execute
one or more activities: this is its process. This idea can be applied to the development of
computer-based systems where a number of interrelated activities have to be undertaken
to create a linal product. These activities can be organized in different ways and we can
call these process models.
A major part of the planning will be the choosing of the development methods to be used
and the slotting of these into an overall process model.
The planner needs not only to select methods but also to specify how the method is to be
applied. With methods such as SSADM, there is a considerable degree of choice about
how it is to be applied: not all parts of SSADM are compulsory. Many student projects
have the rather basic failing that at the planning stage they claim that. Say. SSADM is to
be used: in the event, all that is produced are a few SSADM fragments such as a top level
data flow diagram and a preliminary logical data structure diagram. If this is all the
particular project requires, it should be stated at the outset.
-The word process is sometimes used to emphasize the idea of a system in action. In order
to achieve an outcome, the system will have to execute one or more activities: this is its
process.
-This idea can be applied to the development of computer-based systems where a number
of interrelated activities have to be undertaken to create a local product. These activities
can be organized in different ways and we can call these process models.
-A major part of the planning will be the choosing of the development methods to be used
and the slotting of these into an overall process model.
-The planner needs not only to select methods but also to specify how the method is to be
applied. With methods such as SSADM, there is a considerable degree of choice about
how it is to be applied: not all parts of SSADM are compulsory. Many student projects
have the rather basic failing that at the planning stage they claim. say. SSADM is to be
used: in the event, all that is produced are a few SSADM fragments such as a top level
data flow diagram and a preliminary logical data structure diagram. If this is all the
particular project requires, it should be stated at the outset.
The RAD (Rapid Application Development) model is based on prototyping and iterative
development with no specific planning involved. The process of writing the software itself
involves the planning required for developing the product.
Rapid Application Development focuses on gathering customer requirements through
workshops or focus groups, early testing of the prototypes by the customer using iterative
concept, reuse of the existing prototypes (components), continuous integration and rapid
delivery.
What is RAD?
Rapid application development is a software development methodology that uses minimal
planning in favor of rapid prototyping. A prototype is a working model that is functionally
equivalent to a component of the product.
In the RAD model, the functional modules are developed in parallel as prototypes and are
integrated to make the complete product for faster product delivery. Since there is no
detailed preplanning, it makes it easier to incorporate the changes within the development
process.
RAD projects follow iterative and incremental model and have small teams comprising of
developers, domain experts, customer representatives and other IT resources working
progressively on their component or prototype.
The most important aspect for this model to be successful is to make sure that the
prototypes developed are reusable.
RAD Model Design
RAD model distributes the analysis, design, build and test phases into a series of short,
iterative development cycles.
Following are the various phases of the RAD Model −
Business Modelling
The business model for the product under development is designed in terms of flow of
information and the distribution of information between various business channels. A
complete business analysis is performed to find the vital information for business, how it
can be obtained, how and when is the information processed and what are the factors
driving successful flow of information.
Data Modelling
The information gathered in the Business Modelling phase is reviewed and analyzed to
form sets of data objects vital for the business. The attributes of all data sets is identified
and defined. The relation between these data objects are established and defined in detail
in relevance to the business model.
Process Modelling
The data object sets defined in the Data Modelling phase are converted to establish the
business information flow needed to achieve specific business objectives as per the
business model. The process model for any changes or enhancements to the data object
sets is defined in this phase. Process descriptions for adding, deleting, retrieving or
modifying a data object are given.
Application Generation
The actual system is built and coding is done by using automation tools to convert process
and data models into actual prototypes.
Testing and Turnover
The overall testing time is reduced in the RAD model as the prototypes are independently
tested during every iteration. However, the data flow and the interfaces between all the
components need to be thoroughly tested with complete test coverage. Since most of the
programming components have already been tested, it reduces the risk of any major
issues.
RAD Benefits:
-Quicker delivery. We'll start with the easy one, since it's built into the name. ...
Quicker adjustments.
-Fewer errors.
-Lower development cost.
-Lower maintenance costs.
-Faster release of versions.
-Better adoption of new technologies.
-More involvement from business.
Solution: A project schedule indicates what needs to be done, which resources must be
utilized, and when the project is due. It's a timetable that outlines start and end dates and
milestones that must be met for the project to be completed on time. A project
management schedule is a calendar or timeline that project managers use to keep track of
tasks and deadlines. Managers schedule start and end dates for individual tasks within the
project timeline to make sure the entire project advances at an appropriate speed.
Project scheduling involves creating a document, these days usually a digital document,
that details the project timeline and the organizational resources required to complete each
task. The project schedule must be accessible to every team member.
Project schedule simply means a mechanism that is used to communicate and know about
that tasks are needed and has to be done or performed and which organizational resources
will be given or allocated to these tasks and in what time duration or time frame work is
needed to be performed. Effective project scheduling leads to success of project, reduced
cost, and increased customer satisfaction. Scheduling in project management means to list
out activities, deliverables, and milestones within a project that are delivered. It contains
more notes than your average weekly planner notes. The most common and important
form of project schedule is Gantt chart.
(d) Discuss about the concept and need of Cost monitoring Earned Value Analysis. 1
Solution: As earned value analysis provides better clarity and control on the activities
involved, it enables project managers to respond to issues early. As a part of EVM,
employees need to track their time and report their progress against the baseline.
Earned Value Analysis (EVA) is a method that allows the project manager to measure the
amount of work actually performed on a project beyond the basic review of cost and
schedule reports. EVA provides a method that permits the project to be measured by
progress achieved.
Earned value management (EVM) is an effective technique for tracking costs and
examining project expenditures relative to completed work. Its strength is that it looks at
cost, time, and task completion within the scope of the project simultaneously. It uses a
WBS and budget created during the development stage, but tracks these metrics during
the implementation stage of a project life cycle.
Performing EVM on a project requires that the project Scope, Schedule, and Budget be
integrated into a time-phased Performance Measurement Baseline (PMB). The PMB is
maintained with strict change control to ensure the integration of scope, schedule, and
budget.
Part of software project management involves making everyone involved aware of the
purpose of the project and what steps are required to meet the end goal. Learn more about
project management for software development and what it entails.
SECTION C
3. Attempt any one part of the following: 10*1 = 10
Q.no Questions Marks C
(a) What is the concept and need of Agile methods in Project Life Cycle? 10 2
Solution: The Agile software development life cycle is the structured series of
stages that a product goes through as it moves from beginning to end. It contains
six phases: concept, inception, iteration, release, maintenance, and retirement.
The Agile life cycle will vary slightly depending on the project management
methodology chosen by a team. For example, Scrum teams work in short time
periods known as sprints, which are similar to iterations. They also have clearly
defined roles, such as Scrum master. On the other hand, Kanban teams have more
of a continuous flow with no required roles. Another example is Extreme
Programming, where teams tend to work in shorter iterations and place an extra
focus on engineering practices.
However, the goal of all software development teams is the same: to deliver
working software to users on time.The six phases of the agile life cycle
As mentioned, the Agile software development life cycle consists of six phases.
Let’s examine each of these Agile phases in more detail.
1. Concept
First up is the concept phase. Here, a product owner will determine the scope of
their project. If there are numerous projects, they will prioritize the most
important ones. The product owner will discuss key requirements with a client
and prepare documentation to outline them, including what features will be
supported and the proposed end results. It is advisable to keep the requirements to
a minimum as they can be added to in later stages. In the concept stage, the
product owner will also estimate the time and cost of potential projects. This
detailed analysis will help them to decide whether or not a project is feasible
before commencing work.
2. Inception
Once the concept is outlined, it is time to build the software development team. A
product owner will check their colleagues’ availability and pick the best people
for the project while also providing them with the necessary tools and resources.
They can then start the design process. The team will create a mock-up of the user
interface and build the project architecture. The inception stage involves further
input from stakeholders to fully flesh out the requirements on a diagram and
determine the product functionality. Regular check-ins will help to ensure that all
requirements are built into the design process.
3. Iteration
4. Release: The product is almost ready for release. But first, the quality
assurance team needs to perform some tests to ensure the software is fully
functional. These Agile team members will test the system to ensure the code is
clean — if potential bugs or defects are detected, the developers will address them
swiftly. User training will also take place during this phase, which will require
more documentation. When all of this is complete, the product’s final iteration
5. Maintenance: The software will now be fully deployed and made available to
customers. This action moves it into the maintenance phase. During this phase,
the software development team will provide ongoing support to keep the system
running smoothly and resolve any new bugs. They will also be on hand to offer
additional training to users and ensure they know how to use the product. Over
time, new iterations can take place to refresh the existing product with upgrades
6. Retirement: There are two reasons why a product will enter the retirement
phase: either it is being replaced with new software, or the system itself has
become obsolete or incompatible with the organization over time. The software
development team will first notify users that the software is being retired. If there
is a replacement, the users will be migrated to the new system. Finally, the
developers will carry out any remaining end-of-life activities and remove support
for the existing software.
(b) Explain about the Oldham Hackman job characteristic model under the Staffing in 10 5
Software Projects.
-Skill variety
-Task identity
-Task significance
-Autonomy
-Feedback
Each one of these components can be adjusted to recalibrate a job, making it more
engaging for the employee.
-Delegate tasks to the lowest level that you can. One step you can follow to apply
the JCM in your workplace is to delegate tasks to the lowest level that you can.
-Vary the tasks involved in a job.
-Assign teamwork.
-Complete performance evaluations.
-Encourage employees to rotate jobs.
(b) Discuss about the Forward Pass and Backward Pass techniques in 10 3
Activity Planning and Risk Management.
Forward Pass:
(i) Stress.
(ii) Health and Safety.
(ii) Ethical and Professional concerns.
Solution:
Solution:
(i) Basics of Software estimation: There are two basic models for
estimating software development effort (or cost): holistic and activity-
based. The single biggest cost driver in either model is the estimated
project size. Software test estimation is a process of measuring and
managing the duration and actions required to run a complete test on
the software. Time and effort is considerably simple to calculate for
small-scale assignments. But for larger projects. Efficient strategies
must be in place so that no mistakes are made.
Solution:
(i) Critical path (CRM) method: Critical path is the sequential
activities from start to the end of a project. Although many projects
have only one critical path, some projects may have more than one
critical paths depending on the flow logic used in the project.
If there is a delay in any of the activities under the critical path, there
will be a delay of the project deliverables.
Most of the times, if such delay is occurred, project acceleration or re-
sequencing is done in order to achieve the deadlines.
Critical path method is based on mathematical calculations and it is
used for scheduling project activities.
The initial critical path method was used for managing plant
maintenance projects. Although the original method was developed for
construction work, this method can be used for any project where there
are interdependent activities.
In the critical path method, the critical activities of a program or a
project are identified. These are the activities that have a direct impact
on the completion date of the project.
-Brainstorming
-Stakeholder interviews
-NGT technique
-Affinity diagram
-Requirements review
-Project plans
-Root cause analysis.
-SWOT analysis.
Solution:
(b) Write down about the concept of Contract Management under the 10 4
Management Technique.
Not all companies have set contract managers, but major defense firms
or companies that frequently work with the government tend to use
contract managers. Managing contracts is an overlooked form of
management. Managers interact frequently with employees, and some
of those discussions and situations naturally relate to compensation.
Some of these conversations will deal with contract management. Other
times, businesses need to manage contract agreements with other
businesses. It’s not talked about much, but contract management is an
important business topic. If you’re unsure of how the contract
management process works, it’s important to understand the basics.