Managing Software Projects CIS 9002 Kannan Mohan Department


























- Slides: 26
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?
How do you measure project success?
Project Risks (Tiwana & Keil, 2004) (Tiwana and Keil, 2004)
Comparing Software Development Methodologies Time XP - Extreme Programming (Beck, 1999)
Cost of Change Cost Analysis Design Coding Development Phase Maintenance
How do you reduce cost of change?
Process Maturity • SEI (Software Engineering Institute) CMMI (Capability Maturity Model Integration) • Maturity levels Level Maturity 1 Initial 2 Managed 3 Defined 4 Quantitatively Managed 5 Optimizing
Planning Spectrum (Boehm, 2002)
Agile Methods • Lightweight • What really matters? • Minimum upfront design • Incremental • Highest business value first
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
Agile Methods • Extreme Programming • Scrum • Feature driven development • ….
Extreme Programming (XP) • Communication • Simplicity • Feedback • Courage
XP Practices • Planning Game • Pair Programming • Small Releases • Collective Ownership • Metaphor • Simple Design • Test Driven Development • Refactoring • Continuous Integration • Sustainable Pace • On-site Customer • Open Workspace • Just rules
Offshoring and Outsourcing In-house Outsourced Onshore Traditional model Subcontractor/ third party in the same locale Offshore Foreign branch of Subcontractor/third the same party in a foreign company (captive locale center)
Offshoring Drivers Challenge s
Japanese Model of Offshoring • Tap the stone bridge before crossing • Expertise vs. cost • Modularize • Control by design • Bridge software engineers
Proven Practices?
Evolution of Offshore Outsourcing (Rottman and Lacity, 2006)
Boundary Spanning • Boundary spanner roles • Ambassador • Scout • Gatekeeper • Knowledge broker • Task coordinator • Boundary objects • Prototypes, architecture and design documents, specifications, code
What happens when bring agile and distributed together? Globally Distributed Development Agile Development
Organizational Ambidexterity • Pursuing conflicting demands (or handling tradeoff situations) • How do you balance conflicting demands? • Exploitation vs. exploration • Agile vs. distributed
Project Control • Formal Control • Informal Control • Outcome • Clan • Behavior • Self
Cultural Differences • Organizational culture • Centralized vs. decentralized decision making • Organic vs. mechanistic • National culture • Power distance • Long term orientation • Individualism/collectivi sm • Uncertainty avoidance • • Guanxi Jugaad Mianzi (Face) Doctrine of Mean
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)
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?