View Full Version : توسعه نرم افزار به صورت چابک (Agile)
sajad_pro
یک شنبه 28 فروردین 1390, 22:21 عصر
توضیح مختصری درباره توسعه نرم افزار به صورت Agile؟
javaphantom
شنبه 03 اردیبهشت 1390, 16:57 عصر
Agile یک تفکر یا یک فلسفه هست. http://agilemanifesto.org/
کلا شامل 4 اصل هست
ارتباط اشخاص بایکدیگر بالا تر از ابزار یا هر فریاند می باشد.
کارکرد و کیفیت محصول تولید شده بالاتر از یک مشت document بی مصرف و به دردنخور هست.
اینکه مشتری هم جزوی از تیم develop باشه بالاتر از این هست که یک سری آدم که همه مدیر هستن مخصوصا تو ایران زیاد می بینی، دور هم جمع بشن و الکی جلسه بزارن و plan بدن.
اینکه به خواسته مشتری تن بدی و هر تغییری که خواست براش انجام بدی تا اینکه بهانه بیاری که بابا ما قبلا PLAN کردیم و همینی که هست.
لازم به ذکر که پیاده سازی این اصول در هر جا و برای هر صنف حتی بغالی سر کوچه هم قابل پیاده سازی هست و هر ابزاری که بتونه این چهار اصل رو کمک کنه که راحتر پیاده سازی بشه می تونه باشه.
پس این نوع تفکر فقط مربوط به کامپیوتر و نرم افزار نمی شه همنطور که گفتم می تونه هر محصولی رو با این تفکر مدیریت کرد.
مهران مدیری یک مدیر agile در کار فیلم سازی هست به نظر من. با مشتری هاش خوب ارتباط برقرار می کنه. از هر ابزاری استفاده می کنه مثلا فیس بوک نه صدا و سیما. بجای اینکه که پروسه طولانی برای تولید در نظر بگیره خیلی سریع از مشتریهاش feedback می گیره و سریع تغییر می ده و خواسته مشتری رو تا اونجا که ممکنه پیاده سازی می کنه. پس خوبم پول در می یاره.
همانطور که گفتم agile یک فلسفه هست و یا همون تفکر. در دنیای نرم افزار هم این فلسفه و تفکر جای خودشو باز کرده و قدرتشو نشون داده. بطوریکه تفکر خشک و بی منطق RUP رو له کرده و شما کمتر جایی از دنیای مدرن که حرفی در IT داره می بینی که با RUP کار کنه.
اما برای اینکه این تفکر در بصورت اجرایی در دنیای نرم افزار در بیاد و بقولی این تفکر رو پیاده سازی کنه و بصورت یک متدولوژی در بیاد در حاله حاضر دو نوع پیاده سازی این تفکر هست که ممکنه خیلی ها به گوششون آشنا باشه یکی XP و دیگری Scrum که خیلی از شرکتها از تلفیق این دو متدولوژی پروژه اجرا می کنند.
از نظر من RUP یعنی مشاهده چگونگی fail شدن پروژه بصورت مکتوب و document شده. ایران نمونه بارز و زنده حرف من هست. تازه مطمعن هستم که هیچ شرکتی درست RUP رو رعایت نمی کنه یعنی بلد نیست که بخواد رعایت کنه.
بقول Martin Fowler : فرق یک تروریست و متدولوژیست اینکه که می شه با یک تروریست مذاکر کرد ولی با یک متدولوژیست نمی شه.
من نمی خوام وقت بزارم و RUP رو بکوبم. نیازی به این کار نیست.
اما بیشتر از agile بدونیم.
در این نگرش همانطور که در اصل دوم گفته شده کیفیت محصول و کارکرد محصول خیلی مهمتر و بالاتر از یک مشت کاغذ هست که تو چی چی point میکروب ساب می زارن. مشتری پول داده یک چیزی می خواد که کار کنه. کاغذ که نشد محصول. همه می یان یک چند وقتی یک پولی می گیرن از مشتری بعد می گن فاز Inception هست و یک مشت تحلیل و یک مشت کاغذ به انواع زبون می زارن جلوی مشتری می گن ما 6 ماه برات چرت و پرت جمع کردیم حال کن. مشتری هم که وقت عزیز رو داده رفته پولم که پریده وقتی کاغذم که می بینه دیگه داغون می شه. اون پیمان کار می ره پیمان کار بعدی می یاد می گه خب دایی چه کرده پیمان کار قبلی می گن کاغذ سیاه کردن بعد پیمان کار جدیدم می گه مضخرف تولید کردن شما یک پولی به من بده من خودم بهترشو برات تولید می کنم. و اینطور می شه که ایران می شه بزرگترین تولید کننده bug نرم افزار و اولین کشوری که در قرن 21 نرم افزار هلو رو وارد بازار می کنه. اونم با کلی باگ. قفل شکنو رمز چرت و پرتهای دیگه.
خوب این مشکل فقط توی ایران نیست در بلاد کفر هم چنین مشکلاتی بوده. هی iterate بزن هی document تولید کن هی msprojcet با درست کن یک مشت آدم هم درست کن که از بالا و پایین بهشون خط آویزون هست. بعد می گی من Usecase درست کردم. بعدم پروژه رو fail کن. و از طریق اون مدارک شاهد چگونگی fail شدن پروژه ت باش. خوب تو ایران اشکالی نداره و تو بلاد کفر این داستان شوخی نبود. چون اونجا آدمها وقتشون پولشون عمرشون ارزش داره. یک سری از شرکتها که از RUP استفاده می کردن دیدن که بایا یک سری شرکتهای دیگه هستند که خیلی کوچیکن زیادم ادعا ندارن ولی هر چی پروژه می گیرن از پس پروژه که بر می یان هیچ تازه مشتری هم خیلی راضی هست بطوریکه بازم می ره باهاشون قرارداد می بنده و یا اینکه مشتری دیگه ای بهشون معرفی می کنه.
خوب حس کنجکاوی مگه می زاره آدم فضولی نکنه. اینا که خوب دقت کردن و وارد بطن این شرکتها شدن اولین چیزی که دیدن تعامل بین کارمندهای این شرکتها بود. دیدن بابا توی شرکت اینها مثل ایران همه مدیرن 4 نفر developer هستند. همه یک role دارن ولی توی این شرکتها اینطوری نیست همه developer هستند. همه مدیر هستند. همه طراح هستند خلاصه همه همه کاره هستن بقولی همه بازی هستند. رابطه بین افراد بصورتی هست که همه عاشقانه بهم عشق می ورزن. به راحتی مشکلاتشون رو مطرح می کنند. کسی نمی ترسه که اگر چیزی یا کاری بلد نبود بقیه مسخرش کنن یا اینکه report بدن به مدیرش. زیراب بزنند. همه به یک هدف فکر می کنند اونم پول دار شدن. نفع کار تیمی نفع خودشون می بینن. تیم باهم دیگر خیلی درگیر هستند ولی چالشی بوجود نمی یاد. همه بهم کمک می کنن که یاد بگیرن.
خوب این کار شاید در نگاه اول خیلی ساده باشه. ولی نیست. نیست که نیست. امتحان کنید. مثلا فردا تو شرکتون هی از همکارتون سوال کنید. گیر بدین که فلان چیز که تا به حال داشته روش کار می کرده چی هست چه جوریه و و و. بهتون قول می دم بعد از یک مدت کوتاهی یکسری داستان ناراحت براتون پیش می یاد.
تو شرکتی که کار می کنید دلم می خواد با جرات برید بگید که من امروز نمی تونم کار کنم. یا اینکه بلد نیستم یا اینکه کاری که به من سپردید خوشم نمی یاد. اون موقع هست که بهت می گم که همین گام اول یعنی قانون اول یا همون اصل اول پیاده سازیش چقدر سخته. این اصل اول هست که در موردش صحبت کردم. چرا که در این فلسفه بر خلافه RUP به نیروی انسانی یک دید انسانی داره نه یک مشت کارگر و عمله بنا که باید صبح بیان تا شب بشینن فقط یک مشت bug تولید کنند و برن. اگر مایل بودین باقی اصول رو هم می گم.
Asad.Safari
یک شنبه 04 اردیبهشت 1390, 16:57 عصر
ممنون javaphantom
معلومه دل پری نسبتا به ارزش Individuals and interactions over processes and tools داری (:
Asad.Safari
یک شنبه 04 اردیبهشت 1390, 16:59 عصر
توضیح مختصری درباره توسعه نرم افزار به صورت Agile؟
یک توضیحاتی در این آدرس داده شده است :
http://blog.irscrum.com/?p=2265
موفق باشید
m.hamidreza
دوشنبه 19 اردیبهشت 1390, 21:16 عصر
Agile یک تفکر یا یک فلسفه هست. http://agilemanifesto.org/
همانطور که گفتم agile یک فلسفه هست و یا همون تفکر. در دنیای نرم افزار هم این فلسفه و تفکر جای خودشو باز کرده و قدرتشو نشون داده. بطوریکه تفکر خشک و بی منطق RUP رو له کرده و شما کمتر جایی از دنیای مدرن که حرفی در IT داره می بینی که با RUP کار کنه.
از نظر من RUP یعنی مشاهده چگونگی fail شدن پروژه بصورت مکتوب و document شده. ایران نمونه بارز و زنده حرف من هست. تازه مطمعن هستم که هیچ شرکتی درست RUP رو رعایت نمی کنه یعنی بلد نیست که بخواد رعایت کنه.
این حرفا چیه برادر من؟! من نمیفهمم چرا اینقدر بعضی از دوستان مخالف RUP هستن! من به شما یه هواپیما بدم وقتی بلد نیستی پرواز کنی و علمشو نداری سقوط میکنی ایراد از هواپیماست؟!!
بیا من حداقل 10 تا شرکت نشونت بدم ببینی RUP بلدن یا نه...
در یک انجمن تخصصی نظرات و پست ها باید اساس علمی و مستند داشته باشن ما اینجا بحث سیاسی نمکنیم که کسی نظز غیر فنی و شخصی بده.
موفق باشید.
javaphantom
دوشنبه 19 اردیبهشت 1390, 23:47 عصر
این حرفا چیه برادر من؟! من نمیفهمم چرا اینقدر بعضی از دوستان مخالف RUP هستن! من به شما یه هواپیما بدم وقتی بلد نیستی پرواز کنی و علمشو نداری سقوط میکنی ایراد از هواپیماست؟!!
بیا من حداقل 10 تا شرکت نشونت بدم ببینی RUP بلدن یا نه...
در یک انجمن تخصصی نظرات و پست ها باید اساس علمی و مستند داشته باشن ما اینجا بحث سیاسی نمکنیم که کسی نظز غیر فنی و شخصی بده.
موفق باشید.
مخالف RUP هستم چون developer هستم برنامه نویس نیستم. مخالف هستم برای اینکه عقیده دارم کسی که develop می کنه کسی هست خط به خط که داره کد می زنه دار خلق می کنه. بیل نمی زنه. مخالف هستم برای اینکه کسی که develop می کنه کسی هست که در آخر تمام اون اراجیفی که رو white board یا با اون نرم افزار عقب مونده rational rose یک مشت آدم که بشون چندتا فلش ربط داده شده رو باید عملیاتی و یا به عبارتی پیاده سازی کنه.
مخالف هستم برای اینکه این مستنداتی که در RUP درست می شه مفت نمی ارزه. نه بدرد مشتری می خوره نه بدرد developer.
مخالف هستم برای اینکه در RUP چیزی از کیفیت محصول وجود نداره یعنی به عبارتی اصلا براش مهم نیست. فقط فاز به فاز به fail کردن نزدیک کنه. این خیلی راحت هست که آدم از دانشگاه بیاد بیرون بعد بگه من مهندس هستم یا فوق مهندس هستم بعد بشینه چهارتا جدول نرمال کنه بعد چهارتا usecase بکشه که اگر بلد باشه تازه و بعد در نهایت به فارسی یک مشت مستندسازی کنه بعد مثل چی بگم ..... بیاد چهارتا دانشجو کامپیوتر در بهترین حالت و بدترین حالت بره چندتا آدم که رفتن دوره دیدن استخدام بکنه بگه حالا کد بزنید.
نتیجشم می شه همین جا که داری می بینی.
گفتی مدرک. به مسئله مهمی اشاره کردی. من که چیزی بلد نیستم بقول شما. شما که استاد هستید و با مدرک و دلیل دارید صحبت می کنید خواهشا مدرکی بیارید از اینکه در ایران با هر متدولوژی یک محصول درست شده که مثلا در قیاس با رقیبش در فلا کشور عقب مونده حالا نه هند نه آمریکا یا اورپا مثلا ترکیه تونسته رقابت کنه و به قیمت چند ملیون دلار هم نه چند صد هزار دلار فروخته شده.
ایران قادر به پاسخگویی نیازهای داخلیشم نیست. :قهقهه: اما من عاشق این هستم که از شما مدرک ببینم. شاید بگید چون تو ایران نیست دلیل بر این نمی شه که RUP بد باشه. در جواب می خوام ازتون خواهش کنم که یک چرخی در دنیای کفر فیلترنتی ایران بزنید و ببنید که سالیانه در ایالات متحد کفر چه درصد پروژها نرم افزاری با شکست و چند درصد با موفقیت انجام می شه.
سخن آخر: شما و باقی خواندگان رو به لینکی که قبلا هم گذاشته بودم دوباره مرجوع می کنم http://agilemanifesto.org
پایین اون چهار اصل اسامی کسانی رو می بینی که دنیای نرم افزار رو تکون دادن و دارن می دن. کسانی که هم محصول عملیاتی و کاربردی دارن و هم نویسنده کتابهای گوناگون هستند.
می تونید به سایتشون برین و تا دلتون می خواد مدرک و دلیل پیدا کنید.
اصل دوم :
Working software over comprehensive documentation
کارکرد و عملیاتی بودن محصول ارزشش هم برای تیم تولید و هم برای مشتری خیلی بیشتر و مهم تر هست تا یک مشت کاغذ یا فایل با شکلکهای مسخره.
اگر developer شدی یک روز اون موقع بیشتر درک می کنی من چی دارم می گم.
اگر دوست داشته باشی برات توضیح می دم که وجود document بسیار ضروری هست اما باید دید best practice در این مورد مثل در XP چه جوری هست.
این قسمت در مورد agile و agile بودن هست و من دلم نمی خواد در مورد موضوعات دیگه مثل RUP یا هر چیزی شبیه به اون حرف بزنم. انقدر کتاب به زبان فارسی و سایت مختلف هست که در مورد این فریم ورک مدیریتی نوشته و گفته. مخصوصا توی دانشگاه های داغون ایران.
m.hamidreza
سه شنبه 20 اردیبهشت 1390, 20:33 عصر
:گیج: شما خیلی دلت پره برادر من!
این مسائلی که شما گفتی در جای خودش متین هست ولی اینا ربطی به RUP نداره! به این دلیل که RUP این چیزی که شما دیدی نیست...
متاسفانه خیلی از دوستان به دلیل عدم آگاهی و با دانش 10 سال پیش میان و RUP رو با این شیوه ای که شما توضیح دادی خراب میکنن. برعکس اینایی که شما گفتی رو هم من دیدم و تو همین ایران اصلا خودم تجربه کردم و الان دارم کار میکنم. حالا یه بنده خدایی هم بعدا میاد این تاپیک رو میخونه میگه وای RUP چقدر مزخرفه!
مواردی که شما گفتی برمیگرده به عدم ارائه صحیح RUP در سازمان شما که مقصر اون مدیران شما هستن نه ذات RUP.
در مورد Fail شدن پروژه هم باز این ربطی به RUP نداره قضیه همون هواپیماست وقتی شما توان استفاده از RUP رو نداری خوب باید Fail بشی. وقتی من اسکرام بلد نیستم چرا باید یه پروژه 50 میلیونی رو با اسکرام استارت کنم به این امید که در حین کار خدا بزرگه بعد از 4 تا sprint پروژه Fail شه بعد بگم اه چقدر اسکرام مزخرفه!!!
شما حرف منو قبول نداری دیگه حرف Jeff Sutherland رو که قبول داری این مطلب (http://scrum.jeffsutherland.com/2002/10/how-to-fail-with-rational-unified.html) رو مطالعه بفرمایید و از این به بعد کمی بیشتر با RUP مهربون باشید.
موفق باشید.
javaphantom
چهارشنبه 21 اردیبهشت 1390, 00:12 صبح
:گیج: شما خیلی دلت پره برادر من!
این مسائلی که شما گفتی در جای خودش متین هست ولی اینا ربطی به RUP نداره! به این دلیل که RUP این چیزی که شما دیدی نیست...
متاسفانه خیلی از دوستان به دلیل عدم آگاهی و با دانش 10 سال پیش میان و RUP رو با این شیوه ای که شما توضیح دادی خراب میکنن. برعکس اینایی که شما گفتی رو هم من دیدم و تو همین ایران اصلا خودم تجربه کردم و الان دارم کار میکنم. حالا یه بنده خدایی هم بعدا میاد این تاپیک رو میخونه میگه وای RUP چقدر مزخرفه!
مواردی که شما گفتی برمیگرده به عدم ارائه صحیح RUP در سازمان شما که مقصر اون مدیران شما هستن نه ذات RUP.
در مورد Fail شدن پروژه هم باز این ربطی به RUP نداره قضیه همون هواپیماست وقتی شما توان استفاده از RUP رو نداری خوب باید Fail بشی. وقتی من اسکرام بلد نیستم چرا باید یه پروژه 50 میلیونی رو با اسکرام استارت کنم به این امید که در حین کار خدا بزرگه بعد از 4 تا sprint پروژه Fail شه بعد بگم اه چقدر اسکرام مزخرفه!!!
شما حرف منو قبول نداری دیگه حرف Jeff Sutherland رو که قبول داری این مطلب (http://scrum.jeffsutherland.com/2002/10/how-to-fail-with-rational-unified.html) رو مطالعه بفرمایید و از این به بعد کمی بیشتر با RUP مهربون باشید.
موفق باشید.
شما درست می گید و من هم در پست قبلم بهش اشاره کردم، استفاده نادرست و غلط از هر چیز دلیل بر بد بودن اون نیست.
يادآوری :
agile یک متدولوژی نیست بلکه یک تفکر یک فلسفه هست در صورتی که RUP یک متدولوژی یا یک process framework هست.
با طرز تفکری مثل agile می شه در هر زمینه شغلی حتی یک بغالی هم می تونه موفق بشه. انیکه مشتری مدار باشه مثلا. اینکه به کیفیت محصولاتش فکر کنه. اینکه در صورت تغییر و پس دادن جنس به مشتری کمک کنه. و و وو .
اما RUP کاملا متفاوت هست. یک محصول هست. داستانش اینه که یک سری فاز داره و در هر فاز یک سری مراتب باید رعایت بشه.
نمی دونم گفتم یا نگفتم این جمله رو که با تروریست می شه مذاکره کرد ولی با متدولوژیست نمی شه. فکر کنم که مارتین فاولر گفته یادم نمی یاد که تو کدوم کتاب خوندم. غرض از گفتن این گفته این بود که بگم وقتی RUP می گه مثلا اول A بعد B پس باید اول A باشه بعد B تا به خروجی مطلوب برسی تازه اگر برسی.
به نظر من دنیای امروز متوجه شده که در امر تولید نرم افزار هم باید از همون فلسفه AGILE استفاده کنه. چرا یک بغالی یا یک فروشگاه بتونه ولی یک تیم تحصیل کرده نتونه. دنیای نرم افزار متوجه شده که ارزش بیشتر یا بهتر بگم الویت بعضی از مسائل که در متدولوژی RUP بصورت برعکس بهش نگاه می کرده مثل تولید اسناد یا اصلا بهش نگاه نمی کرده مثل نیروی انسانی، مشتری و ابزار، باعث می شه که محصول با کیفیت بهتر و مشتری خواهی تولید بشه.
من برای اینکه بیشتر وارد جزییات بشم مجبورم برم سراغ XP که یک نمونه پیاده سازی شده از agile در دنیای کامپیوتر هست.
از یک طرف می شه گفت که XP یک متدولوژی نیست چرا ؟ چون بسیاری از developer ها با طرز تفکری متعصبانه نسبت به RUP و روند فازی که داره نخواستن قبولش کنن. یک متدولوژی هست چون مانند RUP براساس فرایند تکرار یک محصول رو تولید می کنه بطوریکه به جرات می شه گفت یک متدولوژی سبکی هست. براساس بازخوردی که از مشتری می گیره رو به تولید محصول دلخواه مشتری می ره.
بزرگترین خواصیتی که این متدولوژی نسبت به RUP داره بحث Test Driven بودن اون هست که در RUP همانطور که می دونیم Use case driven هست. یعنی همانطور که اگر use case رو از RUP بگیریم دیگه معنایی نداره، اگر Test رو از xp بگیریم دیگه xp بی معنا می شه.
من نمی خوام دیگه بیشتر وارد جزیتات بشم. ولی این رو فهمیدم که خیلی از داستانهایی که در RUP وجود داره حالا چه درست انجام می شه یا نادرست. دنیای امروز سافت ویر دیگه بهش احتیاج نداره.
من فقط نمی دونم چرا اصلا بحث به اینجا کشیده شد. واقعیتش من هیچ تعصبی نسبت به RUP یا هر متدولوژی دیگه ای ندارم. مخصوصا تو ایران که اصلا این چیزا براش مهم نیست. اما روند تفکر AGILE برای بخشهای مدیریتی چیزی هست که جدید هست و جواب داده و مطمعن هستم که این موج در ایران روزی جا می اوفته هرچند که مثل همه چیز دیر و به بدترین حالتش.
اگر فکر می کنی بازم به نکته مبهم یا اشتباهی دارم می گم بهم بگو یا اینکه اگر مایل هستی بیشتر بحث رو باز کنیم.
m.hamidreza
چهارشنبه 21 اردیبهشت 1390, 18:23 عصر
متاسفانه خیلی از حرف های شما رو قبول ندارم.
هیچ تعصبی هم نه رو RUP دارم نه رو Agile. راجع به هر دوی اونها هم مطالعه داشتم. کلا به نظر من قیاس این دو کار درستی نیست.
من تاکیدم روی داشتن دانش فنی هر روش یا سبکی هست. اگر تیمی نسبت به کاری که انجام میده عالم باشه چه با Agile Umbrella چه با RUP موفق میشه فرقی نمیکنه.
من بیشتر هدفم از شرکت در این تاپیک بیان این مساله بود که RUP این چیزی که شما توضیح دادی نیست و نباید هم از هر چیز جدید و تازه ای بت ساخت. خیلی از دوستان فکر میکنن Agile معجزه میکنه این تفکر خیلی اشتباهه و امیدوارم با این تفکر همونطور که RUP رو به شیوه ی دیگه ای خراب کردن Agile رو هم خراب نکنن.
موفق باشید.
javaphantom
پنج شنبه 22 اردیبهشت 1390, 08:40 صبح
متاسفانه خیلی از حرف های شما رو قبول ندارم.
هیچ تعصبی هم نه رو RUP دارم نه رو Agile. راجع به هر دوی اونها هم مطالعه داشتم. کلا به نظر من قیاس این دو کار درستی نیست.
من تاکیدم روی داشتن دانش فنی هر روش یا سبکی هست. اگر تیمی نسبت به کاری که انجام میده عالم باشه چه با Agile Umbrella چه با RUP موفق میشه فرقی نمیکنه.
من بیشتر هدفم از شرکت در این تاپیک بیان این مساله بود که RUP این چیزی که شما توضیح دادی نیست و نباید هم از هر چیز جدید و تازه ای بت ساخت. خیلی از دوستان فکر میکنن Agile معجزه میکنه این تفکر خیلی اشتباهه و امیدوارم با این تفکر همونطور که RUP رو به شیوه ی دیگه ای خراب کردن Agile رو هم خراب نکنن.
موفق باشید.
استاد محترم همانطور که در پست قبلی هم به شما و باقی دوستان گفتم agile یک تفکر هست نه یک methodology صد البته که مقایسه این دو باهم اشتباه هست. در مورد RUP هم من نظرات شخصی خودم رو بر اساس تجربه ای که داشتم گفتم.
در مورد بت هم چیزی ندارم بگم جز جمله معروف ادب از که آموختی از بی ادبان هر چه آنان کردن من به عکس آن یاد گرفتم.
اگر در ایران این بت وجود داشت باید شک می کردم. چه کنیم دیگه ما هم غرب زده ایم.
powerboy2988
جمعه 23 اردیبهشت 1390, 13:15 عصر
................
کـرگدن
جمعه 23 اردیبهشت 1390, 13:42 عصر
متاسفانه خیلی از حرف های شما رو قبول ندارم.
هیچ تعصبی هم نه رو RUP دارم نه رو Agile. راجع به هر دوی اونها هم مطالعه داشتم. کلا به نظر من قیاس این دو کار درستی نیست.
من تاکیدم روی داشتن دانش فنی هر روش یا سبکی هست. اگر تیمی نسبت به کاری که انجام میده عالم باشه چه با Agile Umbrella چه با RUP موفق میشه فرقی نمیکنه.
من بیشتر هدفم از شرکت در این تاپیک بیان این مساله بود که RUP این چیزی که شما توضیح دادی نیست و نباید هم از هر چیز جدید و تازه ای بت ساخت. خیلی از دوستان فکر میکنن Agile معجزه میکنه این تفکر خیلی اشتباهه و امیدوارم با این تفکر همونطور که RUP رو به شیوه ی دیگه ای خراب کردن Agile رو هم خراب نکنن.
موفق باشید.
درود
agile قرار نیست هیچ معجزه ای بکنه :) چون اصول و فلسفه ی بسیار ساده ای داره که شاید در مرحله اول با خوندنش بگید چه ساده و پیش پا افتاده ( هرچند که برای پیاده سازی و رسیدن بهش داستان و مشقت های خودش رو داره)
agile قرار نیست هیچ معجزه ای بکنه بلکه امکان معجزه کردن افراد تیم رو فراهم می کنه
ابزار ها و تکنیک ها و فلسفه هایی که داره تولید و توسعه نرم افزار رو بسیار دلچسب می کنه و زمان به توسعه دهنده ها می ده که خلاقیت ها ی خودشون رو نشون بدن
انعطاف پذیری بسیار زیادی به تیم و مشتری برای رسیدن به محصول کارا و با کیفیت رو می ده
در مورد RUP هم تنها نظری که می دم خوب یا بد هر چیزی که نتونه خودش رو به روز کنه و قابلیت انعطاف زیادی نداشته باشه یک تاریخ مصرفی داره که چه ما بخوایم و نخوایم خود به خود کنار گذاشته میشه
حتی اگر در زمان خودش بهترین انتخاب بوده باشه
امروز خیلی مباحث جدید مطرح شده که RUP پاسخگوشون نیست مثل توسعه محصولات آزاد Free software - تیم های توسعه غیر متمرکز - web2 و...... که الان موفق ترین نحوه های توسعه هستن حالا بحث های تکنیکی بماند
agile معجزه نیست ولی اجازه معجزه کردن تک تک اعضای تیم رو می ده :)
موفق باشید
m.hamidreza
جمعه 23 اردیبهشت 1390, 15:54 عصر
agile معجزه نیست ولی اجازه معجزه کردن تک تک اعضای تیم رو می ده :)
زمانی که همه SSADM کار میکردن و RUP متولد شد همه همین فکر رو در مورد RUP داشتن فکر میکردن دیگه الان همه چیز Okay میشه! ولی نتیجه ای که الان بقول بعضی ها در ایران در مورد RUP میبینید خلاف اون ایده آل هست. من کل حرفم اینه که ایراد از ابزار نیست بلکه ایراد از شیوه استفاده از ابزار هست. وقتی دانش استفاده نیست چه XP چه RUP فرقی نمیکنه. الان من بعنوان یک طرفدار Agile و RUP نگران این هستم که با نظراتی افراطی همونطور که RUP به این صورت درومد Agile هم به این عقوبت گرفتار شه. اتفاقا Simple is too Hard و پیاده سازی هر چیز Simpleای نیازمند هوش و دقت بیشتری هست.
ابزار ها و تکنیک ها و فلسفه هایی که داره تولید و توسعه نرم افزار رو بسیار دلچسب می کنه و زمان به توسعه دهنده ها می ده که خلاقیت ها ی خودشون رو نشون بدن
انعطاف پذیری بسیار زیادی به تیم و مشتری برای رسیدن به محصول کارا و با کیفیت رو می ده
بله کاملا.
در مورد RUP هم تنها نظری که می دم خوب یا بد هر چیزی که نتونه خودش رو به روز کنه و قابلیت انعطاف زیادی نداشته باشه یک تاریخ مصرفی داره که چه ما بخوایم و نخوایم خود به خود کنار گذاشته میشه
حتی اگر در زمان خودش بهترین انتخاب بوده باشه
من اینو متوجه نمیشم که در تاپیکی که در مورد Agile ایجاد شده چرا باید RUP رو کوبید؟ این حرف شما هیچ مستند فنی ای نداره. من لینکی از Jeff Sutherland در پست های قبل دادم والا اونا که خودشون مبدع Agile هستن اینجوری در مورد RUP صحبت نمیکنن! همین اتفاق در پست 2 به دفعات افتاده. سوال راجع به چیز دیگه است خود جواب دهنده هم قبول داره مقایسه RUP با Agile صحیح نیست ولی از هر 4 خط 3 خطش راجع به RUP هست!
امروز خیلی مباحث جدید مطرح شده که RUP پاسخگوشون نیست مثل توسعه محصولات آزاد Free software - تیم های توسعه غیر متمرکز - web2 و...... که الان موفق ترین نحوه های توسعه هستن حالا بحث های تکنیکی بماند
این هم غیر فنی هست.
موفق باشید.
موفق باشید[/QUOTE]
کـرگدن
جمعه 23 اردیبهشت 1390, 16:20 عصر
زمانی که همه SSADM کار میکردن و RUP متولد شد همه همین فکر رو در مورد RUP داشتن فکر میکردن دیگه الان همه چیز Okay میشه! ولی نتیجه ای که الان بقول بعضی ها در ایران در مورد RUP میبینید خلاف اون ایده آل هست. من کل حرفم اینه که ایراد از ابزار نیست بلکه ایراد از شیوه استفاده از ابزار هست. وقتی دانش استفاده نیست چه XP چه RUP فرقی نمیکنه. الان من بعنوان یک طرفدار Agile و RUP نگران این هستم که با نظراتی افراطی همونطور که RUP به این صورت درومد Agile هم به این عقوبت گرفتار شه. اتفاقا Simple is too Hard و پیاده سازی هر چیز Simpleای نیازمند هوش و دقت بیشتری هست.
بله کاملا.
من اینو متوجه نمیشم که در تاپیکی که در مورد Agile ایجاد شده چرا باید RUP رو کوبید؟ این حرف شما هیچ مستند فنی ای نداره. من لینکی از Jeff Sutherland در پست های قبل دادم والا اونا که خودشون مبدع Agile هستن اینجوری در مورد RUP صحبت نمیکنن! همین اتفاق در پست 2 به دفعات افتاده. سوال راجع به چیز دیگه است خود جواب دهنده هم قبول داره مقایسه RUP با Agile صحیح نیست ولی از هر 4 خط 3 خطش راجع به RUP هست!
این هم غیر فنی هست.
موفق باشید.
موفق باشید[/QUOTE]
بنده گفتم با RUP مشکلی ندارم
اگر فکر می کنید جواب کار شما رو به بهترین حالت می ده و باعث میشه محصول با کیفیت و کارا تولید کنید و مشتری و تیم شما هم راضی هستند پس Agile شما همون RUP هست :)
agile یک نسخه نیست که بشه برای هر تیم پیچید و گفت اگر این کار ها رو بکنید موفق هستید و اگر نکنند نا موفق
بلکه ساختار بسیار انعطاف پذیری داره که می گه هر تیم خودش agile خودش رو بسازه و با شرایط خودش ( که با وجود فلسفه و راهنمایی هایی که وجود داره این راه رو روشن تر می کنه)
داستان این نیست که هیچ مشکلی وجود نخواهد داشت و همه چی طبق مراد ما هست
بر اساس این فلسفه شکست ها و مشکلات بهترین راهنماهای ما برای پیروزی ها هستن
کسی از اینکه کمبودی داشته باشه یا حتی موفق نشه ترسی نداره چون نحوه ی استفاده از این شکست ها و اصلاح روند کاری بسیار خوب دیده شده
این نگرش خود به خود جایی برای نگاه افراطی نمی ذاره و همینطور مقایسه های افراطی با سیستم های دیگه
چون بهترین معنی نداره بلکه بهتر شدن ما نسبت به ما در دیروز اهمیت داره
m.hamidreza
جمعه 23 اردیبهشت 1390, 18:04 عصر
کسی از اینکه کمبودی داشته باشه یا حتی موفق نشه ترسی نداره چون نحوه ی استفاده از این شکست ها و اصلاح روند کاری بسیار خوب دیده شده
[/QUOTE]
بله، یکی از ویژگی های خوبی که داره بحث Cross-Functional Team هست که بخوبی این موضوع رو کاور میکنه.
موفق باشید.
کـرگدن
جمعه 23 اردیبهشت 1390, 18:18 عصر
کسی از اینکه کمبودی داشته باشه یا حتی موفق نشه ترسی نداره چون نحوه ی استفاده از این شکست ها و اصلاح روند کاری بسیار خوب دیده شده
بله، یکی از ویژگی های خوبی که داره بحث Cross-Functional Team هست که بخوبی این موضوع رو کاور میکنه.
موفق باشید.[/QUOTE]
البته منظورم به وسیله جلسات بازبینی عملکرد و مشکلات مداوم و بهبود در هر چرخه کوچک هست که در scrum بهش Sprint Retrospective گفته میشه
اگر در اون مرحله Cross-Functional Team به تنهایی پاسخگو بود در پایان sprint دیگه مشکلی و یا کمبودی وجود نداشت :)
ویرایش:
این عمل یکی از مهمترین کارهایی هست که باید انجام شه و بدون اون تیم بعد از مدتی ( و یا با عوض شدن شرایط و مشکلات و حتی خود پروژه ) پویایی و چابکی خود رو از دست میده و نمی تونه بر اساس شرایط و نیاز های جدید خودش رو تغییر بده وبه طور مداوم پیشرفت بکنه
javaphantom
جمعه 23 اردیبهشت 1390, 20:09 عصر
کسی از اینکه کمبودی داشته باشه یا حتی موفق نشه ترسی نداره چون نحوه ی استفاده از این شکست ها و اصلاح روند کاری بسیار خوب دیده شده
بله، یکی از ویژگی های خوبی که داره بحث Cross-Functional Team هست که بخوبی این موضوع رو کاور میکنه.
موفق باشید.[/QUOTE]
اولش غیره فنی بود بعد کم کم با search کوچیک دیدی نه فنی هست و بخوبی cover می کنه.
javaphantom
جمعه 23 اردیبهشت 1390, 20:23 عصر
RUP ابزار نیست که ازش درست استفاده بشه یا غلط. اما چرا انقدر در موردش صحبت می شه واقعا جوابی ندارم ولی به نظر من چون توی ایران و دانشگاهای ایران بحث مهندسی نرم افزار در مورد RUP هست. بازار کار نرم افزار ایران هم بر اساس این فریم ورک می ره جلو حالا کاری به درست و غلطیش ندارم من تو پست اولم ناخودآگاه شاید بهتر بگم خیلی احساسی برخورد کردم و اسم از اون رو آوردم.
من بازهم می گم که agile یک تفکر هست نه یک متدولوژی در صورتی که RUP یک متدولوژی هست و مقایسه این دو اشتباه هست.
من توی پست اول که به حجم بالای کاغذ به درد نخور در RUP اشاره کردم خواستم این رو به خواننده گوش زد کنم که طبق یکی از اصل تفکر agile کاغذ خوبه ولی هدف و ارزشش کمه.
و شما درست می گی RUP چی هست که آدم بخواد در موردش وقت بزاره.
m.hamidreza
جمعه 23 اردیبهشت 1390, 21:55 عصر
بله، یکی از ویژگی های خوبی که داره بحث Cross-Functional Team هست که بخوبی این موضوع رو کاور میکنه.
موفق باشید.
اولش غیره فنی بود بعد کم کم با search کوچیک دیدی نه فنی هست و بخوبی cover می کنه.[/QUOTE]
؟؟؟ منظورتو متوجه نشدم.
javaphantom
جمعه 23 اردیبهشت 1390, 23:39 عصر
اولش غیره فنی بود بعد کم کم با search کوچیک دیدی نه فنی هست و بخوبی cover می کنه.
؟؟؟ منظورتو متوجه نشدم.[/QUOTE]
اینکه بت نیست یا یک چیزه جدیدی نیست که آدم جو گیر بشه بره طرفش. پشت این تفکر پیاده سازی هم هست و موفقیتی هم پس می تونه داشته باشه.
امروز خیلی مباحث جدید مطرح شده که RUP پاسخگوشون نیست مثل توسعه محصولات آزاد Free software - تیم های توسعه غیر متمرکز - web2 و...... که الان موفق ترین نحوه های توسعه هستن حالا بحث های تکنیکی بماند
و جواب شما
این هم غیر فنی هست.
m.hamidreza
شنبه 24 اردیبهشت 1390, 09:39 صبح
پشت این تفکر پیاده سازی هم هست و موفقیتی هم پس می تونه داشته باشه.
من در کدوم پست خودم گفته ای دارم که این حرف شما رو نقض میکنه؟!!! شما از کجا میدونی یه نفر که در مورد RUP بحث میکنه در مورد Agile اطلاعاتی نداره؟ وقتی ما فرهنگ گفتگوی فنی رو نداریم توقع داری پروژه 500 میلیونی با Agile بتونیم Done کنیم؟!
بحث من چیز دیگه ای هست. سادش اینه که همون افرادی که RUP رو خراب کردن Agile رو هم خراب میکنن. 5 سال دیگه شما بیا این موضوع رو حتما بررسی میکنیم. همین الان من چندین شرکت میشناسم که ادعا میکنن دارن Scrum کار میکنن و همین تفکر شما رو در مورد RUP دارن ولی وقتی کارشون رو بررسی میکنی میبینی 60 درصد از شیوه اجراشون غلط هست همینا دو سال دیگه مثل شما که میگی RUP فلانه میشینن میگن وای scrum فلانه وای xp فلانه. کسی نمیاد بگه من RUP بلد نبودم من Scrum بلد نبودم سریعا اصل رو زیر سوال میبرن.
در مورد نقل قول دوم هم تا دلتون بخواد من پروژه موفق سراغ دارم...
موفق باشید.
javaphantom
شنبه 24 اردیبهشت 1390, 12:22 عصر
من در کدوم پست خودم گفته ای دارم که این حرف شما رو نقض میکنه؟!!! شما از کجا میدونی یه نفر که در مورد RUP بحث میکنه در مورد Agile اطلاعاتی نداره؟ وقتی ما فرهنگ گفتگوی فنی رو نداریم توقع داری پروژه 500 میلیونی با Agile بتونیم Done کنیم؟!
بحث من چیز دیگه ای هست. سادش اینه که همون افرادی که RUP رو خراب کردن Agile رو هم خراب میکنن. 5 سال دیگه شما بیا این موضوع رو حتما بررسی میکنیم. همین الان من چندین شرکت میشناسم که ادعا میکنن دارن Scrum کار میکنن و همین تفکر شما رو در مورد RUP دارن ولی وقتی کارشون رو بررسی میکنی میبینی 60 درصد از شیوه اجراشون غلط هست همینا دو سال دیگه مثل شما که میگی RUP فلانه میشینن میگن وای scrum فلانه وای xp فلانه. کسی نمیاد بگه من RUP بلد نبودم من Scrum بلد نبودم سریعا اصل رو زیر سوال میبرن.
در مورد نقل قول دوم هم تا دلتون بخواد من پروژه موفق سراغ دارم...
موفق باشید.
]چیزی بی خود برای همه بد نمیشه. اینکه تو ایران RUP رو خراب کردن با اینکه بگیم RUP دورش تموم شده بحثی هست بسیار متفاوت. اینکه تو ایران چه کردند و چه می کنند خوب من نمی خوام وارد بحثش بشم.
ولی بحث اینکه داستان یک چیز دورش تموم شده یا مخصوص به context خاصی هست یعنی شرایط خواصی می خواد هم بحث درش متفاوت هست.
از لحاظ تجربی کسی که می ره سراغ متدولوژی اون مثل متدولوژی مثل RUP کاملا قابل درک هست که این بابا در قالب قرارداد داره کار می کنه و ساعتی. یعنی چی یعنی اینکه مثل فرض کن می خوان تونل درست کنند یک شرکت پیمانکار چهل پنجاهات گارکر با بیل و کلنک لودر و و و می بره می گه ساعتی مثل 100 تومن. یک شرکت دیگه ای هم مثل فرض راه و ترابری می یاد می گه کل پروژه 1000 تومن. حالا این پیمان کار موفق می شه یا اینکه نمی شه. اگه شد که می گن دیدی قدرت MSProject رو. دردو بلای عمو بیلی بخوره تو سر ....
اگرم نشد که خوب خدا نخواسته یا قسمت نبوده می دن دست یک پیمان کار دیگه و تکرار مکررات.
آره اینجا منم با شما موافقم بلخره مهار کردن 50 60 تا کارگر از زیر کار درو یک متدودی یک ایدولوژی می خواد حالا تو کامپیوتر بهش می گن RUP. می گن EUP هرچی. اگر درست استفاده کردی که جوابم می گیری بازم کاملا حق باشماست. اما داستان رو بیا از این زاویه نگاه کنیم. چهارتا پسر گل و تمیز دورهم جمع می شن تو پارگینگ خونه مادر بزرگ یکی از بچها چهارتا کامپیوتر داغون می زارن مگن 1000 تومن سرمایه تا آخر ماه. اگر محصول دادیم بیرون که هیچ شانس می یاریم یک فیدبکی می گیریم که اگر خوب بود می ریم جلو اگر بد بود مهم اینه که یک کاری کردیم حال از باباهمون پول می گیریم درستش می کنیم یا همون تغییر می دیم اما بدترین حالت اینکه اصلا نتونیم تا آخر ماه محصول بدیم بیرون.
خوب استاد من از شما سوال می کنم واقعا این RUP برای این چهارتا جوون چه راه حلی در نظر گرفته؟
وقتی مگیم ناقصه نه اینکه سیستم ناقصه یعنی ناقص برای جواب گویی یک سری مسائلی که الان هست و این جوابی نداره بهش بده.
منو ببخش اگر بد باحات صحبت کردم. من خیلی متاسفام که اینطوری شده که شما ناراحت شدی.
من سعی می کنم که حتما جبران کنم. من خیلی احساسی با این مسئله برخورد کردم. ولی بازم دمت گرم که توی بحث شرکت می کنی.
m.hamidreza
شنبه 24 اردیبهشت 1390, 13:28 عصر
]چیزی بی خود برای همه بد نمیشه. اینکه تو ایران RUP رو خراب کردن با اینکه بگیم RUP دورش تموم شده بحثی هست بسیار متفاوت. اینکه تو ایران چه کردند و چه می کنند خوب من نمی خوام وارد بحثش بشم.
ولی بحث اینکه داستان یک چیز دورش تموم شده یا مخصوص به context خاصی هست یعنی شرایط خواصی می خواد هم بحث درش متفاوت هست.
نمیشه گفت دورش تموم شده عملا RUP در Large Project ضعف قابل بحثی نداره ولی تیم توانمند و حرفه ای میخواد این رو نمیشه ضعف گفت. هیچ مرجع معتبری هم خوشبختانه یا متاسفانه اینو اعلام نکرده. به نظر من مذاکرات پشت پرده ای هم شاید باشه. هیچ کدوم از Agile کاران over the sea حتی اظهار نظر هم به RUP نمیکنن (اگر لینکی در این زمینه دارید بذارید منم ببینیم) به نظر من باید منتظر IBM بود.
ولی بحث مربوط به context کاملا صحیح هست. لزوما در هر context ای جوابگو نیست.
]
خوب استاد من از شما سوال می کنم واقعا این RUP برای این چهارتا جوون چه راه حلی در نظر گرفته؟
IBM در نسخه 7.5 که سال 2008 منتشر کرد بخشی رو تحت عنوان Small Project معرفی کرد که میشه اینطور برداشت کرد که شاید Agile باعث این تغییر در IBM شد. بخش بدی نبود ولی عالی هم نبود. برای شروع تغییر در IBM خوب بود. در این بخش خیلی از Role ها رو حذف کرد و تغییرات زیادی داد. در Large Projectش هم سعی کرده با ابزاری که معرفی کرد اون گیج زدن تیم رو پوشش بده.
ولی به نظر من، تیم های کوچیک در صورتی در استفاده از RUP موفق هستند که شآدم با تجربه ای در زمینه RUP در تیم باشه تا بتونه Tailoring کنه اگر نباشه به هیچ وجه انتخاب RUP کار درستی نیست مگر اینکه زمان زیاد داشته باشن و بودجه با زمان متناسب باشه. یکی از مشکلات تیم ها همین Tailoring کردن RUP هست که کار سختی هست. Tailoring در RUP میتونه برای هر پروژه کاملا متفاوت باشه. اشکال اینجاست که کی میخواد Tailoring کنه! در نتیجه پروژه شکست میخوره یا Done میشه ولی با زمانبندی متفاوت یا عدم رضایت تیم یا ...
]
منو ببخش اگر بد باحات صحبت کردم. من خیلی متاسفام که اینطوری شده که شما ناراحت شدی. من سعی می کنم که حتما جبران کنم. من خیلی احساسی با این مسئله برخورد کردم. ولی بازم دمت گرم که توی بحث شرکت می کنی.
نه خواهش میکنم. وظیفه هست.
موفق باشید.
Asad.Safari
یک شنبه 25 اردیبهشت 1390, 16:02 عصر
دوستان گرامی می توانند یک سری مباحث هم در این مورد در انجمن چابک ایران بیابند :
http://groups.google.com/group/iran-agile-community
موفق باشید
vahidRafiei
شنبه 07 خرداد 1390, 02:04 صبح
در اون ور دنیا و به خصوص startup ها تقریبا "همه" دارن رو به روشهای Agile و به خصوص SCRUM رو میارن. فواید این روش تقریبا اینقدر واضح شده که نه تنها جو startup ها رو تحت تاثیر داده بلکه متد شرکتهای عظیمی مثل اریکسون رو هم داره تغییر میده ...
به هر حال هر متدولوژی برای رفع نیازی درست شده، اما خصوصیت scrum اینه که بیشتر یه سبک زیبا و بسیاز پر بازده برای مدیریت زمان و کیفیت نرم افزاره تا یه متدولوژی رسمی برای یه شرکت چند صد میلون دلاری ....
javaphantom
دوشنبه 06 تیر 1390, 13:15 عصر
در اون ور دنیا و به خصوص startup ها تقریبا "همه" دارن رو به روشهای Agile و به خصوص SCRUM رو میارن. فواید این روش تقریبا اینقدر واضح شده که نه تنها جو startup ها رو تحت تاثیر داده بلکه متد شرکتهای عظیمی مثل اریکسون رو هم داره تغییر میده ...
به هر حال هر متدولوژی برای رفع نیازی درست شده، اما خصوصیت scrum اینه که بیشتر یه سبک زیبا و بسیاز پر بازده برای مدیریت زمان و کیفیت نرم افزاره تا یه متدولوژی رسمی برای یه شرکت چند صد میلون دلاری ....
اگر به پستهای قبل نگاه کنی می بینی که به این مسئله اشاره شده اما داستان از اینجایی بوجود می یاد که بقول یکی از دوستان که توی ایران هیچ جیز درست فهمیده نمی شه که بخواد درست اجرا بشه و باز جایی دیگه ایشون می گن که همین scrum روهم توی ایران به خطا و ناکجا آباد می برن.
تمام حرفهای دوستان رو قبول دارم ولی با اینکه به این اتقاد دارم که در پروژهای سازمانی هم می شه از scrum استفاده کرد. حتی شرکتهایی که با چند پروژه بصورت همزمان دارن دست و پنجه نرم می کنند باز هم می تون از scrum استفاده کنند.
مهم انیکه دنیای امروز فهمیده که قدرت تیم از همه کس و همه چیز قوی تره. این مهمه هست که تیم تصمیم بگیره. گذشت زمانی که یکی برای خودش بشه مدیر و چهارتا زیر دست درست کنه و بزنه تو سرشون. یا اینکه بهم رل بدن و ازهم تعریف و تمجید کنند و با بی احترامی و ترس و وحشت گرفتن چک و سفته و و و و تولید نرم افزار کنند. دقیقا چیزی که توی ایران در هر زمینه ای داری می بینی.
tazaree
پنج شنبه 23 آذر 1391, 20:59 عصر
]
منو ببخش اگر بد باحات صحبت کردم. من خیلی متاسفام که اینطوری شده که شما ناراحت شدی.
من سعی می کنم که حتما جبران کنم. من خیلی احساسی با این مسئله برخورد کردم. ولی بازم دمت گرم که توی بحث شرکت می کنی.
خدا خیرت بده داداش من
دیگه داشت حالم از هر چی برنامه نویس دات او آر جی بود به هم می خورد.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.