0% found this document useful (0 votes)
26 views

Chapt 5

The document discusses project scheduling and tracking techniques for software projects. It describes work breakdown structures, critical path method, program evaluation review technique and Gantt charts which are used to schedule and track tasks, dependencies, durations and milestones in software projects.

Uploaded by

preetidamakale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

Chapt 5

The document discusses project scheduling and tracking techniques for software projects. It describes work breakdown structures, critical path method, program evaluation review technique and Gantt charts which are used to schedule and track tasks, dependencies, durations and milestones in software projects.

Uploaded by

preetidamakale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 42

Chapter 5

Software Quality Assurance and Security


5.1 Project Scheduling
. In project management, a schedule consist of a list of
project terminal elements, with intended start date
and finish date.
2. The s/w project scheduling distributes estimated
efforts across the planned project period by allocating
the effort to particular s/w engineering tasks.
3. There are many tasks in a s/w project. The project
manager defines all the task and generates the
schedule.
4. Initially a macroscopic schedule is developed,
identifying all major process framework activities and
then the detailed schedule of specific tasks are
identified and scheduled.
• Work Breakdown Structure (WBS)
• The process of dividing complex project to
simpler and manageable work items is called
Work Breakdown Structure (WBS).
• Work item is also called as task.
• Project managers use this technique for
simplification of project execution.
• In WBS Larger items are broken down to
smaller manageable items and later these
items are easily verified and estimated.
• WBS is not limited to specific project type.
• It can be used for any type of project.
• Factors that delay Project Schedule
Although there are many reasons why software is
fail, most can be traced to one or more of the
following root causes:
1. An unrealistic deadline established by
someone outside the software team and forced
on managers and practitioners.
2. Changing customer requirements that are not
reflected in schedule changes.
3. An honest underestimate of the amount of
effort and/or the number of resources that will
be required to do the job.
Predictable and/or unpredictable risks that were
not considered when project commenced.
5. Technical difficulties that could not have been
foreseen in advance.
6. Human difficulties that could not have been
foreseen in advance.
7. Miscommunication among project staff that
results in delays.
8. A failure by project management to recognize
that the project is falling behind schedule and
a lack of action to correct the problem.
• Principles of Project Scheduling
• Basic principles software project scheduling
are:
• Compartmentalization: The project must be
compartmentalized into a number of
manageable activities and tasks. To accomplish
compartmentalization, both the product and
the process are decomposed.
• Interdependency: The interdependency of
each compartmentalized activity or task must
be determined. Some tasks must occur in
sequence while others can occur in parallel.
• Some activities cannot start until the work
product produced by another is available.
Other activities can occur independently.

• Time allocation: Each task to be scheduled


must be allocated some number of work units
(e.g., person-days of effort). In addition, each
task must be assigned a start date and a
completion date that are a function of the
interdependencies and whether work will be
conducted on a fulltime or part-time basis.
• Effort validation: Every project has a defined
number of staff members. As time allocation
occurs, the project manager must ensure that
no more than the allocated number of people
has been scheduled at any given time.

• Defined responsibilities: Every task that is


scheduled should be assigned to a specific
team member.
• Defined milestones: Every task or group of
tasks should be associated with a project
milestone. Program evaluation and review
technique (PERT) and critical path method
(CPM) are two project scheduling Methods that
can be applied to software development.
• Defined outcomes – Every task that is
scheduled should have a defined outcome for
software projects such as a work product or
part of a work product – Work products are
often combined in deliverables.
• Scheduling Technique

• PERT- Program Evaluation Review Technique -


• CPM - Critical Path Method -
• in projects various activities are executed in
parallel by different teams.
• Some activities are dependent on other and
hence cannot start before other task is
completed
• A critical path in project management is certain
tasks that need to be performed in a clear order
and for a certain period.
• Critical path is the longest sequence of activities
in the project plan which must be completed on
time for the project to complete on due date
• If part of one task can be slowed down or
postponed for a term without leaving work on
others, then such a task is not critical.
• While tasks with a critical value cannot be
delayed during the implementation of the
project and are limited in time.
• Critical Path Method (CPM) is an algorithm for
planning, managing and analyzing the timing of
a project.
• The step-by-step CPM system helps to identify
critical and non-critical tasks from projects’ start
to completion and prevents temporary risks.
• Critical tasks have a zero run-time reserve. If
the duration of these tasks changes, the terms
of the entire project will be ”shifted.”
• That is why critical tasks in project
management require special control and timely
detection of risks.
• Initially critical path method was used for
managing plant maintenance project.
• The original critical path method was
developed for construction project.
• Now, CPM can be used in any project where
there are interdependent activities are involved
• In the critical path method the critical activities
of the project are first identified.
• Following are the steps in the critical path
method
• There are generally 5 steps involved in the CPM
1. Activity specification - work breakdown
structure
2. Activity sequence reorganization
3. Network diagram
4. Estimate for each activity
5. Identification of the critical path
Program Evaluation Review Technique (PERT)
i. PERT, is used in projects that have
unpredictable tasks and activities such as in
research and development projects.
ii. It utilizes three estimates of the time to
complete the project: the most probable, the
most promising, and the most unfavorable.
iii. It is a probabilistic tool.
iv) It uses several estimates to determine the
time completion of the project and controls
activities so that it will be completed faster
and at a lower cost.
• Difference PERT vs CPM
1. The Program Evaluation and Review Technique (PERT)
is suitable for projects that have unpredictable
activities while the Critical Path Method (CPM) is
suitable for projects that have predictable activities.
2. CPM uses a single estimate for the time that a project
can be completed while PERT uses three estimates for
the time that it can be completed.
3. CPM is a deterministic project management tool
while PERT is a probabilistic project management tool.
4. CPM allows project management planners to
determine which aspect of the project to sacrifice
when a trade-off is needed in order to complete the
project while PERT does not.
• Concept of Activity Network
• A task network, also called an activity network, is a
graphic representation of the task flow for a project.
• It is the mechanism through which task sequence and
dependencies are input to an automated project
scheduling tool.
• In its simplest form, the task network shows major
software engineering tasks.
• The concurrent nature of software engineering activities
leads to a number of important scheduling requirements.
• In addition, the project manager should be aware of
those tasks that lie on the critical path.
• That is, tasks that must be completed on schedule if the
project as a whole is to be completed on schedule.
5.2 Project Tracking
Tracking: - can be accomplished in different ways:

Conducting periodic project status meetings in
which each team member reports progress and
problems.

Evaluating the results of all reviews conducted
throughout the software engineering process.

Determining whether formal project milestones have
been accomplished by the scheduled date.

Comparing actual start-date to planned start-date
for each project task.

Meeting informally with practitioners to obtain their
subjective assessment of progress to date and
problems on the horizon.
• Time-Line Charts or Gantt chart
• A time-line chart can be developed for the entire
project or separate charts can be developed for
each project function or for each individual working
on the project.
• When creating software project schedule, we begin
with a set of tasks. If automated tools are used, the
work breakdown is input as a task network.
• Effort, duration and start date are then input for
each task, In addition, tasks may be assigned to
specific individuals.
• A time-line chart can be developed for the entire
project.
• Timeline Charts
Tasks Week 1 Week 2 Week 3 Week 4 Week n

Task 1
Task 2
Task 3
Task 4
Task 5
Task 6
Task 7
Task 8
Task 9
Task 10
Task 11
Task 12
• When multiple bars occur at the same time on
the calendar, task concurrency is implied.
• The diamonds indicate milestones.
• All project tasks (for concept scoping) are listed
in the left-hand column.
• The horizontal bars indicate the duration of
each task.
• Once the information necessary for the
generation of a time-line chart has been start.
• a tabular listing of all project tasks, their
planned and actual start and end dates, and a
variety of related information.
• with the help of time-line chart, project tables
enable to track progress of project.
• Application of Gantt Chart
• The clear simplicity and ease-of-access of all
relevant information make Gantt charts an ideal
choice for teams to use them for organizing their
schedules.
• Due to this, Gantt charts are widely used in project
management, IT and development teams.
• Apart from them, marketing, engineering, product
launch, manufacturing teams can also use Gantt
charts to get an overview of how things are rolling
on the work front
Work tasks week 1 week 2 week 3 week 4 week 5
I.1.1 Identify need and benefits
Meet with customers
Identify needs and project constraints
Establish product statement
Milestone: product statement defined
I.1.2 Define desired output/control/input (OCI)
Scope keyboard functions
Scope voice input functions
Scope modes of interaction
Scope document diagnostics
Scope other WP functions
Document OCI
FTR: Review OCI with customer
Revise OCI as required;
Milestone; OCI defined
I.1.3 Define the functionality/behavior
Define keyboard functions
Define voice input functions
Decribe modes of interaction
Decribe spell/grammar check
Decribe other WP functions
FTR: Review OCI definition with customer
Revise as required
Milestone: OCI defintition complete
I.1.4 Isolate software elements
Milestone: Software elements defined
I.1.5 Research availability of existing software
Reseach text editiong components
Research voice input components
Research file management components
Research Spell/Grammar check components
Milestone: Reusable components identified
I.1.6 Define technical feasibility
Evaluate voice input
Evaluate grammar checking
Milestone: Technical feasibility assessed
I.1.7 Make quick estimate of size
I.1.8 Create a Scope Definition
Review scope document with customer
Revise document as required
Milestone: Scope document complete
• Draw time chart for Libraray management
system System (5 days a week). Consider
broad phases of SDLC.

• Prepare macro time line chart for 15 days of


college management system (5 days a week)
consider phases of SDLC.

• Prepare Macro Timeline chart for 20 days of


Hotel Management system (6 days a week)
consider broad phase of SDLC.
• Earned Value Analysis ( EVA)
• Earned value analysis’s objective is to measure
project performance in terms of scope cost
and time
• It also used for monitoring the progress of
software project.
• Total time required to complete the project is
calculated and each task is given an earn value
based on its estimated
• If the project is not going as per plan and it is
found that there is some delay in the project
• at this time situation is needed to be taken
care by finding out the reasons that are
causing delay and by taking corrective actions.
• Key Elements of EVA
1. Planned Value (PV) - allocated cost for the
project which is approved.
2. Earned Value (EV) - The budgeted value of
the completed work packages
3. Actual Cost(AC) – The actual cost involved
during the execution of project work.
5.3 Software Quality Management
• software quality - Quality means that a product
satisfies the demands of its specifications. It
also means achieving a high level of customer
satisfaction with the product.
• In software systems this is difficult that
Customer quality requirements(e.g. efficiency
or reliability) often conflict with developer
quality requirements (e.g. maintainability or
reusability)
• Quality management or Quality control
• Quality management/control involves series of
inspections, reviews, tests used throughout the
process.
• It includes a feedback loop to the process.
• A key concept of quality management/control
is that all work product have defined,
specifications are compared and feedback loop
is essential to minimize the defects produced.
• It is a procedure that focuses on fulfilling the
quality requested.
• Quality Control: Software quality control is the
set of procedures used by organizations to
ensure that a software product meets its quality
goals at the best value(minimum cost) to the
customer.
• And continually improve the organization's
ability to produce software products in the
future.
• Quality Assurance: Quality assurance assess the
effectiveness and completeness of quality
control activities.
• The goal of Quality assurance is to provide
management with the data necessary about
product quality, gaining confidence that product
quality is meeting its goal.
• If not ,its managements responsibility to address
the problem and apply the necessary resources
to resolve quality issues.
• Quality Assurance: It is a procedure that
focuses on providing assurance that quality
requested will be achieved.
• Quality assurance consists of the auditing and
reporting functions of management.
• Software quality assurance is composed of a
variety of tasks associated with two different
aspects - the software engineers who do
technical work and an SQA group that has
responsibility for quality assurance planning,
record keeping, analysis, and reporting.
• Software engineers address quality (and
perform quality assurance and quality control
activities) by applying technical methods,
conducting formal technical reviews, and
performing well-planned software testing.

• Activities of SQA(Software Quality Assurance)


1. Prepare an SQA plan for a project:- The plan is
developed during project planning and is
reviewed by all interested parties. Quality
assurance activities performed by the software
engineering team and the SQA group are
governed by the plan.
• The plan identifies –
> evaluations to be performed
> audits and reviews to be performed
> standards that are applicable to the project
> procedures for error reporting and tracking
> documents to be produced by the SQA group
> amount of feedback provided to the software
project team
2.Participate in the development of the
project’s software process description:-The
software team selects a process for the work to
be performed. The SQA group reviews the
process description for compliance with
organizational policy and other parts of the
software project plan.
3.Review software engineering activities to
verify compliance with the defined software
process.:- The SQA group identifies, documents,
and tracks deviations from the process and
verifies that corrections have been made.
4. Audits are designed for s/w work products to
verify compliance with those defined as a part of
process. :- verify that corrections have been made
and periodically reports the results of its work to
the project manager.
5.Ensure that deviations in software work and work
products are documented and handled according
to a documented procedure. :- Deviations may be
encountered in the project plan, process
description, applicable standards, or technical work
products.
6. Records any noncompliance and reports to
senior management. Noncompliance items are
tracked until they are resolved.

• Phases of Software Quality Assurance


• SQA Planning.
• Activities.
• Review and Audit.
Software Quality Assurance (QA) Software Quality Control (QC)

It is a procedure that focuses on providing It is a procedure that focuses on fulfilling


assurance that quality requested will be the quality requested.
achieved
QA aims to prevent the defect QC aims to identify and fix defects

It is a method to manage the quality- It is a method to verify the quality-


Verification Validation

It does not involve executing the program It always involves executing a program

It's a Preventive technique It's a Corrective technique

It's a Proactive measure It's a Reactive measure


It is the procedure to create the It is the procedure to verify that
deliverables deliverables

QA involves in full software development life QC involves in full software testing life cycle
cycle

In order to meet the customer QC confirms that the standards are followed
requirements, QA defines standards and while working on the product
methodologies

It is performed before Quality Control It is performed only after QA activity is done

It is a Low-Level Activity, it can identify an It is a High-Level Activity, it can identify an


error and mistakes which QC cannot error that QA cannot

Its main motive is to prevent defects in the Its main motive is to identify defects or bugs
system. It is a less time consuming activity in the system. It is a more time-consuming
activity

QA ensures that everything is executed in QC ensures that whatever we have done is


the right way, and that is why it falls under as per the requirement, and that is why it
verification activity falls under validation activity
Software Quality Assurance (QA) Software Quality Control (QC)

It requires the involvement of the whole It requires the involvement of the Testing
team team

The statistical technique applied on QA is The statistical technique applied to QC is


known as SPC or Statistical Process known as SQC or Statistical Quality
Control (SPC) Control

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy