Yoko Founder | Design System Expert زندگی یک تجربه اس و من در تلاشم تا تجربهی بهتری خلق کنم.
دیزاین سیستم آماده استفاده کنیم یا از صفر طراحی کنیم؟
تو ادامهی بحث دیزاین سیستم که تو پستهای قبلی یعنی "چرا به دیزاین سیستم نیاز داریم؟" بهش پرداختیم، حالا میخوایم ببینیم بهتره از صفر شروع به طراحی دیزاین سیستم کنیم یا از دیزاین سیستمهای آماده مثل متریال، کربن و یوکو اسپیس استفاده کنیم؟ خب هر کدوم از این انتخابها مزایا و معایب خودشون رو دارن و نمیشه گفت کدوم برای همه مناسبه. تو این مقاله از سری مقالههای دیزاین سیستم، میخوایم ببینیم کدوم راه برای ما بهتره. اما قبل از اینکه بریم سراغ بحث اصلی، بیایید یه مرور کوتاه داشته باشیم که اصلا چرا دیزاین سیستم مهمه.
چرا دیزاین سیستم؟
دیزاین سیستم یکی از بخشهای اساسی هر محصول هست و به تیمها کمک میکنه تا زبان بصری و تجربه کاربری محصولات رو منسجم و یکپارچه نگه دارن. دیزاین سیستم شامل یه سری الگوها، اجزا و دستورالعملهاست که باعث میشه دیزاینها منظم، هماهنگ و پیشبینیپذیر باشن. اگه دوست دارید بیشتر بدونید که دیزاین سیستم چیه، پیشنهاد میکنم پستهای "دیزاین سیستم چیست؟" یا "چطور یک دیزاین سیستم طراحی کنیم" رو چک کنید.
به هر حال، تو تیمهای بزرگ و کوچیک، داشتن یه دیزاین سیستم مثل داشتن نقشه راه میمونه؛ یه نقشه که بهتون کمک میکنه تو مسیر بمونید و راه رو گم نکنید. خب، مقدمه کافیه، بریم سراغ اصل مطلب؛ یعنی مزایا و معایب استفاده از دیزاین سیستمهای آماده و همینطور طراحی دیزاین سیستم از صفر. اول از همه، بریم سراغ طراحی از صفر.
مزایای طراحی دیزاین سیستم از صفر
مانور بیشتر روی برند
درسته که طراحی یه دیزاین سیستم از صفر خیلی چالشبرانگیزه، اما نباید فراموش کنیم که این کار بهتون این امکان رو میده تا هویت بصری برندتون رو دقیقا همونطور که میخواید روی دیزاین سیستم پیاده کنید. با طراحی از صفر، شما میتونید همه جزئیات رو بهصورت کاملا سفارشی تنظیم کنید و مطمعن بشید که هر چیزی دقیقا با شخصیت و ارزشهای برندتون همخوانی داره. این یعنی دیزاین سیستم شما نه فقط یه ابزار، بلکه بازتاب کامل و هماهنگ از برند شما خواهد بود.
البته که این به این معنا نیست که دیزاین سیستم های آماده به هیچ وجه اجازه تغییر رو به شما نمیدن و شما نمیتونید برندتون روی دیزاین سیستم های آماده سوار کنید، اکثر دیزاین سیستم های آماده هم تا حد قابل قبولی به شما اجازه تغییرات و اعمال کردن برندتون روی دیزاین سیستم رو میدن. (البته که بسته به مدل ساختشون هر کدوم تا حد مشخصی به شما آزادی عمل میدن و مشابه هم نیستن) اما مسلما وقتی جیزی رو از صفر طراحی میکنید، دست بازتری دارید ولی سختیهای خودش رو هم داره.
انعطافپذیری بالا
وقتی خودتون دیزاین سیستم رو از پایه طراحی میکنید، این امکان رو دارید که اونو با تغییرات نیازهای پروژه و تکنولوژیهای جدید هماهنگ کنید. این انعطافپذیری کمک میکنه که سیستم شما همیشه بهروز و کارآمد بمونه. ولی باید بدونید که اعمال این تغییرات، نیاز به صرف منابع مالی، زمانی و نیروی کار داره. بنابراین، قبل از تصمیمگیری باید همه جوانب رو خوب بسنجید. یا دیزاین سیستم از پیش ساخته شده ای رو انتخاب کنید که با تکنولوژی محصول شما سازگار باشه.
پاسخگویی به نیازهای خاص
نیاز پروژهها همیشه یکسان نیست و گاهی پروژهها و محصولاتی وجود دارن که نیازهای خاص و منحصربهفردی دارن که دیزاین سیستمهای آماده نمیتونن بهخوبی پوشش بدن. با طراحی یک دیزاین سیستم جدید، میتونید تا حد خوبی این نیازهای خاص رو در نظر بگیرید و دیزاین رو مطابق با نیازهای خاص پروژه و محصولتون تنظیم کنید. این موضوع باز به این برگرده که مطمعم بشید آیا دیزاین سیستم های موجود نایز شمارو پوشش نمیدن؟
کنترل کامل روی جزئیات
مسلما وقتی از صفر دیزاین سیستم رو طراحی میکنید، کنترل خیلی بیشتری روی همه اجزا و عناصر دیزاین دارید. این کنترل بهتون اجازه میده که به ریزترین جزئیات توجه کنید و مطمعن بشید که همه چیز اونطور که شما میخوایید پیادهسازی شده. اما خب نباید باز هم این نکته رو فراموش کرد که این کنترل کامل نیاز به یک تیم متخصص دیزاین سیستم خواهد داشت، پس هزینههای این کنترل رو فراموش نکنید.
فرصت برای نوآوری بیشتر
طراحی از صفر به شما این امکان رو میده که نوآوریهای خودتون رو بیشتر از چیزی که در دیزاین سیستم های آماده میتونید وارد دیزاین سیستم خودتون کنید. همچنین به جای پیروی از الگوهای موجود، میتونید الگوهای جدید و تازهای ایجاد کنید که باعث تمایز پروژه شما میشه.
معایب طراحی دیزاین سیستم از صفر
زمانبر و پرهزینه
میشه گفت یکی از بزرگترین و مهم ترین عیب های طراحی یک دیزاین سیستم از صفر است، همین زمان و هزینه هست.فرآیند طراحی دیزاین سیستم شامل مراحل مختلفی میشه که از بین اونا میشه به مهمترین هاش یعنی تحقیق، طراحی، توسعه و تست پرداخت که هر کدوم از این مراحل افراد و تیم جداگونه خودش رو میطلبه و میتونه بسیار زمانبر و پرهزینه باشه.
نیاز به تخصص بالا
دومین مورد که مثل مورد قبل مهم و بسیار تاثیرگذار هست موضوع تخصص میشه. ساخت دیزاین سیستم اصلا کار ساده ای نیست و برای ساخت یک دیزاین سیستم کارآمد و موثر، نیاز به تخصص و تجربه بالایی دارید. تیم شما باید در زمینه طراحی و توسعه سیستمها دانش کافی داشته باشه تا بتونه یه سیستم قابل اعتماد و کاربردی ایجاد کنه.
ریسک بالا
بعد از زمان و تخصص، مورد بعدی موضوع ریسک بالاست، این موضوع به طور مستقیم، خروجی دو مورد قبلی میشه. وقتی تصمیم میگیرید که یک دیزاین سیستم رو از صفر طراحی کنید، قطعا با چالشها و مشکلات غیرمنتظرهای روبهرو میشید که بسته به تخصص و اندازه تیم شما این مشکلات میتونن باعث تأخیر زیاد در پروژه و همینطور افزایش هزینههای شما بشن.
نیاز به نگهداری مداوم
دیزاین سیستمهای اختصاصی، در طول زمان نیاز به نگهداری و بهروزرسانی مداوم هستن تا با تغییرات نیازهای پروژه (یا شرکت) و تکنولوژیهای جدید هماهنگ بشن. برای نگهداری و بروزرسانی دیزاین سیستم نیازه تا شما افراد با حتی تیم اختصاصی برای دیزاین سیستم داشته باشید. این نگهداریها میتونه در طولانیمدت، زمان و منابع بسیار زیادی رو طلب کنه، در نتیجه اگه تصمیمتون طراحی یک دیزاین سیستم هست، مهمه که این مورد و همینطور تمام مورد های بالا رو در نطر داشته باشید، در ادامه میریم سراغ مزایا و معایب دیزاین سیستم های آماده رو باهم بررسی کنیم.
مزایای دیزاین سیستمهای آماده
صرفهجویی در زمان و هزینه
اولین بخش قطعا زمان هست، استفاده از دیزاین سیستمهای آماده این امکان رو به شما میده که پروژهتون رو خیلی خیلی سریعتر و با هزینه بسیار کمتری جلو ببرید. این سیستمها توسط تیمهای حرفهای طراحی و بهصورت کامل مستند شدهاند، بنابراین نیاز به تحقیق و توسعه از صفر بهشدت برای شما کاهش پیدا میکنه.
استانداردهای اثباتشده
دیزاین سیستمهای آماده معمولا بر اساس بهترین روشها (best practice) و استانداردهای دیزاین ساخته شدهاند و بهطور گستردهای مورد استفاده قرار گرفتهاند. این موضوع به شما اطمینان میده که محصول و شرکت شما مطابق با اصول و استانداردهای معتبر، کارآمد و همینطور بهروز پیش خواهد رفت و در دراز مدت دچار مشکل نمیشید.
آسانی در پیادهسازی
سیستمهای آماده معمولا همراه با مستندات کامل و ابزارهای لازم برای پیادهسازی ارائه میشن. این امر باعث میشه که تیم شما بتونه به سرعت و بدون مشکلات پیچیده، دیزاین سیستم رو در پروژه پیاده کنه.
پشتیبانی و جامعه کاربری
بسیاری از دیزاین سیستمهای آماده، دارای جامعه کاربری بزرگی هستن که تجربیاتشون رو به اشتراک میذارن و پشتیبانی ارائه میدن. این جامعه میتونه به شما کمک کنه تا با مشکلات احتمالی راحتتر کنار بیاید و بهترین راهحلها (Best Practice) رو پیدا کنید.
کاهش ریسک
با استفاده از دیزاین سیستمهای آماده، شما از تجربه و دانش تیمهای حرفهای که این سیستمها رو ایجاد کردهاند بهرهمند میشید. این کار باعث میشه ریسکها تا حد بسیار زیادی کاهش پیدا کنن و اطمینان بیشتری در طراحی و توسعه پروژه داشته باشید.
معایب دیزاین سیستمهای آماده
محدودیت در سفارشیسازی
یکی از نقاط ضعف دیزاین سیستمهای آماده اینه که ممکنه در سفارشیسازی اجزا و عناصر بصری با محدودیتهایی مواجه بشید. اگه نیاز به تغییرات خاصی داشته باشید، این سیستمها ممکنه نتونن بهخوبی نیازهای شما رو پوشش بدن و مجبور بشید تغییرات زیادی اعمال کنید که ممکنه خستهکننده و زمانبر باشه. در نتیجه مهمه که زمانی که قصد دارید از یک دیزاین سیستم آماده استفاده کنید باید حتما این نکته رو در نظر داشته باشید که دیزاین سیستمی رو انتخاب کنید که به شما آزادی عمل بیشتری بده و تا بتونه نیازهای شمارو پاسخ بده.
هماهنگی با هویت برند
بعضی از دیزاین سیستمهای آماده راهحلهای محدودی یرای شخصی سازی دارن و ممکنه کاملا با هویت بصری برند شما هماهنگ نشن. در این صورت، نیاز به تطبیق و تغییرات بیشتری خواهید داشت که این مسئله میتونه زمان و هزینه اضافی به همراه داشته باشه و ممکنه نتیجه نهایی دقیقا مطابق با انتظارات شما نشه. در نتیجه دوباره بر میگردیم به موردی که توی پاراگراف قبلی گفتیم، اینکه در نقطه شروع دیزاین سیستم مناسبی رو انتخاب کنید تا بهرسما آزادی عمل بیشتری بده و بتونید راخت اون رو شخصی سازی کنید.
احتمال عدم تطابق با نیازهای خاص پروژه
دیزاین سیستمهای آماده ممکنه نتونن بهطور کامل نیازهای خاص پروژه شما رو برآورده کنن. اگر پروژه شما نیازهای منحصربهفردی داره، ممکنه استفاده از این سیستمها به چالش کشیده بشه و نیاز به تغییرات و تطبیق بیشتری پیدا کنید. قبل از هر چیز، نیاز های خاص پروژه رو لیست کنید تا مطمعن بشید که دیزاین سیستم مدنظرتون نیاز های شمارو پاسخ میده.
وابستگی به یک سیستم خاص
استفاده از یک دیزاین سیستم آماده ممکنه باعث بشه به اون سیستم وابسته بشید. اگه اون سیستم بهروزرسانی نشه یا پشتیبانی مناسب نداشته باشه، ممکنه با مشکلاتی مواجه بشید که نیاز به تغییر سیستم رو ضروری کنه و این تغییر میتونه دشوار و پرهزینه باشه.
کمبود انعطافپذیری
سیستمهای آماده ممکنه انعطافپذیری لازم برای پاسخگویی به تغییرات سریع و نوآورانه رو نداشته باشن. این میتونه شما رو از پاسخ به نیازهای جدید و تغییرات بازار عقب بندازه و پروژهتون رو از رقابت دور کنه. فکر کنم دیگه به اندازه کافی این مورد رو تکرار کردیم که چقدر مهمه که چه دیزاین سیستمی انتخاب میکنید. هر چه دیزاین سیستم انتخابی شما انعطافپذیری بیشتری داشته باشه، احتمال به وجود اومدن مشکل در پروسه تغییرات و اضافه کردن ویژگی های جدید رو کم میکنه.
دیزاین سیستم آماده استفاده کنیم یا نه؟
بعد از تمام این صحبت ها, به نظر شما آیا استفاده از دیزاین سیستم آماده گزینه مناسبی هست یا نه؟ مسله اصلی اینه که در بیشتر مواقع دیزاین سیستم های آماده به شرطی که برای استفاده عمومی آماده شده باشن نیاز های پروژه شما رو پوشش میدن. این موضوع مخصوصا در شرکت ها و استارتاپ های کوچیک بیشتر هم نمود پیدا میکنه، هر چند که بسته به نیاز شرکت، ممکنه که نیاز شرکت های بزرگ رو هم پوشش بدن.
تصمیمگیری در مورد اینکه باید از صفر یک دیزاین سیستم طراحی کنید یا از سیستمهای آماده استفاده کنید، کاملا به نیازها و شرایط خاص پروژه و تیم شما بستگی داره. هر دو روش مزایا و معایب خودشون رو دارن و مهمه که با توجه به نیازها، زمان و منابع موجود، بهترین تصمیم رو بگیرید.
مطلبی دیگر از این انتشارات
دنیای متنباز: جایی که محصولات آزادانه جریان دارند.
مطلبی دیگر از این انتشارات
کیپ چنجلاگ(keep a changelog) چیست؟ و چرا؟
مطلبی دیگر از این انتشارات
چطور یک دیزاین سیستم طراحی کنیم؟