"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
Â
PROMISE 2011: Seven Habits of High Impactful Empirical Software Engineers (Laurie Williams)
1. Seven Habits of Highly Impactful Empirical Software Engineers Laurie Williams North Carolina State University
2. Who am I ⊠Where Iâm Coming From Degree confusion: BS in Industrial Engineering (Lehigh University); MBA (Duke University); PhD in Computer Science (University of Utah) Worked for IBM for 9 years (engineering then software) Then ⊠was a non-traditional PhD student with 3 kids NC State since August 2000 10 PhD, 13 MS completed; 6 PhD, 2 MS in process ~ 160 refereed papers; ~70+% with industrial co-author $5M+ in funding: ~$3M government; ~$2M industrial Active in consulting and industrial training
6. Who may we want to impact? Practitioners Colleagues Family & Friends Students & Mentees
7. ⊠with our research results They cite our stuff! We collaborate. They use our stuff! They follow our methods. They alter their research path.
8. ⊠and with our personal (inter)actions Their ideas are enriched. Their professional life is changed. They grow to be happy and successful. Our lives are more enjoyable.
9. My goal for this talk ⊠We are what we repeatedly do,Excellence, then, is not an act, but a habit.-- Aristotle 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 And hopefully learn from you as well
10. CoveyâsSeven Habits Personal Victory⊠independence Be Proactive Begin with the End in Mind Put First Things First Public Victory ⊠interdependence Think Win/Win Seek First to Understand, Then to be Understood Synergize Renewal ⊠continuous improvement Sharpen the Saw
11. Personal: Be Proactive âProactive people are smart, theyâre value driven, they read reality, and they know whatâs needed.â Think about it: who do you want to impact as an empirical software engineer? Figure from Covey, S., Seven Habits of Highly Effective People, 2004.
12. Basic Research Recognize problem, investigate concepts Concept Formulation Refine ideas, publish partial solutions Development & Extension Try it out, clarify, refine Internal Exploration Stabilize, port, use for industrial-strength problems External Exploration Broaden user group, extend Popularization Propagate through community Software technology maturation state of the art: colleagues/students impact state of the practice: practitioners Redwine, S. and Riddle, S., Software Technology Maturation, ICSE 1985.
13. Critical factors in software maturation Conceptual integrity Clear recognition of need Tuneability Prior positive experience Management commitment Training
14. Inhibitors in software technology maturation Internal transfer High cost Contracting disincentives Psychological hurdles Easily modified technology
15. Facilitators to software technology maturation Prior success Incentives Technically astute managers Readily available help Latent demand Simplicity Incremental extensions to current technology
16. Basic Research Recognize problem, investigate concepts Concept Formulation Refine ideas, publish partial solutions Development & Extension Try it out, clarify, refine Internal Exploration Stabilize, port, use for industrial-strength problems External Exploration Broaden user group, extend Popularization Propagate through community Software technology maturation state of the art: colleagues/students â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.â impact Whereâs the beef . . . . validation? state of the practice: practitioners Redwine, S. and Riddle, S., Software Technology Maturation, ICSE 1985.
17.
18. Personal: Begin with the End in Mind â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.â â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.â
19. What is Your Destination? Who are you desiring to impact? What validation techniques are you using to impact them? Do they like that technique? state-of-the-art state-of-the-practice
20. The Impact Project Funded by US NSF, UK Institution of Engineering and Technology, IEEE Computer Society, Japanese government Solid and scholarly assessment of the impact software engineering research has had on software engineering practice Literature reviews and personal interviews Case studies: configuration management; modern programming languages; runtime assertion checking; reviews and walkthroughs; cost and economic models; software architecture Osterweil, L., Ghezzi, C., Kramer, J., and Wolf, A., Determining the Impact of Software Engineering Research on Practice, IEEE Computer, March 2008.
21. The Impact Project Findings Lasting impact seems to come most readily from ongoing interactions between research and practice Research impact might not be fully felt for at least 10 years (in terms of widespread adoption) Continuous support for sustaining a vigorous research community is required A research community must provide nurturing in a variety of ways The interplay between research and practice can be difficult to determine precisely and communicate clearly Osterweil, L., Ghezzi, C., Kramer, J., and Wolf, A., Determining the Impact of Software Engineering Research on Practice, IEEE Computer, March 2008.
22. Disparity of Acceptability and Desirability State-of-the-art: Researchers look for how well a theory has been validated State-of-the-practice: Industry looks for how easily understandable evidence of how well the technique works in their own environment (real world validation) 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). 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.
23. Personal: Put First Things First âDonât prioritize your schedule instead ⊠schedule your priorities.â
24. Students â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.â NicoHabermann1932-1993 ⊠obtained from the web page of David Notkin, Nicoâs academic son
34. Public: Think Win/Win âWin/win is a frame of mind and heart that constantly seeks mutual benefit in all human interactions.â
35.
36.
37. Win/Win in our personal interactions Peer review Why to accept, rather than why to reject How to help the authors advance rather than to discourage Be inclusive of topic and research technique, not biased to your own technique or views Sharing Techniques Guidance/Advice/Mentoring Lose the personal or research group rivalries and pet theories Communicate benefits of (participating in) research in terms of benefits to practitioners/participants âŠ. There really is âenoughâ for all of us so we can all make progress
38. Public: Seek First to Understand, Then to be Understood â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.â
39. Understanding our âcustomerâ Problem often ârelatedâ to desired technical solution Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993..
40. Understanding our âcustomerâ Industrial case studies that exhibit problems of interest ⊠scale/complexity; unpredictability; dynamism Evolving the state of the art, possibly multiple researchers/groups Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993..
43. Posterchild Vic Basili and NASAâs Software Engineering Laboratory Industry-as-laboratory
44. Public: Synergize â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.â
45.
46.
47. It is in their collaboration and cooperationthat they rocked the software industry.
48. Reprisal â⊠in order to have influence, you have to be influenced.â ⊠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.
49. Renewal: Sharpen the Saw â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 âŠâ
50. Final Thoughts It is in giving that you receive ⊠do empirical research for the greater good. Actions speak louder than words. 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.
51. References Covey, S., Seven Habits of Highly Effective People, 2004. Osterweil, L., Ghezzi, C., Kramer, J., and Wolf, A., Determining the Impact of Software Engineering Research on Practice, IEEE Computer, March 2008. Potts, C., Software Engineering Research Revisited, IEEE Software, Sept 1993. Redwine, S. and Riddle, S., Software Technology Maturation, ICSE 1985. 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.
Hinweis der Redaktion
â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