PROMISE 2011: Seven Habits of High Impactful Empirical Software Engineers (Laurie Williams)

3,277 views

Published on

PROMISE 2011

Keynote 1:
"Seven Habits of High Impactful Empirical Software Engineers"
Laurie Williams

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,277
On SlideShare
0
From Embeds
0
Number of Embeds
2,385
Actions
Shares
0
Downloads
36
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • “Crossing the Chasm” written by Geoffrey Moore. The second edition was published in 2002. The book deals with the stages of the Technology Adoption Lifecycle in which a new technology is absorbed in to a community.
  • Continuous improvement, creates the upward spiral of growth that lifts you to new levels of understanding and living each of the habits as you come around to them on a progressively higher plane
  • PROMISE 2011: Seven Habits of High Impactful Empirical Software Engineers (Laurie Williams)

    1. 1. Seven Habits of Highly Impactful Empirical Software Engineers<br />Laurie Williams<br />North Carolina State University<br />
    2. 2. Who am I … Where I’m Coming From<br />Degree confusion: BS in Industrial Engineering (Lehigh University); MBA (Duke University); PhD in Computer Science (University of Utah)<br />Worked for IBM for 9 years (engineering then software) <br />Then … was a non-traditional PhD student with 3 kids<br />NC State since August 2000<br />10 PhD, 13 MS completed; 6 PhD, 2 MS in process<br />~ 160 refereed papers; ~70+% with industrial co-author<br />$5M+ in funding: ~$3M government; ~$2M industrial<br />Active in consulting and industrial training<br />
    3. 3. What is a habit?<br />noun 1. an acquired behavior pattern regularly followed until it has become almost involuntary: the habit of looking both ways before crossing the street.<br />Knowledge: what to do and why<br />Skill: how to do it<br />Desire: the want to do <br />We are what we repeatedly do,Excellence, then, is not an act, but a habit. -- Aristotle<br />Definition by Dictionary.comUnabridged Based on the Random House Dictionary, © Random House, Inc. 2011.<br />Photo from: http://tkofthewildboyz.blogspot.com/2008/10/vacay-pt-ii-new-york.html<br />
    4. 4. What is Impact?<br />im·pact [n. im-pakt; v. im-pakt]<br />noun 1. the striking of one thing against another; forceful contact; collision: The impact of the colliding cars broke the windshield. <br />noun 2. the force exerted by a new idea, concept, technology, or ideology: the impact of the industrial revolution. <br />Definitions from Dictionary.comUnabridged Based on the Random House Dictionary, © Random House, Inc. 2011.<br />Photos from http://knowledge.allianz.com/?823/road-safety and http://ed101.bu.edu/StudentDoc/current/ED101sp09/rcm/<br />
    5. 5. Structured based upon … <br />© 2004<br />Amazon book rank: 54<br />Now that’s impact!<br />
    6. 6. Who may we want to impact?<br />Practitioners<br />Colleagues<br />Family & Friends<br />Students & Mentees<br />
    7. 7. … with our research results<br />They cite our stuff!<br />We collaborate.<br />They use our stuff!<br />They follow our methods.<br />They alter their research path.<br />
    8. 8. … and with our personal (inter)actions<br />Their ideas are enriched.<br />Their professional life is changed.<br />They grow to be happy and successful.<br />Our lives are more enjoyable.<br />
    9. 9. My goal for this talk … <br />We are what we repeatedly do,Excellence, then, is not an act, but a habit.-- Aristotle<br />To be an impactful empirical software engineer by impacting each of you in at least some small way to change your habit(s) so you can impact someone else … in a positive way of course <br />And hopefully learn from you as well <br />
    10. 10. Covey’sSeven Habits<br />Personal Victory… independence<br />Be Proactive<br />Begin with the End in Mind<br />Put First Things First<br />Public Victory … interdependence<br />Think Win/Win<br />Seek First to Understand, Then to be Understood<br />Synergize<br />Renewal … continuous improvement<br />Sharpen the Saw<br />
    11. 11. Personal: Be Proactive<br />“Proactive people are smart, they’re value driven, they read reality, and they know what’s needed.”<br />Think about it: who do you want to impact as an empirical software engineer?<br />Figure from Covey, S., Seven Habits of Highly Effective People, 2004. <br />
    12. 12. Basic Research<br />Recognize problem, investigate concepts<br />Concept Formulation<br />Refine ideas, publish partial solutions<br />Development & Extension<br />Try it out, clarify, refine<br />Internal Exploration<br />Stabilize, port, use for industrial-strength problems<br />External Exploration<br />Broaden user group, extend<br />Popularization<br />Propagate through community<br />Software technology maturation <br />state of the art:<br />colleagues/students<br />impact<br />state of the practice: practitioners<br />Redwine, S. and Riddle, S., Software Technology Maturation, ICSE 1985. <br />
    13. 13. Critical factors in software maturation<br />Conceptual integrity<br />Clear recognition of need<br />Tuneability<br />Prior positive experience<br />Management commitment<br />Training<br />
    14. 14. Inhibitors in software technology maturation<br />Internal transfer<br />High cost<br />Contracting disincentives<br />Psychological hurdles<br />Easily modified technology<br />
    15. 15. Facilitators to software technology maturation<br />Prior success<br />Incentives<br />Technically astute managers<br />Readily available help<br />Latent demand<br />Simplicity<br />Incremental extensions to current technology<br />
    16. 16. Basic Research<br />Recognize problem, investigate concepts<br />Concept Formulation<br />Refine ideas, publish partial solutions<br />Development & Extension<br />Try it out, clarify, refine<br />Internal Exploration<br />Stabilize, port, use for industrial-strength problems<br />External Exploration<br />Broaden user group, extend<br />Popularization<br />Propagate through community<br />Software technology maturation <br />state of the art:<br />colleagues/students<br />“The best process for transitioning technology seems to be incremental expansion in small steps with trial use and the careful gathering of empirical evidence concerning the technology’s value.” <br />impact<br />Where’s the beef . . . . validation? <br />state of the practice: practitioners<br />Redwine, S. and Riddle, S., Software Technology Maturation, ICSE 1985. <br />
    17. 17.
    18. 18. Personal: Begin with the End in Mind<br />“To begin with the end in mind means to start with an understanding of your destination. It means to know where you’re going so that you better understand where you are now and so that the steps you take are always in the right direction.”<br />“We may be very busy, we may be very efficient, but we will also be truly effective only when we begin with the end in mind.”<br />
    19. 19. What is Your Destination?<br />Who are you desiring to impact?<br />What validation techniques are you using to impact them? Do they like that technique?<br /> state-of-the-art state-of-the-practice<br />
    20. 20. The Impact Project<br />Funded by US NSF, UK Institution of Engineering and Technology, IEEE Computer Society, Japanese government<br />Solid and scholarly assessment of the impact software engineering research has had on software engineering practice<br />Literature reviews and personal interviews<br />Case studies: configuration management; modern programming languages; runtime assertion checking; reviews and walkthroughs; cost and economic models; software architecture<br />Osterweil, L., Ghezzi, C., Kramer, J., and Wolf, A., Determining the Impact of Software Engineering Research on Practice, IEEE Computer, March 2008.<br />
    21. 21. The Impact Project Findings<br />Lasting impact seems to come most readily from ongoing interactions between research and practice<br />Research impact might not be fully felt for at least 10 years (in terms of widespread adoption)<br />Continuous support for sustaining a vigorous research community is required <br />A research community must provide nurturing in a variety of ways<br />The interplay between research and practice can be difficult to determine precisely and communicate clearly<br />Osterweil, L., Ghezzi, C., Kramer, J., and Wolf, A., Determining the Impact of Software Engineering Research on Practice, IEEE Computer, March 2008.<br />
    22. 22. Disparity of Acceptability and Desirability<br />State-of-the-art: Researchers look for how well a theory has been validated<br />State-of-the-practice: Industry looks for how easily understandable evidence of how well the technique works in their own environment (real world validation)<br />LW “soap box”: Researchers are often the gatekeepers of what empirical software engineering research can reach industry, often using their own “theory validation” filter that is not important to the customer of the research (industry). <br />Zelkowitz, M., Wallace, D. Binkley, D., Understanding the Culture Clash in Software Engineering Technology Transfer, Tech. Report No. 2, University of Maryland, College Park, Maryland, 1998. <br />
    23. 23. Personal: Put First Things First<br />“Don’t prioritize your schedule instead … schedule your priorities.”<br />
    24. 24. Students<br />“Focus on the students, since graduating great students means you'll produce great research, while focusing on the research may or may not produce great students.”<br />NicoHabermann1932-1993<br />… obtained from the web page of David Notkin, Nico’s academic son<br />
    25. 25.
    26. 26.
    27. 27.
    28. 28.
    29. 29.
    30. 30.
    31. 31. Focus<br />“Nothing focuses the mind like a noose.” -- Mark Twain<br />
    32. 32. Real Impact<br />
    33. 33. Laurie’s Laws<br />
    34. 34. Public: Think Win/Win<br />“Win/win is a frame of mind and heart that constantly seeks mutual benefit in all human interactions.”<br />
    35. 35.
    36. 36.
    37. 37. Win/Win in our personal interactions<br />Peer review<br />Why to accept, rather than why to reject<br />How to help the authors advance rather than to discourage<br />Be inclusive of topic and research technique, not biased to your own technique or views<br />Sharing<br />Techniques<br />Guidance/Advice/Mentoring<br />Lose the personal or research group rivalries and pet theories<br />Communicate benefits of (participating in) research in terms of benefits to practitioners/participants<br />…. There really is “enough” for all of us so we can all make progress<br />
    38. 38. Public: Seek First to Understand, Then to be Understood<br />“Seeking first to understand, diagnosing before you prescribe, is hard … It takes a great deal of security to go into a deep listening experience because you open yourself up to be influenced … It’s a paradox, in a sense, because in order to have influence, you have to be influenced.”<br />
    39. 39. Understanding our “customer”<br />Problem often “related” to desired technical solution<br />Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993.. <br />
    40. 40. Understanding our “customer”<br />Industrial case studies that exhibit problems of interest … scale/complexity; unpredictability; dynamism<br />Evolving the state of the art, possibly multiple researchers/groups<br />Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993.. <br />
    41. 41. Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993.. <br />
    42. 42. Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993.. <br />
    43. 43. Posterchild<br />Vic Basili and NASA’s Software Engineering Laboratory<br />Industry-as-laboratory<br />
    44. 44. Public: Synergize<br />“Synergy means that 1 + 1 may equal 8, 16, or even 1600. The synergistic position of high trust produces solutions better than any originally proposed, and all parties know it. Furthermore, they genuinely enjoy the creative enterprise.”<br />
    45. 45. Agile Manifesto/Alliance<br /><ul><li>XP, SCRUM, DSDM, Adaptive Software Development, Crystal, FDD
    46. 46. February 2001 (Snowbird, UT)</li></li></ul><li>Survey says …. They nailed it with the Agile Principles <br />
    47. 47. It is in their collaboration and cooperationthat they rocked the software industry.<br />
    48. 48. Reprisal<br />“… in order to have influence, you have to be influenced.”<br />… in order to influence, you have to really listen, even if that means you need to realize that no matter how smart you are and how groundbreaking your past research was, you might just need to alter your path due to new information or trends. <br />
    49. 49. Renewal: Sharpen the Saw<br />“This is the single most powerful investment we can ever make in life – investment in ourselves, in the only instrument we have with which to deal with life and to contribute. We are the instruments of our own performance, and to be effective we, we need to recognize the importance of taking time regularly to sharpen the saw …”<br />
    50. 50. Final Thoughts<br />It is in giving that you receive … do empirical research for the greater good.<br />Actions speak louder than words.<br />When you look back on your career (as an empirical software engineer), who do you want to have impacted? Develop habits of excellent to focus on those things now.<br />
    51. 51. References<br />Covey, S., Seven Habits of Highly Effective People, 2004.<br />Osterweil, L., Ghezzi, C., Kramer, J., and Wolf, A., Determining the Impact of Software Engineering Research on Practice, IEEE Computer, March 2008.<br />Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993.<br />Redwine, S. and Riddle, S., Software Technology Maturation, ICSE 1985. <br />Zelkowitz, M., Wallace, D. Binkley, D., Understanding the Culture Clash in Software Engineering Technology Transfer, Tech. Report No. 2, University of Maryland, College Park, Maryland, 1998.<br />

    ×