Skybin Technology
العودة إلى دراسات الحالة
📅
Productivity & SaaS

بناء منصة WeekPlan للإنتاجية على نطاق واسع

تساعد WeekPlan عشرات الآلاف من المهنيين على تحديد أولويات أهم عملهم باستخدام إطار عمل مستوحى من 7 العادات ومنهجية OKR. ساعدنا في تطوير المنصة من أصولها إلى منتج حديث وقابل للتوسع يعتمد على React و AWS.

ReactASP.NET Web APIAWSSaaSKnockoutJS

نظرة عامة

WeekPlan هي أداة إنتاجية مبنية على فرضية بسيطة خادعة: إذا كان بإمكانك تحديد أهم أولوياتك للأسبوع وجدولة تنفيذها بقصد، فستحقق المزيد مما يهمك فعلاً. تستند المنصة إلى 7 عادات للناس الأكثر فعالية من تأليف ستيفن كوفي ومنهجية تحديد الأهداف OKR لمساعدة المستخدمين على الانتقال من إدارة المهام التفاعلية إلى التخطيط الاستباقي المبني على الأدوار. عندما انضمت Skybin إلى المشروع، كانت WeekPlan قد بنت بالفعل قاعدة مستخدمين كبيرة، لكن مجموعة التكنولوجيا الأصلية بدأت تقيد قدرة الفريق على إطلاق الميزات والتعامل مع الحمل والحفاظ على تجربة مستخدم تنافسية. كانت المنصة بحاجة للنمو من الناحية التقنية دون فقدان البساطة التي جعلتها قيّمة.

التحديات

واجهة أمامية بتقنيات قديمة

تم بناء الواجهة الأمامية الأصلية على KnockoutJS - إطار عمل قادر في ذلك الوقت، لكنه أصبح يصعب توسيعه واختباره والتعاقد معه مع نضوج نظام React. كان تطوير الميزات الجديدة بطيئاً، وجعلت معمارية المكونات من الصعب الحفاظ على الاتساق عبر الواجهة المتنامية.

طبقة API غير مبنية للتوسع

نما ASP.NET Web API الذي يدعم الواجهة الخلفية بشكل عضوي دون عقد تصميم قوي. مع نمو قاعدة المستخدمين، أصبح الأداء تحت الحمل مصدر قلق، والافتقار إلى أنماط API متسقة جعل من الصعب على فريق الواجهة الأمامية العمل بثقة ضده.

البنية الأساسية لا تواكب النمو

لم تكن البنية الأساسية للمنصة مصممة لمتطلبات التوسع المرن لمنتج SaaS مع قاعدة مستخدمين موزعة عالمياً. كان تخطيط السعة يدويّاً، ولم تكن عملية النشر متوافقة مع معدل التكرار السريع الذي أرادته فريق المنتج.

حلنا

01

ترحيل React الإضافي

بدلاً من إعادة كتابة محفوفة بالمخاطر بشكل عام، اعتمدنا استراتيجية ترحيل إضافية - إدخال مكونات React واحدة تلو الأخرى جنباً إلى جنب مع كود KnockoutJS الموجود، مما يسمح ببناء الميزات الجديدة في React بينما يتم استبدال الشاشات القديمة تدريجياً. ظلت المنتج يعمل بشكل كامل والشحن مستمراً في جميع أنحاء.

02

تحديث API وعمل الأداء

قمنا بتدقيق ASP.NET Web API الموجود، وحددنا أعلى عناق أداء تأثيراً، وأنشأنا أنماط تصميم API متسقة للمستقبل. تم تحسين نقاط النهاية الرئيسية، وتم إدخال التخزين المؤقت حيث كان مناسباً، وتم توثيق API رسمياً لتحسين تجربة تطوير الواجهة الأمامية.

03

البنية الأساسية AWS وأتمتة النشر

قمنا بترحيل المنصة إلى بيئة AWS مصممة بشكل صحيح - باستخدام Elastic Beanstalk لطبقة التطبيق و RDS لاستضافة قاعدة البيانات المدارة و CloudFront لتسليم المحتوى العالمي. تم أتمتة النشر، مما مكن الفريق من الشحن بثقة وبشكل متكرر.

النتائج والنواتج

واجهة أمامية حديثة وسهلة الصيانة

منح ترحيل React الفريق مكتبة مكونات يمكنهم البناء عليها بثقة، مع تحسن كبير جداً في تجربة المطور مقارنة بقاعدة كود KnockoutJS القديمة.

تحسين أداء API تحت الحمل

أدى عمل الأداء المستهدف وأنماط API المتسقة إلى تقليل أوقات الاستجابة للمحطات الأكثر استخداماً وأعطى فريق الواجهة الأمامية سطحاً موثوقاً للبناء عليه.

البنية الأساسية AWS القابلة للتوسع

تتوسع المنصة الآن بشكل مرن مع الطلب، دون الحاجة إلى إدارة سعة يدوية. أصبح النشر الذي كان يتطلب تنسيقاً وإدارة المخاطر في السابق حدثاً روتينياً تلقائياً.

تسليم الميزات الأسرع

بفضل مجموعة الواجهة الأمامية الحديثة و API النظيف والنشر الآلي، انخفض وقت دورة الفريق للميزات الجديدة بشكل كبير - مما سمح للمنتج بالمنافسة بفعالية في سوق سريعة التطور.

الخلاصة

تعمل WeekPlan الآن على البنية الأساسية وقاعدة الكود التي يمكنها النمو مع المنتج. الأسلوب الإضافي - ترحيل الواجهة الأمامية وتحديث API وإعادة هندسة البنية الأساسية - حقق قفزة كبيرة في قدرة الفريق على الشحن دون الاضطراب الناجم عن إعادة بناء كاملة. عاش مستخدمو المنصة الاستمرارية؛ وحصل فريق الهندسة على أساس يمكنهم البناء عليه لسنوات.

هل لديك تحدٍ مماثل؟

أخبرنا عن مشروعك وسنخبرك بكيفية مساعدتنا.

ابدأ محادثة