Upload
prosper-rich
View
227
Download
1
Embed Size (px)
Citation preview
هاها مقايسه با ديگر روشمقايسه با ديگر روش
<--<-- AgileAgile --> --> <--<-- iterativeiterative --> <----> <-- waterfalwaterfal -->-->
<-<----------|--|--------------------------|---------|------------------------------------|-------|-------->--->
AdaptiveAdaptive Predictive Predictive
The Manifesto for Agile Software DevelopmentThe Manifesto for Agile Software Development
““We are uncovering better ways of developing software by doing it We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:and helping others do it. Through this work we have come to value:
•Individuals and interactionsIndividuals and interactions overover processes and processes and toolstools •Working softwareWorking software overover comprehensive comprehensive documentationdocumentation •Customer collaborationCustomer collaboration overover contract contract negotiationnegotiation •Responding to changeResponding to change overover following a planfollowing a plan
That is, while there is value in the items on the right, we value the That is, while there is value in the items on the right, we value the items on the left more.”items on the left more.”
BullpenBullpen
Programmers
Product Managers
+Business Analysts
+Actual Customers
Testers
Interaction Designers
Technical Writers
Managers
Agile MethodologiesAgile Methodologies
Agile methodsAgile methods
Some of well-known agile software development methods includeSome of well-known agile software development methods includeExtreme Programming (XP) Extreme Programming (XP) Scrum Scrum Adaptive Software Development (ASD) Adaptive Software Development (ASD) Crystal Clear and Other Crystal Methodologies Crystal Clear and Other Crystal Methodologies DSDMDSDMFeature Driven DevelopmentFeature Driven DevelopmentLean software developmentLean software development
Other approaches includeOther approaches includeAgile documentation Agile documentation Agile ICONIX Agile ICONIX Microsoft Solutions Framework (MSF) Microsoft Solutions Framework (MSF) Agile DataAgile DataAgile ModelingAgile Modeling
Extreme Programming (XP)Extreme Programming (XP)
unit test continuous integration
acceptance testing
pair programming
Release
user stories values acceptance test criteria iteration plan
simple design CRC cards
spike solutions prototypes
refactoring
software incrementproject velocity computed
Adaptive Software Development (ADS)Adaptive Software Development (ADS)
adaptive cycle planning uses mission statement project constraints basic requirements
time-boxed release plan
Requirements gathering J AD mini-specs
components implemented/ tested focus groups for feedback formal technical reviews postmortems
software incrementadjustments for subsequent cycles
Release
Dynamic Systems Development MethodDynamic Systems Development Method
ScrumScrum
ScrumScrum
CrystalCrystal
ManeuverabilityManeuverability
Face-to-face communicationFace-to-face communication
Reflection workshopsReflection workshops
Feature Driven DevelopmentFeature Driven Development
Feature Driven DevelopmentFeature Driven Development
FeatureFeature<action> the <result> <by | for | of | to> a(n) <object><action> the <result> <by | for | of | to> a(n) <object>
Add the product to a shopping cart.Add the product to a shopping cart.Display the technical-specifications of a product.Display the technical-specifications of a product.Store the shopping-information for a customer.Store the shopping-information for a customer.
<action> <-ing> a(n) <object><action> <-ing> a(n) <object>Making a product sale.Making a product sale.
روش بوهم-ترنر )مبتني بر ريسک(روش بوهم-ترنر )مبتني بر ريسک(
با مطالعه در ساختارها و روابط حاکم بر ريسک.با مطالعه در ساختارها و روابط حاکم بر ريسک.
((agile,plan-drivenagile,plan-drivenپيشنهاد: تحليل ريسک براي انتخاب )پيشنهاد: تحليل ريسک براي انتخاب )
Agile home groundAgile home groundPlan-driven home groundPlan-driven home ground
Low criticalityLow criticality
Senior developersSenior developers
High requirements ChangeHigh requirements Change
Small number of developersSmall number of developers
Culture that thrives on chaosCulture that thrives on chaos
High CriticalityHigh Criticality
Junior developersJunior developers
Low reqirements changeLow reqirements change
Large number of developersLarge number of developers
Culture that demands orderCulture that demands order
منابع و مأخذمنابع و مأخذWikipedia definition of “Agile Software Development”, (Wikipedia definition of “Agile Software Development”, (http://en.wikipedia.org/wiki/Agile_software_developmenthttp://en.wikipedia.org/wiki/Agile_software_development ) )
Bwck, K. et al., “Manifesto of Agile Software Development”, 2001 ,Bwck, K. et al., “Manifesto of Agile Software Development”, 2001 , (http://www.agilemanifesto.org )(http://www.agilemanifesto.org )
Agile Alliance Home Page Agile Alliance Home Page (http://www.agilealliance.com/home/ )(http://www.agilealliance.com/home/ )
Pressman, R. S., “Software Engineering: A Practitioner’s Approach”, Pressman, R. S., “Software Engineering: A Practitioner’s Approach”, 6/e, 2005, McGraw-Hill. 6/e, 2005, McGraw-Hill. (http://www.mhhe.com/ )(http://www.mhhe.com/ )
Booch, G., Martin, R. C., Newkirk, J., “Object Oriented Analysis and Booch, G., Martin, R. C., Newkirk, J., “Object Oriented Analysis and Design with Applications”, 2d ed., 1998, Addison-Wesley.Design with Applications”, 2d ed., 1998, Addison-Wesley.
منابع و مأخذمنابع و مأخذDubinsky, Y. and Hazzan , O., “Roles in Agile Software Development Dubinsky, Y. and Hazzan , O., “Roles in Agile Software Development Teams”, Technion, Israel, 2004.Teams”, Technion, Israel, 2004.
Highsmith, J., “What Is Agile Software Development?” ,CMM, 2002.Highsmith, J., “What Is Agile Software Development?” ,CMM, 2002.
Szalvay, V., “An Introduction to Agile Software Development”, Szalvay, V., “An Introduction to Agile Software Development”, DANUBE, 2004 DANUBE, 2004 (http://www.danube.com )(http://www.danube.com )
Cohen, D. and et al., “Agile Software Development (A DACS State-Cohen, D. and et al., “Agile Software Development (A DACS State-of-the-Art Report)”, 2004, Draft Version, DACS.of-the-Art Report)”, 2004, Draft Version, DACS.
Kalermo, J. and Rissanen, J., “Agile Software Development in Theory Kalermo, J. and Rissanen, J., “Agile Software Development in Theory and Practice”, 2002 , SBP.and Practice”, 2002 , SBP.
Agile Methods site’sAgile Methods site’s
Scrum Scrum (http://www.controlchaos.com/)(http://www.controlchaos.com/)ASDASD(http://www.adaptivesd.com/)(http://www.adaptivesd.com/)DSDM DSDM (http://na.dsdm.org/)(http://na.dsdm.org/)Crystal Crystal (http://alistair.cockburn.us/crystal/wiki)(http://alistair.cockburn.us/crystal/wiki)Crystal Crystal (http://crystalmethodologies.org)(http://crystalmethodologies.org)FDD FDD (http://www.featuredrivendevelopment.com/)(http://www.featuredrivendevelopment.com/)Agile ModelingAgile Modeling
((http://www.agilemodeling.comhttp://www.agilemodeling.com))