PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مروری بر واژگان مهندسی نرم افزار



Y@SiN
09-13-2009, 04:05 PM
1- project definition : تعریف پروژه مهمترین کار ابتدایی در یک پروژه است، در این مرحله شما اهداف، محدودیت ها، منابع، عوامل موفقیت و ریسکهای پروژه شناسایی شوند. در موفیت یک پروژه مهمترین مساله آنکه، می گویند همیشه باید از نقطه درست شروع کرد، برای همین باید نقطه شروع را ابتدا به صورت کامل شناسایی کرد و آنها که گفتم را مشخص نمود. تا بتوان یک سازماندهی درست انجام داد، سپس برنامه ریزی درستی کرد و در نهایت ارزیابی کاملی از نحوه اجرا انجام داد.

2- project success :میزان تحقق اهداف پروژه و موفقیت آمیز بودن آن را مشخص می کند، به پیشنهاد برخی ها می توان آن را در چهار سطح بررسی نمود :
- Project Managment Success : بررسی هزینه، زمان و کیفیت پروژه و محصولات آن
- Repeatable Project Managment Success : مرور و مقبولیت سنجی محصولات قابل پیش بینی پروژه ها
-Project Success : سنجش میزان سود حاصل از اجرای پروژه
-Cooperate Success : مطالعه استراتژی های نهاینه شده در اثر اجرای پروژه ها و ارزش افزوده حاصل

3- measuring success : جمله معروفی هست که می گوید اگر بتوانی یک چیز را اندازه بگیری می توانی آن را مدیریت
کنی! در نرم افزار می توان چهار هدف زیر را برای اندازه گیری مشخص کرد:
- برای مشخص سازی (to Characterize) : برای فهم یک موضوع (فرآیند، محصول، منبع یا ... ) و ایجاد یک مبنا و پایه برای بررسی های بعدی
- برای ارزیابی (to Evaluate) : تشخیص وضعیت جاری نسبت به برنامه ریزی ها و اندازه گیری های اولیه و تعیین میزان انحراف
- برای پیش بینی (to Predict) : برای ایجاد امکان برنامه ریزی برای پروژه جاری و پروژه های آتی
- برای بهبود (to Improve) :ارتقاء هر چیز و تشخیص کاستی های یک چیز و حرکت در جهت اصلاح آنها
طبیعتا یک اندازه گیری که در راستای هدف های فوق باشد می تواند موفق گردد و سه چیز اصلی را برای ما روشن کند، سایز ، کیفیت و نحوه صرف زمان و هزینه

4- post-implementation reviews فرایند PIR یک کار تقریبا فرمال است که مدت زمانی پس از پایان پروژه صورت می گیرد. برای اینکه:
-میزان تحقق اهداف پروژه را بدست آوریم.
-کارایی محصول را اندازه بگیریم تا به نیاز آن به بهبود احتمالی در بعد برسیم.
-برای اینکه از پروژه درس بگیریم تا در پروژه های بعدی استفاده کنیم.
این کار معمولا پس از مدتی از پایان پروژه (در پروژه های متوسط و بزرگ بین 6 هفته تا 6 ماه بعد صورت می گیرد) و با طرح سوالات مشخصی در جنبه های مختلف صورت می گیرد و توسط خود تیم پروژه و یا تیمی مستقل صورت می گیرد.

5- project size سایز پروژه که بر مبنای تعداد خطوط برنامه LOC و یا FP Function Point و یا Object Point اندازه گرفته می شود. سایز پروژه از آن جهت مهم است که می توان پیش از آغاز تخمین زد چقدر زمان و منابع برای اجرای پروژه مورد نیاز است.

6 - lines of code معیار اندازه گیری سایز یک برنامه (تعداد خط برنامه) که معمولا پیش از آغاز پروژه بر اساس تجربیات برنامه نویس و یا مشاهده نمونه های مشابه تخمین زده می شود تا بر اساس آن مدت زمان و تلاش مورد نیاز برای پروژه بدست آید. معمولا به صورت مخفف LOC نام برده می شود و در زبانهای ساختیافته و محیط های برنامه سازی غیر ویژوال بیشتر کاربرد داشت.

7- effort/duration میزان تلاش در واحد زمان که به صورت نفر-ماه و یا نفر-ساعت بیان می شود. پس از تخمین سایز پروژه شما باید محاسبه کنید که از تخصص های مختلف در پروژه جاری چه مقدار نیاز دارید، مثلا چند نفر-ماه برنامه نویس و یا چند نفر-ماه گرافیست یا .... در هنگام اجرای پروژه نیز یکی از وظائف مدیر پروژه مطابقت آمار واقعی کار انجام شده با تخمین های اولیه است.

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

9- project life cycle : می توان چرخه حیات یک پروژه را در چهار مرحله شناسایی کرد:
- آغاز : شامل شروع پروژه با مستند سازی محیط تجاری، امکان سنجی، ارجاعات و چیدن تیم پروژه و سازمان کاری آن
- برنامه ریزی: شامل برنامه ریزی و تهیه نقشه راه پروژه با ایجاد برنامه های پروژه، برنامه منابع، برنامه مالی، برنامه کیفیت، برنام مقبولیت و برنامه ارتباطات پروژه
-اجرا: شامل ساخت محصولات قابل عرضع پروژه بر مبنای مدیریت محدوده، هزینه، کیفیت و ریسکهای پروژه
- اختتام: شامل عملیات پایانی پروژه، رها سازی منابع، تحویل محصولات قابل عرضه به مشتریان و تکمیل مرور پس از پیاده سازی (PIR).

منبع (http://weblog.radmanitd.com/)



http://pnu-club.com/imported/2009/09/1132.jpg

Y@SiN
09-13-2009, 04:09 PM
- steering committees : کميته راهبري، موظف به تهيه اهداف، اصول و زمانبندي و نحوه تامين منابع لازم براي يک پروژه است. این کمیته از ذینفعان اصلی پروژه که بر روند اجرایی آن نظارت دارند تشکیل می شود و مدیریتش به عهده مالک اصلی پروژه است. تشکیل این کمیته فقط برای پروژه های متوسط و بزرگ لازم است. این کمیته عهده دار مسؤولیت تغییرات اساسی در محدوده پروژه، اهداف آن، زمانبندی و هزینه ها است. علاوه بر آن این کمیته زمانی که به تصمیم گیری های مهم در فرآیند های اصلی نیاز است تشکیل جلسه می دهد. پیشنهاد می شود این کمیته حداکثر 8 عضو داشته باشد که دو نفر از آنها مالک پروژه و مدیر پروژه باشند.

- project justification :يک پروژه بايد در موارد مالي، اقتصادي و يا ريسکها توجيه داشته باشد. اگر اين اتفاق نيافتد که اين پروژه سود آوري خاصي داشته باشد و يا از نظر اقتصادي و يا کسب و کار اجراي آن درست باشد و يا ريسک هاي قابل قبول و قابل مواجه داشته باشد، پروژه مي تواند از آغاز به شکست بيانجامد.

- project planning :برنامه ريزي پروژه معمولا شامل اقداماتي براي تهيه يک نقشه و مسير درست براي پيمودن گامهاي مختلف است، قبل از آنکه راه آغاز شود بدين شکل که زمانبندي اجراي عمليات چگونه باشد، منابع را به چه شکلي و چه موقعي و چه حجمي نياز داريم، برنامه ريزي مالي چگونه است، به کيفيت چگونه مي انديشيم و کي آن را اندازه گيري مي کنيم، چگونه و در چه زمانهايي با مشتري ارتباط برقرار مي کنيم و اصطلاحا Mile stone هاي پروژه که در آنها کار را ارزيابي مي کنيم چه مواقعي هستند.


- project development strategies : با توجه به عوامل دخيل در يک پروژه از جمله ذينفعان آن، توليد کننده، منابع و محدوديت هاي آن يکي از کارهاي اصلي در ابتداي پروژه، تدوين استراتژي توسعه سيستم است. اينکه چگونه فاز توسعه سيستم پيموده شود. استراتژي هاي زيرادي براي توسعه سيستم وجود دارد که مي توان مهمترين ها را چنين برشمرد:
-روش توسعه خطي : که از تحليل، طراحي و پياده سازي و تست پشت سرهم پيموده مي شود. معمولا براي پروژه هاي ساده و يا کوچک کاربرد دارد.پ
-روش آبشاري (Waterfall) که به صورت پشت سرهم مراحل به شکل فرمال تر و به همراه مستند سازي صورت مي گيرد، معمولا در پروژه هاي ساختيافته استفاده مي شد.
-روش توسعه تدريجي: که سيستم به چند زير سيستم تقسيم مي شود و هر يک جداگانه مثلا به روش خطي ساخته و به تدريج به مشتري تحويل مي شود.
-روش توسعه سريع يا RAD: Rapid application Development که يا ادغام فازهاي مختلف و با تشکيل جلسات هماهنگي با مشتري و سپس توسعه سيستم انجام مي شود.
-روش حلزوني يا spiral که در اين روش به صورت نسخه بندي شده (versioning ) سيستم کامل مي شود، يعني ابتدا هسته اصلي آن ساخته مي شود و سپس مرحله مرحله سيستم کاملتر مي شود.
-CBSD: component based Software Development که با استفاده از مولفه ها (Component) ها سيستم ساخته مي شود
-و ....
همانطور که ذکر شد بسته به ماهيت پروژه و توانايي سازنده يک روش انتخاب مي شود.


- methodologies : متدولوژي روشي استاندارد و مدون براي پيمودن فاز هاي تحليل، طراحي و پياده سازي نرم افزار ها به همراه ابزارها و تکنیک های برای تسهیل این کار است. متدولوژي هاي در گروه هايي مانند متدولوژي هاي ساختيافته (نظير SSADM) ، متدولوژي هاي شيء گرا (مانند RUP) يا متدولوژي هاي چابک agile (مانند XP) مورد استفاده قرار مي گيرند. هر متدولوژي علاوه بر آنکه يک تحليل گر را هدايت مي کند که در هر مرحله چه بايد بکند بلکه مجموعه از نماد ها و يا ابزارها و يا تکنيک ها را هم براي وي فراهم مي کند که داشته هاي خود را مستند و مديريت کند.


- risk assessment : در مبحث مديريت ريسک، يکي از کارهاي اصلي، برآورد احتمال وقوع يک ريسک و تعيين ميزان آسيب هاي آن است.براي اينکار ريسکها که شناسايي شد، در يک جدول آنها را قرار مي دهند و تلاش مي کنند يک مقدار عددي از احتمال وقوع ريسک مشخص کنند و هزينه ها و آثار آن را اندازه گيري کنند تا بتوانند ريسکها را اولويت بندي کنند، به شکلي که به ريسکهايي که احتمال وقوع زيادتري دارند و آثار مخرب تري دارند بيشتر توجه شود و براي آنها يک برنامه مقابله ريخته شود و يا شرايط وقوع آنها برداشته شده از بروز آنها اجتناب شود.


- estimation : تخمين يکي از وظائف اوليه هر پروژه است به شکلي که بتوانيم سايز و در نتيجه نفر-ساعت مورد نياز و منابع لازم را شناسايي کنيم تا قبل از اجرا بتوانيم به يک برآورد درستي از هزينه هاي پروژه و امکان سنجي اجراي آن برسيم.



براي تخمين معمولا بايد سايز براساس تعداد خط LOC يا FP اندازه گيري شود و سپس با يک نسبت گيري و يا بر اساس روشهايي نظير COCOMO تخمين زمان صورت گيرد.


- quality assurance : تضمين کيفيت نرم افزار معمولا در پارامترهاي زير صورت مي گيرد:
-صحت Correctness : چقدر نرم افزار نيازهاي مشتري آن را به شکل درست برآورد مي کند.
-قابليت اطمينان و توانمندي robustness & reliability: به جز صحت، چقدر نرم افزار در شرايط غير طبيعي و ورودي هاي اشتباه مقاوم است و واکنش درست نشان مي دهد.
-کارايي efficiency : چقدر از منابع سخت افزاري و نرم افزاري درست و به شکل بهينه استفاده مي شود.
-قابليت جابجايي Portability : چقدر مي توان نرم افزار را از يک Platform به ديگري منتقل کرد، مثلا روي سيستم عامل هاي مختلف کار مي کند يا نه...
-قابليت استفاده مجدد reusability : اينکه از يک قسمت از نرم افزار يا همه آن بتوان در همان نرم افزار و يا در سيستمهاي ديگر مجدد استفاده کرد.
-قابليت استفاده usability يا استفاده آسان easy to use : چقدر نرم افزار براي گروه کاربران هدفش آسان و قابل استفاده است و راهنما و يا واسط کاربري user interface مناسب دارد.
-قابليت نگهداري maintainability : با چه هزينه اي مي توان نرم افزار را نگهداري و پشتيباني کرد.
-قابليت وارسي verifiability : چقدر آسان مي توان نرم افزار را تست کرد و از صحت و قابليت اطمينان آن مطمئن شد.
-سازگاري compatibility يا Interoperability : آيا نرم افزار در کار ساير نرم افزار ها اختلال ايجاد مي کند و آيا مي تواند با آنها کار کند مثلا داده به شکل فرمتهاي استاندارد به عنوان وروردي يا خروجي بگيرد .
-و....

- scheduling : زمانبندي پروژه همان است که چه کاري قبل و بعد از چه کارهايي و در چه زماني بايد انجام دهد و چه کساني مسؤول آن هستند و چه منابعي براي آن نياز است. معمولا در اين زمان از نمودار گانت Gantt استفاده مي شود با تعريف نقاطي براي ارزيابي.

- project tracking and reporting : ردگيري پروژه از اين جهت که چقدر با برنامه زماني و بودجه پيش بيني شده همراه است و انحراف دارد يا خير و اينکه چه ميزان منطبق بر تخمين اوليه استوار است از وظائف اصلي و نظارتي يک مدير پروژه است. اينکه قبل از اينکه از زمان يا هزينه عقب بيافتيم آن را شناسايي کنيم و بتوانيم با تغيير مسير و يا افزايش و يا مديريت مجدد نيروي انساني و منابع دوباره در مسير درست قرار بگيريم تا اهداف پروژه محقق شود.


http://pnu-club.com/imported/mising.jpg