آموزش تحلیل و طراحی شیء گرا UML - جلسه دوم

تازه ها

آموزش تحلیل و طراحی شیء گرا UML - جلسه دوم

نظرات ()

جمع آوری اطلاعات Gathering Information

 

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

 

تکنيک های جمع آوری اطلاعات

برای جمع آوری اطلاعات شش تکنیک وجود دارد که در زیر به شرح آنها می پردازیم.

 

1 – Shadowing (سایه ای)

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

مثل جمع آوری اطلاعات چک دریافتی.

حضور شما نباید مزاحم کار کارفرما باشد. صرفاً باید کار را نگاه کنید و یادداشت برداری کنید.این روش به دو صورت می تواند انجام گیرد:

·         Shadowing به روش مستقیم

در این حالت کارفرما در حین انجام کار ، مراحل کار را برای شما توضیح می دهد.

·         Shadowing به روش غیر مستقیم

در این حالت شما در حین انجام کار از کارفرما سئوال می پرسید. توجه کنید که سوال نباید تمرکز فردی که کار را می کند از بین ببرد. سئوالات باید دارای جوابهای کوتاه باشد.

روش Shadowing در کارهایی که پیوسته است کاربرد دارد و برای کارهای ناپیوسته و روش های مدیریتی ارزشی ندارد چون زمان زیادی باید وقت صرف شود. مثلا برای کارهایی که جنبه روزمره دارند و هر روز انجام می شوند مفید است ولی برای کارهایی که ماهانه انجام می گیرند مفید نیست.

مزیت : می توانید از نزدیک عملیات انجام کار را ملاحظه کنیم.

معایب : بسته به توضیح کاربر که ضبط یا یادداشت می شود ممکن است برداشت ما از آنچه واقعی است متفاوت باشد. و در کارهایی که افراد زیادی روی آن کار می کنند چون افراد زیادی را باید زیر نظر گرفت کار آسانی نیست و ممکن است گیج کننده باشد.

 

2- مصاحبه (Interviewing)

یعنی قرار ملاقات بین 2 نفر، یک نفر از تیم کارفرما و یک نفر از تیم کارشناسان صورت می گیرد.پیشنهاد می شود که :

·         از قبل یک سری سوال را آماده می کنید و مطرح می کنید، سوالها می تواند جوابهای طولانی داشته باشد.

·         توصیه می شود حتماً جلسه Interview را رسمی برگزار کنید.

·         روانشناسی قدرت بیان در جمع آوری اطلاعات موثر است.

·         سوالهایی بپرسید که کل حوزه را برای ما شفاف کند و روی یک موضوع قفل نکنید. زیرا ممکن است که دریک بخش اطلاعات با عمق کم و بخش دیگر با عمق زیاد بدست آوریم.

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

مشکل روش : این است که به توان مصاحبه کننده وابسته است. مثلا فردی که برای جمع آوری اطلاعات انتخاب شده است توانایی انجام آنرا نداشته باشد. دیگر اینکه تعداد دفعات انجام مصاحبه محدود است.و نمی توان همیشه از آن به تعداد زیاد استفاده کرد.

نکته : بهتر است چند نفر از پیمانکار با 1 نفر از کارفرما مصاحبه را انجام دهند، این چند نفر بهتر است از تخصص های مختلف سخت افزار – نرم افزار و ... باشند.

 

 3 - Focus Group

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

  • تمامی افرادی که حضور دارند باید در یک منطقه جغرافیایی حضور داشته باشند 
  • برعکس interview، چاله های اطلاعاتی توسط افراد مختلف پر می شود، معمولاً این جلسات با افراد با تجربه و رده پایین برگزار می شود. چون در interview هر جا شخص نداند می گوید نمی دانم یا جواب اشتباه می دهند. ولی در اینجا اگر یک نفر نتوانست اطلاعات بدهد نفر دیگر به شما جواب خواهد داد.
  • اگر 2 دایره را خواستیم مکانیزه کنیم باید Focus Group های مختلف برگزار کنید.
  • چون در این روش افراد رده پایین در جلسه شرکت می کنند ممکن است به مشاجره کشیده شود پس باید جلسه را کنترل و مدیریت کنید. برای دوری از این حالت هر دو یا سه جلسه از مدیریت بخواهید که در جلسه شرکت کند.

 

4 - مميزی Survey

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

ü   چون روی فرمها اسم نوشته نمی شود ممکن است طرف بدون ترس اطلاعاتی را که در روشهای دیگر نمی دهد را بیان کند.

ü   پر هزینه است و نیروی زیاد و زمان زیاد می گیرد.

ü   جوابهای سئوالات مشخص و منحصر به همان سوال است.

ü   به طرز تفکر و دیدگاه فرد بستگی دارد و سلیقه ای است.

ü   سوالها باید طوری تهیه شود که این ضعف ها را بپوشاند و با دقت و حوصله تهیه شود.

 

5 - User Instruction

در این تکنیک شما بجای کارفرما کار می کنید و کارفرما مانند معلم بالای سر شماست .

مزايا :

·         نقاط ضعف و قوت کار قابل مشاهده است چون خود شما کار را انجام می دهيد.

·         می توانید بگویید چه محیطی برای انجام اینکار لازم است. مثل نور و فضا و نیازمندیهای خاص و ....

·         مستندی که شما تهیه می کنید می تواند به عنوان User guide در تیم استفاده شود.

معايب :

·         هر کاری را به شما اجازه نمی دهند که انجام دهيد.

·         کارهای پیچیده و طولانی ارزش ندارند. زیرا برای یاد گیری آن وقت زیادی صرف می کنید.

·         برای کارهای حساس و مالی به راحتی نمی توان از این روش نتیجه گرفت.

 

   6 - Prototyping

به معنای شبیه سازی محیط واقعی برای برداشت اطلاعات است. Prototyping می تواند یک فیلم، عکس یا یک فایل باشد. در نرم افزار به معنای تهیه واسط اولیه کاربر می باشد. این روش فوق العاده پر هزینه است.

این روش با 2 هدف در نرم افزار صورت می گیرد.

1-      مطمئن باشیم که نرم افزاری که تولید خواهد شد Use – Case ها و Supplementary را پوشش می دهد.

2-      مطمئن باشیم که نرم افزاری که تولید خواهد شد نیازهای خاص کاربر را جواب دهد. (راست دست ها، کور رنگها)

در RUP  در فاز Elaboration انجام می شود و در فاز Inception اختیاری است ولی توصیه می شود انجام شود. در ایران این روش در فاز شناخت اجباری است.

 

منابع جمع آوری اطلاعات

1 – مستندات (Artifact) به معنای مستنداتی است که در سازمان وجود دارد. و می تواند به صورت فیلم، کتابچه و ... باشد. در استفاده از این مستندات دو نکته را باید مد نظر داشت :

  • این مستند تا چه اندازه به روز است.
  • تا چه میزان می توان به این مستندات اعتمادکرد.

2 – افراد (People) اشخاصی هستند که در سازمان می توانند اطلاعات را در اختیار شما قرار دهند. در استفاده از افراد نیز باید نکات زیر را مد نطر داشت : 

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

3 – سیستم ها (Systems) : بردو نوعند

·         سیستمهایی که ملموس و قابل مشاهده اند مثل سیستمهایی که از قبل با نرم افزاری قدیمیتر نوشته شده اند.

·         سیستمهایی که ملموس نیستند. مثل سیستمهای آماری یا مدیریتی، که جمع آوری اطلاعات از آنها سخت است.

 

استراتژی های جمع آوری اطلاعات

موقعی که شروع به جمع آوری اطلاعات می کنیم کارهای زیر باید انجام گردد:

·         هیچ کدام از تکنیکهای جمع آوری اطلاعات به تنهایی جواب نمی دهند و برای هر مقطع و محیط باید استراتژی های مختلف را انتخاب کنیم.

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

·         منابع اطلاعاتی که افراد باید در سازمان به سراغ آنها بروند مشخص می شوند.

·         پس از جمع آوری اطلاعات باید آنها را دسته بندی و در مخزن جمع آوری اطلاعات نگه داریم و شماره گذاری ثبت و ...

·         زمان محدودی برای جمع آوری اطلاعات داریم و باید برای آن برنامه ریزی خاصی در نظر بگیریم.