واضح آرشیو وب فارسی:سایت ریسک: RobertDeniro24th October 2008, 10:57 PMکاربران ثبت نام کرده قادر به مشاهده لینک می باشند بهروز نوعي پور ماهنامه شبکه - مهر 1387 شماره 93 اشاره : به عنوان مثال، بسياري از ما ميدانيم كه قلب تپنده معماري سيستمعامل ويندوز رابط كاربري گرافيكي آن (GUI) است. براي يك لحظه تصور كنيد كه قرار بود همين امروز بيل گيتس و دوستانش سيستمعامل ويندوز را ابداع كنند و همه اين متدولوژيهاي امروزي را در اختيار داشتند. يكي از خوانندگان گرامي مجله، آقاي كيانوش آل شيخ، با ارسال يك ايميل درباره يادداشت قبلي من با عنوان «چرا متدولوژي هاي نرمافزاري جواب نميدهند؟» نكاتي را متذكر شده و مطلب را نقد كردهاست. بههميندليل تصميم گرفتم در اين يادداشت ابتدا نكات مورد نظر ايشان را بدون كم و كاست ذكر كنم و در پايان توضيحات خود را درباره اين نقد ارائه ميدهم. ايشان نوشتهاند: 1- هنگامي كه بيل گيتس نخستين نسخه ويندوز را در دست تهيه داشت، هيچ يك از متدولوژيهاي نرمافزاري امروزي وجود نداشتند كه بتواند از آنها استفاده كند. 2- دليلي وجود ندارد كه به علت عدم وجود متدولوژيهاي امروزي در زمان توليد نخستين نسخه ويندوز، بيل گيتس از هيچ روشي براي برنامهريزي، زمان بندي و همچنين مديريت گروه نرم افزارياش استفاده نكرده باشد. 3- كمترين كاري كه يك متدولوژي ميتواند انجام دهد، منظم كردن روند توليد نرمافزار است. اگر گروهي متدولوژي را به كار گيرد و به اين هدف دست نيابد بايد گفت كه متدولوژي به درستي پيادهسازي نشده است و گروه با متدولوژي مورد نظر آشنايي ندارد. 4- استفاده از متدولوژيهاي نرمافزاري در زمينه نرم افزار و متدولوژي مورد نظر نياز به تجربه كافي دارد و با يكبار مطالعه يك متدولوژي نميتوان كسي را متخصص در زمينه آن متدولوژي ناميد و بايد دست كم در چند پروژه كه توسط متدولوژي مورد نظر هدايت ميشود، حضور داشته باشد. 5- هر متدولوژي براي پياده سازي در هر پروژهاي مناسب نيست. 6- متدولوژي RUP و مشابه آن توسط يك شخص قابل پياده سازي نيست. هر يك از اجزاي آن بايد توسط يك شخص پياده سازي شود و هر يك از افراد بايد به وظايف خود بهطور كامل واقف و مسلط باشند و آنرا به درستي به انجام برسانند تا گروه به نتيجه لازم دست يابد. 7- تكيه بيش از حد روي يك متدولوژي اشتباه خطرناكي است. همانطور كه در RUP هم ذكر شده نبايد در مستندسازي غرق شد و بههميندليل راهكاري به نام Tailoring در اختيار قرار داده و ذكر كرده است كه با توجه به گستردگي پروژه، مستندات لازم انتخاب و بعد از Customize شدن توليد شوند. به عنوان مثال، براي يك پروژه يك ماهه نيازي نيست كه چندين هفته را صرف توليد مستندات كرد. فقط كافياست كه با توليد مستندهاي ضروري به Milestoneها و نقاط بحراني نيز توجه كرد. 8- برنامهنويس خوب (همچنانكه شما هم اشاره كرده بوديد) به راستي سرمايه بزرگي محسوب ميشود، اما براي رسيدن به نتيجه مطلوب در توليد نرم افزار، هر يك از پارامترها در جاي خود مورد نياز است و هيچيك نميتواند جاي ديگري را بگيرد. برنامهنويس مجرب، محيط برنامهنويسي مناسب (زبان برنامهنويسي، محيط يكپارچه توليد نرم افزار، زير ساخت مناسب شبكه و...) و متدولوژي نرم افزار هر يك قطعهاي از پازل را تكميل ميكنند. 9- از متدولوژي نرمافزار نبايد انتظار معجزه داشت. ضمن سپاس از لطف و توجه شما بايد متذكر شوم شما بهدرستي نسبت به جنبههاي مختلف به كارگيري يك متدولوژي نرمافزاري اشاره كردهايد. در حقيقت، با بيشتر نكات مورد اشاره شما موافق هستم، در عين حالكه گمان ميكنم اين نكات با اصل موضوعي كه من در يادداشت قبلي مطرح كرده بودم، تضادي ندارند. منظور اصلي من اين نبود كه مواردي كه نام برديد حقيقت ندارند. بلكه ميخواستم به اين نكته اشاره كنم كه قصد و نيت اصلي ما از به كارگيري يك متدولوژي واقعاً چيست؟ به عبارت ديگر، چه انتظاري از يك متدولوژي داريم؟ ابداع يك نرمافزار جديد؟ به گمان من، اگر هدف از بهكارگيري يك متدولوژي نرمافزاري مقولاتي از جنس مواردي است كه شما نام بردهايد (منظم كردن روند توليد، مستند سازي، برنامهريزي و...)، بيترديد استفاده از اين متدولوژيها سودمند خواهد بود. با اين حال، همانطور كه خودتان ذكر كرديد، از متدولوژي نرمافزاري نبايد انتظار معجزه داشت و متأسفانه به نظر ميرسد نگاه بسياري از مديران پروژهها چنين است. آنها تصور ميكنند به صرف مجهز شدن به چنين ابزارهايي خودبهخود فرآيند توليد نرمافزار تضمين شدهاست، در حالي كه چنين نيست. استفاده از متدولوژيها و مدلهاي توليد نرمافزار «بديلي براي خلاقيت و ابداع» نيستند. متدولوژيها حاصل تجزيه و تحليل تجربيات پيشين برنامهنويسان هستند، حال آنكه در بسياري از پروژهها و نرمافزارهاي جديد قابليتها و معماريهاي تازهاي مد نظر هستند كه احتمالاً در نرمافزارهاي موجود در بازار كمتر ديده شده است (جنبه رقابتي محصول جديد). اغلب اوقات براي ساختن اين قابليتهاي جديد هيچ روش مدوني وجود ندارد، زيرا متدولوژيها پيشگويي نميكنند و درباره معماريهاي جديدي كه در آينده به بازار ميآيد چيزي نميدانند و بهناچار درباره اين جنبه از نرمافزارها ساكت هستند. به عنوان مثال، بسياري از ما ميدانيم كه قلب تپنده معماري سيستمعامل ويندوز رابط كاربري گرافيكي آن (GUI) است. براي يك لحظه تصور كنيد كه قرار بود همين امروز بيل گيتس و دوستانش سيستمعامل ويندوز را ابداع كنند و همه اين متدولوژيهاي امروزي را در اختيار داشتند. به راستي كدام يك از اين متدولوژيها ميتوانستند بگويند: «تو بايد الان يك GUI بسازي و از ماوس استفاده كني و...؟» در حقيقت، كل اين فرآيند ساخته و پرداخته تخيل قوي تعدادي انسان مبتكر است. اگر خلاقيت نباشد، از دست اين متدولوژيها كاري ساخته نيست. اگر برنامهنويسان خلاق بدون استفاده از اين متدولوژيها نرمافزاري را ساخته باشند، ممكن است بتوانيم باگها و مشكلات فراواني در آن پيدا كنيم، اما به هرحال چيزي كه توليد شده جديد است. اما بدون اين فكرهاي خلاق، بهرهگيري از پيشرفتهترين متدولوژيها هم به مثابه آن ضرب المثلي است كه ميگويد: آفتابه لگن هفت دست، شام و نهار هيچي! سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 187]