CIS 9002 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College • What are agile methods? • How are they different from traditional methods? • How are agile methods adapted for various projects? (Tiwana & Keil, 2004) (Tiwana and Keil, 2004) Time XP - Extreme Programming (Beck, 1999) Cost Analysis Design Coding Development Phase Maintenance • SEI (Software Engineering Institute) CMMI (Capability Maturity Model Integration) • Maturity levels Level Maturity 1 Initial 2 Managed 3 Defined 4 Quantitatively Managed 5 Optimizing (Boehm, 2002) • Lightweight • What really matters? • Minimum upfront design • Incremental • Highest business value first • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan • Extreme Programming • Scrum • Feature driven development • …. • Communication • Simplicity • Feedback • Courage • Planning Game • Pair Programming • Small Releases • Collective Ownership • Metaphor • Continuous Integration • Simple Design • Sustainable Pace • Test Driven Development • On-site Customer • Refactoring • Open Workspace • Just rules In-house Outsourced Onshore Traditional model Subcontractor/ third party in the same locale Offshore Foreign branch of the same company (captive center) Subcontractor/third party in a foreign locale Drivers Challenges • Tap the stone bridge before crossing • Expertise vs. cost • Modularize • Control by design • Bridge software engineers (Rottman and Lacity, 2006) • Boundary spanner roles • Ambassador • Scout • Gatekeeper • Knowledge broker • Task coordinator • Boundary objects • Prototypes, architecture and design documents, specifications, code Globally Distributed Development Agile Development • Pursuing conflicting demands (or handling tradeoff situations) • How do you balance conflicting demands? • Exploitation vs. exploration • Agile vs. distributed • Formal Control • Informal Control • Outcome • Clan • Behavior • Self • Organizational culture • Centralized vs. decentralized decision making • Organic vs. mechanistic • National culture • • • • Power distance Long term orientation Individualism/collectivism Uncertainty avoidance • • • • Guanxi Jugaad Mianzi (Face) Doctrine of Mean • 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) • 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?