چرا دیجی کالا پلتفرم سوپرنوا را توسعه داد
اگر نام پلتفرم سوپرنوا دیجیکالا را نشنیده باشید، بهتر است بدانید که دیجیکالا از چندی پیش پلتفرم قدیمی خود موسوم به لگاسی را کنار گذاشته و از پلتفرم جدیدی با عنوان سوپرنوا در تمام عملیات خود استفاده میکند. نمود ظاهری تغییر پلتفرم دیجیکالا هرچند برای کاربران در تغییر ظاهر وبسایت فروشگاه دیجیکالا از چند هفته پیش مشخص شده، اما باید بدانید که تغییرات تنها بهصورت ظاهری نبوده و دیجیکالا پلتفرم سوپرنوا را بهعنوان یک سیستم جامع در تمام فعالیتهای خود از قبیل انبارداری، فروش، حسابداری، نسخهی وب، موبایل، مارکتپلیس و سایر حوزهها مورد استفاده قرار میدهد. دیجی کالا طی مراسمی که با حمایت شاتل برگزار کرد به تشریح عملکرد سوپرنوا و چرایی و چگونگی مهاجرت به این پلتفرم پرداخت.
سوپرنوا چیست و چرا دیجیکالا بهسراغ توسعه پلتفرمی متنباز رفت؟
سهیل مقدم، مدیر ارشد تکنولوژی دیجیکالا دلیل تصمیمگیری برای توسعهی پلتفرم جدید سوپرنوا را نبود امکان برای توسعهی هرچه بیشتر پلتفرم قبل عنوان کرده است. بهگفتهی مقدم، گسترهی فعالیتهای دیجیکالا در چند سال اخیر به اندازهای افزایش یافته که دیگر امکان توسعهی هرچه بیشتر پلتفرم لگاسی وجود نداشت و به نوعی این پلتفرم جوابگوی نیازهای سازمان نبود. ساختار نسبتا قدیمیتر لگاسی در کنار هزینهی بالای نگهداری و پیچیدگی سیستم لگاسی برای اضافه کردن امکانات جدید باعث شد تا دیجیکالا تصمیم به کنار گذاشتن آن و توسعهی سیستمی جدید بگیرد. سهیل مقدم اعلام کرد که دیجیکالا برای مدیریت هر چه بهتر پلتفرم لگاسی، سروری مجهز به یک ترابایت حافظهی رم تدارک دیده بود، حال آنکه چنین حافظهای نیز در برخی زمانها پاسخگوی نیازهای دیجیکالا و حجم گستردهی بازدید و سایر فعالیتهای این فروشگاه اینترنتی نبوده است.
سهیل مقدم، تغییر پلتفرم را یک بیگبنگ عنوان کرده و از اینرو از ابتدای سال ۹۶ مقدمات برای توسعهی پلتفرم جدید را با ایجاد یک تیم توسعهی جدید در دیجیکالا آغاز کرده است.
سوپرنوا یک پلتفرم متنباز مبتنی بر PHP است. علیرضا حسین زاده در توضیح چرایی متنبازبودن سوپرنوا، مزایای نرمافزارها و پروژههای متنباز را دلیل این انتخاب عنوان کرده است. بهگفتهی حسین زاده، متنبازبودن یک پلتفرم باعث میشود تا تعداد بیشتری توسعهدهنده فارغ از زمان و مکان، امکان کار کردن روی پروژه را داشته باشند.
وی دلیل انتخاب PHP را شاکلهی تیم سوپرنوا خوانده که اغلب جزو متخصصان و توسعهدهندگان کاربلد این حوزه بودهاند. پلتفرم سوپرنوا که مبتنی بر PHP توسعه یافته، مشتمل بر ۲۱ پلاگین مختلف است که ابعاد مختلف فعالیتهای دیجیکالا را شامل میشود. بهگفتهی کراسی ایوانف، مدیر تکنولوژی مارکتپلیس دیجیکالا، تیم توسعه علاوهبر تفکیک فعالیتهای مختلف در ۲۱ پلاگین مختلف، دیتابیس را نیز به چند قسمت تقسیم کرده تا هر بخش بنابر نیازهای خود اطلاعات مورد نیازش را در دیتابیسی مستقل در اختیار داشته باشد. براساس اطلاعات ارائهشده، دیجیکالا در پلتفرم لگاسی از یک دیتابیس واحد استفاده میکرده که همین موضوع باعث کاهش عملکرد سیستم شده بود.
فواد نصرتی حبیبی، یکی دیگر از توسعهدهندگان دیجیکالا، اعلام کرد که تیم توسعه دهندگان سوپرنوا، برای توسعهی پلاگینهای مورد نیاز خود از کامپوننتهای سیمفونی استفاده کردهاند. وی دلیل این کار را امکان شخصیسازی پلاگینهای مورد نیاز در راستای نیازهای دیجیکالا عنوان کرد.
تیمسازی
لوکاش لاتو، قائم مقام مهندسی در دیجیکالا یکی از شاخصترین افرادی است که نقشی پررنگ را در توسعهی پلتفرم سوپرنوا به عهده داشته است. لوکاش لاتو که یک توسعه دهندهی PHP است، چهار مشخصهی اصلی را برای ایجاد یک پلتفرم جدید ضروری عنوان کرد. از نظر لاتو چهار فاکتور پایداری، عملکرد، مقاسپذیری و انعطافپذیری از جملهی مهمترین ارکان برای توسعهی پلتفرم جدید دیجیکالا بودهاند.
از نظر لاتو، دل بستن به یک تکنولوژی واحد، نتیجهای جز شکست در پی ندارد و باید مجموعهای از تکنولوژیها و راهکارهای کاربردی را در مسیر اهداف سازمان بهکار گرفت تا بهترین نتیجه حاصل شود. وی ایجاد پلتفرمی همچون سوپرنوا را نه صرفا حاصل تکنولوژی، بلکه حاصل ایجاد تیم مهندسی باروحیه و نگرش نزدیک میداند.
لوکاش لاتو، نگرش سازنده در توسعهی پلتفرمی نظیر سوپرنوا را در افرادی میداند که به توسعهی این پلتفرم میپردازند. از نظر لاتو، اعضای تیم فقط مجری طراحیهای انجامشده نیستند؛ بلکه هر یک از اعضا باید در صورت نبود ابزار مورد نیاز، آن را برای خود ساخته و نقشی پررنگتر از یک کدنویس در روند توسعه داشته باشند.
مهاجرت
امیر حسنی، یکی از توسعهدهندگان پلتفرم سوپرنوا است که جزو اولین اعضای تیم سوپرنوا بوده است. امیر حسنی پیش از سوپرنوا نیز عضو تیم توسعه دیجیکالا بوده؛ اما براساس گفتههای وی، دیجیکالا برای تشکیل تیم توسعهی سوپرنوا، توسعهدهندگان و کارکنان پیشین خود را ملزم به شرکت در یک مصاحبهی استخدامی کرده است.
امیر حسنی، حساسترین مرحلهی توسعه و پیادهسازی پلتفرم سوپرنوا را مهاجرت از پلتفرم لگاسی به سوپرنوا خوانده است. با توجه به اینکه امکان از دسترس خارج شدن دیجیکالا بهعنوان یک فروشگاه اینترنتی بزرگ امکانپذیر نبوده، تیم توسعه این فرایند را شبانه و در عرض چند ساعت انجام داده است. البته پیش از مهاجرت نهایی، تیم توسعه در روزهای قبل چندین بار بهصورت آزمایشی، اسکریپتهای انتقال اطلاعات دیتابیس را از MS SQL به MySQL انجام دادهاند تا از صحت عملکرد این اسکریپتها و انتقال کامل اطلاعات اطمینان حاصل کنند. با توجه به اینکه دیتابیس دیجیکالا در پلتفرم سوپرنوا برای بخشهای مختلف از قبیل فروش، انبارداری و سایر قسمتها تفکیک شده، اطلاعات ابتدا به دبتابیس اصلی منتقل شده و سپس اطلاعات مورد نیاز با سایر دیتابیسها همگام شدهاند.
سوپرنوا و قابلیتهای جدید
سوپرنوا در کنار ارائهی امکاناتی برای مدیریت امور روزمره دیجیکالا، امکانات دیگری را نیز در اختیار این کمپانی قرار میدهد. شاید بارزترین این امکانات در کنار ویژگیهای دیگر، استفاده از تحلیل کلان داده و بررسی رفتار هر یک از افرادی است که از طریق نسخهی وب یا اپلیکیشنهای این فروشگاه به آن مراجعه کرده و خرید میکنند. علی محمد فروتن زاده، توسعهدهنده دیجیکالا، عملکرد سیستم تحلیل دادهی سوپرنوا را شامل دو بخش عنوان کرد. دیجیکالا در یک پایگاهداده اقدام به ذخیرهی اطلاعات حاصل از رفتار کاربران در یک ماه اخیر کرده و در پایگاه دادهی اصلی رفتار کاربران را در طول زمان ذخیره میکند تا با تحلیل آنها در قبال ایونتهای (Event) مختلف به تصمیمگیری در رابطه با استراتژیهای آیندهی خود در حوزههای مختلف نظیر فروش محصولات مشخص یا برگزاری کمپینها بپردازد.
نظرات