Transforming Chaos to Clarity
  Making Your Software Development Hum

      Ron Lichty, Software Engineering Mgmt
        ...
Ron Lichty,
Software Engineering Management




  SOFTWEST
Poll: Software Development
             in Disarray?
•   Who has seen chaos in a product group?
•   Who has seen chaos in ...
Define Success
•   What are you trying to accomplish
•   How do you know you're not
•   How will you know when you get the...
Chaos Isn’t All Bad
• Don’t eliminate it entirely
• Going offroad may seem chaotic
  – Innovation can spring from chaos
• ...
Systems to Diagnose
•   Requirements
•   Roadmaps and Strategy
•   Motivation and Urgency
•   Your Team
•   Coaching and M...
Optimize Your
          Requirements Process
• GIGO
• Programmers:
  –   who has received an exceptional set of rqmts?
  –...
How’s Your Roadmap?
•   Why do you need a roadmap?
•   In an Agile world, what’s it look like?
•   How do you create one?
...
Develop Motivation and
      Communicate Urgency
• How is developer motivation measured?
  – Remember it’s a marathon, not...
Assess Your Team
• Most problems are not people
   – but some are
   – Occasional problem employees
      • You must act
 ...
Get Coaching/Mentoring
 for Your Engineering Managers
• How did we become engineering managers?
• What qualities different...
Smart Project Planning
• Deliver demonstrable progress frequently
• Get the risky stuff done first
   – the UI should alwa...
Get Out of Technical Debt
• What’s “technical debt”?
   –   Shabby, rundown areas of code
   –   Untested code / lack of a...
Fix Interdepartmental Communication

•   Build trust relationships
•   Product Mgmt & Eng. Mgmt: collaboration
•   Establi...
Optimize Process
• Just about any process is better than no
  process. 
  – Mark Ginnebaugh
  – The exception: process for...
Systems to Diagnose
•   Requirements
•   Roadmaps and Strategy
•   Motivation and Urgency
•   Your Team
•   Coaching and M...
Other Systems to Diagnosis
• There are lots of other systems
   – Meetings
   – Quality
      • Development’s quality
    ...
The Bottom Line
•   Chaos is common
•   It’s really a series of challenges
•   It’s a series of improvement milestones
•  ...
Q&A


      Ron Lichty
RonLichty@sbcGlobal.net
Upcoming SlideShare
Loading in …5
×

Making Software Development Hum

2,661 views

Published on

At the August 2009 SofTech meeting in San Rafael, CA, Ron Lichty spoke about the steps needed to make a software development project successful.

•Write a Definition of Success
•Fix your Requirements process
•Pull together Roadmaps
•Develop Motivation and Communicate Urgency
•Plan your project for success
•Align your culture with customers, products and making money
•Grow your team leads and managers
•Fix interdepartmental communication
•Measure everything you can
•Optimize process
•Assess your team
•Focus on Quality: Bugs, UI, performance, security

Ron Lichty is an award-winning software engineering executive and published and patented technology leader.

Ron has been managing product development for over 20 years at Apple Computer, Berkeley Systems, Fujitsu, mFactory, Charles Schwab, Macromedia, Avenue A | Razorfish, Forensic Logic, Socialtext and Check Point. He's the co-founder and co-chair, Software Architecture and Modeling SIG, SDForum; and Best Practices SIG at eBig.

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,661
On SlideShare
0
From Embeds
0
Number of Embeds
812
Actions
Shares
0
Downloads
25
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Making Software Development Hum

  1. 1. Transforming Chaos to Clarity Making Your Software Development Hum Ron Lichty, Software Engineering Mgmt RonLichty@sbcGlobal.net SofTech August 26, 2009 Mark Ginnebaugh, President softech.org
  2. 2. Ron Lichty, Software Engineering Management SOFTWEST
  3. 3. Poll: Software Development in Disarray? • Who has seen chaos in a product group? • Who has seen chaos in your current group? • Who feels like your devt is running rough? • Suffering from organizational knots? • Anyone have a development organization that doesn't feel chaotic right now?!
  4. 4. Define Success • What are you trying to accomplish • How do you know you're not • How will you know when you get there • Assess what’s working • Assess the issues and the symptoms – Every organization is unique
  5. 5. Chaos Isn’t All Bad • Don’t eliminate it entirely • Going offroad may seem chaotic – Innovation can spring from chaos • Look for the pings and the misfires – Tune the engine, not the route – Make your product engine hum • whether you’re cruising the highway or off-road
  6. 6. Systems to Diagnose • Requirements • Roadmaps and Strategy • Motivation and Urgency • Your Team • Coaching and Mentoring Your Managers • Project Planning • Technical Debt • Communication • Development Process
  7. 7. Optimize Your Requirements Process • GIGO • Programmers: – who has received an exceptional set of rqmts? – what was the programming experience like? – how did it differ from the usual? – ever gotten to delivery only to find out there was another db field desired? • How good are your requirements? • Do your requirements change?
  8. 8. How’s Your Roadmap? • Why do you need a roadmap? • In an Agile world, what’s it look like? • How do you create one? • What do you do with it? • Why do you need a roadmap?
  9. 9. Develop Motivation and Communicate Urgency • How is developer motivation measured? – Remember it’s a marathon, not a sprint • What motivates programmers? – Are you communicating your reality? – Are you communicating their impact? – Are you enabling them to do their best work?
  10. 10. Assess Your Team • Most problems are not people – but some are – Occasional problem employees • You must act • Marty Brounstein, Handling the Problem Employee – Employees who need to be mentored into roles • People problems start with bad hiring – One bad hire can quickly destroy a well humming team
  11. 11. Get Coaching/Mentoring for Your Engineering Managers • How did we become engineering managers? • What qualities differentiate: – Engineers / Managers / Directors / VPs Eng? • How do you grow the qualities you need?
  12. 12. Smart Project Planning • Deliver demonstrable progress frequently • Get the risky stuff done first – the UI should always be high on the risk list • Deliver the highest customer value first • Be first / be ready to integrate / be early • Don’t over-engineer
  13. 13. Get Out of Technical Debt • What’s “technical debt”? – Shabby, rundown areas of code – Untested code / lack of automated tests – Undocumented code – Brittle design – Difficult to maintain, change, extend • Expensive to debug • Result: interest accrues • Solution? – Pay down debt: Revisit, refactor, write tests, do TDD
  14. 14. Fix Interdepartmental Communication • Build trust relationships • Product Mgmt & Eng. Mgmt: collaboration • Establish processes for your partners to fit • Communicate, communicate, communicate • Never succumb to “them vs. us” • Avoid the “blame game”
  15. 15. Optimize Process • Just about any process is better than no process.  – Mark Ginnebaugh – The exception: process for process’ sake • I’m a fan of – “Just-Enough Process” – Agile – baby steps
  16. 16. Systems to Diagnose • Requirements • Roadmaps and Strategy • Motivation and Urgency • Your Team • Coaching and Mentoring Your Managers • Project Planning • Technical Debt • Communication • Development Process
  17. 17. Other Systems to Diagnosis • There are lots of other systems – Meetings – Quality • Development’s quality • QA • TDD – UI – Risk – ...and a long list more
  18. 18. The Bottom Line • Chaos is common • It’s really a series of challenges • It’s a series of improvement milestones • Each of them can be transformed – Likely each new hum will reveal the next ping • Like peeling an onion or climbing a mountain
  19. 19. Q&A Ron Lichty RonLichty@sbcGlobal.net

×