• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

MSR End of Internship Talk

on

  • 1,287 views

 

Statistics

Views

Total Views
1,287
Views on SlideShare
860
Embed Views
427

Actions

Likes
0
Downloads
0
Comments
0

6 Embeds 427

http://www.arrestedcomputing.com 323
http://arrestedcomputing.com 96
http://www.drshermano.com 5
http://dijkstra 1
http://drshermano.com 1
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    MSR End of Internship Talk MSR End of Internship Talk Presentation Transcript

    • Analytics for Software Development
    • Internship Timeline Ray Buse • Analytics for Software Development Prototype FoSE Paper ICSE Deadline June 14 Aug 20 Analysis / Theory This Talk Aug 17 Survey First Day Last Day 1 2 3 4 5 6 7 8 9 10 11 12 May 24 Aug 20 May June July August
    • Ray Buse • Analytics for Software Development You are a manager at Microsoft …
    • Your responsibilities • Defines the schedule commitments for the product group • Delivers the product on time against milestones Ray Buse • Analytics for Software Development • Develops effective metrics for the product • Approves group goals and appropriately funds projects • From improving the team's engineering system to improving the group's engineering system • Prevents obstacles and analyzes where and why they occur in order to prevent them • Ensures accountability across the group • Ensures alignment between senior management and product group commitments • Takes responsibility for decisions and uses appropriate decision-making techniques to drive effective decision making in the group • Ensures the group understands its connection to customer/partner value • Ensures effective customer/partner feedback channels and mechanisms are in place and regularly utilized across teams • Ensures the group is appropriately aligned with other product teams to achieve results • Proactively identifies problems across disciplines and improves cross-discipline processes • Effectively takes advantage of his or her personal network of key contacts across disciplines to gather feedback and improve the product • Ensures an appropriate organization is in place and resources are optimized for success • Proactively optimizes the group's recruiting processes and practices • Defines performance standards for the group • Conducts effective performance reviews of all team members, including managers • Has succession plans in place for top talent including own successor • Coaches and motivates managers • Provides critical input into the discipline's vision and strategy • Prioritizes resource needs for the group and executes against prioritized requirements • Effectively implements change aligned with business objectives across the group • Ensures that the product group thoroughly understands the customer's business, including current and future needs
    • Ray Buse • Analytics for Software Development Your responsibilities
    • Fortunately … Ray Buse • Analytics for Software Development Telemetry Dependencies Velocity Code Clones Change Type Architecture Bug Reports Readability Ownership Complexity Documentation Expertise Failure Test Defect Churn Models Coverage Density
    • Unfortunately … Ray Buse • Analytics for Software Development Telemetry Dependencies Velocity Code Clones Change Type Architecture Bug Reports Readability Ownership Complexity Documentation Expertise Failure Test Defect Churn Models Coverage Density
    • Ray Buse • Analytics for Software Development Which metrics are important?
    • Ray Buse • Analytics for Software Development Which metrics are important?
    • Ray Buse • Analytics for Software Development Which artifacts should be measured?
    • Ray Buse • Analytics for Software Development The Challenge
    • Analytics Ray Buse • Analytics for Software Development Measurements Measurements Metrics What? How much? Exploratory Analysis Quantitative Analysis Why? Qualitative Analysis Experiments What if? Insights Goal Insights
    • Analytics Ray Buse • Analytics for Software Development Past Present Future What is happening Information What Happened? now? What will happen? What is the best/ How and why did it What is the next Insight happen? best action? worst that can happen?
    • Importance 0.98 Importance 0.88 Importance 0.84 Difficulty 0.43 Difficulty 0.51 Difficulty 1 Ray Buse • Analytics for Software Development Past Present Future More Difficult What is happening Information What Happened? now? What will happen? What is the best/ How and why did it What is the next Insight happen? best action? worst that can happen? More Important More Difficult Importance 1 Importance 0.9 Importance 0.8 Difficulty 0.8 Difficulty 0.84 Difficulty 0.88
    • Ray Buse • Analytics for Software Development A basis for making decisions
    • Ray Buse • Analytics for Software Development Decision Scenarios
    • The difficulty of interpreting data is a significant barrier to the use of Ray Buse • Analytics for Software Development analytics today. 30 Managers 25 Developers 20 15 10 5 0 Strongly Agree Neutral Disagree Strongly Agree Disagree
    • Ray Buse • Analytics for Software Development Software Analytics Theory
    • Software Analytics Theory Ray Buse • Analytics for Software Development Exploration Analysis Experimentation Search for important factors in data. Answer specific questions. Compare to alternate scenarios. Past Summarization Trends Modeling Present Alerts (& Correlations) Overlays Benchmarking Future Forecasting Goals Simulation
    • Description Insight Relevant Techniques Summarization Search for important or unusual factors to Characterize events, understand Topic analysis, NLP associated with a time range. why they happened. Ray Buse • Analytics for Software Development Alerts (& Continuous search for unusual changes or Notice important events. Statistics, Repeated Correlations) relationships in variables measures Forecasting Search for and predict unusual events in Anticipate events. Extrapolation, the future based on current trends. Statistics Trends How is an artifact changing? Understand the direction of the Regression analysis project. Overlays What artifacts account for current Understand the relationships Cluster analysis, activity? between artifacts. repository mining Goals How are features/artifacts changing in the Assistance for planning Root-cause analysis context of completion or some other goal? Modeling Compares the abstract history of similar Learn from previous projects. Machine learning artifacts. Identify important factors in history. Benchmarking Identify vectors of similarity/difference Assistance for resource allocation Statistics across artifacts. and many other decisions Simulation Simulate changes based on other artifact Assistance for general decisions What-if? analysis models.
    • Ray Buse • Analytics for Software Development DEMO
    • Ray Buse • Analytics for Software Development Prototype Tool
    • Surprise Analysis Ray Buse • Analytics for Software Development Distribution of changes Sample of changes (context)
    • Surprise Analysis Ray Buse • Analytics for Software Development Distribution of changes Sample of changes (context)
    • Surprise Analysis Ray Buse • Analytics for Software Development Type equation here. 1 −(−)2 2 2 () = 2 | − | normalized = ()
    • Ray Buse • Analytics for Software Development Context Surprise Analysis Sample
    • Ray Buse • Analytics for Software Development Context Surprise Analysis Sample
    • Ray Buse • Analytics for Software Development Software Analysts
    • Ray Buse • Analytics for Software Development Survey In Summary… Theory Tool
    • Future Work Ray Buse • Analytics for Software Development Survey Theory Tool More Features Other Other Theories Tools
    • Ray Buse • Analytics for Software Development In my other life …
    • Survey Ray Buse • Analytics for Software Development 30 25 20 15 Developers 10 Managers 5 0 Entertainment & Microsoft Business Online Services Server & Tools Windows and Devices Division Division Division Division Windows Live Division
    • Survey Ray Buse • Analytics for Software Development 30 25 20 15 Developers 10 Managers 5 0 Entertainment & Microsoft Business Online Services Server & Tools Windows and Devices Division Division Division Division Windows Live Division
    • Ray Buse • Analytics for Software Development
    • Ray Buse • Analytics for Software Development Goal Question Metric
    • Ray Buse • Analytics for Software Development GQM Example
    • Ray Buse • Analytics for Software Development A more insightful question