مقدمه
قبلا مقالهای داشتیم باعنوان “سیاهچالهای به نام پروژه” که سعیکردیم در این مقاله یکسری بایدها و نبایدهای انجام پروژه را مشخصکنیم، در اون مقاله برخی سوالات و دغدغهها مطرحشد که سعی میکنیم در مقالهزیر به برخیاز اونها یه نیمنگاهی داشتهباشیم. اگر سفارشی برای انجام داشتهباشید حتما به دنبال کسی خواهید رفت که توانایی انجام اون سفارش را داشتهباشه و صدالبته قیمت منطقی برای انجام اون هم طلبکنه! اما واقعا با چه پارامترهایی میشه قیمتگذاری مناسبی را برای یک پروژه انجامداد؟ و اصلا چطورمیشه یک فردمتخصص را از یک فرد غیرمتخصص تشخیصداد؟ این روزها شرایطمالی واقعا کلافهکنندهشده، سفارشدهندهها سعی میکنند کمترین پیشنهادات را قبولکنند و انجامدهندهها برای این به اصطلاح مشتری را ازدست ندهند قیمتهایی را ارائه میدهند که درانتها هم باعث ضرر خود و حتی سفارشدهنده میشود و پروژه هم به هیچ سرانجامی نمیرسه. در این پست قصد دارم با بیان چندی از خاطرات خود به این موضوع چالشی، هم برای افرادی که قصد دارند پروژه سفارشدهند و هم برای کسانی که قصد دارند پروژه انجامدهند بپردازم؛ پس با ما همراه باشید.
پروژه خوبه یا بد؟
درواقع نمیشه مطلقگفت که انجام پروژه خوبه یا بد! مخصوصا وقتی پروژه الکترونیکی باشه! برای من پروژه بهمعنی چالش و تنوع است و البته یادگرفتن چیزهای جدید اگر شماهم تفننی پروژه انجام میدهید همین معنی را هم برای شما خواهد داشت اما اگر کاراصلی شما انجام پروژههایمختلف باشد، خوب احتمالا کار پراسترس و خستهکنندهای دارید و احتمالا از آن لذت نمیبرید. اگر بخوام واضحتر بگم، نمیشود انجام پروژه الکترونیکی را بهعنوان یک شغل ایدهآل نگاهکرد و البته نباید هم چنین نگاهی داشت چراکه منطقی نیست. جدیدا خیلیاز سایتها و مغازهها رو میبینم که انگار کاراصلی و درآمدشون از انجام پروژه است، فکر میکنم این رویه، رویه مناسبی نباشد آنهم به دلایل و مواردزیر که به اون اشارهخواهیمنمود. ممکنه انجام پروژه در بازه زمانی کوتاه نیازهای مالی شما رو برطرف کنه اما مطمئنا در طولانیمدت باعث میشود که عقب بیفتید هم بهلحاظ علمی و هم بهلحاظ مالی(البته شاید تو دومی اشتباه کنم) دلیلشم خیلیواضح است! وقتی که پروژه انجام میدهید معمولا سعی میکنید پروژههایی رو قبولکنید که قبلا انجامدادید برای اینکه قادر باشید زودتر کار را تمامکنید و به درآمد برسید همین باعث میشود بهسمت تکنولوژیهای جدید و کسب دانش جدید نروید مگر اینکه توی پروژهای مجبور به چنینکاری بشوید. همونطورکه در ابتدا گفتم نمیشود مطلقا گفت که پروژه خوب است یا بد؛ خیلی بستگی پیدا میکنه به نگاه و هدف شما از انجامدادن پروژه!
دردسرهای پروژه الکترونیکی!
خوب البته پروژه داریم تا پروژه؛ اگر در زمینه انجام پروژههای کامپیوتری فعالباشید میدانید که تنها نیاز شما برای انجام یک سفارش برنامهنویسی تنها یک کامپیوتر و اینترنت است. حتی لازمنیست سفارشدهنده را از نزدیک ببینید و بهسادگی با درک نیازها قادر هستید پروژه را انجامدهید! بههمینخوشمزگی(البته منکر دشواریهای برنامهنویسی نیستم) اما فرضکنید قصد انجام پروژه الکترونیکی را دارید، کمترین دردسری که گریبانگیرتون میشه ساخت نمونه است! و این دقیقا بخاطر ماهیت الکترونیک است. نمونهسازی هم دردسرهای خاص خودش رو داره از طراحی برد و تهیه قطعات و مونتاژ و هزاردلیلی که ممکنه نمونه کار نکنه! تازه بعداز انجام تمام این مراحل اگر پروژه شما مبتنیبر میکروکنترلر نیز باشد تازه باید برید سراغ برنامهنویسی میکروکنترلر که خودش تازه اول بدبختی است. بعداز انجام تکتک این مراحل وقتی که میخواید پروژه رو تحویلبدید باکمالتعجب میبینید که کار نمیکنه؛ یا اونطور که باید کار نمیکنه! چون شما تستها رو توی محیط آزمایشگاهی خودتون انجامدادید و یکسری پارامتر رو درنظر نگرفتید و اگر خوششانس باشید میتونید با تغییربرنامه یا تغییر مقدارخازن و مقاومتها مشکل رو برطرف کنید وگرنه باید مجددا نمونهسازی رو از اول انجامبدید…
برای همیناست که میگم بیدردسرترین مدل کار پروژهای؛ پروژه کامپیوتری است! هیچکدوم از این پیچیدگیها رو نداره و تنها متکی است به دانش برنامهنویسی بی هیچ نیازمندی فیزیکی! اصلا برای همینه که هرکسی که دستش به کیبورد خورده برنامهنویس شده!
یکیاز دلایل فراگیرشدن بردهای آردوینو و انجامدادن خیلی پروژههای معمولی مبتنیبر اون شاید این هست که کاربر درگیر سختافزار نمیشه که البته محاسن و معایب خاص خودش را هم داره.
همه پروژهها دانشجویی نیست!
متاسفانه و واقعا متاسفانه اینترنت و بازار پرشده از آدمهایی که پروژههای دانشجویی را انجام میدهند، متاسفانه پروژههای دانشجویی در سطحبالایی نیستند(مثلا ساخت دماسنج دیجیتال پروژه کارشناسی است که واقعا تاسف برانگیزه) و خیلیاز افراد سودجو با انجام چنین پروژههایی سعی میکنند که نیازهای مالی خودشون رو مرتفع کنند.
بهنظرم انجام پروژههای دانشجویی اول خیانت به دانشجو و دانشگاه است و دوم منصفانه نیست!
خیانتبه دانشجو است: چون با اینکار باعث میشود مطلبی که دانشجو قرار است درخصوص آن تجربه و مهارت کسبکند را بیهیچ کسب دانش و مهارتی دراختیارش میگذارید! منصفانه نیست چون فکر میکنم اگر جسارت و مهارت انجام پروژههای صنعتی و تولیدی را داشتهباشید سراغ چنین پروژههای دانشجویی نخواهد رفت، و با اینکار مسائلی در جامعه فنی حکمفرما میشه که زیاد جالب نخواهد بود. متاسفانه بیشتر افرادی که پروژههای الکترونیکی یا حتی دیگر انواع پروژه را انجاممیدهد نگاهشان به پروژه، نگاه به یک پروژه دانشجویی است درصورتیکه واقعا اینطور نیست؛ پروژههای که در محیطهای صنعتی و نیمهصنعتی و تولیدی تعریف میشوند نیازبه مهارت بالایی برای انجامدارند و واقعا انجام آن از عهده افراد بیتجربه و کممهارت خارج است! برای همیناست که باید سعیکنید مهارت و تجربه خودتان را بالا ببرید.
پروژه دانشجویی یکبار که جلوی استاد درست کارکند کافیاست و نمره را گرفتهای اما در پروژههای صنعتی دستگاه باید قادر باشد تماموقت بدونخطا کارکند.
متاسفانه بیشتر افراد دیدصحیحی به این مقوله ندارند چراکه در دانشگاهها چنینچیزی را یاد نمیدهند؛ و فرد باید سعیکند با کسب تجربه به چنین آگاهیای برسد. بگذارید برای روشنشدن مقوله یک خاطره از انجام پروژه در محیطهای صنعتی رو تعریفکنم! قراربود در یکیاز فولادسازیهای کشور برروی ماشینهای حمل سرباره(مذاب ضایعات) تجهیزی نصببشه که قادرباشه پارامترهای خودرو(دمای موتور، وضعیت کارکرد و… ) را قرائتکرده و به اتاق کنترل ارسال کند. برای اینکار لازمبود که برروی باس CAN خودرو دستگاهی اضافهبشه تا قادرباشه پارامترهای حیاتی موتور ماشین رو بخونه(در خودروهای جدید و مخصوصا صنعتی از پروتکل CAN برای ارتباط استفاده میشود). بهظاهر پروژه، پروژه خیلی سادهای میآد و تقریبا چیزی نداره، قراره یکسری پارامتر از پروتکل استاندارد CAN خونده بشه و ازطریق یک لینک رادیویی ارسال بشه(دقیقا دیدی که مجری پروژه داشت!)
اما آیا واقعا انجام چنین پروژهای بههمینسادگی است که توضیحدادهمیشه؟ درواقع کار ماشین حمل سرباره اینهکه یه ظرف مخصوص برای حمل مواد مذاب برمیداره و میره زیر کوره قرار میگیره درب کوره رو باز میکنن و مواد مذاب از کوره خالی میشه توی ظرف، برای اینکه ظرف از شدتگرما ذوب نشه هم تهش آجرنسوز هست و هم اینکه با آب خنک میشه! فضایی که ماشین میره زیر کوره خیلی کوچک است و قدرت مانور بالایی نداره اگر درست توی موقعیت قرارنگرفتهباشد مذاب روی ماشین میریزه؛ اگر ماشین خاموش بشه مخاطرات خیلی زیادی رو براش دربر داره! خیلی مسئولیت سنگین و ترسناکی است. خوب حتما دستگیرتونشده که اگر بههردلیلی دستگاه شما کوچکترین اختلالی رو روی باس CAN ایجادکنه ممکنه باعثبشه ماشین خاموش بشه؛ دستورلازم رو در وقتلازمش انجامنده و جون یک نفر رو به خطر بندازه و خسارت چندین میلیاری بهوجود بیاره!
اگر پروژه صنعتی رو برعهده میگیرید مسئولیت اون رو هم باید برعهده بگیرید(و صددرصد باید هزینه اون را هم دریافتکنید) و مثل پروژه دانشجویی نیست که اگر کار نکرد؛ یه درس رو بیفتید.
پیشنهادمن برای انجام چنین پروژهای این بود که میدان مغناطیسی اطراف سیمهای باس CAN(باس تفاضلی است) رو بهنحوی تبدیلبه اطلاعات ردوبدل شده درون باس کنیم؛ انجام چنینکاری باعثمیشه که هیچگونه ارتباط فیزیکی بین دستگاه قرائتگر و باس خودرو بهوجود نیاد و ریست تاثیرگذاری رو به صفر برسونه! یک نمونه هم تهیه و امکانسنجی شد! اما کارفرما بخاطر هزینههای بالاش با چنینروشی مخالفتکرد و پروژه رو به شخصدیگری واگذار کرد! و همانطورکه انتظار میرفت نصب دستگاهها باعث ایجاد اختلال برروی خودرو میشد و در آخر پروژه با شکست مواجه شد!
کارفرمایی که فقط نوکبینیاش را میبینه!
بگذارید عنوان این بخش رو کاملش کنم: کارفرمایی که نوکبینیاش را میبیند و پروژه را به فنا میدهد. پروژهها بهدلایل خیلیزیادی ممکنه به سرانجام نرسه! یکیاز دلایل خود کارفرما است؛ بله ممکناست مقداری این حرف غیرمعمول باشد ولی واقعیت دارد. اگر خاطره قبل را درنظربگیرد، تصمیم کارفرما برای هزینه کمتر باعثشد که پروژه با شکست مواجهشود! گاهی همین هزینهنکردنها و گاهیهم توقعات و خواستههایی که اصلا منطقی نیستند باعث میشود که یک پروژه به سرانجام نرسد. از دیگر دلایلی که کارفرما میتواند باعثشود پروژهای به سرانجام نرسد اعتمادکردن به افرادی است که تجربه و مهارتکافی برای انجام پروژه را نداشتهباشند. متاسفانه خیلیرایج است که کارفرماها برای کاهش هزینهها پروژه را ساده و غیرصنعتی جلوهدهند تا از هزینههای طراحی فرار کنند و بعد پشتیبانی محصول نصبشده و یا تولیدشده را به گردن طراح بیندازند، پس خیلی مراقبباشید؛ انجام پروژه مخصوصا پروژه الکترونیکی با چنین کارفرمایی دقیقا مثل واردشدن درون یک سیاهچاله است هم انرژیزیادی از شما خواهدگرفت و هم اینکه گناه کارنکردن پروژه را به گردن شما بیندازد. پس بهعنوان یک حرفهی سعیکنید پروژه را فارغاز نظر کارفرما درخصوص سادگی و پیچیدگی بررسیکنید و قیمت درخور پیچیدگی پروژه ارائهکنید.
همیشه هزینه کم برای طراحی یک محصول خوب نیست و اتفاقا باید برای طراحی هزینه و زمان زیادی صرفشود تا نهایتا محصول مناسب آمادهشود و به سوددهی برسد.
تازهکارها اعتمادبهنفس کاذب دارند
مطمئنا کسی منکر این مقوله نیست که اعتمادبهنفس خوبه! اما اعتمادبهنفس کاذب واقعا ویرانگره. معمولا افرادی که تازه وارد بازارکار شدهاند مخصوصا اگر یک یا دو پروژه موفقیتآمیز هم داشتهباشند دچار آنچنان توهمی از تواناییهای خود میشوند که خدا را هم بنده نیستند. اینجاست که میگیم بندهخدا تونسته یه لامپ رو خاموشروشن کنه؛ فکر کرده شاتل ساخته! درواقع وقتی شخصی نسبتبه تواناییهای خودش آگاهی داشتهباشه و واقعبین باشه دچار چنین توهمی نخواهدشد اما حیف که معمولا چنین نیست!
پس خیلی منطقیه که هنگام انتخاب مجری برای پروژه سابقهکار و تجربه انجام پروژه صنعتی و یا تولیدی که تاحالا انجامداده رو چککنید تا بعدها دچارمشکل نشید.
البته این بدانمعنا نیست که نباید به افراد تازهکار اعتماد کرد؛ بلکه برعکس باید اعتمادکرد ولی باید درمقابل واقعبین هم بود؛ در چنینشرایطی دو مساله خیلیمهم است؛ اول هزینه ریالی و دوم هزینه زمانی است! و توصیهای که برای افراد تازهکار دارم اینهکه اول از هیچچیزی مطمئننباشید و درخصوص همهچی شک داشتهباشید حتی قوانین فیزیک! دوم اینکه معمولا کارفرماها خیلی سر زمانبندی پروژه حساس هستند پس سعیکنید خوشقول و زمانشناس باشید.
و مهمتر از همه هیچکسی نیست که همهچیز را بداند، پس اگر چیزی را نمیدانید یا درخصوصش شکدارید حتما مساله رو بیانکنید تا بعد دچار مشکل نشوید.
صادق باشید
عدم صداقت چه در تعریف پروژه چه در انجام آن میتونه شرایطی را ایجادکنه که پروژه به شکست بیانجامه؛ دقیقا همون مسالهای که قبلا گفتم، خیلیاز کارفرماها برای اینکه پولکمتری پرداختکنند، پروژه را ساده، پیشپاافتاده و خیلی حیاتی و ضروری نشانمیدهند که این رویکرد میتونه مخاطرات خیلی زیادی را ایجادکنه. البته این مساله در روالهای مجری هم وجود داره؛ بهعنوان نمونه اعلام اشکالات بیپایه برای دریافت دستمزد بالاتر یا استفادهاز اجناس بیکیفیت یا بهشخصه شاهد بودم که مجری جعبهخالی رو تحویل انبار میداد برای اینکه هم عقبافتادگی زمانی رو جبرانکنه و هم اینکه بتونه هزینهی دستگاه رو وصول کنه! بهشخصه یک تجربه واقعا مخاطرهانگیز از عدمصداقت کارفرما داشتم که با ذکر اون سعیمیکنم مقداری میزان اهمیت این مساله رو روشنکنم چندسالپیش یک سفارش پروژه با این مضمون دریافتکردم که شخصی نیازبه یک مبدل جریان به PWM داشت و اذعان میکرد که برای کارهای آزمایشگاهی و غیرحساس از آن استفادهکرد(همانطورکه میدانید چنین مبدلی میتواند در صنعت کاربردهای فراوانی داشتهباشد) دستگاه باتوجهبه درخواستهای مشتری و البته درنظرگرفتن شرایط استفاده که مثلا آزمایشگاه بود طراحی و تحویل شد! تقریبا ۶ماه خبری از مشتری نبود و ظاهرا عملکرد دستگاه درست بود؛ اما با شروع فصلسرد سال شکایتها از عدم کارکرد درست دستگاه شروع شد؛ بارها و بارها دستگاه موردبررسی و ارزیابی قرارگرفت ظاهرا همهچیز درست بود اما کارفرما اصرارداشت که دستگاه مشکلدارد و وقتی نمونهخارجی را جایگزین میکنند همهچیز بهخوبی کار میکند؛ تقریبا چیزی نبود توی برنامه که بهش شکنکردهباشم و تمام حالتهایی رو که ممکنبود باعث بروز مشکل بشه رو بررسی کردهبودم و دیگه چیزینبود که بهش شک داشتهباشم، برای همین هماهنگکردم که برم در محل و ایراد رو با چشمهای خودم ببینم. انتظار یک آزمایشگاه رو داشتم ؛ اما درعوض با یک نیروگاه گازی مواجه شدم.
تجهیزی که قراربود در کار آزمایشگاهی مورداستفاده قراربگیرد، محیط آزمایشگاه یک محیط ایزوله است با کمترین تنشهای صنعتی در یک محیط دقیقا صنعتی و در پرنویزترین محلممکن نصبشدهبود!
کارفرما برای این که پول طراحی کمتری بده، کارکرد اصلی دستگاه رو پنهانکردهبود غافل از این مسالهمهم که ممکنبود برای خودش مسالهساز بشه، دستگاه روی دریچه کنترل گاز نصبشدهبود بهش گفتم اگر یکصدمدرصد این دستگاه درست کار نمیکرد یا هنگمیکرد دقیقا نیروگاه منفجر میشد! و اگر میدونستم چنین جایی قراره نصببشه خیلی موارد امنیتی بود که لحاظ میکردم و احتمالا این مشکلی که بوجود آمده بخاطر رعایتنکردن پارامترهایی است که توی محیطهای صنعتی باید توی طراحی سختافزار لحاظ بشه! و اینکه واقعا خوششانس بوده که اتفاقبدی براش نیفتاده! فکرکنید ۱۶تا از این دستگاه رو هم نصبکردهبود. پیشنهاد میکنم همون اول سنگاتون را با کارفرما وا بکنید و موضوعات اینچنینی را واضح براشون مشخصکنید که اگر قراره پروژه در محیط صنعتی کارکنه لازمه پول بیشتری بدهد و گرنه مواردفنی و پشتیبانی نمیتونه براتون کافی باشه.
نحوه قیمتگذاری برای انجام پروژه:
یکیاز مهمترین پارامترها در تعریف یک پروژه پارامتر قیمت است. البته همیشه هم اینطور نیست که قیمت تعیینکننده باشد اما چنین پروژهای خیلیکم هستند! در اغلب پروژهها قیمت چنان تاثیرگذار است که حیات و یا ممات یک پروژه به آن بستگی دارد. معمولا تمام کارفرمایان دنبال قیمت پایینتر هستند و تمام مجریها بهدنبال بالاترین قیمت ممکن! البته همیشه استثنا وجود دارد! قابلتوجه کارفرمایان محترم همیشه کمترین قیمت بهترین پیشنهاد نیست؛ گاهی اتفاقا بالاترین قیمت بهترین قیمت است؛ همیشه جوانب مختلف را باید درنظرگرفت. فرضکنید یک کارخانه تولیدی قصد دارد مدل جدید جاروبرقی خود را وارد بازار کند و سفارش طراحی مدار کنترل آن را بهچندین طراح میسپارد: یکی قیمت x و دیگری قیمت 2x را ارائه میکند! اگر تصمیمگیری را در همین نقطه انجامدهیم فکرنمیکنم شکداشتهباشید که قیمت x انتخاب کارفرما باشد ولی اگر توضیحات مقابل رو اضافهکنیم چی؟ طرح گرانتر هزینه تمامشده پایینتری دارد. قطعا دیگر هزینه طراحی چندان ارزش ندارد لکه مهمترین پارامتر هزینه تمامشده ساخت است.
چراکه هزینه طراحی یکبار پرداخت میشود ولی هزینه تولید به ازاء هربار تولید یکبار پرداخت میشود.
این مثال بهخوبی نشان میدهد که همیشه این قانون ارزانتر بهتر صحیح نیست ازطرفی باید به قابلیتهای طراح هم نگاهکرد، قطعا طراحهای باتجربهتر هزینه بالاتری را درخواست میکنند و ازطرفی طرح مطمئنتری را ارائهخواهندکرد. اما اگر مجری باشیم، چطور باید قیمت را ارائهکنیم؟ یکیاز اشتباهاتی که افراد تازهکار مرتکب میشوند ارائه قیمت پایین برای یک پروژه است، این قیمت پایین میتواند به شکل مستقیم و یا غیرمستقیم موفقیت پروژه را تهدید کند معمولا افراد تازهکار پارامترهای اساسی را در قیمتدادن درنظر نمیگیرند از جمله:
- وقتیکه برای تحقیق لازم هست بگذارند
- ۱۰تا ۲۰درصد خرابی قطعات و یا قطعات بیکیفیت
- مهمترین مساله هزینه خطایابی در روال نهاییشدن محصول
- پشتیبانی محصول
معمولا کمتر طراحی پارامترهای فوق را در قیمت پروژه لحاظ میکنند یا اگر هم لحاظ میکنند دید درستی نسبتبه مقولههای فوق ندارند تا قیمت درستی برای آن لحاظکنند. هیچکدام از گفتههای فوق به این معنی نیست که وقتی قیمت بالایی ارائهکنیم یعنی ما آدم حرفهایتری هستیم، درواقع تمام حرفم اینهکه منطقی با مقوله قیمت برخورد کنیم.
منبع:سیسوگ