380 likes | 520 Views
Predictors of customer perceived software quality. Paul Luo Li (ISRI – CMU) Audris Mockus (Avaya Research) Ping Zhang (Avaya Research). Need to View Quality from the Customer’s Perspective. … We translate these advanced technologies into value for our customers …
E N D
Predictors of customer perceived software quality Paul Luo Li (ISRI – CMU) Audris Mockus (Avaya Research) Ping Zhang (Avaya Research)
Need to View Quality from the Customer’s Perspective … We translate these advanced technologies into value for our customers … -IBM (#9 on the Fortune 500) … Our strategy is to offer products, services and solutions that are high tech, low cost and deliver the best customer experience. -HP (#11 on the Fortune 500) • … We deliver unparalleled value to our customers. • Only by serving our customers well do we justify our existence as a business • -Avaya (#401 on the Fortune 500)
What Would be Ideal • Predict customer perceived quality • Using customer characteristics • For each customer Key idea: Focus on the customer
How do I plan deployment to meet the quality expectations of the customer? How do I target improvement efforts? How do I allocate the right resources to deal with customer problems Predict customer experience for each customer Identify possible causes of problems Predict customer interactions Possible Applications of Predictions
How do I plan deployment to meet the quality expectations of the customer? How do I target improvement efforts? How do I allocate the right resources to deal with customer problems Predict customer experience for each customer Identify possible causes of problems Predict customer interactions Solutions for Software Producers
How do I plan deployment to meet the quality expectations of the customer? How do I target improvement efforts? How do I allocate the right resources to deal with customer problems Predict customer experience for each customer Identify possible causes of problems Predict customer interactions To Improve Customer Perceived Quality
Gaps in Current Research • Prior work examined: • Software defect prediction for a single customer (Musa et al. 1987, Lyu et al. 1996) • Software defect prediction for modules or features (Jones et al. 1999, Khoshgoftaar et al. 1996) Is not scalable
Not Focused on Customers • Prior work examined: • Software defect prediction for a single customer (Musa et al. 1987, Lyu et al. 1996) • Software defect prediction for modules or features (Jones et al. 1999, Khoshgoftaar et al. 1996) Tell us nothing about a specific customer
Does not Capture other Aspects of Customer Perceived Quality • Prior work examined: • Software defect prediction for a single customer (Musa et al. 1987, Lyu et al. 1996) • Software defect prediction for modules or features (Jones et al. 1999, Khoshgoftaar et al. 1996) Does not predict other aspects of customer perceived quality that are not code related.
Research Contributions • Predict software defects for each customer in a cost effective manner • Predict other aspects of customer perceived quality for each customer • Empirically validate deployment, usage, software, and hardware predictors
Rest of This Talk • The setting • Customer interactions (outputs) • Customer characteristics (inputs) • Results • Conclusion
Empirical Results from a Real World Software System • Avaya telephone call processing software system • 7 million+ lines of C/C++ • Fixed release schedule • Process improvement efforts • Tens of thousands of customers • 90% of Fortune 500 companies use it • Professional support organization
Data Used are Commonly Available • Customer issue tracking system • Trouble ticket database • The equipment database • Change management • Sablime database Data sources available at other organizations e.g. IBM and HP Data collected as a part of everyday operations
At Other Organizations • Customer issue tracking system • Trouble ticket database • The equipment database • Change management • Sablime database Data sources available at other organizations e.g. IBM and HP Data collected as a part of everyday operations
Customer Interactions (Outputs) • We assume customer interaction == customer perceived quality • Five customer interaction (Chulani et al. 2001, Buckley and Chillarege 1995) within 3 month of deployment • Software defects: high impact problem • System outages: high impact problem • Technician dispatches • Calls • Automated alarms Important for Avaya and likely for other organizations as well
Examine Customer Installations Number of deployments 5 1 Months after general availability
Capture Characteristics of Each Installation Customer 1: Deployed first month, a Large system, Linux… Customer 2: Deployed first month, a Small system, Windows… Customer 3: Deployed first month, a Large system, Proprietary Os… Customer 4: Deployed first month, a Small system, Linux… Customer 5: Deployed first month, a Large system, Linux… Number of deployments 5 1 Months after general availability
Analyze Using Statistical Analysis Customer 1: Deployed first month, a Large system, Linux… Customer 2: Deployed first month, a Small system, Windows… Customer 3: Deployed first month, a Large system, Proprietary Os… Customer 4: Deployed first month, a Small system, Linux… Customer 5: Deployed first month, a Large system, Linux… Number of deployments 5 Similarities Differences 1 Months after general availability
Category of Predictors (Kinds of Inputs) • We examine: • Deployment issues • Usage patterns • Software platform • Hardware configurations • Prior work examines: • Software product • Development process Common sense issues, but lack empirical validation
Category of Predictors (Kinds of Inputs) • We examine: • Deployment issues • Usage patterns • Software platform • Hardware configurations • Prior work examines: • Software product • Development process Key idea: From the customer’s perspective, they are not good predictors (i.e. do not vary for a single release)
Specific Predictors (Inputs) • Total deployment time • deployment issues • Operating system • software platform, hardware configurations • System size • hardware configurations, software platform, usage patterns • Ports • usage pattern, hardware configurations • Software upgrades • deployment issue
Predict for each customer (outputs): Software defects System outages Technician dispatches Calls Automated alarms Using Logistic regression and Linear regression Using predictors (inputs): Total deployment time Operating system System size Ports Software upgrades For a real world software system Recap
The Most Important Predictor • Total deployment time (deployment issue) • Systems deployed half way into our observational period are 13 to 25 times less likely to experience a software defect
May Enable Deployment Adjustments • Total deployment time (deployment issue) • Systems deployed half way into our observational period are 13 to 25 times less likely to experience a software defect • May be due to software patching, better tools, more experienced technicians
Another Important Predictor • Total deployment time (deployment issue) • Operating system (software platform, hardware configurations) • Systems running on the proprietary OS are 3 times less likely to experience a software defect compared with systems on running the open OS (Linux) • Systems running on the commercial OS (Windows) are 3 times more likely to experience a software defect compared with systems running on the open OS (Linux)
May Allow for Targeted Improvement or Improved Testing • Total deployment time (deployment issue) • Operating system (software platform, hardware configurations) • May be due to familiarity with the operating system • May be due to operating system complexity
More Results in Paper • The complete results and analyses for field defects • Predictions for other customer interactions
Validation of Results and Method • We accounted for data reporting differences • Included indicator variables in the models to identify populations (e.g. US or international customers) • We independently validated the data collection process • Independently extracted data and performed analyses • We interviewed personnel to validate findings • Programmers • Field technicians
Summary: Identified Predictors of Customer Perceived Quality • We identified and quantified characteristics, like time of deployment, that can affect customer perceived quality by more than an order of magnitude
Summary: Modeled Customer Interactions • We identified and quantified characteristics , like time of deployment, that can affect customer perceived quality by more than an order of magnitude • We created models that can predict various customer interactions and found that predictors have consistent effect across interactions
Summary: Deployment is Important for High Reliability • We identified and quantified characteristics , like time of deployment, that can affect customer perceived quality by more than an order of magnitude • We created models that can predict various customer interactions and found that predictors have consistent effect across interactions • We learned that controlled deployment may be the key for high reliability systems
Improve Customer’s Experiences • You can target improvement efforts • You can allocate the right resources to deal with customer reported problems • You can adjust deployment to meet the quality expectations of your customers
Predictors of customer perceived software quality Paul Luo Li (paul.li@cs.cmu.edu) Audris Mockus (Avaya Research) Ping Zhang (Avaya Research)
Predicted Number of Calls Match Actual Number of Calls Calls for the next release Calls Predictions are made here Time