پیاده سازی SCRUM – قسمت اول

در سال هایی که در امر مدیریت پروژه نرم افزاری بودم و کار در این زمینه، مهمترین مشکل افراد ناتوانی در پیاده سازی مطالب تئوریک در عمل است. شروع قسمت اول : تجهیزات خود را آماده کنید در گام اول ما نیاز داریم که یک گروه اسکرام تشکیل دهیم. این گروه برای مدیریت تولید محصول و با راهبری اسکرام‌مستر فعالیت خواهند کرد. گفتم محصول نه پروژه ! اسکرام محصول محور است نه پروژه محور و تمام تلاشش برای تکمیل یک محصول است ولی ممکن است در یک پروژه چندین محصول باشد. قدمی بعدی پیدا کردن مالک محصول است شما باید یک...
Continue reading...

SCRUM چیست؟

در طی این مقاله مروری بر اسکرام در دو بخش کلی خواهیم داشت. بخش اول اسکرام چیست ؟ اسکرام یک فریم وورک توسعه نرم افزار از سری متدهای تفکرAgile می باشد . اسکرام یک Framework یا فرآیند؟ مسئله این است در این موضوع کاملا بین متخصصان اسکرام دوگانگی وجود دارد. اشخاصی مانند کن شوئبر (مبدع اسکرام) دائما از لفظ فریم ورک استفاده می کنند و تاکید می نمایند که همه باید این مورد را قبول داشته باشند ولی بعضی دیگر از دوستان از لفظ فرآیند و یا متدولوژی برای اسکرام استفاده می کنند . با استناد به اصل اسکرام و...
Continue reading...

Fail سریع خوب است

یکی از مزایای سوییچ کردن به روش چابک، رویارویی سریع با شکست است (منظور از شکست احتمال دارد به جایی برسید که کل پروژه تعطیل شود) برای روشن شدن مطلب ,  در مورد نحوه کار پروژه های waterfall فکر کنید. نیازهای کسب‌کار به ویژگی نرم افزار تبدیل می شود. تیم توسعه این ویژگی ها را بررسی و شروع به طراحی و ساخت نرم افزار می کند. چند ماه بعد گروه توسعه با جلال و شکوه و طی مراسم شیرینی خورانی نرم افزار را به مشتری نشان می دهند .  تاریخ نشان داده است که معمولا این شادی به طول نخواهد...
Continue reading...

تست نرم‌افزار در Agile Software Development

همان‌طور که می‌دانید Unit Testing به معنای تست کردن قسمت کوچکی از برنامه است که ماجول یا یونیت برنامه نام دارد و می‌تواند در پیدا کردن اشکالات برنامه بسیار مؤثر واقع شود، اما در حقیقت نوشتن یک Unit Test بیشتر عملی است که در قسمت طراحی نرم‌افزار به کار می‌رود تا در قسمت Verification یا اشکال‌یابی، و می‌تواند نظرات کاربران را بگیرد.  به این معنا که وقتی کاربری در مورد سیستم نظر داد که مشکلی در Unit وجود دارد و آن مشکل در Unit Testing حل شد، در قسمت‌های بعدی نمی‌توان از او برای آن قسمت از برنامه نظرخواهی کرد. علاوه بر...
Continue reading...

Agile Software Development

Agile Software Development – شیوه‌ای جدید در تولید نرم‌افزار در طراحی یک نرم‌افزار رعایت اصول استاندارد طراحی، استفاده از الگوهای آماده و بهره‌گیری از روش‌های نوین بسیار مهم است، ولی نکته مهم این است که در اصل کاربران، باعث می‌شوند یک پروژه نرم‌افزاری به نتیجه برسد. یعنی فناوری و پروسه استفاده شده، در حقیقت در رده دوم اهمیت قرار دارند. بسیاری از ما با پروژه‌های نرم‌افزاری‌ای که بدون هیچ‌گونه اصولی تهیه می‌شوند، مواجه شده‌ایم و دیده‌ایم که کار با این گونه پروژه‌ها تا چه اندازه مشکل است. در این پروژه‌ها مشکلات عمده‌ای که پیش میآیند عبارتند از: عدم توانایی تولیدکنندگان...
Continue reading...