SlideShare une entreprise Scribd logo
1  sur  61
Télécharger pour lire hors ligne
1
Software Project Management
Session 10: Integration & Testing
2
Today
• Software Quality Assurance
• Integration
• Test planning
• Types of testing
• Test metrics
• Test tools
• More MS-Project how-to
3
Session 9 Review
• Project Control
– Planning
– Measuring
– Evaluating
– Acting
• MS Project
4
Earned Value Analysis
• BCWS
• BCWP
• Earned value
• ACWP
• Variances
• CV, SV
• Ratios
• SPI, CPI. CR
• Benefits
– Consistency, forecasting, early warning
5
MS Project
• Continued
6
Deliverables by Phase
Software
Concept
Requirements
Analysis
Design
Coding and
Debugging
Systems
Testing
Deployment &
Maintenance
Possible Deliverables by Phase
 Concept Document
 Statement of Work (SOW)
 Project Charter
 RFP & Proposal
 Requirements Document (Software Requirements Specification)
 Work Breakdown Structure (WBS)
 Functional Specification ( Top Level Design Specification)
 Entity Relationship Diagram
 Data Flow Diagram
 Detailed Design Specification
 Object Diagrams
 Detailed Data Model
 Coding Standards
 Working Code
 Unit Tests
 Acceptance Test Procedures
 Tested Application
 Maintenance Specification
 Deployed Application
 Project Development Plan
 (Software Development Plan )
 Baseline Project Plan
 Quality Assurance Plan
 Configuration Management Plan
 Risk Management Plan
 Integration Plan
 Detailed SQA Test Plan
 SQA Test Cases
 User Documentation
 Training Plan
7
If 99.9% Were Good Enough
• 9,703 checks would be deducted from the
wrong bank accounts each hour
• 27,800 pieces of mail would be lost per hour
• 3,000,000 incorrect drug prescriptions per year
• 8,605 commercial aircraft takeoffs would
annually result in crashes
Futrell, Shafer, Shafer, “Quality Software Project Management”, 2002
8
Development Costs
7%
16%
24%
24%
29%
Requirements
Preliminary Design
Detailed Design
Code & Unit Test
Integration & System
Test
9
Integration & Testing
• Development/Integration/Testing
• Most common place for schedule & activity overlap
• Sometimes Integration/Testing thought of
as one phase
• Progressively aggregates functionality
• QA team works in parallel with dev. team
10
Integration Approaches
• Top Down
• Core or overarching system(s) implemented 1st
• Combined into minimal “shell” system
• “Stubs” are used to fill-out incomplete sections
– Eventually replaced by actual modules
• Bottom Up
• Starts with individual modules and builds-up
• Individual units (after unit testing) are combined
into sub-systems
• Sub-systems are combined into the whole
11
Integration
• Who does integration testing?
– Can be either development and/or QA team
• Staffing and budget are at peak
• “Crunch mode”
• Issues
• Pressure
• Delivery date nears
• Unexpected failures (bugs)
• Motivation issues
• User acceptance conflicts
12
Validation and Verification
• V & V
• Validation
– Are we building the right product?
• Verification
– Are we building the product right?
– Testing
– Inspection
– Static analysis
13
Quality Assurance
• QA or SQA (Software Quality Assurance)
• Good QA comes from good process
• When does SQA begin?
– During requirements
• A CMM Level 2 function
• QA is your best window into the project
14
Test Plans (SQAP)
• Software Quality Assurance Plan
– Should be complete near end of requirements
• See example
– Even use the IEEE 730 standard
15
SQAP
• Standard sections
– Purpose
– Reference documents
– Management
– Documentation
– Standards, practices, conventions, metrics
• Quality measures
• Testing practices
16
SQAP
• Standard sections continued
– Reviews and Audits
• Process and specific reviews
– Requirements Review (SRR)
– Test Plan Review
– Code reviews
– Post-mortem review
– Risk Management
• Tie-in QA to overall risk mgmt. Plan
– Problem Reporting and Corrective Action
– Tools, Techniques, Methodologies
– Records Collection and Retention
17
Software Quality
• Traceability
• Ability to track relationship between work products
• Ex: how well do requirements/design/test cases
match
• Formal Reviews
• Conducted at the end of each lifecycle phase
• SRR, CDR, etc.
18
Testing
• Exercising computer program with
predetermined inputs
• Comparing the actual results against the
expected results
• Testing is a form of sampling
• Cannot absolutely prove absence of defects
• All software has bugs. Period.
• Testing is not debugging.
19
Test Cases
• Key elements of a test plan
• May include scripts, data, checklists
• May map to a Requirements Coverage
Matrix
• A traceability tool
20
Rework
• Software equivalent of “scrap” in manufacturing
6%
1% 12%
4%
16%
8%
12%
12%
10%
19%
0%
5%
10%
15%
20%
25%
30%
Requirements Detailed
Design
Integration &
System Test
Rew ork
Production
21
Sources of Defects
27%
10%
7%
56%
Design
Other
Code
Requirements
22
V Process Model
Product
Requirements and
Specification
Analysis
Project
Requirements and
Planning
Production,
Operations, and
Maintenance
System Testing
and Acceptance
Testing
Integration and
Testing
Unit Testing
Coding
Detailed Design
High-Level Desig
Non-functional
Requirements
Load &
Performance Test
User Interface
Design
Usability Test
23
Project Testing Flow
• Unit Testing
• Integration Testing
• System Testing
• User Acceptance Testing
24
Black-Box Testing
• Functional Testing
• Program is a “black-box”
– Not concerned with how it works but what it
does
– Focus on inputs & outputs
• Test cases are based on SRS (specs)
25
White-Box Testing
• Accounts for the structure of the program
• Coverage
– Statements executed
– Paths followed through the code
26
Unit Testing
• a.k.a. Module Testing
• Type of white-box testing
– Sometimes treated black-box
• Who does Unit Testing?
• Developers
• Unit tests are written in code
– Same language as the module
– a.k.a. “Test drivers”
• When do Unit Testing?
• Ongoing during development
• As individual modules are completed
27
Unit Testing
• Individual tests can be grouped
– “Test Suites”
• JUnit
• Part of the XP methodology
• “Test-first programming”
28
Integration Testing
• Testing interfaces between components
• First step after Unit Testing
• Components may work alone but fail when
put together
• Defect may exist in one module but
manifest in another
• Black-box tests
29
System Testing
• Testing the complete system
• A type of black-box testing
30
User Acceptance Testing
• Last milestone in testing phase
• Ultimate customer test & sign-off
• Sometimes synonymous with beta tests
• Customer is satisfied software meets their
requirements
• Based on “Acceptance Criteria”
– Conditions the software must meet for customer to
accept the system
– Ideally defined before contract is signed
– Use quantifiable, measurable conditions
31
Regression Testing
– Re-running of tests after fixes or changes are
made to software or the environment
– EX: QA finds defect, developer fixes, QA runs
regression test to verify
– Automated tools very helpful for this
32
Compatibility Testing
– Testing against other “platforms”
• Ex: Testing against multiple browsers
• Does it work under Netscape/IE, Windows/Mac
33
External Testing Milestones
• Alpha 1st
, Beta 2nd
• Testing by users outside the organization
• Typically done by users
• Alpha release
• Given to very limited user set
• Product is not feature-complete
• During later portions of test phase
• Beta release
• Customer testing and evaluation
• Most important feature
• Preferably after software stabilizes
34
External Testing Milestones
• Value of Beta Testing
• Testing in the real world
• Getting a software assessment
• Marketing
• Augmenting you staff
• Do not determine features based on it
• Too late!
• Beta testers must be “recruited”
• From: Existing base, marketing, tech support, site
• Requires the role of “Beta Manager”
• All this must be scheduled by PM
35
External Testing Milestones
• Release Candidate (RC)
• To be sent to manufacturing if testing successful
• Release to Manufacturing (RTM)
• Production release formally sent to manufacturing
• Aim for a “stabilization period” before each
of these milestones
• Team focus on quality, integration, stability
36
Test Scripts
• Two meanings
• 1. Set of step-by-step instructions intended
to lead test personnel through tests
– List of all actions and expected responses
• 2. Automated test script (program)
37
Static Testing
• Reviews
• Most artifacts can be reviewed
• Proposal, contract, schedule, requirements, code,
data model, test plans
– Peer Reviews
• Methodical examination of software work products
by peers to identify defects and necessary changes
• Goal: remove defects early and efficiently
• Planned by PM, performed in meetings, documented
• CMM Level 3 activity
38
Automated Testing
• Human testers = inefficient
• Pros
• Lowers overall cost of testing
• Tools can run unattended
• Tools run through ‘suites’ faster than people
• Great for regression and compatibility tests
• Tests create a body of knowledge
• Can reduce QA staff size
• Cons
• But not everything can be automated
• Learning curve or expertise in tools
• Cost of high-end tools $5-80K (low-end are still cheap)
39
Test Tools
• Capture & Playback
• Coverage Analysis
• Performance Testing
• Test Case Management
40
Load & Stress Testing
• Push system beyond capacity limits
• Often done via automated scripts
• By the QA team
• Near end of functional tests
• Can show
– Hidden functional issues
– Maximum system capacity
– Unacceptable data or service loss
– Determine if “Performance Requirements” met
• Remember, these are part of “non-functional” requirements
41
Load & Stress Testing
• Metrics
– Minimal acceptable response time
– Minimal acceptable number of concurrent users
– Minimal acceptable downtime
• Vendors: High-End
– Segue
– Mercury
– Empirix
42
Performance Metrics
Source: Athens Consulting Group
Bad Good
Must support 500 users Must support 500
simultaneous users
10 second response time [Average|Maximum|90th
percentile] response time
must be X seconds
Must handle 1M hits per
day
Must handle peak load
of 28 page requests per
second
43
Other Testing
• Installation Testing
– Very important if not a Web-based system
– Can lead to high support costs and customer
dissatisfaction
• Usability Testing
– Verification of user satisfaction
• Navigability
• User-friendliness
• Ability to accomplish primary tasks
44
Miscellaneous
• Pareto Analysis
– The 80-20 rule
• 80% of defects from 20% of code
– Identifying the problem modules
• Phase Containment
– Testing at the end of each phase
– Prevent problems moving phase-to-phase
• Burn-in
– Allowing system to run “longer” period of time
– Variation of stress testing
45
Miscellaneous
• “Code Freeze”
– When developers stop writing new code and
only do bug fixes
– Occurs at a varying point in integration/testing
• Tester-to-Coder Ratio
– It depends
– Often 1:3 or 1:4
– QA staff size grows: QA Mgr and/or lead early
46
Stopping Testing
• When do you stop?
• Rarely are all defects “closed” by release
• Shoot for all Critical/High/Medium defects
• Often, occurs when time runs out
• Final Sign-off (see also UAT)
• By: customers, engineering, product mgmt.,
47
Test Metrics
• Load: Max. acceptable response time, min. # of
simultaneous users
• Disaster: Max. allowable downtime
• Compatibility: Min/Max. browsers & OS’s
supported
• Usability: Min. approval rating from focus groups
• Functional: Requirements coverage; 100% pass
rate for automated test suites
48
Defect Metrics
• These are very important to the PM
• Number of outstanding defects
– Ranked by severity
• Critical, High, Medium, Low
• Showstoppers
• Opened vs. closed
49
Defect Tracking
• Get tools to do this for you
– Bugzilla, TestTrack Pro, Rational ClearCase
– Some good ones are free or low-cost
• Make sure all necessary team members have
access (meaning nearly all)
• Have regular ‘defect review meetings’
– Can be weekly early in test, daily in crunch
• Who can enter defects into the tracking system?
– Lots of people: QA staff, developers, analysts,
managers, (sometimes) users, PM
50
Defect Tracking
• Fields
– State: open, closed, pending
– Date created, updated, closed
– Description of problem
– Release/version number
– Person submitting
– Priority: low, medium, high, critical
– Comments: by QA, developer, other
51
Defect Metrics
• Open Rates
– How many new bugs over a period of time
• Close Rates
– How many closed over that same period
– Ex: 10 bugs/day
• Change Rate
– Number of times the same issue updated
• Fix Failed Counts
– Fixes that didn’t really fix (still open)
– One measure of “vibration” in project
52
Defect Rates
• Microsoft Study
– 10-20/KLOC during test
– 0.5/KLOC after release
53
Test Environments
• You need to test somewhere. Where?
• Typically separate hardware/network
environment(s)
54
Hardware Environments
• Development
• QA
• Staging (optional)
• Production
55
Hardware Environments
• Typical environments
– Development
• Where programmers work
• Unit tests happen here
– Test
• For integration, system, and regression testing
– Stage
• For burn-in and load testing
– Production
• Final deployment environment(s)
56
Web Site Testing
• Unique factors
– Distributed (N-tiers, can be many)
– Very high availability needs
– Uses public network (Internet)
– Large number of platforms (browsers + OS)
• 5 causes of most site failures (Jupiter, 1999)
– Internal network performance
– External network performance
– Hardware performance
– Unforeseeable traffic spikes
– Web application performance
57
Web Site Testing
• Commercial Tools: Load Test & Site Management
– Mercury Interactive
• SiteScope, SiteSeer
– Segue
• Commercial Subscription Services
– Keynote Systems
• Monitoring Tools
• Availability: More “Nines” = More $’s
• Must balance QA & availability costs vs. benefits
58
QA Roles
• QA Manager
• Hires QA team; creates test plans; selects tools; manages team
• Salary: $50-80K/yr, $50-100/hr
• Test Developer/Test Engineer
• Performs functional tests; develops automated scripts
• Salary: $35-70K/yr, $40-100/hr
• System Administrator
• Supports QA functions but not official QA team member
• Copy Editor/Documentation Writer
• Supports QA; also not part of official team
59
MS-Project Q&A
60
Homework
• McConnell: 16 “Project Recovery”
• Schwalbe: 16 “Closing”
• Your final MS-Project schedule due class after
next
– Add resources and dependencies to your plan
– Add durations and costs
– Send interim versions
– Remember, most important part of your grade
– Get to me with any questions
• Iterate & get feedback
• Don’t work in the dark
61
Questions?

Contenu connexe

Tendances

Software Project Management (lecture 3)
Software Project Management (lecture 3)Software Project Management (lecture 3)
Software Project Management (lecture 3)Syed Muhammad Hammad
 
Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Ahmed Alageed
 
CS 414 (IT Project Management)
CS 414 (IT Project Management)CS 414 (IT Project Management)
CS 414 (IT Project Management)raszky
 
Other software processes (Software project Management)
Other software processes (Software project Management)Other software processes (Software project Management)
Other software processes (Software project Management)Ankit Gupta
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )ShudipPal
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3Azhar Shaik
 
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop introBeit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop introbabak danyal
 
EIS_Case_Study_29march2016
EIS_Case_Study_29march2016EIS_Case_Study_29march2016
EIS_Case_Study_29march2016Tanaya Bose
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project ManagementShauryaGupta38
 
Software management framework
Software management frameworkSoftware management framework
Software management frameworkKuppusamy P
 
Rational unified process
Rational unified processRational unified process
Rational unified processnaveed428
 
Software Project Management Basics
Software Project Management BasicsSoftware Project Management Basics
Software Project Management BasicsAmarjeet Singh
 

Tendances (20)

Software Project Management (lecture 3)
Software Project Management (lecture 3)Software Project Management (lecture 3)
Software Project Management (lecture 3)
 
Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3
 
CS 414 (IT Project Management)
CS 414 (IT Project Management)CS 414 (IT Project Management)
CS 414 (IT Project Management)
 
Chapter 03
Chapter 03Chapter 03
Chapter 03
 
Other software processes (Software project Management)
Other software processes (Software project Management)Other software processes (Software project Management)
Other software processes (Software project Management)
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )
 
Project management
Project managementProject management
Project management
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Planning Phase - P&MSP2010 (3/11)
Planning Phase - P&MSP2010 (3/11)Planning Phase - P&MSP2010 (3/11)
Planning Phase - P&MSP2010 (3/11)
 
Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
 
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop introBeit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop intro
 
EIS_Case_Study_29march2016
EIS_Case_Study_29march2016EIS_Case_Study_29march2016
EIS_Case_Study_29march2016
 
Spm lecture-3
Spm lecture-3Spm lecture-3
Spm lecture-3
 
Presentation of se
Presentation of sePresentation of se
Presentation of se
 
PM Symposium RUP UC Realization
PM Symposium RUP UC RealizationPM Symposium RUP UC Realization
PM Symposium RUP UC Realization
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
 
Spm lecture 1
Spm lecture 1Spm lecture 1
Spm lecture 1
 
Software management framework
Software management frameworkSoftware management framework
Software management framework
 
Rational unified process
Rational unified processRational unified process
Rational unified process
 
Software Project Management Basics
Software Project Management BasicsSoftware Project Management Basics
Software Project Management Basics
 

Similaire à Software Project Management lecture 10

Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysisWBUTTUTORIALS
 
Software Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsSoftware Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsKMS Technology
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)ShudipPal
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life CycleRIKSOF
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & TrendKMS Technology
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and typesConfiz
 
Session2.ppt
Session2.pptSession2.ppt
Session2.pptMehuk1
 
System development methodologies L2.ppt
System development methodologies L2.pptSystem development methodologies L2.ppt
System development methodologies L2.pptNyamburaKinyua
 
Sdlc (software development life cycle)
Sdlc (software development life cycle)Sdlc (software development life cycle)
Sdlc (software development life cycle)Nadeesha Thilakarathne
 

Similaire à Software Project Management lecture 10 (20)

Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
 
Software Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsSoftware Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing Trends
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Pm 6 testing
Pm 6 testingPm 6 testing
Pm 6 testing
 
Pm 6 testing
Pm 6 testingPm 6 testing
Pm 6 testing
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & Trend
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
ddd.ppt
ddd.pptddd.ppt
ddd.ppt
 
Session2.pptx.ppt
Session2.pptx.pptSession2.pptx.ppt
Session2.pptx.ppt
 
SDLC.PPT
SDLC.PPTSDLC.PPT
SDLC.PPT
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
SDLC.ppt
SDLC.pptSDLC.ppt
SDLC.ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Session2 (1).ppt
Session2 (1).pptSession2 (1).ppt
Session2 (1).ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Software testing
Software testingSoftware testing
Software testing
 
System development methodologies L2.ppt
System development methodologies L2.pptSystem development methodologies L2.ppt
System development methodologies L2.ppt
 
Sdlc (software development life cycle)
Sdlc (software development life cycle)Sdlc (software development life cycle)
Sdlc (software development life cycle)
 

Plus de Syed Muhammad Hammad

Plus de Syed Muhammad Hammad (8)

Software Project Management (lecture 4)
Software Project Management (lecture 4)Software Project Management (lecture 4)
Software Project Management (lecture 4)
 
Software Project Management( lecture 1)
Software Project Management( lecture 1)Software Project Management( lecture 1)
Software Project Management( lecture 1)
 
Scm
ScmScm
Scm
 
Java easy learning
Java easy  learningJava easy  learning
Java easy learning
 
An interdisciplinary course_in_digital_image_processing
An interdisciplinary course_in_digital_image_processingAn interdisciplinary course_in_digital_image_processing
An interdisciplinary course_in_digital_image_processing
 
Image Segmentation
 Image Segmentation Image Segmentation
Image Segmentation
 
Image processing tatorial
Image processing tatorialImage processing tatorial
Image processing tatorial
 
Mat-lab image processing tatorial
Mat-lab  image processing tatorialMat-lab  image processing tatorial
Mat-lab image processing tatorial
 

Dernier

MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdfMr Bounab Samir
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationdeepaannamalai16
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptxDhatriParmar
 
DiskStorage_BasicFileStructuresandHashing.pdf
DiskStorage_BasicFileStructuresandHashing.pdfDiskStorage_BasicFileStructuresandHashing.pdf
DiskStorage_BasicFileStructuresandHashing.pdfChristalin Nelson
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQuiz Club NITW
 
Indexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdfIndexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdfChristalin Nelson
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...
Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...
Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...Osopher
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDhatriParmar
 
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...HetalPathak10
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxkarenfajardo43
 
Objectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxObjectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxMadhavi Dharankar
 
4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptx4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptxmary850239
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 
How to Uninstall a Module in Odoo 17 Using Command Line
How to Uninstall a Module in Odoo 17 Using Command LineHow to Uninstall a Module in Odoo 17 Using Command Line
How to Uninstall a Module in Odoo 17 Using Command LineCeline George
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research DiscourseAnita GoswamiGiri
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Association for Project Management
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...Nguyen Thanh Tu Collection
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxSayali Powar
 

Dernier (20)

Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of EngineeringFaculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdf
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentation
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
 
DiskStorage_BasicFileStructuresandHashing.pdf
DiskStorage_BasicFileStructuresandHashing.pdfDiskStorage_BasicFileStructuresandHashing.pdf
DiskStorage_BasicFileStructuresandHashing.pdf
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
 
Indexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdfIndexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdf
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...
Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...
Healthy Minds, Flourishing Lives: A Philosophical Approach to Mental Health a...
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
 
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
Satirical Depths - A Study of Gabriel Okara's Poem - 'You Laughed and Laughed...
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
 
Objectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxObjectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptx
 
4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptx4.9.24 Social Capital and Social Exclusion.pptx
4.9.24 Social Capital and Social Exclusion.pptx
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 
How to Uninstall a Module in Odoo 17 Using Command Line
How to Uninstall a Module in Odoo 17 Using Command LineHow to Uninstall a Module in Odoo 17 Using Command Line
How to Uninstall a Module in Odoo 17 Using Command Line
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research Discourse
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
 

Software Project Management lecture 10

  • 1. 1 Software Project Management Session 10: Integration & Testing
  • 2. 2 Today • Software Quality Assurance • Integration • Test planning • Types of testing • Test metrics • Test tools • More MS-Project how-to
  • 3. 3 Session 9 Review • Project Control – Planning – Measuring – Evaluating – Acting • MS Project
  • 4. 4 Earned Value Analysis • BCWS • BCWP • Earned value • ACWP • Variances • CV, SV • Ratios • SPI, CPI. CR • Benefits – Consistency, forecasting, early warning
  • 6. 6 Deliverables by Phase Software Concept Requirements Analysis Design Coding and Debugging Systems Testing Deployment & Maintenance Possible Deliverables by Phase  Concept Document  Statement of Work (SOW)  Project Charter  RFP & Proposal  Requirements Document (Software Requirements Specification)  Work Breakdown Structure (WBS)  Functional Specification ( Top Level Design Specification)  Entity Relationship Diagram  Data Flow Diagram  Detailed Design Specification  Object Diagrams  Detailed Data Model  Coding Standards  Working Code  Unit Tests  Acceptance Test Procedures  Tested Application  Maintenance Specification  Deployed Application  Project Development Plan  (Software Development Plan )  Baseline Project Plan  Quality Assurance Plan  Configuration Management Plan  Risk Management Plan  Integration Plan  Detailed SQA Test Plan  SQA Test Cases  User Documentation  Training Plan
  • 7. 7 If 99.9% Were Good Enough • 9,703 checks would be deducted from the wrong bank accounts each hour • 27,800 pieces of mail would be lost per hour • 3,000,000 incorrect drug prescriptions per year • 8,605 commercial aircraft takeoffs would annually result in crashes Futrell, Shafer, Shafer, “Quality Software Project Management”, 2002
  • 9. 9 Integration & Testing • Development/Integration/Testing • Most common place for schedule & activity overlap • Sometimes Integration/Testing thought of as one phase • Progressively aggregates functionality • QA team works in parallel with dev. team
  • 10. 10 Integration Approaches • Top Down • Core or overarching system(s) implemented 1st • Combined into minimal “shell” system • “Stubs” are used to fill-out incomplete sections – Eventually replaced by actual modules • Bottom Up • Starts with individual modules and builds-up • Individual units (after unit testing) are combined into sub-systems • Sub-systems are combined into the whole
  • 11. 11 Integration • Who does integration testing? – Can be either development and/or QA team • Staffing and budget are at peak • “Crunch mode” • Issues • Pressure • Delivery date nears • Unexpected failures (bugs) • Motivation issues • User acceptance conflicts
  • 12. 12 Validation and Verification • V & V • Validation – Are we building the right product? • Verification – Are we building the product right? – Testing – Inspection – Static analysis
  • 13. 13 Quality Assurance • QA or SQA (Software Quality Assurance) • Good QA comes from good process • When does SQA begin? – During requirements • A CMM Level 2 function • QA is your best window into the project
  • 14. 14 Test Plans (SQAP) • Software Quality Assurance Plan – Should be complete near end of requirements • See example – Even use the IEEE 730 standard
  • 15. 15 SQAP • Standard sections – Purpose – Reference documents – Management – Documentation – Standards, practices, conventions, metrics • Quality measures • Testing practices
  • 16. 16 SQAP • Standard sections continued – Reviews and Audits • Process and specific reviews – Requirements Review (SRR) – Test Plan Review – Code reviews – Post-mortem review – Risk Management • Tie-in QA to overall risk mgmt. Plan – Problem Reporting and Corrective Action – Tools, Techniques, Methodologies – Records Collection and Retention
  • 17. 17 Software Quality • Traceability • Ability to track relationship between work products • Ex: how well do requirements/design/test cases match • Formal Reviews • Conducted at the end of each lifecycle phase • SRR, CDR, etc.
  • 18. 18 Testing • Exercising computer program with predetermined inputs • Comparing the actual results against the expected results • Testing is a form of sampling • Cannot absolutely prove absence of defects • All software has bugs. Period. • Testing is not debugging.
  • 19. 19 Test Cases • Key elements of a test plan • May include scripts, data, checklists • May map to a Requirements Coverage Matrix • A traceability tool
  • 20. 20 Rework • Software equivalent of “scrap” in manufacturing 6% 1% 12% 4% 16% 8% 12% 12% 10% 19% 0% 5% 10% 15% 20% 25% 30% Requirements Detailed Design Integration & System Test Rew ork Production
  • 22. 22 V Process Model Product Requirements and Specification Analysis Project Requirements and Planning Production, Operations, and Maintenance System Testing and Acceptance Testing Integration and Testing Unit Testing Coding Detailed Design High-Level Desig Non-functional Requirements Load & Performance Test User Interface Design Usability Test
  • 23. 23 Project Testing Flow • Unit Testing • Integration Testing • System Testing • User Acceptance Testing
  • 24. 24 Black-Box Testing • Functional Testing • Program is a “black-box” – Not concerned with how it works but what it does – Focus on inputs & outputs • Test cases are based on SRS (specs)
  • 25. 25 White-Box Testing • Accounts for the structure of the program • Coverage – Statements executed – Paths followed through the code
  • 26. 26 Unit Testing • a.k.a. Module Testing • Type of white-box testing – Sometimes treated black-box • Who does Unit Testing? • Developers • Unit tests are written in code – Same language as the module – a.k.a. “Test drivers” • When do Unit Testing? • Ongoing during development • As individual modules are completed
  • 27. 27 Unit Testing • Individual tests can be grouped – “Test Suites” • JUnit • Part of the XP methodology • “Test-first programming”
  • 28. 28 Integration Testing • Testing interfaces between components • First step after Unit Testing • Components may work alone but fail when put together • Defect may exist in one module but manifest in another • Black-box tests
  • 29. 29 System Testing • Testing the complete system • A type of black-box testing
  • 30. 30 User Acceptance Testing • Last milestone in testing phase • Ultimate customer test & sign-off • Sometimes synonymous with beta tests • Customer is satisfied software meets their requirements • Based on “Acceptance Criteria” – Conditions the software must meet for customer to accept the system – Ideally defined before contract is signed – Use quantifiable, measurable conditions
  • 31. 31 Regression Testing – Re-running of tests after fixes or changes are made to software or the environment – EX: QA finds defect, developer fixes, QA runs regression test to verify – Automated tools very helpful for this
  • 32. 32 Compatibility Testing – Testing against other “platforms” • Ex: Testing against multiple browsers • Does it work under Netscape/IE, Windows/Mac
  • 33. 33 External Testing Milestones • Alpha 1st , Beta 2nd • Testing by users outside the organization • Typically done by users • Alpha release • Given to very limited user set • Product is not feature-complete • During later portions of test phase • Beta release • Customer testing and evaluation • Most important feature • Preferably after software stabilizes
  • 34. 34 External Testing Milestones • Value of Beta Testing • Testing in the real world • Getting a software assessment • Marketing • Augmenting you staff • Do not determine features based on it • Too late! • Beta testers must be “recruited” • From: Existing base, marketing, tech support, site • Requires the role of “Beta Manager” • All this must be scheduled by PM
  • 35. 35 External Testing Milestones • Release Candidate (RC) • To be sent to manufacturing if testing successful • Release to Manufacturing (RTM) • Production release formally sent to manufacturing • Aim for a “stabilization period” before each of these milestones • Team focus on quality, integration, stability
  • 36. 36 Test Scripts • Two meanings • 1. Set of step-by-step instructions intended to lead test personnel through tests – List of all actions and expected responses • 2. Automated test script (program)
  • 37. 37 Static Testing • Reviews • Most artifacts can be reviewed • Proposal, contract, schedule, requirements, code, data model, test plans – Peer Reviews • Methodical examination of software work products by peers to identify defects and necessary changes • Goal: remove defects early and efficiently • Planned by PM, performed in meetings, documented • CMM Level 3 activity
  • 38. 38 Automated Testing • Human testers = inefficient • Pros • Lowers overall cost of testing • Tools can run unattended • Tools run through ‘suites’ faster than people • Great for regression and compatibility tests • Tests create a body of knowledge • Can reduce QA staff size • Cons • But not everything can be automated • Learning curve or expertise in tools • Cost of high-end tools $5-80K (low-end are still cheap)
  • 39. 39 Test Tools • Capture & Playback • Coverage Analysis • Performance Testing • Test Case Management
  • 40. 40 Load & Stress Testing • Push system beyond capacity limits • Often done via automated scripts • By the QA team • Near end of functional tests • Can show – Hidden functional issues – Maximum system capacity – Unacceptable data or service loss – Determine if “Performance Requirements” met • Remember, these are part of “non-functional” requirements
  • 41. 41 Load & Stress Testing • Metrics – Minimal acceptable response time – Minimal acceptable number of concurrent users – Minimal acceptable downtime • Vendors: High-End – Segue – Mercury – Empirix
  • 42. 42 Performance Metrics Source: Athens Consulting Group Bad Good Must support 500 users Must support 500 simultaneous users 10 second response time [Average|Maximum|90th percentile] response time must be X seconds Must handle 1M hits per day Must handle peak load of 28 page requests per second
  • 43. 43 Other Testing • Installation Testing – Very important if not a Web-based system – Can lead to high support costs and customer dissatisfaction • Usability Testing – Verification of user satisfaction • Navigability • User-friendliness • Ability to accomplish primary tasks
  • 44. 44 Miscellaneous • Pareto Analysis – The 80-20 rule • 80% of defects from 20% of code – Identifying the problem modules • Phase Containment – Testing at the end of each phase – Prevent problems moving phase-to-phase • Burn-in – Allowing system to run “longer” period of time – Variation of stress testing
  • 45. 45 Miscellaneous • “Code Freeze” – When developers stop writing new code and only do bug fixes – Occurs at a varying point in integration/testing • Tester-to-Coder Ratio – It depends – Often 1:3 or 1:4 – QA staff size grows: QA Mgr and/or lead early
  • 46. 46 Stopping Testing • When do you stop? • Rarely are all defects “closed” by release • Shoot for all Critical/High/Medium defects • Often, occurs when time runs out • Final Sign-off (see also UAT) • By: customers, engineering, product mgmt.,
  • 47. 47 Test Metrics • Load: Max. acceptable response time, min. # of simultaneous users • Disaster: Max. allowable downtime • Compatibility: Min/Max. browsers & OS’s supported • Usability: Min. approval rating from focus groups • Functional: Requirements coverage; 100% pass rate for automated test suites
  • 48. 48 Defect Metrics • These are very important to the PM • Number of outstanding defects – Ranked by severity • Critical, High, Medium, Low • Showstoppers • Opened vs. closed
  • 49. 49 Defect Tracking • Get tools to do this for you – Bugzilla, TestTrack Pro, Rational ClearCase – Some good ones are free or low-cost • Make sure all necessary team members have access (meaning nearly all) • Have regular ‘defect review meetings’ – Can be weekly early in test, daily in crunch • Who can enter defects into the tracking system? – Lots of people: QA staff, developers, analysts, managers, (sometimes) users, PM
  • 50. 50 Defect Tracking • Fields – State: open, closed, pending – Date created, updated, closed – Description of problem – Release/version number – Person submitting – Priority: low, medium, high, critical – Comments: by QA, developer, other
  • 51. 51 Defect Metrics • Open Rates – How many new bugs over a period of time • Close Rates – How many closed over that same period – Ex: 10 bugs/day • Change Rate – Number of times the same issue updated • Fix Failed Counts – Fixes that didn’t really fix (still open) – One measure of “vibration” in project
  • 52. 52 Defect Rates • Microsoft Study – 10-20/KLOC during test – 0.5/KLOC after release
  • 53. 53 Test Environments • You need to test somewhere. Where? • Typically separate hardware/network environment(s)
  • 54. 54 Hardware Environments • Development • QA • Staging (optional) • Production
  • 55. 55 Hardware Environments • Typical environments – Development • Where programmers work • Unit tests happen here – Test • For integration, system, and regression testing – Stage • For burn-in and load testing – Production • Final deployment environment(s)
  • 56. 56 Web Site Testing • Unique factors – Distributed (N-tiers, can be many) – Very high availability needs – Uses public network (Internet) – Large number of platforms (browsers + OS) • 5 causes of most site failures (Jupiter, 1999) – Internal network performance – External network performance – Hardware performance – Unforeseeable traffic spikes – Web application performance
  • 57. 57 Web Site Testing • Commercial Tools: Load Test & Site Management – Mercury Interactive • SiteScope, SiteSeer – Segue • Commercial Subscription Services – Keynote Systems • Monitoring Tools • Availability: More “Nines” = More $’s • Must balance QA & availability costs vs. benefits
  • 58. 58 QA Roles • QA Manager • Hires QA team; creates test plans; selects tools; manages team • Salary: $50-80K/yr, $50-100/hr • Test Developer/Test Engineer • Performs functional tests; develops automated scripts • Salary: $35-70K/yr, $40-100/hr • System Administrator • Supports QA functions but not official QA team member • Copy Editor/Documentation Writer • Supports QA; also not part of official team
  • 60. 60 Homework • McConnell: 16 “Project Recovery” • Schwalbe: 16 “Closing” • Your final MS-Project schedule due class after next – Add resources and dependencies to your plan – Add durations and costs – Send interim versions – Remember, most important part of your grade – Get to me with any questions • Iterate & get feedback • Don’t work in the dark

Notes de l'éditeur

  1. No lab today More lab in later term