1 / 26

Managing Software Projects

Managing Software Projects. CIS 9002 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College. Learning Objectives. What are agile methods? How are they different from traditional methods? How are agile methods adapted for various projects?.

olaf
Download Presentation

Managing Software Projects

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Managing Software Projects CIS 9002 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College

  2. Learning Objectives • What are agile methods? • How are they different from traditional methods? • How are agile methods adapted for various projects?

  3. How do you measure project success?

  4. Project Risks (Tiwana & Keil, 2004) (Tiwana and Keil, 2004)

  5. Comparing Software Development Methodologies Time XP - Extreme Programming (Beck, 1999)

  6. Cost of Change Cost Analysis Design Coding Maintenance Development Phase

  7. How do you reduce cost of change?

  8. Process Maturity • SEI (Software Engineering Institute) CMMI (Capability Maturity Model Integration) • Maturity levels

  9. Planning Spectrum (Boehm, 2002)

  10. Agile Methods • Lightweight • What really matters? • Minimum upfront design • Incremental • Highest business value first

  11. Agile Manifesto • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan

  12. Agile Methods • Extreme Programming • Scrum • Feature driven development • ….

  13. Extreme Programming (XP) • Communication • Simplicity • Feedback • Courage

  14. XP Practices • Planning Game • Small Releases • Metaphor • Simple Design • Test Driven Development • Refactoring • Pair Programming • Collective Ownership • Continuous Integration • Sustainable Pace • On-site Customer • Open Workspace • Just rules

  15. Offshoring and Outsourcing

  16. Offshoring

  17. Japanese Model of Offshoring • Tap the stone bridge before crossing • Expertise vs. cost • Modularize • Control by design • Bridge software engineers

  18. Proven Practices?

  19. Evolution of Offshore Outsourcing (Rottman and Lacity, 2006)

  20. Boundary Spanning • Boundary spanner roles • Ambassador • Scout • Gatekeeper • Knowledge broker • Task coordinator • Boundary objects • Prototypes, architecture and design documents, specifications, code

  21. What happens when bring agile and distributed together?

  22. Organizational Ambidexterity • Pursuing conflicting demands (or handling tradeoff situations) • How do you balance conflicting demands? • Exploitation vs. exploration • Agile vs. distributed

  23. Project Control • Formal Control • Outcome • Behavior • Informal Control • Clan • Self

  24. Cultural Differences • Organizational culture • Centralized vs. decentralized decision making • Organic vs. mechanistic • National culture

  25. Reporting Bad News • Who do you rely on to get project status information? • Trust but verify • When does misreporting happen? • Consider individual traits – risk propensity, work climate, cultural differences • Auditing to seek accurate project status? • Dysfunctional cycle of distrust, trust in supervisor • Connection between project sponsor and propensity to report • Reducing power distance in reporting relationships • Deaf effect (Keil et al, 2014)

  26. Summary • How are agile methods different from traditional ones? • How do you bring agile methods into globally distributed projects? • How do cultural values shape the use of agile methods?

More Related