SlideShare une entreprise Scribd logo
1  sur  77
Other Processes 1
Project management
Inspection
Configuration management
Change management
Process management
Other Processes
 Development Process is the central process
around which others revolve
 Methods for other processes often influenced
by the dev process
 We have looked at various models for dev
process
 a “real” process likely derived from a model
Other Processes 2
Other Processes In the
context of Dev Processes
Other Processes 3
Other Processes
 Project management process
 Inspection process
 Configuration management process
 Change management process
 Process management process
 Will briefly look at these now
Other Processes 4
Other Processes 5
The Typical PMs Role
 Overall responsibility for the successful
planning, execution, monitoring, control and
closure of a project.
 Primary point of contact with project
sponsors
 Key tasks
 Plans
 Meets
 Communicates
 Project Management == Leadership
Other Processes 6
10 Qualities of a PM
1. Inspires a Shared Vision
2. Good Communicator
3. Integrity
4. Enthusiasm
5. Empathy
6. Competence
7. Ability to Delegate Tasks
8. Cool Under Pressure
9. Team-Building Skills
10. Problem Solving Skills
Other Processes 7
What does a PM do?
 Development process divides development
into phases and activities
 To execute it efficiently, must allocate
resources, manage them, monitor progress,
take corrective actions, …
 These are all part of the PM process
 Hence, PM process is an essential part of
executing a project
Other Processes 8
PM Process Phases
 There are three broad phases
 Before: Planning
 During
 Monitoring and control
 Communication facilitation
 After: Postmortem analysis
 Planning is a key activity that produces a
plan, which forms the basis of monitoring
Other Processes 9
Project Management Concerns
Other Processes 10
Project Management Tools
Other Processes 11
Planning
 Done before project begins
 Key tasks
 Cost and schedule estimation
 Staffing
 Monitoring and risk mgmt plans
 Quality assurance plans
 Etc.
 Will discuss planning in detail later
Other Processes 12
Monitoring and control
 Lasts for the duration of the project and
covers the development process
 Monitors all key parameters like cost, schedule,
risks
 Takes corrective actions when needed
 Needs information on the dev process – provided
by metrics
Other Processes 13
Communication Facilitation
 Realistically no plan covers everything!
 Additional decisions are made during development
 Documents should be updated and communicated
 Typical environment
 Multiple teams
 Multiple user groups
 Multiple disciplines
 Multiple locations
 In many setting PM is center of communication hub
 Will discuss in more detail later
Other Processes 14
Meeting Types
 Project Planning Meetings
 Review of progress against schedule
 Update plan, identify pain points and
dependencies
 Publically call team leads to task
 Content Meetings
 Regular meetings focused around content topics
 E.G. “Reporting”, “Backend API”
 Make decision, Record them, Communicate them
 Use of the “Rolling Email”
Other Processes 15
Meeting Types
 Issues Meetings
 Regularly schedule meeting (ie. open in everyone’s
schedule)
 Issues gathered the day before and distributed
 Issue initiator indicates required attendance
 QA Meetings
 Planning
 Discussion with business
 Discussion with developers
 Regular Review of open tickets
Other Processes 16
Meeting Modalities
 Modalities
 In person
 Video Conference
 Voice Conference
 Shared Desktop + Voice Conference
 Pros/Cons of each?
Other Processes 17
Postmortem Analysis
 Postmortem analysis is performed when the
development process is over
 Basic purpose:
 to analyze the performance of the process, and
identify lessons learned
 Improve predictability and repeatability
 Central to a “Learning Organization” or culture
 Also called termination analysis
Other Processes 18
Relationship with Dev Process
Other Processes 19
Other Processes 20
Risk Management
From “KeepYour Projects OnTrack”
http://www.drdobbs.com/184414727
Risk Management
 Usually performed
1. at the start of a project,
2. at the beginning of major project phases (such as
requirements, design, coding and deployment),
and
3. when there are significant changes (for example,
feature changes, target platform changes and
technology changes).
Other Processes 21
Risk Management
 Four steps to risk management are
1. risk identification,
2. risk analysis,
3. risk management planning and
4. risk review
Other Processes 22
1) Risk Identification
 the brainstorming session, consider :
 Weak areas, such as unknown technology.
 Aspects that are critical to project success, such as
the timely delivery of a vendor's database
software, creation of translators or a user
interface that meets the customer's needs.
 Problems that have plagued past projects, such as
loss of key staff, missed deadlines or error-prone
software
Other Processes 23
1) Risk Identification
 Collect up the stakeholder! Who?
 Hold a brainstorming session, consider :
 Weak areas, such as unknown technology.
 Aspects that are critical to project success, such
as the timely delivery of a vendor's database
software, creation of translators or a user
interface that meets the customer's needs.
 Problems that have plagued past projects, such
as loss of key staff, missed deadlines or error-
prone software
Other Processes 24
2) Risk Analysis
 Make each risk item more specific. Risks like
"Lack of management buy-in" and "People
might leave" are too vague.
 Split the risk into smaller, specific risks, such
as
 "Manager Jane could decide the project isn't
beneficial,"
 "The database expert might leave," and
 "The webmaster may be pulled off the project.“
 Set priorities
Other Processes 25
2) Risk Analysis
Other Processes 26
Risk Items (Potential Future Problems
Derived from Brainstorming)
Likelihood of
Risk Item
Occurring
Impact to
Project if Risk
Item Does Occur
Priority
(Likelihood *
Impact)
New operating system may be unstable. 10 10 100
Communication problems over system
issues.
8 9 72
We may not have the right requirements 9 6 54
Requirements may change late in the
cycle.
7 7 49
Database software may arrive late. 4 8 32
Key people might leave. 2 10 20
3) Risk Management Planning
Other Processes 27
Risk Items (Potential
Future Problems
Derived from
Brainstorming)
Actions to
Reduce
Likelihood
Actions to
Reduce Impact if
Risk Does Occur
Who Should
Work on
Actions
When
Should
Actions Be
Complete
Status
of
Actions
New operating system
may not be stable.
Test OS more. Identify second
OS.
Joe 3/3/01
Communica-tion
problems over system
issues.
Develop
system
interface
document for
critical
interfaces.
Add replan
milestone to
realign the team's
schedule with
other areas.
Cathy 5/6/01
We may not have the
right requirements.
Build prototype
of UI.
Limit Initial
product
distribution
Lois 4/6/01
4) Risk Review
 review your risks periodically,
 check how well mitigation is progressing.
 change risk priorities, as required
 Identify new risks.
 rerun the complete risk process if the project
has experienced significant changes.
 incorporate risk review into other regularly
scheduled project reviews
Other Processes 28
Risk Management
 Time Effective!
 90 to 120 minutes for projects that are 12 to 60
person-months
 Control the length of the session by controlling
the scope you choose,
 most sessions usually take less than two hours
Other Processes 29
Other Processes 30
Communication Facilitation
Meeting Types
 Project Planning Meetings
 Review of progress against schedule
 Update plan, identify pain points and
dependencies
 Publically call team leads to task
 Content Meetings
 Regular meetings focused around content topics
 E.G. “Reporting”, “Backend API”
 Make decision, Record them, Communicate them
 Use of the “Rolling Email”
Other Processes 31
Meeting Types
 Issues Meetings
 Regularly schedule meeting (ie. open in everyone’s
schedule)
 Issues gathered the day before and distributed
 Issue initiator indicates required attendance
 QA Meetings
 Planning
 Discussion with business
 Discussion with developers
 Regular Review of open tickets
Other Processes 32
Meeting Modalities
 Modalities
 In person
 Video Conference
 Voice Conference
 Shared Desktop + Voice Conference
 Pros/Cons of each?
Other Processes 33
Face to Face Communication
 A verbal message is affected by:
 The message itself
 Paralingual attributes of the message (ie. the pitch, tone,
and inflections in the speaker's voice)
 Nonverbal communication (ie. Posture, facial expression,
shoulders, tugging on the ears, crossed arms, hand
signals)
 To be an effective communicator, you must ask
questions.
 Do you understand me?
 Questions help the project team, ask for clarification, and
achieve an exact transfer of knowledge.
Other Processes 34
Writing Email
 1) Understand why you’re writing
 have explicit answers for two questions:
 Why am I writing this?
 What exactly do I want the result of this message
to be?
Other Processes 35
Writing Email
 2) Get what you need
 Really just three basic types of business email.
 Providing information - “Larry Tate will be in the office
Monday at 10.”
 Requesting information - “Where did you put the ‘Larry
Tate’ file?”
 Requesting action - “Will you call Larry Tate’s admin to
confirm our meeting on Monday?”
 The recipient must immediately know which type of
email it is.
Other Processes 36
Writing Email
 3) Make One Point per Email
 If you need to communicate a number of different
things:
 Consider writing a separate email on each subject,
especially if they related to different topics or have
different timescales.
 Consider presenting each point in a separate, numbered
paragraph, especially if relate to the same project.
 Making each point stand out, significantly
increasing the likelihood that each point will be
addressed.
Other Processes 37
Writing Email
 3) Write a great Subject line
 Help your recipient to
 immediately understand why you’ve sent them an email
 quickly determine what kind of response or action it
requires
 Avoid “Hi,” “One more thing…,” or “FYI,”
 Best is a short summary of the most important
points
 Lunch resched to Friday @ 1pm
 Reminder: Monday is "St. Bono’s Day"–no classes
 REQ: Resend Larry Tate zip file?
 HELP: I’ve lost the source code?
 Thanks for the new liver–works great!
Other Processes 38
Writing Email
 3) Brevity is the soul of…getting a response
 The Long Crafted Email: 1%
 Explores nuances
 Handling political hot potatoes
 The Short Directed Email: 99%
 Make it fit on one screen with no scrolling.
 Better still in the “review space”
 A concise email is much more likely to get action
 But be presise…
Other Processes 39
Bad Example Good Example
Subject: Proposal
Lynn,
Did you get my proposal last
week? I haven't heard
back and wanted to make
sure.
Can you please call me so we
can discuss?
Thanks!
Peter
Subject: Checking On Reliable Landscapes Proposal
Lynn,
I just wanted to check that you have received the
landscaping proposal I emailed to you last week. I
haven't heard back and wanted to make sure it went
through.
Can you please call me byThursday so we can discuss?
This is when our discount offer expires, and I want to
make sure you don't miss it!
The quickest way to contact me is by cell phone.
Thanks!
Peter Schuell, Owner
Reliable Landscaping, Inc.
555.135.4598 (office)
555.135.2929 (cell)
Other Processes 40
Other Processes 41
Background
 Main goal of inspection process is to detect
defects in work products
 First proposed by Fagan in 70s
 Earlier used for code, now used for all types of
work products
 Is recognized as an industry best practice
 Data suggests that it improves both Q&P
Other Processes 42
http://en.wikipedia.org/wiki/Fagan_inspection
Background
 “A defect is an instance in which a requirement
is not satisfied.” [Fagan, 1986]
 Defects injected in sw at any stage
 Hence must remove them at every stage
 Inspections can be done on any document
including design docs and plans
 Is a good method for early phases like
requirements and design
 Also useful for plans (PM plans, CM plans,
testing plans,…)
Other Processes 43
Some Characteristics
 Conducted by group of technical people for
technical people (i.e. review done by peers)
 Is a structured process with defined roles for the
participants
 The focus is on identifying problems, not
resolving them
 Review data is recorded and used for monitoring
the effectiveness
Other Processes 44
Steps in Typical Review
Process
WorkProductfor
review
Planning Preparation&Overview
Schedule,
ReviewTeam,
Invitation
GroupReviewMeeting
DefectsLog,
Recommendation
Rework&FollowUp
ReviewedWork
Product,Summary
Report
Other Processes 45
Planning
 Select the group review team – three to five
people group is best
 Identify the moderator – has the main
responsibility for the inspection
 Prepare package for distribution – work
product for review plus supporting docs
 Package should be complete for review
Other Processes 46
Overview and Self-Review
 A brief meeting – deliver package, explain
purpose of the review, intro,…
 All team members then individually review the
work product
 Lists the issues/problems they find in the self-
preparation log
 Checklists, guidelines are used
 Ideally, should be done in one sitting and issues
recorded in a log
Other Processes 47
Self-Review Log
Project name:
Work product name and ID:
Reviewer Name:
Effort spent (hours):
Defect list
Other Processes 48
No Location Description Criticality
Group Review Meeting
 Purpose – define the final defect list
 Entry criteria
 each member has done a proper self-review
 logs are reviewed
 Group review meeting
 A reviewer goes over the product line by line
 At any line, all issues are raised
 Discussion follows to identify if a defect
 Decision recorded (by the scribe)
Other Processes 49
Group Review Meeting…
 At the end of the meeting
 Scribe presents the list of defects/issues
 If few defects, the work product is accepted; else
it might be asked for another review
 Group does not propose solutions
 though some suggestions may be recorded
 A summary of the inspections is prepared
 useful for evaluating effectiveness
Other Processes 50
Group Review Meeting…
 Moderator is in-charge of the meeting and
plays a central role
 Ensures that focus is on defect detection and
solutions are not discussed/proposed
 Work product is reviewed, not the author of the
work product
 Amicable/orderly execution of the meeting
 Uses summary report to analyze the overall
effectiveness of the review
Other Processes 51
Summary Report Example
Project
Work Product Type
Size of work product
Review team
Effort (person hours)
Preparation
Group meeting
Total
XXXX
Project plan
14 pages
P1, P2, P3
10 (total)
10
20
Other Processes 52
Summary Contd.
Defects
No of critical defects
No of major defects
No of minor defects
Total
Review status
Reco for next phase
Comments
0
3
16
19
Accepted
Nil
Nice plan
Other Processes 53
Rework and Follow Up
 Defects in the defects list are fixed later by
the author
 Once fixed, author gets it OKed by the
moderator, or goes for another review
 Once all defects/issues are satisfactorily
addressed, review is completed and collected
data is submitted
Other Processes 54
Roles and Responsibilities
 Main roles
 Moderator – overall responsibility
 Author –Listen, inform, avoid defensiveness
 Reviewer(s) – to identify defects
 Reader – not there in some processes, reads line
by line to keep focus
 Scribe – records the issues raised
Other Processes 55
Guidelines for Work Products
Work
Product
Inspection focus Participants
Req Spec Meet customer needs
Are implementable
Omissions, inconsistencies, ambiguities
Customer
Designer
Tester, Dev
Analyst
HLD Design implements req
Design is implementable
Ommissions, quality of design
Req author
Designer
Developer
Other Processes 56
Guidelines for Work Products
Code Code implements design
Code is complete and correct
Defects in code
Other quality issues
Designer
Tester
Developer
Test
cases
Set of test cases test all SRS conditions
Test cases are executable
Are perf and load tests there
Req author
Tester
Proj mgr
Proj
Mgmt
Plan
Plan is complete and specifies all
components of the plan
Is implementable
Omissions and ambiguities
Proj mgr
Another Proj
mgr
Other Processes 57
Summary
 Purpose of reviews: to detect defects
 Structured reviews are very effective - can
detect most of the injected defects
 For effective review, process has to be
properly defined and followed
 Data must be collected and analyzed
Other Processes 58
Other Processes 59
Background
 A software project produces many items -
programs, documents, data, manuals, …
 All of these can be changed easily – need to
keep track state of items
 Software Configuration Management (SCM)
 Systematically control the changes
 Focus on changes during normal evolution (req
changes will be handled separately)
 CM requires discipline as well as tools
Other Processes 60
Background
 SCM often independent of dev process
 Dev process looks at macro picture, but not on
changes to individual items/files
 As items are produced during dev they are
brought under SCM
 SCM controls only the products of the
development process
Other Processes 61
SCM Process and Dev process
Other Processes 62
Need for CM
 CM needed to deliver product to the client
 What files should comprise the product?
 What versions of these files?
 How to combine these to make the product?
 Just for this, versioning is needed, and state
of different items has to be tracked
 There are other functions of CM also
Other Processes 63
Functionality Needed
 Capture current state of programs
 Capture latest version of a program
 Undo a change and revert back to a specified
version
 Prevent unauthorized changes
 Gather all sources, documents, and other
information for the current system
Other Processes 64
CM Mechanisms
 Configuration identification and baselining
 Version control
 Access control
 These are the main mechanisms, there are
others like
 naming conventions,
 directory structure,…
Other Processes 65
Configuration Items
 Sw consists of many items/artifacts
 In CM some identified items are placed under
CM control
 Changes to these are then tracked
 Periodically, system is built using these items
and baselines are established
 Baseline – logical state of the system and all
its items; is a reference point
Other Processes 66
Version and access control
 Key issues in CM
 Done primarily on source code through source
code control systems, which also provide access
control
 Allows older versions to be preserved and hence
can undo changes
 Examples:
 CVS – Original open source system (1986)
 Subversion – Open source CVS replacement (1999)
 Microsoft Visual SourceSafe (VSS) – targeted for
smaller dev projects
 IBM Rational ClearCase – Industrial strength solution
Other Processes 67
Version and Access
Control When programmer developing code – is in
private area
 When code is made available to others, it goes in
an access-controlled library
 For making changes to an item in library, it has
to be checked out
 Changes made by checking-in the item –
versioning is automatically done
 Final system is built from the library
Other Processes 68
Version/Access Control
 Generally both version and access control
done through CM tools
 Tools limit access to specified people - formal
check in, check out procedures
 Automatic versioning done when a changed
file is checked-in
 Check-in, check-out control may
 be restricted to a few people in a project
 Require successful compile/build cycle
Other Processes 69
CM Process
 Defines the activities for controlling changes
 Main phases
 CM Planning
 Executing the CM process
 CM audits
Other Processes 70
CM Planning
 Identify items to be placed under CM
 Define library structure for CM
 Define change control procedures
 Define access control, baselining,
reconciliation, procedures
 Define release procedure
Other Processes 71
CM Audit
 During project execution CM procedures have
to be followed (e.g. moving items between
directories, naming, following change
procedures, …)
 Process audit has to be done
 CM audit can also check if items are where
they should be
Other Processes 72
Summary – CM
 CM is about managing the different items in the
product, and changes in them
 Developing a CM plan at the start is the key to
successful to CM
 CM procedures have to be followed; audits have to
be performed
 Requires discipline and tools
Other Processes 73
Other Processes 74
Background
 Requirements change at any time during the
development
 Changes impact the work products and the
various configuration items
 Uncontrolled changes can have a huge
adverse impact on project in cost/sched
 Changes have to be allowed, but in a
controlled manner
Other Processes 75
A Change Mgmt Process
 Log the changes
 Perform impact analysis on the work
products and items
 Estimate impact on effort and schedule
 Review impact with stakeholders
 Rework the work products/items
Other Processes 76
Changes
 Change often triggered by change request
 Change req log keeps a record of requests
 Impact analysis for a change request involves
identifying the changes needed to diff items,
and the nature of change
 The impact of changes on the project is
reviewed to decide whether to go ahead
 Cumulative changes also often tracked
Other Processes 77

Contenu connexe

Tendances

Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software EngineeringFáber D. Giraldo
 
software cost factor
software cost factorsoftware cost factor
software cost factorAbinaya B
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle modelStephennancy
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specificationlavanya marichamy
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5Mohammad Faizan
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factorsNancyBeaulah_R
 
Software engineering 11 project scheduling
Software engineering 11 project schedulingSoftware engineering 11 project scheduling
Software engineering 11 project schedulingVaibhav Khanna
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1Abdul Basit
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metricsdespicable me
 
Validation testing
Validation testingValidation testing
Validation testingSlideshare
 
COCOMO Model in software project management
COCOMO Model in software project managementCOCOMO Model in software project management
COCOMO Model in software project managementSyed Hassan Ali
 
SPM Activity Planning Introduction
SPM Activity Planning IntroductionSPM Activity Planning Introduction
SPM Activity Planning IntroductionKanchana Devi
 
Pressman ch-1-software
Pressman ch-1-softwarePressman ch-1-software
Pressman ch-1-softwareAlenaDion
 

Tendances (20)

Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
software cost factor
software cost factorsoftware cost factor
software cost factor
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle model
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
 
Static analysis
Static analysisStatic analysis
Static analysis
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
 
software characteristics
software characteristicssoftware characteristics
software characteristics
 
CMM
CMMCMM
CMM
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Software engineering 11 project scheduling
Software engineering 11 project schedulingSoftware engineering 11 project scheduling
Software engineering 11 project scheduling
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metrics
 
Validation testing
Validation testingValidation testing
Validation testing
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
COCOMO Model in software project management
COCOMO Model in software project managementCOCOMO Model in software project management
COCOMO Model in software project management
 
unit testing and debugging
unit testing and debuggingunit testing and debugging
unit testing and debugging
 
SPM Activity Planning Introduction
SPM Activity Planning IntroductionSPM Activity Planning Introduction
SPM Activity Planning Introduction
 
Pressman ch-1-software
Pressman ch-1-softwarePressman ch-1-software
Pressman ch-1-software
 

Similaire à Other software processes (Software project Management)

Similaire à Other software processes (Software project Management) (20)

Mg6088 spm unit-4
Mg6088 spm unit-4Mg6088 spm unit-4
Mg6088 spm unit-4
 
An Introduction to Project management(project management tutorials)
An Introduction to Project management(project management tutorials)An Introduction to Project management(project management tutorials)
An Introduction to Project management(project management tutorials)
 
Spm intro
Spm introSpm intro
Spm intro
 
Project monitoring controls in a nutshell
Project monitoring controls in a nutshellProject monitoring controls in a nutshell
Project monitoring controls in a nutshell
 
Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2
 
Project Management
Project ManagementProject Management
Project Management
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Is5540 course review
Is5540 course reviewIs5540 course review
Is5540 course review
 
Postmortemanalysis 120520033844-phpapp02
Postmortemanalysis 120520033844-phpapp02Postmortemanalysis 120520033844-phpapp02
Postmortemanalysis 120520033844-phpapp02
 
Ben Mkt 347 Week 4
Ben Mkt 347 Week 4Ben Mkt 347 Week 4
Ben Mkt 347 Week 4
 
Spm unit 1
Spm unit 1Spm unit 1
Spm unit 1
 
Managing Software Project
Managing Software ProjectManaging Software Project
Managing Software Project
 
ppt chapter 1.ppt
ppt chapter 1.pptppt chapter 1.ppt
ppt chapter 1.ppt
 
(Fall2016)Lecture1.pptx
(Fall2016)Lecture1.pptx(Fall2016)Lecture1.pptx
(Fall2016)Lecture1.pptx
 
Systems development
Systems developmentSystems development
Systems development
 
Week_02.pptx
Week_02.pptxWeek_02.pptx
Week_02.pptx
 
1 2. project management
1 2. project management1 2. project management
1 2. project management
 
Software Engineering Basics.pdf
Software Engineering Basics.pdfSoftware Engineering Basics.pdf
Software Engineering Basics.pdf
 
Process Models IN software Engineering
Process Models IN software EngineeringProcess Models IN software Engineering
Process Models IN software Engineering
 
Management Information Systems – Week 7 Lecture 2Developme.docx
Management Information Systems – Week 7 Lecture 2Developme.docxManagement Information Systems – Week 7 Lecture 2Developme.docx
Management Information Systems – Week 7 Lecture 2Developme.docx
 

Plus de Ankit Gupta

Biometricstechnology in iot and machine learning
Biometricstechnology in iot and machine learningBiometricstechnology in iot and machine learning
Biometricstechnology in iot and machine learningAnkit Gupta
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2Ankit Gupta
 
Week 8 lecture material
Week 8 lecture materialWeek 8 lecture material
Week 8 lecture materialAnkit Gupta
 
Week 4 lecture material cc (1)
Week 4 lecture material cc (1)Week 4 lecture material cc (1)
Week 4 lecture material cc (1)Ankit Gupta
 
Week 3 lecture material cc
Week 3 lecture material ccWeek 3 lecture material cc
Week 3 lecture material ccAnkit Gupta
 
Week 1 lecture material cc
Week 1 lecture material ccWeek 1 lecture material cc
Week 1 lecture material ccAnkit Gupta
 
Mod05lec25(resource mgmt ii)
Mod05lec25(resource mgmt ii)Mod05lec25(resource mgmt ii)
Mod05lec25(resource mgmt ii)Ankit Gupta
 
Mod05lec24(resource mgmt i)
Mod05lec24(resource mgmt i)Mod05lec24(resource mgmt i)
Mod05lec24(resource mgmt i)Ankit Gupta
 
Mod05lec23(map reduce tutorial)
Mod05lec23(map reduce tutorial)Mod05lec23(map reduce tutorial)
Mod05lec23(map reduce tutorial)Ankit Gupta
 
Mod05lec22(cloudonomics tutorial)
Mod05lec22(cloudonomics tutorial)Mod05lec22(cloudonomics tutorial)
Mod05lec22(cloudonomics tutorial)Ankit Gupta
 
Mod05lec21(sla tutorial)
Mod05lec21(sla tutorial)Mod05lec21(sla tutorial)
Mod05lec21(sla tutorial)Ankit Gupta
 
Lecture29 cc-security4
Lecture29 cc-security4Lecture29 cc-security4
Lecture29 cc-security4Ankit Gupta
 
Lecture28 cc-security3
Lecture28 cc-security3Lecture28 cc-security3
Lecture28 cc-security3Ankit Gupta
 
Lecture27 cc-security2
Lecture27 cc-security2Lecture27 cc-security2
Lecture27 cc-security2Ankit Gupta
 
Lecture26 cc-security1
Lecture26 cc-security1Lecture26 cc-security1
Lecture26 cc-security1Ankit Gupta
 
Lecture 30 cloud mktplace
Lecture 30 cloud mktplaceLecture 30 cloud mktplace
Lecture 30 cloud mktplaceAnkit Gupta
 
Week 7 lecture material
Week 7 lecture materialWeek 7 lecture material
Week 7 lecture materialAnkit Gupta
 
Gurukul Cse cbcs-2015-16
Gurukul Cse cbcs-2015-16Gurukul Cse cbcs-2015-16
Gurukul Cse cbcs-2015-16Ankit Gupta
 
Microprocessor full hand made notes
Microprocessor full hand made notesMicroprocessor full hand made notes
Microprocessor full hand made notesAnkit Gupta
 
Transfer Leaning Using Pytorch synopsis Minor project pptx
Transfer Leaning Using Pytorch  synopsis Minor project pptxTransfer Leaning Using Pytorch  synopsis Minor project pptx
Transfer Leaning Using Pytorch synopsis Minor project pptxAnkit Gupta
 

Plus de Ankit Gupta (20)

Biometricstechnology in iot and machine learning
Biometricstechnology in iot and machine learningBiometricstechnology in iot and machine learning
Biometricstechnology in iot and machine learning
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2
 
Week 8 lecture material
Week 8 lecture materialWeek 8 lecture material
Week 8 lecture material
 
Week 4 lecture material cc (1)
Week 4 lecture material cc (1)Week 4 lecture material cc (1)
Week 4 lecture material cc (1)
 
Week 3 lecture material cc
Week 3 lecture material ccWeek 3 lecture material cc
Week 3 lecture material cc
 
Week 1 lecture material cc
Week 1 lecture material ccWeek 1 lecture material cc
Week 1 lecture material cc
 
Mod05lec25(resource mgmt ii)
Mod05lec25(resource mgmt ii)Mod05lec25(resource mgmt ii)
Mod05lec25(resource mgmt ii)
 
Mod05lec24(resource mgmt i)
Mod05lec24(resource mgmt i)Mod05lec24(resource mgmt i)
Mod05lec24(resource mgmt i)
 
Mod05lec23(map reduce tutorial)
Mod05lec23(map reduce tutorial)Mod05lec23(map reduce tutorial)
Mod05lec23(map reduce tutorial)
 
Mod05lec22(cloudonomics tutorial)
Mod05lec22(cloudonomics tutorial)Mod05lec22(cloudonomics tutorial)
Mod05lec22(cloudonomics tutorial)
 
Mod05lec21(sla tutorial)
Mod05lec21(sla tutorial)Mod05lec21(sla tutorial)
Mod05lec21(sla tutorial)
 
Lecture29 cc-security4
Lecture29 cc-security4Lecture29 cc-security4
Lecture29 cc-security4
 
Lecture28 cc-security3
Lecture28 cc-security3Lecture28 cc-security3
Lecture28 cc-security3
 
Lecture27 cc-security2
Lecture27 cc-security2Lecture27 cc-security2
Lecture27 cc-security2
 
Lecture26 cc-security1
Lecture26 cc-security1Lecture26 cc-security1
Lecture26 cc-security1
 
Lecture 30 cloud mktplace
Lecture 30 cloud mktplaceLecture 30 cloud mktplace
Lecture 30 cloud mktplace
 
Week 7 lecture material
Week 7 lecture materialWeek 7 lecture material
Week 7 lecture material
 
Gurukul Cse cbcs-2015-16
Gurukul Cse cbcs-2015-16Gurukul Cse cbcs-2015-16
Gurukul Cse cbcs-2015-16
 
Microprocessor full hand made notes
Microprocessor full hand made notesMicroprocessor full hand made notes
Microprocessor full hand made notes
 
Transfer Leaning Using Pytorch synopsis Minor project pptx
Transfer Leaning Using Pytorch  synopsis Minor project pptxTransfer Leaning Using Pytorch  synopsis Minor project pptx
Transfer Leaning Using Pytorch synopsis Minor project pptx
 

Dernier

Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxPurva Nikam
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfAsst.prof M.Gokilavani
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHC Sai Kiran
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvLewisJB
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...Chandu841456
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 

Dernier (20)

Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptx
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECH
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvv
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 

Other software processes (Software project Management)

  • 1. Other Processes 1 Project management Inspection Configuration management Change management Process management
  • 2. Other Processes  Development Process is the central process around which others revolve  Methods for other processes often influenced by the dev process  We have looked at various models for dev process  a “real” process likely derived from a model Other Processes 2
  • 3. Other Processes In the context of Dev Processes Other Processes 3
  • 4. Other Processes  Project management process  Inspection process  Configuration management process  Change management process  Process management process  Will briefly look at these now Other Processes 4
  • 6. The Typical PMs Role  Overall responsibility for the successful planning, execution, monitoring, control and closure of a project.  Primary point of contact with project sponsors  Key tasks  Plans  Meets  Communicates  Project Management == Leadership Other Processes 6
  • 7. 10 Qualities of a PM 1. Inspires a Shared Vision 2. Good Communicator 3. Integrity 4. Enthusiasm 5. Empathy 6. Competence 7. Ability to Delegate Tasks 8. Cool Under Pressure 9. Team-Building Skills 10. Problem Solving Skills Other Processes 7
  • 8. What does a PM do?  Development process divides development into phases and activities  To execute it efficiently, must allocate resources, manage them, monitor progress, take corrective actions, …  These are all part of the PM process  Hence, PM process is an essential part of executing a project Other Processes 8
  • 9. PM Process Phases  There are three broad phases  Before: Planning  During  Monitoring and control  Communication facilitation  After: Postmortem analysis  Planning is a key activity that produces a plan, which forms the basis of monitoring Other Processes 9
  • 12. Planning  Done before project begins  Key tasks  Cost and schedule estimation  Staffing  Monitoring and risk mgmt plans  Quality assurance plans  Etc.  Will discuss planning in detail later Other Processes 12
  • 13. Monitoring and control  Lasts for the duration of the project and covers the development process  Monitors all key parameters like cost, schedule, risks  Takes corrective actions when needed  Needs information on the dev process – provided by metrics Other Processes 13
  • 14. Communication Facilitation  Realistically no plan covers everything!  Additional decisions are made during development  Documents should be updated and communicated  Typical environment  Multiple teams  Multiple user groups  Multiple disciplines  Multiple locations  In many setting PM is center of communication hub  Will discuss in more detail later Other Processes 14
  • 15. Meeting Types  Project Planning Meetings  Review of progress against schedule  Update plan, identify pain points and dependencies  Publically call team leads to task  Content Meetings  Regular meetings focused around content topics  E.G. “Reporting”, “Backend API”  Make decision, Record them, Communicate them  Use of the “Rolling Email” Other Processes 15
  • 16. Meeting Types  Issues Meetings  Regularly schedule meeting (ie. open in everyone’s schedule)  Issues gathered the day before and distributed  Issue initiator indicates required attendance  QA Meetings  Planning  Discussion with business  Discussion with developers  Regular Review of open tickets Other Processes 16
  • 17. Meeting Modalities  Modalities  In person  Video Conference  Voice Conference  Shared Desktop + Voice Conference  Pros/Cons of each? Other Processes 17
  • 18. Postmortem Analysis  Postmortem analysis is performed when the development process is over  Basic purpose:  to analyze the performance of the process, and identify lessons learned  Improve predictability and repeatability  Central to a “Learning Organization” or culture  Also called termination analysis Other Processes 18
  • 19. Relationship with Dev Process Other Processes 19
  • 20. Other Processes 20 Risk Management From “KeepYour Projects OnTrack” http://www.drdobbs.com/184414727
  • 21. Risk Management  Usually performed 1. at the start of a project, 2. at the beginning of major project phases (such as requirements, design, coding and deployment), and 3. when there are significant changes (for example, feature changes, target platform changes and technology changes). Other Processes 21
  • 22. Risk Management  Four steps to risk management are 1. risk identification, 2. risk analysis, 3. risk management planning and 4. risk review Other Processes 22
  • 23. 1) Risk Identification  the brainstorming session, consider :  Weak areas, such as unknown technology.  Aspects that are critical to project success, such as the timely delivery of a vendor's database software, creation of translators or a user interface that meets the customer's needs.  Problems that have plagued past projects, such as loss of key staff, missed deadlines or error-prone software Other Processes 23
  • 24. 1) Risk Identification  Collect up the stakeholder! Who?  Hold a brainstorming session, consider :  Weak areas, such as unknown technology.  Aspects that are critical to project success, such as the timely delivery of a vendor's database software, creation of translators or a user interface that meets the customer's needs.  Problems that have plagued past projects, such as loss of key staff, missed deadlines or error- prone software Other Processes 24
  • 25. 2) Risk Analysis  Make each risk item more specific. Risks like "Lack of management buy-in" and "People might leave" are too vague.  Split the risk into smaller, specific risks, such as  "Manager Jane could decide the project isn't beneficial,"  "The database expert might leave," and  "The webmaster may be pulled off the project.“  Set priorities Other Processes 25
  • 26. 2) Risk Analysis Other Processes 26 Risk Items (Potential Future Problems Derived from Brainstorming) Likelihood of Risk Item Occurring Impact to Project if Risk Item Does Occur Priority (Likelihood * Impact) New operating system may be unstable. 10 10 100 Communication problems over system issues. 8 9 72 We may not have the right requirements 9 6 54 Requirements may change late in the cycle. 7 7 49 Database software may arrive late. 4 8 32 Key people might leave. 2 10 20
  • 27. 3) Risk Management Planning Other Processes 27 Risk Items (Potential Future Problems Derived from Brainstorming) Actions to Reduce Likelihood Actions to Reduce Impact if Risk Does Occur Who Should Work on Actions When Should Actions Be Complete Status of Actions New operating system may not be stable. Test OS more. Identify second OS. Joe 3/3/01 Communica-tion problems over system issues. Develop system interface document for critical interfaces. Add replan milestone to realign the team's schedule with other areas. Cathy 5/6/01 We may not have the right requirements. Build prototype of UI. Limit Initial product distribution Lois 4/6/01
  • 28. 4) Risk Review  review your risks periodically,  check how well mitigation is progressing.  change risk priorities, as required  Identify new risks.  rerun the complete risk process if the project has experienced significant changes.  incorporate risk review into other regularly scheduled project reviews Other Processes 28
  • 29. Risk Management  Time Effective!  90 to 120 minutes for projects that are 12 to 60 person-months  Control the length of the session by controlling the scope you choose,  most sessions usually take less than two hours Other Processes 29
  • 31. Meeting Types  Project Planning Meetings  Review of progress against schedule  Update plan, identify pain points and dependencies  Publically call team leads to task  Content Meetings  Regular meetings focused around content topics  E.G. “Reporting”, “Backend API”  Make decision, Record them, Communicate them  Use of the “Rolling Email” Other Processes 31
  • 32. Meeting Types  Issues Meetings  Regularly schedule meeting (ie. open in everyone’s schedule)  Issues gathered the day before and distributed  Issue initiator indicates required attendance  QA Meetings  Planning  Discussion with business  Discussion with developers  Regular Review of open tickets Other Processes 32
  • 33. Meeting Modalities  Modalities  In person  Video Conference  Voice Conference  Shared Desktop + Voice Conference  Pros/Cons of each? Other Processes 33
  • 34. Face to Face Communication  A verbal message is affected by:  The message itself  Paralingual attributes of the message (ie. the pitch, tone, and inflections in the speaker's voice)  Nonverbal communication (ie. Posture, facial expression, shoulders, tugging on the ears, crossed arms, hand signals)  To be an effective communicator, you must ask questions.  Do you understand me?  Questions help the project team, ask for clarification, and achieve an exact transfer of knowledge. Other Processes 34
  • 35. Writing Email  1) Understand why you’re writing  have explicit answers for two questions:  Why am I writing this?  What exactly do I want the result of this message to be? Other Processes 35
  • 36. Writing Email  2) Get what you need  Really just three basic types of business email.  Providing information - “Larry Tate will be in the office Monday at 10.”  Requesting information - “Where did you put the ‘Larry Tate’ file?”  Requesting action - “Will you call Larry Tate’s admin to confirm our meeting on Monday?”  The recipient must immediately know which type of email it is. Other Processes 36
  • 37. Writing Email  3) Make One Point per Email  If you need to communicate a number of different things:  Consider writing a separate email on each subject, especially if they related to different topics or have different timescales.  Consider presenting each point in a separate, numbered paragraph, especially if relate to the same project.  Making each point stand out, significantly increasing the likelihood that each point will be addressed. Other Processes 37
  • 38. Writing Email  3) Write a great Subject line  Help your recipient to  immediately understand why you’ve sent them an email  quickly determine what kind of response or action it requires  Avoid “Hi,” “One more thing…,” or “FYI,”  Best is a short summary of the most important points  Lunch resched to Friday @ 1pm  Reminder: Monday is "St. Bono’s Day"–no classes  REQ: Resend Larry Tate zip file?  HELP: I’ve lost the source code?  Thanks for the new liver–works great! Other Processes 38
  • 39. Writing Email  3) Brevity is the soul of…getting a response  The Long Crafted Email: 1%  Explores nuances  Handling political hot potatoes  The Short Directed Email: 99%  Make it fit on one screen with no scrolling.  Better still in the “review space”  A concise email is much more likely to get action  But be presise… Other Processes 39
  • 40. Bad Example Good Example Subject: Proposal Lynn, Did you get my proposal last week? I haven't heard back and wanted to make sure. Can you please call me so we can discuss? Thanks! Peter Subject: Checking On Reliable Landscapes Proposal Lynn, I just wanted to check that you have received the landscaping proposal I emailed to you last week. I haven't heard back and wanted to make sure it went through. Can you please call me byThursday so we can discuss? This is when our discount offer expires, and I want to make sure you don't miss it! The quickest way to contact me is by cell phone. Thanks! Peter Schuell, Owner Reliable Landscaping, Inc. 555.135.4598 (office) 555.135.2929 (cell) Other Processes 40
  • 42. Background  Main goal of inspection process is to detect defects in work products  First proposed by Fagan in 70s  Earlier used for code, now used for all types of work products  Is recognized as an industry best practice  Data suggests that it improves both Q&P Other Processes 42 http://en.wikipedia.org/wiki/Fagan_inspection
  • 43. Background  “A defect is an instance in which a requirement is not satisfied.” [Fagan, 1986]  Defects injected in sw at any stage  Hence must remove them at every stage  Inspections can be done on any document including design docs and plans  Is a good method for early phases like requirements and design  Also useful for plans (PM plans, CM plans, testing plans,…) Other Processes 43
  • 44. Some Characteristics  Conducted by group of technical people for technical people (i.e. review done by peers)  Is a structured process with defined roles for the participants  The focus is on identifying problems, not resolving them  Review data is recorded and used for monitoring the effectiveness Other Processes 44
  • 45. Steps in Typical Review Process WorkProductfor review Planning Preparation&Overview Schedule, ReviewTeam, Invitation GroupReviewMeeting DefectsLog, Recommendation Rework&FollowUp ReviewedWork Product,Summary Report Other Processes 45
  • 46. Planning  Select the group review team – three to five people group is best  Identify the moderator – has the main responsibility for the inspection  Prepare package for distribution – work product for review plus supporting docs  Package should be complete for review Other Processes 46
  • 47. Overview and Self-Review  A brief meeting – deliver package, explain purpose of the review, intro,…  All team members then individually review the work product  Lists the issues/problems they find in the self- preparation log  Checklists, guidelines are used  Ideally, should be done in one sitting and issues recorded in a log Other Processes 47
  • 48. Self-Review Log Project name: Work product name and ID: Reviewer Name: Effort spent (hours): Defect list Other Processes 48 No Location Description Criticality
  • 49. Group Review Meeting  Purpose – define the final defect list  Entry criteria  each member has done a proper self-review  logs are reviewed  Group review meeting  A reviewer goes over the product line by line  At any line, all issues are raised  Discussion follows to identify if a defect  Decision recorded (by the scribe) Other Processes 49
  • 50. Group Review Meeting…  At the end of the meeting  Scribe presents the list of defects/issues  If few defects, the work product is accepted; else it might be asked for another review  Group does not propose solutions  though some suggestions may be recorded  A summary of the inspections is prepared  useful for evaluating effectiveness Other Processes 50
  • 51. Group Review Meeting…  Moderator is in-charge of the meeting and plays a central role  Ensures that focus is on defect detection and solutions are not discussed/proposed  Work product is reviewed, not the author of the work product  Amicable/orderly execution of the meeting  Uses summary report to analyze the overall effectiveness of the review Other Processes 51
  • 52. Summary Report Example Project Work Product Type Size of work product Review team Effort (person hours) Preparation Group meeting Total XXXX Project plan 14 pages P1, P2, P3 10 (total) 10 20 Other Processes 52
  • 53. Summary Contd. Defects No of critical defects No of major defects No of minor defects Total Review status Reco for next phase Comments 0 3 16 19 Accepted Nil Nice plan Other Processes 53
  • 54. Rework and Follow Up  Defects in the defects list are fixed later by the author  Once fixed, author gets it OKed by the moderator, or goes for another review  Once all defects/issues are satisfactorily addressed, review is completed and collected data is submitted Other Processes 54
  • 55. Roles and Responsibilities  Main roles  Moderator – overall responsibility  Author –Listen, inform, avoid defensiveness  Reviewer(s) – to identify defects  Reader – not there in some processes, reads line by line to keep focus  Scribe – records the issues raised Other Processes 55
  • 56. Guidelines for Work Products Work Product Inspection focus Participants Req Spec Meet customer needs Are implementable Omissions, inconsistencies, ambiguities Customer Designer Tester, Dev Analyst HLD Design implements req Design is implementable Ommissions, quality of design Req author Designer Developer Other Processes 56
  • 57. Guidelines for Work Products Code Code implements design Code is complete and correct Defects in code Other quality issues Designer Tester Developer Test cases Set of test cases test all SRS conditions Test cases are executable Are perf and load tests there Req author Tester Proj mgr Proj Mgmt Plan Plan is complete and specifies all components of the plan Is implementable Omissions and ambiguities Proj mgr Another Proj mgr Other Processes 57
  • 58. Summary  Purpose of reviews: to detect defects  Structured reviews are very effective - can detect most of the injected defects  For effective review, process has to be properly defined and followed  Data must be collected and analyzed Other Processes 58
  • 60. Background  A software project produces many items - programs, documents, data, manuals, …  All of these can be changed easily – need to keep track state of items  Software Configuration Management (SCM)  Systematically control the changes  Focus on changes during normal evolution (req changes will be handled separately)  CM requires discipline as well as tools Other Processes 60
  • 61. Background  SCM often independent of dev process  Dev process looks at macro picture, but not on changes to individual items/files  As items are produced during dev they are brought under SCM  SCM controls only the products of the development process Other Processes 61
  • 62. SCM Process and Dev process Other Processes 62
  • 63. Need for CM  CM needed to deliver product to the client  What files should comprise the product?  What versions of these files?  How to combine these to make the product?  Just for this, versioning is needed, and state of different items has to be tracked  There are other functions of CM also Other Processes 63
  • 64. Functionality Needed  Capture current state of programs  Capture latest version of a program  Undo a change and revert back to a specified version  Prevent unauthorized changes  Gather all sources, documents, and other information for the current system Other Processes 64
  • 65. CM Mechanisms  Configuration identification and baselining  Version control  Access control  These are the main mechanisms, there are others like  naming conventions,  directory structure,… Other Processes 65
  • 66. Configuration Items  Sw consists of many items/artifacts  In CM some identified items are placed under CM control  Changes to these are then tracked  Periodically, system is built using these items and baselines are established  Baseline – logical state of the system and all its items; is a reference point Other Processes 66
  • 67. Version and access control  Key issues in CM  Done primarily on source code through source code control systems, which also provide access control  Allows older versions to be preserved and hence can undo changes  Examples:  CVS – Original open source system (1986)  Subversion – Open source CVS replacement (1999)  Microsoft Visual SourceSafe (VSS) – targeted for smaller dev projects  IBM Rational ClearCase – Industrial strength solution Other Processes 67
  • 68. Version and Access Control When programmer developing code – is in private area  When code is made available to others, it goes in an access-controlled library  For making changes to an item in library, it has to be checked out  Changes made by checking-in the item – versioning is automatically done  Final system is built from the library Other Processes 68
  • 69. Version/Access Control  Generally both version and access control done through CM tools  Tools limit access to specified people - formal check in, check out procedures  Automatic versioning done when a changed file is checked-in  Check-in, check-out control may  be restricted to a few people in a project  Require successful compile/build cycle Other Processes 69
  • 70. CM Process  Defines the activities for controlling changes  Main phases  CM Planning  Executing the CM process  CM audits Other Processes 70
  • 71. CM Planning  Identify items to be placed under CM  Define library structure for CM  Define change control procedures  Define access control, baselining, reconciliation, procedures  Define release procedure Other Processes 71
  • 72. CM Audit  During project execution CM procedures have to be followed (e.g. moving items between directories, naming, following change procedures, …)  Process audit has to be done  CM audit can also check if items are where they should be Other Processes 72
  • 73. Summary – CM  CM is about managing the different items in the product, and changes in them  Developing a CM plan at the start is the key to successful to CM  CM procedures have to be followed; audits have to be performed  Requires discipline and tools Other Processes 73
  • 75. Background  Requirements change at any time during the development  Changes impact the work products and the various configuration items  Uncontrolled changes can have a huge adverse impact on project in cost/sched  Changes have to be allowed, but in a controlled manner Other Processes 75
  • 76. A Change Mgmt Process  Log the changes  Perform impact analysis on the work products and items  Estimate impact on effort and schedule  Review impact with stakeholders  Rework the work products/items Other Processes 76
  • 77. Changes  Change often triggered by change request  Change req log keeps a record of requests  Impact analysis for a change request involves identifying the changes needed to diff items, and the nature of change  The impact of changes on the project is reviewed to decide whether to go ahead  Cumulative changes also often tracked Other Processes 77