مشاهده : 127کامپیوتر و موبایل و اینترنتRSS

روش نوین برنامه‌نویسی سریع

روش نوین برنامه‌نویسی سریعکامپیوتر و موبایل
روش نوین برنامه‌نویسی سریع اشاره : در ادامه مبحث ‌Agile Software Development یا برنامه‌نویسی چابکانه که در شماره قبل (شماره۷۳) به آن اشاره کوتاهی شد، در این یادداشت مبحث اکس‌پی که یکی از روش‌های قدرتمند این نوع برنامه‌نویسی است، مورد بررسی قرار می‌گیرد.اشتباه نکنید! منظور از اکس‌پی ویندوز اکس‌پی نیست.در ادامه مبحث ‌Agile Software Development […]
روش نوین برنامه‌نویسی سریع اشاره : در ادامه مبحث ‌Agile Software Development یا برنامه‌نویسی چابکانه که در شماره قبل (شماره۷۳)
به آن اشاره کوتاهی شد، در این یادداشت مبحث اکس‌پی که یکی از روش‌های قدرتمند این نوع برنامه‌نویسی است، مورد
بررسی قرار می‌گیرد.
اشتباه نکنید! منظور از اکس‌پی ویندوز اکس‌پی نیست.
در ادامه مبحث ‌Agile Software Development یا برنامه‌نویسی چابکانه که در شماره قبل (شماره۷۳) به آن اشاره کوتاهی شد، در
این یادداشت مبحث اکس‌پی که یکی از روش‌های قدرتمند این نوع برنامه‌نویسی است، مورد بررسی قرار می‌گیرد.
اشتباه نکنید! منظور از اکس‌پی ویندوز اکس‌پی نیست.
اکس‌پی مخفف Extreme Programming یا برنامه‌نویسی سریع است که مانند Scrum روشی هوشمند در تولید نرم‌افزار است.
اکس‌پی شامل یک سری تمرینات ساده و اصول مرتبط به هم است که وقتی آن‌ها را اجرا و رعایت کنیم،
روش اکس‌پی را انجام داده‌ایم.
شکل ۱ این اصول را نشان می‌دهد.
اعضای تیم در پروژه در روش اکس‌پی مشتری نرم‌افزار باید جزئی از تیم اجرایی پروژه باشد و برنامه‌نویس و مشتری
باید با هم کار کنند و از مشکلات و نیازهای هم مطلع باشند.
در اکس‌پی مشتری به کسی یا گروهی گفته می‌شود که نیازهای برنامه و اولویت‌های آن نیازها را خوب می‌داند.
در این روش مشتری و برنامه‌نویسان باید در یک اتاق کار کنند (البته تبصره‌ای نیز در این قسمت وجود دارد
که می‌گوید مشتری می‌تواند تا حداکثر پنجاه متر از برنامه‌نویسان دور باشد).
داستان‌های کاربران یا User Stories برای این‌که بتوانیم برای پروژه‌ای برنامه‌ریزی کنیم، باید از نیازهای کاربران مطلع باشیم.
البته نیازی نیست که همه چیز را از همان اول بدانیم و از جزئیات نیازهای کاربران اطلاعاتی کسب کنیم؛ زیرا
آن جزئیات به احتمال زیاد در طول پروژه تغییر پیدا می‌کنند.
در اکس‌پی باید در مورد هر نیاز کاربر یا Requirement مقداری با مشتری صحبت کنیم و از مشتری بخواهیم چند
کلمه‌ای در مورد هر یک از نیازها روی فیش یا کاغذهای یادداشت چسب‌دار (Post-it) بنویسد‌.‌ همزمان برنامه‌نویس نیز می‌تواند برداشت
خود را از آن موضوع روی کاغذی مشابه بنویسد و هر دو برگه را روی دیوار اتاق بچسبانند.
این برگه‌ها می‌توانند باعث یادآوری اعضای تیم از نیازهای اولیه و همچنین سهولت در تخمین زمان و هزینه پروژه شوند.
دوره‌های زمانی کوتاه‌ پروژه اکس‌پی هر دوهفته یک ‌بار یک قسمت از نرم‌افزار که کارایی بالایی دارد و قسمتی از
نیازهای اولیه مشتری بوده است را تحویل می‌دهد و از مشتری در مورد آن قسمت نظرخواهی می‌شود و اگر نیاز
بود، نظر مشتری سریعاً اعمال می‌گردد.
به این دوره دو هفته‌ای Iteration نیز می‌گویند.
هر Iteration قسمتی از نرم‌افزار را با توجه به User Storiesها تولید می‌کند که چند نیاز کاربر را برآورده می‌سازد.
وقتی یک Iteration شروع شد، دیگر مشتری حق عوض کردن نیازهایی که بر سر آن‌ها توافق کرده است را ندارد.
تست های قبول شده جزئیات نیازهای کاربران که در ‌User Stories وجود دارد، در قالب Acceptance Tests) AT) که مشتری
تعیین می‌کند برداشت می‌شود.
این تست همزمان با Iteration می‌تواند انجام گردد و در قالب زبان‌های اسکریپتی نوشته می‌شود تا بتوان آن را چندین
بار تکرار کرد.
هدف اصلی ATها تست کردن برنامه و حصول اطمینان از این است که آن قسمت از برنامه نوشته می‌شود که
صددرصد نیاز مشتری را برآورده می‌سازد.
این تست‌ها هر وقت که قسمت جدیدی به برنامه اضافه می‌شود و برنامه کامپایل می‌گردد، دوباره اجرا می‌شوند و اگر
اشکالی داشته باشند، پیغام خطا می‌دهند.
در نتیجه وقتی سیستم به اتمام رسید، می‌توان مطمئن بود که سیستم بدون خطا است.
به علا‌وه، در اکس‌پی تمامی کدها به روش Test-Driven Development تولید می‌شوند.
یعنی قبل از نوشتن هر قطعه کد، باید تست آن تولید شود و کاری کرد که کد در پاس کردن
Unit Test ناتوان باشد.
بدین‌معنی که اول یک قطعه کد مثلاً برای افزودن دانشجوی جدید به فهرست دانشجویان می‌نویسیم، ولی چون در آن کد
قطعه‌ای از کد کلاسی که insert را انجام می‌دهد وجود ندارد، برنامه اشکال می‌گیرد.
حال کار گروه اکس‌پی این است که برنامه را طوری درست کنند که این تست پاس شود و به قدری
روی برنامه کار کنند تا برنامه دلخواه به دست آید.
برنامه نویسی دوتایی (Pair Programming) ‌ معمولاً در اکس‌پی برنامه‌نویسان در گروه‌های دوتایی قرار می‌گیرند و وظیفه تکمیل قسمتی از
برنامه را به عهده می‌گیرند.
هر دو برنامه‌نویس در مورد هر کدام از نیازهای کاربران با هم بحث می‌کنند و قدم به قدم کلاس‌های برنامه
را آماده می‌کنند.
بدین ترتیب که در ابتدا کلاسی را به صورت خیلی ابتدایی و بدون هیچ طراحی اولیه به وجود میآورند و
این کلاس را امتحان می کنند و در صورتی که این کلاس فاقد هر گونه اشکال باشد، کد اصلی برنامه
را بر اساس این امتحان کلاس می‌نویسند.
وقتی یکی از برنامه‌نویسان مشغول نوشتن قسمتی از برنامه است، برنامه‌نویس دیگر وظیفه کنترل صحت این کدها را عهده‌دار است
و در صورت مشاهده هر گونه اشکال، نویسنده کد را مطلع می کند.
تیم همه کاره در اکس‌پی همه اعضای تیم همه کار می‌کنند.
همه روی GUI، پایگاه اطلاعات و …
کار می کنند.
این بدین منظور نیست که اعضای تیم نمی‌توانند در کار مشخصی حرفه‌ای باشند، بلکه همکاری در تمامی بخش‌های پروژه باعث
خواهد شد که تجربه جدیدی کسب کنند.
این تیم حق دارد کدهایی که دیگران نوشته‌اند را بارها چک کند، اشکالات آن را مشخص نماید و اگر اصلاحی
دارد، آن را متذکر شود.
محیط کاری باز تیم باید در مکانی باز کار کند.
در اتاق پروژه باید میزهایی فراهم شوند که روی آن چند کامپیوتر قرار دارد.
در جلوی هر کامپیوتر هم باید دو صندلی برای اعضای Pair تعبیه شود.
دیوارهای اتاق باید از نقشه‌ها و طرح‌های نرم‌افزاری به همراه UML مملو باشد.
صدای اتاقی که در آن کار انجام می‌شود، معمولاً پر از زمزمه‌های اعضای تیم است.
شاید بگویید که در محیطی پر زمزمه که نمی‌شود کار کرد.
در جواب این سؤال باید گفت طبق تحقیقاتی که در دانشگاه میشیگان انجام شده است، راندمان کار در محیط‌های کاری‌ای
که در آن زمزمه باشد و سکوت محض نباشد، به دو برابر حالت عادی می‌رسد.
طراحی ساده نرم‌افزار در اکس‌پی تیم سعی می کند طراحی نرم‌افزار را تا حد ممکن ساده انجام دهد.
اعضای تیم تمام انرژی خود را فقط روی نیازهای فعلی کاربران می‌گذارند و نگران نیازهای جدیدی که ممکن است در
آینده مطرح شوند، نیستند.
در ابتدای کار تمرکز برنامه‌نویسان تیم به انتخاب پایگاه اطلاعاتی، انتخاب معماری نرم‌افزار و …
نیست و تمام سعی تیم این است که قسمتی از نرم‌افزار را به ساده ترین راه ممکن تحویل مشتری دهد
و وقتی واقعاً به تغییرات نیاز پیدا شد، می‌توانند تغییرات لازم را اعمال نمایند.
در اکس‌پی اعضای گروه می‌توانند روند تکمیلی تولید نرم‌افزار را مشاهده کنند و در جریان کار قرار گیرند.
اکس‌پی روش مناسبی برای پروژه‌های کوچک است که اعضای تیم از دو تا دوازده برنامه‌نویس تشکیل شده است؛ هرچند اصولاً
اکس‌پی هیچ رویه خاص و مراحل پیوسته‌ای را مشخص نکرده است.
می‌توان گفت که اکس‌پی چهار مرحله اصلی دارد: ●‌‌مرحله زمانبندی پروژه ‌‌●‌‌طراحی ابتدایی ‌‌●‌‌نوشتن کدهای برنامه ‌‌●‌‌امتحان کدهای نوشته شده
طبق تحقیقات انجام شده مشخص شده است که اکس‌پی تنها در پروژه‌های کوچک نرم‌افزاری می‌تواند مفید باشد و در پروژه‌های
بزرگ، اصلاً موفق نخواهد بود.
شاید به این دلیل که در این روش مستندات چندانی برای نرم‌افزار وجود ندارد و چند نفر بیشتر نمی‌توانند در
مورد قسمتی از نرم‌افزار اطلاعاتی داشته باشند.
همچنین نرم‌افزار تولید شده با این روش هیچ‌گونه طراحی سازمان یافته‌ای ندارد و این امر می‌تواند برای مراحل پس از
نصب، یعنی تعمیرات و نگهداری سیستم، باعث بروز مشکلاتی گردد.
از جمله مزایای اکس‌پی این است که از آن جایی که یک برنامه‌نویس به صورت مستقیم کدهای برنامه را چک
می‌کند، کیفیت نرم‌افزارهای تولیدی بالاتر می‌رود.
همچنین از آن جایی که دو برنامه‌نویس با هم کار می‌کنند، آموزش کمتری نیاز است و در نتیجه هزینه تولید
نرم‌افزار پایین میآید، اما این روش مشکلات خاصی نیز دارد.
مثلاً تصور کنید اگر در یک گروه یک برنامه‌نویس تمایلی برای کار با دیگر برنامه‌نویسان نداشته باشد، چه اتفاقی خواهد
افتاد؟! متخصصان نرم‌افزار پس از تحقیقات زیاد روی این روش به این نتیجه رسیده‌اند که وقتی برنامه‌نویسی در کدهای برنامه
به دنبال اشکال می‌گردد، حداکثر می‌تواند پانزده درصد از اشکالات برنامه را پیدا کند، ولی در روش‌هایی مانند اکس‌پی که
دو برنامه‌نویس با هم کار می‌کنند و یکی از این برنامه‌نویسان کدها را چک می‌کند، تا چهل درصد از اشکالات
ساختاری برنامه مشخص می‌شود.
2009-05-03 / گردآوری:
دکتر طاهری
نظر خود را بنویسید-نظرات کاربران (۰)
فیلم پرشین ویدکتر طاهری
چرا چاپ عکس آنلاین بهتر است؟چرا چاپ عکس آنلاین بهتر است؟
راهی برای بازیابی ایمیل های پاک شده جیمیلراهی برای بازیابی ایمیل های پاک شده جیمیل
خرید لپ تاپ و نکته هایی باید در نظر بگیرید!خرید لپ تاپ و نکته هایی باید در نظر بگیرید!
آشنایی با گوشی گوگل پیکسل ۳ XL مجهز به برش نمایشگرآشنایی با گوشی گوگل پیکسل ۳ XL مجهز به برش نمایشگر
اینترنت و پاک کردن اطلاعات خود از آن با فشار یک دکمه!اینترنت و پاک کردن اطلاعات خود از آن با فشار یک دکمه!
چگونه جلوی سارقان شبکه وای فای تان را بگیریدچگونه جلوی سارقان شبکه وای فای تان را بگیرید
دو ترفند پیرامون گرفتن عکس در گوشی iPhoneدو ترفند پیرامون گرفتن عکس در گوشی iPhone
آشنایی با چند ترفند WhatsApp که نیاز است بدایندآشنایی با چند ترفند WhatsApp که نیاز است بدایند
ترفند کامپیوتری / پاک کردن کش برنامه و پاک کردن دیتا به چه معناست؟!ترفند کامپیوتری / پاک کردن کش برنامه و پاک کردن دیتا به چه معناست؟!
پیامک های پاک شده را چگونه بازگردانیم؟ | آموزش مرحله ای + تصاویرپیامک های پاک شده را چگونه بازگردانیم؟ | آموزش مرحله ای + تصاویر
بازی Sniper Elite 4 | سیستم مورد نیاز و پیشنهادی این بازی چیست؟بازی Sniper Elite 4 | سیستم مورد نیاز و پیشنهادی این بازی چیست؟
آموزش روش هایی برای تشخیص کابل شارژ تقلبی از اصلآموزش روش هایی برای تشخیص کابل شارژ تقلبی از اصل
آشنایی با بهترین میانبر‌های صفحه کلید و کاربرد آنهاآشنایی با بهترین میانبر‌های صفحه کلید و کاربرد آنها
لغو دریافت ایمیل های تبلیغاتی با این ترفندلغو دریافت ایمیل های تبلیغاتی با این ترفند
آیا خصوصی کردن استوری های اینستاگرام امکان پذیر است؟آیا خصوصی کردن استوری های اینستاگرام امکان پذیر است؟
آموزش اینستاگرام | چگونه کامنت ها در اینستاگرام را غیر فعال کنیم یا ببندیم ؟آموزش اینستاگرام | چگونه کامنت ها در اینستاگرام را غیر فعال کنیم یا ببندیم ؟
رونمایی از گوشی Huawei enjoy 9 و ویژگی های آنرونمایی از گوشی Huawei enjoy 9 و ویژگی های آن
اندروید و آموزش روش مدیریت حافظه!اندروید و آموزش روش مدیریت حافظه!
باریک‌ ترین قاب گوشی هوشمند در جهان را ببینیدباریک‌ ترین قاب گوشی هوشمند در جهان را ببینید
ترفندی برای حذف واترمارک Activate Windows در ویندوز ۱۰ترفندی برای حذف واترمارک Activate Windows در ویندوز ۱۰
آشنایی با ویژگی جدید در ویندوز ۱۰ به نام Sandboxآشنایی با ویژگی جدید در ویندوز ۱۰ به نام Sandbox
تلگرام و اضافه کردن متن به عکسهای خود!تلگرام و اضافه کردن متن به عکسهای خود!
معرفی جدیدترین لپ تاپ مک بوک ایر ۲۰۱۸ اپلمعرفی جدیدترین لپ تاپ مک بوک ایر ۲۰۱۸ اپل
تلگرام و پیام رسان پینگل رقیب جدی آن!تلگرام و پیام رسان پینگل رقیب جدی آن!
معرفی گوشی جدید هوآوی به نام هواوی وای ۷ پرومعرفی گوشی جدید هوآوی به نام هواوی وای ۷ پرو
باتری موبایل و لپ تاپ و علایم انفجار آنها!باتری موبایل و لپ تاپ و علایم انفجار آنها!
آشنایی با قابلیت Aero Shake در ویندوز ۷آشنایی با قابلیت Aero Shake در ویندوز ۷
فیلترشکن هایی که نباید استفاده شوند!فیلترشکن هایی که نباید استفاده شوند!
روشی برای برداشتن لست سین در اینستاگرامروشی برای برداشتن لست سین در اینستاگرام
راهنمای خرید پاوربانک و نکاتی درباره آنراهنمای خرید پاوربانک و نکاتی درباره آن
لپ تاپ جدید ایسوس در MWC 2017 را ببینیدلپ تاپ جدید ایسوس در MWC 2017 را ببینید