پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک

word 1 MB 30598 90
1392 کارشناسی ارشد مهندسی کامپیوتر
قیمت: ۱۱,۷۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • پایان‌نامه برای دریافت درجه کارشناسی ارشد در رشته مهندسی کامپیوتر(M.Sc)

    گرایش نرم‌افزار

    چکیده

    استفاده از روش های چابک در توسعه نرم افزار به جای روشهای سنتی چندی است در حال گسترش است. این روشها که به عنوان واکنشی به مشکلات موروثی روشهای سنتی ارائه شده اند، تحقق اهداف و ارزشهای نوینی را وعده داده اند. بر خلاف روشهای سنتی، این روشها سعی دارند تا فرایند توسعه نرم افزاری چابکی را در سازمان بنا نهند که در نتیجه آن هم مشتری و هم سازمان از نتایج راضی باشند. انطباق کامل با روشهای چابک به دلیل تمرکز آنها بر افراد و نه فرایند ها، در کوتاه مدت میسر نبوده و نیازمند زمان مناسبی می باشد. بدین جهت، هر چه سازمان چابکی بیشتری بتواند فراهم نماید، ارزشهای چابکی بیشتری را میتواند برای خود و مشتریانش فراهم نماید. با توجه به نیاز به ابزار سنجش چابکی، در این تحقیق سعی شده است که مدل اندازه گیری چابکی فراهم گردد که بر اساس معیارهای قابل پذیرش جهانی، بتواند میزان چابکی را در سازمانهای نرم افزاری محاسبه نماید. اگر چه سنجش کمی یک ارزش کیفی شاید دقت لازم را نداشته باشد، اما می تواند به عنوان معیاری برای بهبود و ارتقا چابکی در سازمان به کار گرفته شود. در این تحقیق، به جای تمرکز بر روشهای چابک، تمرینات چابک به عنوان زیربنای مدل اندازه گیری در نظر گرفته شده اند. بدین ترتیب مدل طراحی شده، مستقل از روشهای توسعه بوده و می تواند در همه شرکتها، حتی شرکتهایی که فقط بخشی از روشهای چابک را به کار گرفته اند، مورد استفاده قرار گیرد.

    کلمات کلیدی : مدلسازی چابک، معماری سازمانی چابکی ، روش های چابک ، مدلسازی چابک

     

    فصل اول : کلیات تحقیق

     

    1-1 مقدمه

    بیش از 60 سال است که شرکتهای تولید کننده نرم افزار از روشهای سنتی برای تولید محصولات نرم افزاری خود استفاده می کنند. در این مدت فرصت مناسبی بوده که این روشهای توسعه به طور مناسبی مدون شده و به نوعی استاندارد مناسبی برای توسعه نرم افزار در اختیار توسعه دهندگان قرار دهند. از اوائل قرن جدید و همزمان با توسعه روز افزون اینترنت و وب و همچنین فراگیر شدن استفاده از بسته های نرم افزاری مشکلات سنتی روشهای توسعه نرم افزار بیش از پیش خود را نشان دادند. تاخیر در تحویل بسته های نرم افزاری، امکان عدم تغییر در نیازمندی های مشتریان و در نهایت نارضایتی مشتریان موارد است که توسعه نرم افزار با روشهای سنتی را نج میدهد. ظهور روشهای نوین توسعه که مستلزم ساز و کاری جدید در محیط توسعه نیز می باشد به عنوان راه حلی برای مشکلات مزبور در نظر گرفته شد. روشهای نوین که آنها را روشهای توسعه چابک نامیده اند، سعی دارند که با ارائه فرایندهای توسعه جدید چابکی مناسبی به شرکتهای تولید کننده نرم افزار بدهد.

    1-2 بیان مسأله اساسی تحقیق به طور کلی

    امروزه روشهای چابک در توسعه نرم افزار (Agile methodologies) در حال جایگزینی با روشهای سنتی توسعه نرم افزار(Traditional methodologies) هستند [1]. روشهای چابک که به نوعی واکنشی به روشهای سنتی هستند، ارزشهای متفاوتی را در مقایسه با روشهای سنتی دنبال میکنند [2].  یکی از مسائلی که شرکتها و سازمانهای نرم افزاری در مسیر تغییر روش خود از سنتی به چابک به کرات با آن مواجه هستند، اندازه گیری میزان چابکی است که در هر برهه زمانی حاصل نموده اند. نکته در اینجاست که این تغییر، فرایندی ناگهانی نیست و گاها بیش از یکسال زمان نیاز دارند و گاها با دشواری های فراوانی نیز همراه است [3]. این امر، میزان نیاز به یک ابزار سنجش را بیشتر نشان میدهد. متاسفانه ابزار سنجشی که توافق مناسبی بر آن باشد هنوز وجود ندارد. معیار اندازه گیری مناسب، باید به نحوی باشد که ضمن داشتن پشتوانه علمی مناسب، از سادگی نیز برخوردار بوده و به راحتی توسط شرکتها و سازمانها ( حتی سازمانهای کوچک) قابل بهره برداری باشد. استفاده از اصول چابک به عنوان معیاری که توافق کلی بر روی آن وجود دارد میتواند در این راستا کمک کننده باشد [4]. بر این اساس ارزشهای چابک که در بیانه چابک [2]  و الحاقیه آن مطرح شده اند به عنوان معیاری برای چابک سازی سازمانی در نظر گرفته شود. اما مسلما ارزشها و اصول چابک برای آنکه بتوانند در یک محیط عملی مورد قضاوت واقع شوند چندان مناسب نیستند. چرا که هر کدام از روشهای چابک مانند اسکرام(Scrum) [5]یا اکس پی (XP) [6]و یا روشهای دیگر دارای فعالیت ها، نقش ها و ویژگی های خاص بوده که با روشهای دیگر قابل مقایسه نخواند بود.  به عنوان یک پیشنهاد بهتر استفاده از تمرینات چابک به عنوان هسته اولیه ابزار اندازه گیزی مزبور می باشد. در واقع بر اساس تطبیق این تمرینات در سازمان و میزان تمریناتی که در سازمان به صورت نهادینه شده در حال استفاده می باشند، می توان چابکی سازمان را برآورد کرد. این معیار زیربنای اندازه گیری مورد نظر این تحقیق می باشد.

    1-3 ضرورت تحقیق

    شرکتهای متعددی که در حال تغییر روش های توسعه نرم افزار خود از روشهای سنتی به روشهای چابک هستند، در مقاطع زمانی مختلف نیازمند بررسی میزان پیشرفت خود در چابک سازی هستند. این مساله هم میتواند در راستای بررسی پتانسیل ارزشهای قابل حصول در سازمان کمک نماید و هم می تواند با ایجاد فضای مثبت ناشی از پیشرفت فرایند چابک سازی در روحیه تیمی افراد در افزایش راندمان و منافع سازمانی مفید واقع شود. داشتن ابزاری که بتواند بر اساس یک تحقیق علمی میزان چابکی را نشان دهد میتواند به شدت مورد توجه شرکتهای مزبور باشد. همچنین این ابزار میتواند یک مبنایی برای تعیین فرایندهای آتی قابل انتخاب برای چابک کردن سازمان باشد. به این ترتیب علاوه بر بحث اندازه گیری راهنمای مناسبی نیز برای فرایند تغییر رفتار سازمان نیز خواهد بود.

    1-4 نوآوری

    آنچه این تحقیق را در نوع خود نوآور می نماید، ارائه یک مدل اندازه گیری چابکی است که وظیفه اصلی آن نشان دادن میزان چابکی است که تا کنون سازمان به آن دست یافته است. همچنین در یک گام اضافه میتواند تمریناتی که هنوز در سازمان نهادینه نشده اند را با میزان تاثیر آنها در چابکی سازمان نشان دهد.

    چنین مدلی میتواند به عنوان راهنمایی برای چابک تر شدن شرکتهای نرم افزاری باشد. شاید به عنوان یک ابزار کمکی در فرایند چابک شدن شرکتهای نرم افزاری نیز قابل به کار گیری باشد.

    1-5 اهداف

    در پایان این پروژه، یک ابزار ساده اندازه گیری چابکی در قالب یک برنامه کاربردی یا وب سایت تهیه خواهد شد. در این وب سایت سازمانها بایستی سوالاتی را که از آنها در مورد تمرینات چابک پرسیده می شود پاسخ دهند. بر اساس این پاسخ ها، میزان چابکی سازمان نشان داده می شود.

    سازمانها یا شرکتهای تولید کننده نرم افزار با کمک این ابزار میتوانند رشد خود در دستیابی به آرمانهای چابکی را محک بزنند. این ابزار هم برای شرکتهایی که خواهان استفاده از روشهای چابک میباشند مناسب است و هم برای آنانی که در حال استفاده از برخی از جنبه های چابکی می باشند.

     

    1-6 فرضیه های تحقیق

    موارد زیر در این تحقیق مفروض می باشند:

    این تحقیق به بحث تطبیق متدولوژی های چابک با سازمان و پروژه های نرم افزاری وارد نخواهد شد.

    به دلیل نیاز به ارائه یک مدل مورد پذیرش عمومی، تنها مدارک و مستنداتی که در چارچوب روشهای چابک مورد توجه شرکتهای نرم افزاری است، مورد توجه قرار میگیرید.

    این تحقیق مستقل از متدولوژی می باشد. بدین ترتیب همه سازمانها و شرکتهای نرم افزاری که در همه یا بخشی از پروژه های خود، یک یا چند روش توسعه نرم افزار چابک را به کار میگیرند، قادر به بهره گیری از نتایج تحقیق خواهند بود.

    1-7 روش تحقیق

    انجام هر کار تحقیقاتی مستلزم بستر سازی مناسب برای انجام موضوع تحقیق است. اهمیت استفاده از روش تحقیق مناسب تا حدی است که می تواند به شدت نتایج تحقیق را متاثر سازد. از این روی است که در همه تحقیقات پژوهشی به منطور شفاف سازی و ایجاد درک مناسب از نتایج تحقیق، پیش از شروع عملیات تحقیق، روش و گامهای انجام پژوهش به صورت مشخص بیان می گردد.

    در این تحقیق موارد زیر انجام خواهد شد:

    استخراج معیارهای اندازه گیری چابکی

    کلاسه بندی کردن این معیارها به منظور سادگی تفسیر نتایج

    تعیین وزن هر کدام از معیارها بر اساس نظر سنجی از متخصصین

    تدوین ساختار مدل اندازه گیری

    پیاده سازی ابزار

    6-

     

     

     

    فصل دوم : مروری بر ادبیات و پیشینه تحقیق

     

     

    2-1 مقدمه

    سرعت زندگی نسبت به گذشته بسیار بیشتر شده است. کامپیوترها هر روز سریع تر و قوی تر از قبل می شوند و انسانها در تمام شبانه روز از طریق کابل، مودم، تلفن همراه و ابزارهای الکترونیکی دیگر همواره متصل به شبکه های کامپیوتری اند. همه چیز در حال تغییر است و تغییر جزو لاینفک زندگی الکترونیکی مردم شده است. در این میان مهندسی نرم افزار به عنوان تامین کننده فرایندهای لازم برای زندگی دیجیتالی ملزم به رشد سریع و عقب نماندن از قافله لجام گسیخته رشد تکنولوژی است.

    مهندسی نرم افزار بایستی فرایندهایی را تولید کند که نه تنها به تغییرات پاسخ دهند بلکه از آنها استقبال هم بنمایند. این فرایندها و متدها، روشهای چابک نامیده می‌شوند و امروزه جای خود را در شرکتهای تولید کننده نرم افزار در برخی از نقاط دنیا یافته اند و در برخی دیگر کم کم  نمود خواهند یافت.

    در این بخش به بررسی این روشها و جایگاه آنها در مهندسی نرم افزار خواهیم پرداخت. در بخش اول این گزارش تاریخچه ای از چگونگی شکل گیری این روشها ارائه خواهد شد، سپس در بخش بعد ضمن بررسی مفهوم چابکی متدهای معروف را بررسی خواهیم کرد.

    2-2 تاریخچه

    روشهای چابک به عنوان یک واکنش به مشکلات روشهای سنتی تولید نرم افزار معرفی شده اند. روشهای سنتی با مشکلاتی چون «مستند سازی سنگین، قراردادهای کاری دقیق، برنامه ریزی کامل، طراحی نهایی و ...» شناخته می‌شوند[2]. در واقع در روشهای سنتی، کار با یک مستند دقیق و کامل به نام "نیازمندیهای سیستم" شروع می‌شود، سپس طراحی معماری و طراحی سطح بالا و جزئیات به دنبال آن باید اجرا گردند و کار با توسعه (تولید کد) و بازرسی دنبال می گردد. از نیمه دوم دهه نود برخی از صاحبنظران نرم افزار به این نتیجه رسیدند که شروع فرایند تولید نرم افزار با فازهای سنگین و دقیق مطالعه نیازمندی ها و طراحی کامل، بسیار وقت گیر و در مواقعی غیر قابل انجام است[7]. در واقع رشد سریع صنعت و لزوم تغییر نیازمندیها مجالی برای استفاده از روشهای سنتی نمیداد. بسیاری از مشتریان در ابتدای کار نمی‌توانستند نیازمندی های خود را به طور دقیق و کامل بیان کنند، در عین حال انتظارات آنها از محصول نهایی هم فراتر از بیان اولیه آنها بود. در نهایت برخی از متخصصین به طور مجزا به ایجاد تغییراتی در فرایندهای تولید نرم افزار خود نمودند که به نحوی بتوانند پاسخگوی مشکل فوق باشند. در واقع با ایجاد فعالیتهای جدید در فرایند توسعه نرم افزار اقدام به ایجاد ارزشهایی در فرایند توسعه نموده اند که تا حدی می توانست مسائل مربوط به تغییر سریع صنعت و نیاز آن را جوابگو باشد. بررسی اجمالی این روشها نشان می‌دهد که در خیلی از موارد این روشها فعالیت کاملاً جدیدی را نشان نمی دهند]8[، آنچه در این روشها بیشتر به چشم میخورد توجه به ارزشهایی است که نسبت به روشهای سنتی پررنگ تر شده اند. بهبود فرایند نرم افزار فرایندی تکاملی است به نحوی که فرایندهای جدیدتر بر پایه توفیق ها و یا شکستهای فرایندهای پیشین ساخته می‌شوند و شاید حقیقت امر این باشد که برای شناخت روشهای چابک لازم باشد فرایندهای پیش از این روشها نیز بررسی شوند.

    روش (مدل) آبشاری [1] اولین فرایند توسعه نرم افزار بوده]9[که با شناخت و تحلیل کامل نیازمندیهای کاربر شروع می‌شود. برای این امر تحلیل گران لازم است تا چندین ماه به طور کامل همه نیازمندیهای کاربر را بررسی کرده و مستندات دقیقی در خصوص آنها تهیه و به تأئید کاربر برسانند. سپس برنامه نویسان با بررسی کامل این مستندات اقدام به طراحی دقیق جزئیات کاربردی نرم افزار نموده و پس از آن مرحله تولید (کدنویسی) سیستم انجام میگیرد و در نهایت پس از تست کامل سیستم، محصول به بازار عرضه می‌گردد [10].

    این فرایند در حالت تئوری خوب و مناسب به نظر میرسد، اما در عمل برخلاف آنچه به نظر میرسد،  در موارد زیادی درست کار نمی‌کند. در درجه اول کاربران پس از مدتی نظراتشان عوض می شود و گاهاً پس از ماهها و یا حتی سالها علیرغم تهیه مستندات کامل از نیازمندیهای کاربران، آنها هنوز مطمئن نیستند که دقیقاً چه چیزی نیاز دارند. در درجه دوم پس از مدتی نیازمندیهای گفته شده، در ذهن تولیدکنندگان نقش می‌بندد و تغییر این موارد دشوارتر از قبل خواهد شد. روشهای سنتی وقتی نرخ تغییرات در نیازمندیها پایین باشند، هنوز هم مناسب هستند]11[، چرا که کاربران، تولیدکنندگان، معماران و مدیران سیستم لازم است که همه تغییرات (هرچند کوچک) را در نظر بگیرند و لحاظ نمایند. در مدل آبشاری فرض بر این است که نیازمندیها تغییر نمی یابند و تا پایان پروژه ثابت هستند و برای اطمینان از این امر، در مواردی تائید رسمی کاربر را نیز دریافت می‌کنند. اما در نهایت ممکن است، محصول کاربردی مناسبی ایجاد نگردد. تکنیکهای توسعه نرم افزار تدریجی (تکاملی) و تکراری برای حل نقص  فوق، بر پایه تقسیم چرخه تولید نرم افزار آبشاری به چندین قسمت، بنا نهاده شده اند [12]. روش توسعه تدریجی تأکید بر کاهش زمان توسعه دارد و برای حصول به این امر، اقدام به شکست پروژه به چندین بخش می نماید که این بخشها می توانند در زمان توسعه همپوشانی داشته باشند، اگرچه این تکامل باز هم بر اساس مدل آبشاری انجام میگیرد. در واقع تنها دستاورد این روش (ها) کاهش زمان توسعه است و کماکان مسائل مربوط به نیازمندیها و مشکل تغییر در آنها وجود دارد.

     

    Abstract

    Employing Agile methods instead of traditional methods in software development is increasing strongly. Agile methods as a reaction to inherence problems of Agile methods, promise new goals and values. Unlike traditional methods, Agile methods are trying to establish an agile (not rigid) development process in software companies and organizations results in the company and customer satisfaction. Comprehensive Agile adoption is not an overnight and quick process because of their focus on individuals rather than processes. So far, there is no acceptable tool for assessing Agility of companies, therefore, this research proposed an Agility assessment model to evaluate the Agility of software companies based on universal metrics. Although employing a quantitative measure for evaluating a qualitative phenomenon is subject to criticisms, it is so helpful to improve and enhance the Agility degree of companies. In this research, Agile practice instead of Agile methods were used as the underpinning of the assessment model. Hence, the proposed model is usable in all the companies, even those who partially adapted to a specific Agile method.

     

    Keywords:

    Agility , Agile Enterprise Architecture , Agile Methods , Agile Modeling

  • فهرست:

    چکیده

    فصل اول : کلیات تحقیق

    مقدمه...................................................................................................... 3

    بیان مساله اساسی تحقیق بطور کلی............................................................ 3

    ضرورت تحقیق....................................................................................... 4

    نوآوری................................................................................................... 4

    اهداف..................................................................................................... 4

    فرضیه های تحقیق.................................................................................... 5

    روش تحقیق............................................................................................ 5

    فصل دوم: مروری بر ادبیات و پیشینه تحقیق

        2-1- مقدمه.......................................................................................................... 7

        2-2- تاریخچه..................................................................................................... 7

        2-3- بیانیه چابک................................................................................................. 9

        2-4- توسعه نرم افزار چابک............................................................................... 12

        2-5- مجموعه ای از روش های چابک................................................................ 13

            2-5-1 روش XP.......................................................................................... 13

            2-5-2 اسکرام scrum................................................................................. 17

            2-5-3 خانواده کریستال................................................................................. 20

            2-5-4 توسعه ویژگی رانده (FDD)................................................................ 22

            2-5-5 توسعه ناب........................................................................................ 24

            2-5-6 روش توسعه سیستم های پویا (DSDM)............................................. 25

            2-5-7 مدلسازی چابک................................................................................. 27

        2-6- کارهای مرتبط........................................................................................... 29

            2-6-1 چابکی نسبی..................................................................................... 29

            2-6-2 ابزار سنجش thoughtworks.......................................................... 30

            2-6-3 سایر موارد......................................................................................... 31

    فصل سوم: روش اجرای تحقیق

        3-1- مقدمه....................................................................................................... 33

        3-2- نحوه گزینش معیارهای ارزیابی................................................................... 33

        3-3- معیارهای ارزیابی....................................................................................... 34

        3-4- مدلسازی.................................................................................................. 58

        3-5- جمع آوری اطلاعات................................................................................. 59

    فصل چهارم: تجزیه وتحلیل داده ها

        4-1- مقدمه....................................................................................................... 61

        4-2- تحلیل داده ها........................................................................................... 61

            4-2-1 جامعه آماری...................................................................................... 61

            4-2-2 تحلیل اولیه........................................................................................ 62

            4-2-3 محاسبه اوزان مدلسازی.................................................................... 63

            4-2-4 نحوه استفاده از مدل اندازه گیری.......................................................... 63

            4-2-5 پیاده سازی نرم افزار........................................................................... 66

    فصل پنجم: نتیجه گیری و پیشنهادات

        5-1- نتیجه گیری............................................................................................... 68

        5-2- پیشنهادات................................................................................................ 68

        منابع و مآخذ....................................................................................................... 69

            فهرست منابع انگلیسی.................................................................................... 70

        ضمائم و پیوست ها............................................................................................. 73

            پیوست 1- پرسشنامه...................................................................................... 74

            پیوست2- داده های خام................................................................................. 78

        چکیده انگلیسی................................................................................................... 81

     

    منبع:

    فهرست منابع انگلیسی

     

    [1]        D. Cohen, M. Lindvall, and P. Costa, "An Introduction to Agile Methods," Advances in computers, vol. 62, pp. 1-66, 2004.

    [2]        K. Beck, A. Cockburn, R. Jeffries, and J. Highsmith. (2001, July 2013). Agile manifesto. Available: http://www.agilemanifesto.org

    [3]        T. J. Gandomani, H. Zulzali, A. A. A. Ghani, A. M. Sultan, and M. Z. Nafchi, "Obstacles to moving to agile software development; at a glance," Journal of Computer Science, vol. 9, pp. 620-625, 2013.

    [4]        L. Williams, "What agile teams think of agile principles," Communications of the ACM, vol. 55, pp. 71-76, 2012.

    [5]        M. Cohn, Succeeding with Agile: Software Development Using Scrum. Boston, MA: Addison-Wesley Professional, 2009.

    [6]        Chromatic, Extreme Programming Pocket Guide. Sebastopol, CA: O'Reilly Media, 2013.

    [7]        J. A. Highsmith, Agile Software Development Ecosystems. Boston, MA: Addison-Wesley Professional, 2002.

    [8]        J. Highsmith and A. Cockburn, "Agile software development: The business of innovation," Computer, vol. 34, pp. 120-122, 2001.

    [9]        R. W.W., "Managing the development of large software systems: Concepts and techniques," in WESCON, 1970, pp. 1-9.

    [10]      K. Beck and C. Andres, Extreme Programming Explained: Embrace Change, 2nd ed. Boston, MA: Addison-Wesley Professional, 2004.

    [11]      B. Boehm, "Get ready for agile methods, with care," Computer, vol. 35, pp. 64-69, 2002.

    [12]      B. W. Boehm, "Spiral model of software development and enhancement," Computer, vol. 21, pp. 61-72, 1988.

    [13]      R. L. Glass, "Agile versus traditional: Make love, not war," Cutter IT Journal vol. December, pp. 12-18, 2001.

    [14]      A. Cockburn and J. Highsmith, "Agile software development: The people factor," Computer, vol. 34, pp. 131-133, 2001.

    [15]      J. Coldewey, "Agile software development - Introduction and overview," Agile Entwicklung Web-basierter Systeme: Eiführung und Überblick, vol. 44, pp. 237-248, 2002.

    [16]      T. C. Team, "Chrysler goes to “extremes"," Distributed Computing, vol. Cotober, pp. 24-28, 1998.

    [17]      K. Schwaber, Agile Project Management with Scrum (Microsoft Professional) 1ed.: Microsoft Press, 2004.

    [18]      K. S. Rubin, Essential Scrum: A Practical Guide to the Most Popular Agile Process. Michigan: Addison-Wesley Professional, 2012.

    [19]      D. Tudor and I. Tudor, The DSDM Atern Student Workbook: A Guide to the Definitive Agile Framework Lancashire, UK: Galatea Training Services Ltd, 2010.

    [20]      S. Ambler and M. Lines, Disciplined Agile Delivery: A Practitioner's Guide to Agile Software Delivery in the Enterprise. Boston, MA: IBM Press, 2012.

    [21]      S. Ambler. (2011, June 2013). Introduction to agile modeling (AM). Available: http://www.ronin-intl.com/publications/agileModeling.pdf

    [22]      S. Ambler, Agile Modeling: Effective Practices for eXtreme Programming and the Unified Process. New York: John Wiley and Sons, 2002.

    [23]      L. Williams, K. Rubin, and M. Cohn, "Driving Process Improvement via Comparative Agility Assessment," presented at the Proceedings of the 2010 Agile Conference, 2010.

    [24]      K. Rubin, M. Cohn, and L. Williams. (2010, June 2013). Comparative Agility (CA). Available: http://comparativeagility.com/

    [25]      S. Soundararajan and J. D. Arthur, "A structured framework for assessing the "goodness" of agile methods," in 18th IEEE International Conference and Workshops on Engineering of Computer-Based Systems, ECBS 2011, Las Vegas, NV, 2011, pp. 14-23.

    [26]      S. Soundararajan, J. D. Arthur, and O. Balci, "A methodology for assessing agile software development methods," Dallas, TX, 2012, pp. 51-54.

    [27]      A. Qumer and B. Henderson-Sellers, "An evaluation of the degree of agility in six agile methods and its applicability for method engineering," Information and Software Technology, vol. 50, pp. 280-295, 2008.

    [28]      A. Sidky, J. Arthur, and S. Bohner, "A disciplined approach to adopting agile practices: the agile adoption framework," Innovations in Systems and Software Engineering, vol. 3, pp. 203-216, 2007.

    [29]      A. Sidky, "A Structured Approach to Adopting Agile Practices: The Agile Adoption Framework," PHD Thesis, Faculty of Engineering, Virginia Polytechnic Institute and State University, Virgiana, USA, 2007.

    [30]      H. C. Esfahani, E. Yu, and M. C. Annosi, "Strategically balanced process adoption," in International Conference on Software and Systems Process (ICSSP 2011), Waikiki, Honolulu, HI, 2011, pp. 169-178.

    [31]      A. Cockburn, Agile software development. Boston, MA: Pearson Education, Inc., 2002.

    [32]      O. Nierstrasz and M. Lungu, "Agile software assessment (Invited paper)," in 20th IEEE International Conference on Program Comprehension, ICPC 2012, Passau, 2012, pp. 3-10.

    [33]      D. Spinellis, "Agility drivers," IEEE Software, vol. 28, 2011.

    [34]      S. Vinodh and S. R. Devadasan, "Twenty criteria based agility assessment using fuzzy logic approach," International Journal of Advanced Manufacturing Technology, vol. 54, pp. 1219-1231, 2011.

    [35]      F. Petrillo and M. Pimenta, "Is agility out there? Agile practices in game development," Sao Carlos, 2010, pp. 9-15.

    [36]      Agile-Alliance. (2011, July 2013). Guide to Agile Practices. Available: http://guide.agilealliance.org/

    [37]      S. Ambler. (2009, July 2013). Agile Practices Survey Results. Available: http://www.ambysoft.com/surveys/practices2009.html

    [38]      J. Appelo. (2009, July 2013). The Big List of Agile Practices. Available: http://www.noop.nl/2009/04/the-big-list-of-agile-practices.html

    [39]      A. Cockburn, Agile Software Development: The Cooperative Game 2nd ed. Boston, MA: Addison-Wesley Professional, 2006.

    [40]      Agile-Alliance. (2013, Aug. 2013). Guide to Agile practices. Available: www.agilealliance.org

    [41]      K. Beck, Test Driven Development: By Example. Boston, MA: Addison-Wesley Professional, 2003.

    [42]      D. Huizinga and A. Kolawa, Automated Defect Prevention: Best Practices in Software Management Hoboken, NJ: Wiley-IEEE Computer Society Press, 2007.

    [43]      K. Beck, Extreme Programming Explained: Embrace Change. Boston, MA: Addison-Wesley Professional, 1999.

    [44]      M. Fowler, K. Beck, J. Brant, W. Opdyke, and D. Roberts, Refactoring: Improving the Design of Existing Code. Boston, MA: Addison-Wesley Professional, 1999.

    [45]      D. Astels, Test-Driven Development: A Practical Guide: A Practical Guide. New Jersey, USA Prentice Hall, 2003.

    [46]      R. C. Martin, Clean Code: A Handbook of Agile Software Craftsmanship. New Jersey, USA Prentice Hall, 2008.

    [47]      S. Augustine, managing agile projects. New Jersey, USA: Prentice Hall, 2005.

    [48]      C. Larman, Agile and Iterative Development: A Manager's Guide. Boston, MA: Addison-Wesley Professional, 2004.

    [49]      K. Schwaber and M. Beedle, Agile Software Development with Scrum. New Jersey, USA Prentice Hall, 2001.

    [50]      M. Poppendieck and T. Poppendieck, Leading Lean Software Development: Results Are not the Point Boston, MA: Addison-Wesley Professional, 2009.

    [51]      D. J. Anderson, Lessons in Agile Management: On the Road to Kanban. USA: Blue Hole Press, 2012.

    [52]      E. Miranda and P. Bourque, "Agile monitoring using the line of balance," Journal of Systems and Software, vol. 83, pp. 1205-1215, 2010.

    [53]      R. C. Martin, Agile Software Development: principles, patterns, and practices. New Jersey, USA Prentice Hall, 2002.

    [54]      R. Hoda, J. Noble, and S. Marshall, "Self-organizing roles on agile software development teams," IEEE Transactions on Software Engineering, vol. 39, pp. 422-444, 2013.

    [55]      M. Cohn, User Stories Applied: For Agile Software Development, 1 ed. Boston, MA: Addison-Wesley, 2004.

    [56]      M. Cohn, Agile Estimating and Planning. New Jersey, USA: Prentice Hall, 2005.


تحقیق در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, مقاله در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, پروژه دانشجویی در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, پروپوزال در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, تز دکترا در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, تحقیقات دانشجویی درباره پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, مقالات دانشجویی درباره پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, پروژه درباره پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, گزارش سمینار در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, پروژه دانشجویی در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, تحقیق دانش آموزی در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, مقاله دانش آموزی در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک, رساله دکترا در مورد پایان نامه ارائه مدلی برای اندازه گیری میزان چابکی در شرکت های نرم افزاری بر اساس اصول چابک

پایان نامه جهت دریافت درجه کارشناسی ارشد مدیریت صنعتی فرایند جهانی شدن، به وجود آمدن سازمان‌تجارت جهانی و یکپارچگی بازارهای جهانی، پیشرفتهای سریع و بنیادین تکنولوژیک، پیشرفت های جدید در زمینه‌فناوری اطلاعات، افزایش تغییرات سریع در الگوهای مصرف و تقاضا، تبیین کنترل های آلودگی محیط زیست و حفظ منابع انرژی، کمبود منابع و هزینه‌های بالای آنها، چالشهایی هستند که بنگاه‌ها و صنایع مختلف ...

پایان نامه جهت دریافت درجه کارشناسی ارشد مدیریت صنعتی فرایند جهانی شدن، به وجود آمدن سازمان‌تجارت جهانی و یکپارچگی بازارهای جهانی، پیشرفتهای سریع و بنیادین تکنولوژیک، پیشرفت های جدید در زمینه‌فناوری اطلاعات، افزایش تغییرات سریع در الگوهای مصرف و تقاضا، تبیین کنترل های آلودگی محیط زیست و حفظ منابع انرژی، کمبود منابع و هزینه‌های بالای آنها، چالشهایی هستند که بنگاه‌ها و صنایع مختلف ...

پایان نامه کارشناسی ارشد رشته مهندسی مکاترونیک مقدمه پیشرفت­های اخیر در تولید منعطف و تکنولوژی اطلاعات این امکان را فراهم کرده است که سیستم­های تولیدی بتوانند با هزینه پایین­تر طیف وسیع­تری از محصولات یا خدمات را ارائه نمایند. به­علاوه افزایش رقابت در سطح جهانی منجر به رویارویی صنایع با رویکرد افزایش ارزش مشتری در ارائه محصول یا خدمات شده است. بنابراین لزوم درنظر گرفتن نیازهای ...

پایان نامه کارشناسی ارشد در رشته فناوری اطلاعات چکیده: امروزه معماری سرویس گرا (SOA) به عنوان یک رویکرد مناسب برای بهبود چابکی و افزایش کارایی سیستم ها مورد توجه قرار گرفته است. از آنجا که سازمانها در فرایند استفاده از این فناوری با چالش های زیادی نظیر پیچیدگی طراحی ساختار تصمیم گیری، مدیریت و حاکمیت سرویس هاو نبود فرایندهای حاکمیت مواجه هستند، بنابراین نیازمند یک چارچوب جامع و ...

پایان نامه کارشناسی ارشد دانشکده علوم انسانی گروه مدیریت چکیده با توجه به اهمیتی که برندها در خلق ارزش و افزایش جریانات نقدی ورودی مؤسسات دارند لازم است مدیران واحدها توجه ویژه‌ای به این مقوله مبذول داشته و با تلاش در جهت شکل‌گیری، خلق و حفظ برندی که بتواند انتظارات مصرف‌کنندگان، سهامداران و سایر گروه‌هایی که به نحوی بر ارتباطات سازمانی تأثیرگذارند را برآورده سازد. شناخت عوامل ...

پایان نامه کارشناسی ارشد دانشکده علوم انسانی گروه مدیریت چکیده با توجه به اهمیتی که برندها در خلق ارزش و افزایش جریانات نقدی ورودی مؤسسات دارند لازم است مدیران واحدها توجه ویژه‌ای به این مقوله مبذول داشته و با تلاش در جهت شکل‌گیری، خلق و حفظ برندی که بتواند انتظارات مصرف‌کنندگان، سهامداران و سایر گروه‌هایی که به نحوی بر ارتباطات سازمانی تأثیرگذارند را برآورده سازد. شناخت عوامل ...

پایان نامه برای دریافت درجه کارشناسی ارشد مدیریت صنعتی – تولید صنعتی چکیده در حال حاضر پیچیدگی و پویایی روزافزون محیط‌های تولیدی، کاربرد مدل‌های تحلیلی را در ارزیابی و تصمیم‌گیری آن‌ها با محدودیت‌های قابل توجهی روبه‌رو نموده است. لذا استفاده از شبیه‌سازی رایانه‌ای به‌عنوان ابزاری که قابلیت گسترده‌ای در فرموله‌نمودن سیستم‌های فوق دارد، به‌طور وسیع مورد استقبال قرار گرفته است. با ...

پایان نامه کارشناسی ارشد فیزیولوژی ورزشی(M.A) چکیده: هدف از انجام این پژوهش تعیین شاخص های آنتروپومتریک بازیکنان پست های مختلف فوتبال و هندبال و رابطه آنها با سرعت و چابکی می باشد. 22 مورد شاخص آنتروپومتریک در 58 بازیکن (در هندبال میانگین سن 07/22، قد 61/182، وزن 92/82، وانحراف استاندارد سن 24/2، قد 48/5، وزن 42/5. و درفوتبال میانگین سن 33/25، قد 67/182، وزن 60/76، وانحراف ...

چکیده فرایند جهانی شدن، به وجود آمدن سازمان‌ تجارت جهانی و یکپارچگی بازارهای جهانی، پیشرفتهای سریع و بنیادین تکنولوژیک، پیشرفت های جدید در زمینه‌فناوری اطلاعات، افزایش تغییرات سریع در الگوهای مصرف و تقاضا، تبیین کنترل های آلودگی محیط زیست و حفظ منابع انرژی، کمبود منابع و هزینه‌های بالای آنها، چالشهایی هستند که بنگاه‌ها و صنایع مختلف در عرصه تجارت و فعالیتهای اقتصادی با ان روبرو ...

رشته مديريت صنعتي زمستان 1390 چکيده: تحقيق حاضر در پي يافتن تاثير متقابل مديريت زنجيره تامين و مديريت ارتباط با مشتري در شرکت فولاد اسفراين چگونه است. به منظور پاسخگويي به سوالهاي پژوهش و ني

ثبت سفارش