۶ چیز که باید قبل از شروع کار، با توسعه دهنده وب خود مورد بحث قرار دهید

گردآوری و تالیف : عرفان کاکایی
تاریخ انتشار : 25 اسفند 1397
دسته بندی ها : آموزشی

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

به هر حال، مدیریت رابطه شما با توسعه دهنده‌تان می‌تواند سخت باشد. من یک توسعه دهنده هستم؛ پس می‌دانم که یک رابطه به چندین روش می‌تواند نابود شود:

  • مهلت‌هایی که تمام می‌شوند
  • کمبود ارتباط
  • ارتباط کند
  • عدم وجود هیچ گونه ارتباط
  • قول‌های بیش از حد از طرف توسعه دهنده
  • غیب شدن توسعه دهنده
  • هدفی که به خوبی تعریف نشده است
  • کمبود تشریفات برای فرضیات / تصمیمات کوچک
  • این که باگ‌ها یا مشکلات برطرف نمی‌شوند

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

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

۱. ما چگونه با هم در ارتباط خواهیم بود؟

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

«ارتباطات بیشتر، همیشه به یک ارتباط بهتر ختم نمی‌شود.»

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

چرا این مسئله مهم است؟

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

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

۲. پروژه را چگونه مدیریت خواهید کرد؟

فایل‌ها و مدارک ورود ضروری که توسعه دهنده نیاز خواهد داشت در کجا هستند؟ شما از چه نرم‌افزاری استفاده خواهید کرد؟ Basecamp؟ Trello؟ Asana؟ یک صفحه Google Doc؟ اساسا مرکز اتصالی را برای هر چیزی که به پروژه مربوط است تعریف کنید.

چرا این مسئله مهم است؟

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

۳. چه کسی تصمیم‌گیری می‌کند؟

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

چرا این مسئله مهم است؟

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

۴. توسعه دهنده چگونه باید فرضیات و تصمیمات کوچک را مدیریت کند؟

توسعه دهنده در هنگام دخالت در طراحی، چقدر آزادی دارد؟ آیا باید وبسایت را طبق طراحی‌ها پیکسل به پیکسل بسازید، یا این که باید برخی فرضیات کوچک حول ثبات و قابلیت استفاده مجدد بخش‌های شما داشته باشد؟ اگر شما یک وبسایت responsive را طراحی کرده‌اید، آیا تمام نقاط شکست را نیز طراحی کرده‌اید؟ آیا نکاتی را درباره انیمیشن‌ها، transitionها و افکت‌های hover فراهم کرده‌اید؟ آیا برای فیلدها وضعیت اعتبارسنجی طراحی کرده‌اید؟ (برای مثال پیغام‌های: «رمز عبور نامعتبر»‌ یا «نام کاربری وجود ندارد») اگر طراحی نکرده‌اید، آیا توسعه دهنده حق دارد تصمیمات یا پیشنهاداتی را بیان کند؟

چرا این مسئله مهم است؟

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

۵. جدول زمانی به چه صورت است؟

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

چرا این مسئله مهم است؟

«تعیین کردن مهلت‌های مصنوعی و سخت واقعا کمکی نمی‌کند... بهترین سیاست، صداقت است.»

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

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

۶. ساختار قرارداد و پرداخت‌ها چگونه است؟

هزینه پروژه چقدر است؟ معیار پایان پروژه چقدر است؟ چه چیزی در هدف پروژه مشمول است؟ پرداخت‌ها چه زمانی انجام می‌شوند؟

چرا این مسئله مهم است؟

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

نتیجه گیری

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

منبع

مقالات پیشنهادی

زبان ها و فریم ورک های که باید در سال 2016 یاد بگیریم

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

5 چیز که باید به عنوان یک توسعه دهنده جدید بدانید

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

یک طراح يا برنامه نويس وب از کجا بايد شروع کنه ؟

اين افراد کارشون اينکه رابط کاربري يک وبسايت ، که کاربر نهايي باهاش کار ميکنه رو بسازن ! يعني ميان چهره يه سايتو درست ميکنن ! البته اين افراد بازم به...

چرا در صحبت با مشتریان باید سرعت وبسایت را اولویت قرار دهید

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