تحلیل و درک فرمول‌های طولانی

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

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

=IIf(ID=0,ROUND(IIf([Number1]=0,[Number4],[Number5]/[Number1]*100),2),ROUND(IIf([Number1]=0,[Number4],[Number5]/[Number1]*100),1))

و به خاطر طولانی بودن فرمول به نتیجه نرسیده بود. حالا با هم روند درک یه فرمول طولانی رو بررسی می‌کنیم.

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

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

حالا فرمول رو اونجا کپی می‌کنیم:

اولین پارامتر ورودی تابع شرطی ID=0 هست که ساده‌س. بعدی تابع ROUND هست که راحت نمی‌شه انتهاش رو پیدا کرد. اشاره‌گر متن رو می‌بریم روی پرانتز شروع ROUND و نرم‌افزار پرانتز پایان رو با رنگ قرمز بهمون نشون می‌ده.

حالا این محدوده که عملا می‌شه دومین پارامتر تابع شرطی رو Cut می‌کنیم و به جاش یه متغیر می‌ذاریم، مثلا A. اون پایین هم می‌نویسیم که A خودش چطوری محاسبه می‌شه (اون عبارتی که قبلا Cut کرده بودیم رو Paste می‌کنیم).

حالا پارامتر دوم رو هم به همین ترتیب از فرمول خارج می‌کنیم.

خوب، همین الان خیلی ساده شده، درسته؟ می‌تونیم یه مرحله دیگه هم ساده‌ش کنیم؛ عبارتی که تو متغیرهای A و B تکرار شده رو هم ازشون خارج می‌کنیم و به جاش C می‌ذاریم.

الان دیگه فرمول عظمت قبل رو نداره و راحت می‌تونیم درکش کنیم. با C شروع می‌کنیم: حاصل تقسیم Number 5 بر Number1 محاسبه شده و به مقیاس ۱۰۰ در اومده (تا شکل درصدی به خودش بگیره). بعد چون ممکن بوده Number1 بعضی وقت‌ها صفر باشه و در نتیجه خطای تقسیم بر صفر ایجاد کنه، یه تابع شرطی هم نوشته شده که اگه اون صفر بود، به جای حاصل تقسیم، مقدار Number4 رو نشون بده. حالا این‌که این سه فیلد اختصاصی پراجکت چی هستن رو می‌شه حدس زد،‌ ولی بهتره که فرمول‌هاشون رو جداگانه چک کنیم که مطمئن بشیم.

حالا فرمول اصلی چیه؟ فرمول اصلی اینه که اگه برای ردیف صفر، یعنی خلاصه فعالیت پروژه محاسبه می‌شد، مقدار C رو به دو رقم اعشار گرد کنه و در غیر این صورت به یک رقم.

ساده نبود؟

نوشته نادر خرمی راد (Nader Khorrami Rad)

یافتن داده‌های ساختگی

خیلی از ما با داده‌هایی سر و کار داریم که افراد دیگه برامون فرستادن و خیلی وقتا لازمه بدونیم که داده‌ها واقعی هستن یا ساختگی. نکته خیلی جالب اینه که چنتا تست خیلی ساده برای این کار وجود داره.

بسامد عدد ۷ در یکان

اگه از آدمای مختلف بخواین که عددی اتفاقی بین ۱ و ۹ انتخاب کنن، خیلی بیشتر از ۱۰ درصدشون عدد ۷ رو انتخاب می‌کنن. عدد ۷ به نظر همه آدم‌ها اتفاقی‌ترین عدد میاد و به همین خاطر وقتی هم که دارن داده‌های ساختگی سر هم می‌کنن ازش زیاد استفاده می‌کنن.

برای چک کردن این ماجرا باید به یکان اعداد توجه کنین. اگه مثلا بیست درصدشون ۷ بود، نشون می‌ده که داده‌ها ساختگی هستن. خیلی راحت!

محاسبه کردنش هم راحته. با تابع MOD اکسل می‌تونین باقیمانده تقسیم اعداد بر ۱۰ رو به دست بیارین، که می‌شه یکانشون. با تابع COUNTIF هم می‌تونین بسامد یکان‌های مختلف رو بشمرین.

نمونه‌ای از این محاسبه رو می‌تونین تو این فایل ببینین که با هزار عدد اتفاقی انجام شده (روی آیکن دانلود کلیک کنین که بتونین تو اکسل بازش کنین). این هم نتیجه‌ش:

اعداد ساختگی

بسامد یکان‌ها تو این مجموعه عدد اتفاقی یکسانه و در نتیجه فعلا دلیلی نداریم که فکر کنیم ساختگی هستن. ولی تو قسمت بعد می‌بینیم که ماجرا به این سادگی هم نیست!

قانون بنفرد

اعدادی که تو مثال قبل بود با تابع رندم اکسل ساخته شده بود و کاملا اتفاقی بودن. با این حال اعدادی که از واقعیت‌های خارجی استخراج می‌شن به این شکل رندم نیستن!

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

قانون بنفرد

یعنی یکان ۱ که تو اعداد اتفاقی حدود ۱۰٪ مواقع دیده می‌شه، تو داده‌های واقعی ۳۰٪ دیده می‌شه یا مثلا یکان ۹ که باز هم تو اعداد اتفاقی حدود ۱۰٪ مواقع وجود داره تو داده‌های واقعی حدود ۴٪ مواقع به چشم می‌خوره.

دلیل این ماجرا اینه که عملا اکثر چیزها تو واقعیت طبیعت لگاریتمی دارن و در نتیجه مقادیری که از اون‌ها برداشت می‌شن هم این رو منعکس می‌کنن. تو مقیاس لگاریتمی فاصله بین ۱ و ۲ خیلی بیشتر از ۸ و ۹ هست، و به همین خاطر برداشت‌های خیلی بیشتری تو اون فاصله قرار می‌گیره تا فاصله بین ۸ و ۹.

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

در مورد ماجرایی که تو بخش اول در مورد یکان ۷ توضیح دادم هم الان می‌دونیم که باید انتظار حدودا ۶٪ بسامد ازش داده باشیم و نه حتی ۱۰٪. اگه می‌خواین سریع نتیجه‌گیری کنین یه نگاه به یکان‌ها بکنین و ببینین اگه خیلی بیشتر از ۶ بار تو هر ۱۰۰ عدد تکرار شدن، می‌تونین حدس بزنین که اعداد ساختگی هستن.

 

وقتی می‌خواین این ارزیابی رو انجام بدین مراقب باشین که ۱) تعداد اعداد خیلی کم نباشه و ۲) اعداد طبق برنامه‌ریزی قبلی گرد نشده باشن.

نوشته نادر خرمی راد (Nader Khorrami Rad)
بخش: آموزشی
مطالب مرتبط:

تهیه پرسشنامه

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

من فقط می‌خوام یه ماجرای بسیار مهم که تقریبا هیچ کس رعایت نمی‌کنه رو توضیح بدم:‌ قالب‌بندی پرسشنامه الکترونیکی.

 

یه نکته خیلی مهم در مورد پرسشنامه اینه که مخاطبتون رو نباید خسته کنین. باید کوتاه باشه و جواب دادن تا جای ممکن راحت. خیلی از کسایی که پرسشنامه‌تون رو پر می‌کنن از نسخه‌های الکترونیکی استفاده می‌کنن و در این صورت اگه می‌خواین طرف مقابلتون رو خسته و کلافه کنین تا بدترین نتیجه ممکن رو بگیرین، حتما یه فایل PDF که قابل ویرایش نیست براش بفرستین!

 

بهترین راه ارائه پرسشنامه الکترونیکی

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

اگه تا حالا تجربه‌ش نکردین، یه نگاه به این پرسشنامه بندازین که به عنوان نمونه تهیه کردم.

 

راه حل بعدی

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

 

اصلا چه اهمیتی داره؟

خیلی زیاد. اگه پر کردن پرسشنامه‌تون ساده نباشه خیلی از کسایی که ممکن بود جواب بدن جواب نمی‌دن و کیفیت جواب‌های اون‌هایی که جواب دادن هم کمتر از اونی می‌شه که می‌تونست باشه.

 

و البته…

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

نوشته نادر خرمی راد (Nader Khorrami Rad)
بخش: آموزشی
مطالب مرتبط:

انتشار نرم‌افزار موبایل راهنمای جامع PMBOK Guide 5

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

نرم‌افزار اندرویدی راهنمای جامع PMBOK 5

هدف این نرم‌افزار اینه که نسخه‌ای از کتاب الکترونیکی راهنمای جامع PMBOK Guide 5 دایما و به راحتی در اختیار کاربر باشه، چون به هر حال این راهنما جنبه مرجع هم داره.

نوشته نادر خرمی راد (Nader Khorrami Rad)

بهترین منبع در مورد مدیریت ریسک

برای مدیریت ریسک پروژه نیاز به چهار نوع منبع دارین:

  1. منبعی که شیوه یکپارچه‌سازی اون رو با بقیه کارهای مدیریت پروژه مشخص کنه،‌ که بهترین منبع برای این ماجرا PMBOK هست.
  2. منبعی که شیوه اجرای اون رو در بستر کلی پروژه مشخص کنه، که بهترین منبعش PRINCE2 هست.
  3. منبعی که چهارچوب خود مدیریت ریسک رو به خوبی مشخص کنه، که بهترین منبعی که من می‌شناسم استاندارد M_o_R از AXELOS هست (هم خانواده پرینس۲).
  4. منبعی که تکنیک‌ها و روش‌ها رو توضیح بده و مورد قبلی رو تکمیل کنه. برای این مورد متاسفانه فعلا پیشنهاد خاصی ندارم. البته خیلی اوقات نیازی نیست که سیستم مدیریت ریسک خیلی پیچیده بشه و حدی از تکنیک‌ها که مورد سوم توضیح داده می‌شه براتون کافی خواهد بود.

 

آیا این‌ها با هم سازگارن؟

بله، کاملا. هرکدوم از اون‌ها مدیریت ریسک رو از یه زاویه‌ای می‌بینن و همگی باید تا درجه‌ای اختصاصی‌سازی بشن که تو این ماجرا کاملا سازگار هم خواهند شد.

یعنی PMBOK برای مدیریت ریسک کافی نیست؟

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

این استاندارد M_o_R رو از کجا می‌شه تهیه کرد؟

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

نمی‌شه به جای اون استاندارد از کتاب فلان، نوشته بهمان کس استفاده کنم؟

قطعا کتاب‌های خوب خیلی زیادن که من متاسفانه همشون رو نمی‌شناسم؛ ولی عملا کتاب‌هایی که می‌تونین پیدا کنین اکثر می‌رن تو ردیف شماره ۴ و جای چهارچوبی که تو ردیف شماره ۳ معرفی کردم رو نمی‌گیرن، یا حتی اگه سعی کنن بگیرن هم کیفیتی به اندازه M_o_R نخواهند داشت. این دسته از کتاب‌ها برای یادگیری تکنیک‌ها مناسب هستن.

نوشته نادر خرمی راد (Nader Khorrami Rad)

تحویل شدنی‌ها و روزمرگی

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

شاید این ماجرا برای بعضی‌ها مطلوب باشه که در این صورت دیگه به من ربطی نداره. با این حال خیلی‌ها هم هستن که گرفتار روزمرگی می‌شن، در حالی که خودشون دوست ندارن و دلشون می‌خواد تغییرش بدن؛ مخاطب من اون‌ها هستن. البته کسی که تو گروه اول باشه (علاقه‌مند به روزمرگی) اصولا خواننده سایت هم نیست.

 

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

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

 

برای این‌که منظورم برای زاویه دید یه کارشناس برنامه‌ریزی و کنترل پروژه مشخص‌تر بشه چنتا مثال که الان به ذهنم می‌رسه رو می‌گم:

مثال ۱: فلانی تو شرکت همیشه از گزارش‌های پیشرفت ناراضیه. فکر می‌کنه بی‌مصرفن. پروژه من اینه که گزارشی بسازم که برای این آدم مفید باشه و کاملا تاییدش کنه.

مثال ۲: اطلاعات همیشه دیر از کارگاه می‌رسه. هدف من الان اینه که هر طور شده راه حلی عملی پیدا کنم که این مشکل رو از بین ببره و امکانی رو فراهم کنه که اطلاعات همیشه به موقع برسه.

مثال ۳: فایل‌هام رو نمی‌تونم راحت پیدا کنم، به خصوص وقتی دنبال آخرین نسخه یه فایل می‌گردم. هدف من الان اینه که راه حلی برای این مشکل پیدا کنم، طوری که دیگه هیچوقت تو پیدا کردن فایل‌هام مشکل نداشته باشم.

مثال ۴: هر دفعه که گزارش پیشرفت تهیه می‌کنم باید کلی انرژی صرف فرستادنش برای آدم‌های مختلف بکنم و آخرش هم گزارش به دست بعضی‌ها نمی‌رسه و بعد از یه مدتی میان دنبالش می‌گردن. می‌خوام یه راه حل اساسی برای این مشکل پیدا کنم.

مثال ۵: با این‌که خیلی ساله با پریماورا/پراجکت کار می‌کنم، هنوز همه ریزه‌کاری‌هاش رو بلد نیستم. می‌دونم که یادگیری همه جزئیات خیلی سخته؛ ولی یه چیز کوچیک رو که می‌شه کاملا توش استاد شد. الان هدف من اینه که استاد مطلق بشم تو مفهوم تداخل‌های زمان‌بندی نرم‌افزار.

مثال ۶: هدف من الان اینه که تو مدت دو هفته یه تحویل‌شدنی کاری خوب برای خودم پیدا کنم!

 

به همگی پیشنهاد می‌کنم کتاب The Lean Startup رو بخونین. احتمالا موضوعش به نظرتون به این ماجرا یا حتی به حرفه‌تون بی‌ربط بیاد، ولی مطمئنم که بهتون کمک می‌کنه.

متاسفانه نمی‌دونم که به فارسی ترجمه شده یا نه (تعجب می‌کنم اگه نشده باشه).

نوشته نادر خرمی راد (Nader Khorrami Rad)
بخش:

خرید ارزی ایبوک‌های مدیریت پروژه

امکان جدیدی به فروشگاه ایبوک‌های مدیریت پروژه اضافه شده که خواننده‌هایی که ایران زندگی نمی‌کنن و کارت‌های شتاب ندارن بتونن کتاب‌ها رو از طریق PayPal ارزی خریداری کنن.

نوشته نادر خرمی راد (Nader Khorrami Rad)
بخش: اخبار

انتشار کتاب راهنمای جامع PMBOK Guide 5

بالاخره بعد از تاخیر خیلی زیاد که ناشی از مشغولیت‌هام بود تالیف کتاب راهنمای جامع پم‌باک ۵ رو تموم کردم و نسخه الکترونیکیش منتشر شد.

راهنمای جامع PMBOK Guide 5

می‌تونین برای تهیه‌ش به صفحه کتاب راهنمای جامع PMBOK Guide 5 مراجعه کنین. فصل نمونه‌ای از کتاب (مدیریت گستره) هم قابل دانلوده.

نوشته نادر خرمی راد (Nader Khorrami Rad)
< newer older >

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