کم‌کد و بی‌کد: مرز توسعه نرم‌افزار کجاست؟

نوآوری · · زمان مطالعه: ۴ دقیقه

نمای دوتکه از میز کار مدرن؛ بلوک‌های ماژولار در حال تشکیل داشبورد در یک سو و میز صنعتگر با ابزارهای دقیق در سوی دیگر

کم‌کد و بی‌کد (Low-code / No-code) معمولاً با یک وعده معرفی می‌شود: ساخت نرم‌افزار بدون برنامه‌نویس. اما در پروژه‌های واقعی، پرسش مهم این نیست که «آیا این ابزارها جای برنامه‌نویس را می‌گیرند؟»؛ پرسش مهم این است که «مرز کجاست؟» هر پلتفرم کم‌کد یک مدل از جهان دارد و تا وقتی مسئلهٔ شما در آن مدل جا شود، سرعت ساخت چند برابر می‌شود. به‌محض این‌که از مدل بیرون بزنید، هزینه فقط جای دیگری ظاهر می‌شود.

سقف پلتفرم را قبل از شروع پیدا کنید

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

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

سه پرسشی که تصمیم را روشن می‌کند

  1. این فرایند استاندارد است یا متمایزکننده؟ اگر کاری است که همه به یک شکل انجام می‌دهند — ثبت مرخصی، تیکت پشتیبانی، فرم نظرسنجی — کم‌کد انتخاب درستی است. اگر همان فرایند، تفاوت شما با رقیب است، آن را در قالب آمادهٔ دیگران نریزید.
  2. نرخ تغییر چقدر است؟ فرایندی که سالی یک بار تغییر می‌کند با کم‌کد راحت مدیریت می‌شود؛ فرایندی که قواعدش مدام عوض می‌شود، به منطق قابل آزمون و نسخه‌بندی‌شده نیاز دارد.
  3. اگر فردا پلتفرم را عوض کردیم چه می‌شود؟ داده‌ها با چه قالبی خارج می‌شوند؟ منطق کسب‌وکار کجا زندگی می‌کند؟ دسترسی به API داریم یا فقط رابط کاربری؟

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

هزینهٔ پنهان: قفل‌شدگی، سایهٔ فناوری و بدهی فنی

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

  • قفل‌شدگی (vendor lock-in): منطق و داده در جایی نشسته‌اند که انتقالشان گران است؛ خروج از پلتفرم به یک پروژهٔ بازنویسی تبدیل می‌شود.
  • سایهٔ فناوری (shadow IT): ابزارهایی که خارج از چرخهٔ رسمی ساخته می‌شوند، نه مستند می‌شوند، نه بازبینی امنیتی می‌بینند و نه وقتی سازنده‌شان تیم را ترک کند کسی سراغشان می‌رود.
  • بدهی فنی: هر میان‌بری که امروز می‌زنید، فردا به‌شکل صورت‌حسابی برمی‌گردد که کسی آن را پیش‌بینی نکرده بود؛ همان بدهی فنی که بهره می‌گیرد.

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

الگوی هسته و پیرامون

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

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

نقش برنامه‌نویس جابه‌جا می‌شود، حذف نمی‌شود

در این مدل، کار تیم فنی از «نوشتن همه‌چیز» به «طراحی مرزها» تغییر می‌کند: طراحی مدل داده، API، هویت و دسترسی، بازبینی ابزارهایی که واحدها می‌سازند، و نوشتن اجزایی که با کم‌کد ساخته نمی‌شوند. مهارت تازه هم لازم است: توانایی خواندن نیاز کسب‌وکار و ترجمهٔ آن به تصمیم «بسازیم یا وصل کنیم».

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

جمع‌بندی

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

← بازگشت به همه مقالات