Agile Methods

advertisement
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?
Download