أشياء لازم تتفاهم مع شركة البرمجة عليها بخصوص تطبيقك الجديد
مرحبا يا مطور, او يا صاحب البزنس الجديد
أكيد إنك متحمس لتطبيقك الجديد اللي ممكن يكون بداية نجاحك في عالم البزنس الإلكتروني. هذا المستودع تم إنشاءه عشان نسجل فيه الأشياء اللي يحتاج الشخص يفكر فيها لما يجي يسوي تطبيق جديد. التركيز في هذا المستودع على الطلبات والأمور اللي لازم تنتبه لها عند التواصل مع شركة برمجة أو شخص بيبرمج لك, ولفريق العمل اللي شغالين على جانب الـ IT من البزنس حقك
للمشاركة معنا أو التعديل, زور جزئية المشاركة والحقوق في أسفل الصفحة
خطة البزنس حقك
إيش البزنس بلان حقك؟ إيش البزنس أصلا؟ بتبيع بتشتري بتصير وسيط, هل هو برنامج ربحي غير ربحي
حدد طلباتك
- تبي تطبيق أيفون؟ اندرويد؟ وندوز؟ كلهم؟ بعضهم؟ تبيه يدعم اجهزة قديمة جداً؟ ولا الجديدات فقط
- ينفع تسوي Hybird أبلكيشن ولا لازم تسوي Native لكل نوع جهاز؟ هل انت فعلاً تحتاج خواص كثيرة وهالخواص أسرع بالنيتف؟
- عندك شعار؟ ولا بتصمم شعار؟ إذا بتصمم صمم مع نفسك
- تحتاج تتواصل مع مستخدمينك بالإس إم إس؟ إختر مزود خدمة إس إم إس مناسب, غالباً اسعارهم 10 هللات لكل 10,000 إس إم إس. والأسعار تنزل عن كذا
- شركات الإس إم إس تختلف, كل واحد منهم, يكون توافقه مع مزودين الإتصال (موبايلي إس تي سي زين يختلف), بعضهم يعمل أسرع مع بعض. وفيه نوعين أو أكثر لرسائل الإس إم إس, رسائل عادية غير مهم وصولها بالوقت, ورسائل مهم وصولها في ثواني للمستخدم (مثل رسالة تفعيل الرقم, ماتبي مستخدمك يقعد يتنظر إس إم إس ويطفش ويطلع من البرنامج ويسحب عليك)
- شركات الدفع, تبي تقبل سداد؟ إذا تبي تقبل سداد, إبحث عن مزودين خدمة الدفع بالسعودية, وتحتاج تفتح سجل تجاري عشان تفتح حساب بنكي لشركة ومن بعدها تفتح حساب سداد للشركة لاستقبال الدفعات. إذا ماتحتاج, 2Checkout ممكن يمشي أمورك
- إيش التستنق اللي بيسوونه هل بيجربون ان الواحد يحط 1000 طلب في نفس التطبيق, هل التطبيق والعرض حقه يدعم ؟ هل السيرفر عادي يستقبل 1000 طلب بظروف ثواني ؟
- نوعين تستنق عالأقل تحتاج تعملها مع تطبيقك,
- قابلية الإستخدام (تجيب مستخدمين كذا يجربون تطبيقك وتعطيهم سيناريوهات أو أكشنات يعملونها, مثال, تعطي واحد جوال وتقول له هذا التطبيق, إدخل وسجل أول طلب) وتراقبه وتشوف وش الأشياء اللي تصعب عليه, وايش الازرار اللي مايحصلها بسهولة, ايش الأشياء اللي يقرب الجوال من عينه عشان يقراها وتاخذ ملاحظات, وتسأله بالنهاية وش رايك؟ بيعطيك ملاحظات إضافية. تحتاج تعمل اختبار قابلية إستخدام مع أنواع المستخدمين المختلفين, ادمن, مستخدم عادي, مبيعات, وغيره إذا كان عندك.
- إختبار ضغط عالبرنامج, تختبر نقطتين إختبار للواجهة والعرض: لو كان فيه الف تنبيه عند العميل, إيش راح يصير؟ يعرض عشرين فقط وتحتاج تنزل لعرض المزيد؟ او يعرضها كلها بالتطبيق, لو كان فيه ألف أو ألفين خبر أو سجل, يعتمد على تطبيقك وطبيعته, لو كان فيه ألف منتج معروضة بالشاشة. لو كانت خانة العنوان للمنتج طويلة جداً أكثر من 200 حرف مثلا, كيف بتنعرض بالتطبيق؟ لو كانت خانة الوصف أكثر من 2000 حرف, إيش راح يحصل؟ لو المستخدم حط أشياء غلط بكل خانة, يعني خانة الإيميل وضع فيها رقم جوال, خانة المستخدم كتب فيها عربي أو إنقليزي (عكس المتوقع) لو حط رموز إختراق.
- نوعين تستنق عالأقل تحتاج تعملها مع تطبيقك,
- إيش لغات البرمجة
- إيش أنواع الأجهزة اللي بيسوون عليها تستنق واللي بيدعمونها
- الباك إند (إختر خياراتك وانت ماخذ إحتياطك إن برنامجك بيخدم ملايين الطلبات بالدقيقة, من أوائل اللحظات. يعني تختار خطة بسيطة وخيارات بسيطة لكن طريقة الترقية بأي لحظة تكون سريعة, غالباً راح تحتاج كلاود لانه هي أسرع شي بالترقية وإعادة تركيب البنية التحتية وغيره (لاااااااتركب برنامج مجاني وتسوي عليه تعديلات, مثل ووردبريس واوبن كارت وغيره) كل واحد طريقة تقسيم قواعد بياناته مختلفة ومعقدة أكثر من اللي أنت تحتاجه, إدفع أكثر في إنك تعمل شي مخصص لك
-
سجل مع كلاود فلير, عشان يضبط لك الطلبات من موقعك للأشياء الغير متغيره, مثل الصور وغيره. وينظم لك حركة الطلبات على موقعك, يعمل ك Load Balancer
- في الموقع المخصص لك, تحتاج تتفاهم معاهم بإستفاضة عن الـAPI وكيف حمايته, هل محمي من ال SQL Injection وال Remote Code Execution ؟
- لايستخدم أبدا حساب روت, على طول اول ماياخذ لك سيرفر, يقفل الروت, ويسجل باسورده على جنب ويقفل إمكانية الدخول بباسورد, ويغير باسورد روت قواعد البيانات ويعطيك إياه على جنب ولا يستخدمه, ويعمل لكل شخص بيستخدم الجهاز يوزر بصلاحيات الروت.
- لايسمح أبداً لأي يوزر مايسكول يدخل من ريموت, يخصص لكل يوزر آي بي أو هوست نيم
- أطلب منهم أن الكود يكون ملكك وأنهم ينقلونه لك من اللحظات الأولى على GitHub ويعملون مزامنة بشكل دائم, أي تعديل تشوفه بعينك (ممكن يطلبون منك فلوس أكثر إذا حقوق الكود تكون عندك)
إستخدم التقنيات الجديدة لحفظ أمورك
- إفتح لنفسك حساب LASTPASS تحفظ فيه باسورداتك أول بأول, أنت والفريق, عشان توفر على نفسك الصداع في تذكر الباسوردات لو إحتجتها في وقت حرج
- إفتح لمشروعك حساب جي ميل, تكون كل الحسابات الأخرى مربوطة فيه وكل الإيميلات الأخرى مربوطة فيه كإيميل ثانوي. تأمن هذا الإيميل بحياتك وتشغل عليه TwoFactor Authentication هذا الإيميل يبقى عند ال CTO أو الشخص اللي شايل مسؤوليات الآي تي كاملة
- إفتح حساب تريلو Trello لمشاركة القوائم (المهام) (وأرقام الإتصال) والأمور مع فريقك
- إذا تقدر تستخدم Slack للتواصل مع فريق العمل حقك, إبدا هالموضوع من البداية وركب التطبيق بجوالك. Slack هو أسلوب تواصل جديد بدال الطرق المعهودة (الشات, المنتديات, المراسلات البريدية) أنصح بإستكشافه وتبنيه من بداية الأعمال
- إشتر النطاق بنفسك. إذا كان عندك سجل, إحجز نطاق سعودي .com.sa لانه مجاني.
- إشتر شهادة SSL لنطاقك عشان تصير إتصالاتك كلها على ال SSL (أعتقد إشتراك كلاود فلير يعطيك هالخاصية ببلاش)
معايير جودة التطبيق
- قابلية الإستخدام نقطة مهمة قد تبدو سخيفة في بداية المشروع حيث أنك متخيل التطبيق بشكل كامل وتعتقد أن هذا هو أفضل تصميم لتطبيقك وهذه هي أفضل الواجهات, بينما يصدمك الواقع بالمستقبل لما المستخدمين يستخدمون برنامجك ويملون من حركة معينة ويبدأون بالإنصراف عن برنامجك وتخسر عملائك إستشارة خبراءقابلية الإستخدام تعطي نتائجها الملموسة بعد إنتشار التطبيق, هذا العلم قائم على دراسات لمجموعات كبيرة من المستخدمين وأسباب فشل أو نجاح بعض البرامج. جاري العمل على باقي المحتوى
ملاحظات غير مرتبة
- إذا جيت تحجز سيرفر, إحجز شي قريب دولتك عشان التواصل مع السيرفر يصير سريع
- من هذا الشخص ابو الهيثم
- رسم مخطط العمل, الوورك فلو
- رسم سيناريوهات لأنواع المستخدمين المختلفين
- رسم مخطط Use Case او User cases
- اعمل على رسم واجهات التطبيق على ورقه وقلم بالرصاص واطلب رسمها من المبرمجين أولاً قبل البرمجة
- حدد نقاط Milestones للمشروع مع المبرمجين بحيث يتم السداد عبر مراحل, لا تدفع فلوسك كلها وتتورط بالنتيجة اللي تصير غصباً عنك
- تأكد من تحديد كللللل شي تريده بالعقد اللي راح يكون فيه فكرة التطبيق كاملة, لأن أي شي خارج العقد, الشركة غير ملزمين بعمله, والسبب معقول ومنطقي, إنك راح تصير طماع دائما وتطرأ ببالك أفكار جديدة أثناء العمل وبتروح للمبرمجين تقول لهم حطو لي كذا بعد وكذا بعد, هذا شي بسيط سووه ببلاش بينما كل طلباتك ممكن تستنزف مواردهم وأوقاتهم, ف الشركة الكويسة بيتعاونون معاك إلى حد ما, لكن إذا رفعت ضغطهم بيبدأون بالرفض أو بيطلبون مبالغ أكبر
- إختر ألوان التصميم الخاص فيك قبل لاتصمم الشعار
- إستخدم مبدأ MVP لاتصنع طيارة من أول مرة, اجعل هدفك الأول هو الوصول للسوق وتطبيق وظيفة صغيرة جداً ومع الوقت فكر بالنسخة الجديدة الفعلية اللي بتحط فيها كل الخصائص. لا تطمع بيصلخونك بالأسعار. ومهما فعلت, في أي بزنس بشكل عام, عند وقت التشغيل, بتكتشف إنك تحتاج تعمل حاجات كثيرة ماطرت على بالك بسبب طلبات العملاء وطريقة إستخدامهم لبزنسك وتعاملهم معك. قد تحتاج اشياء تختلف عن ماهو في بالك الآن أو بال أي أحد تستشيره
- أنت بحاجة إلى فني يدير السيرفر وقد يكلفك هذا مبلغ بسيط شهرياً
- خلك مرن من ناحية الوقت إلى حد ما, إذا قالوا لك سينتهي العمل خلال شهرين, إترك مجال مرونة 20% للتأخير أو للإنتهاء مبكر, تقييم الوقت بالنسبة للمشاريع هذي قد لايكون دقيق جداً وإذا إستعجلتهم ممكن يلفقون لك العمل عشان بس سمعتهم من ناحية الوقت. كل تأخيرة فيها خيرة, لكن لا يمصخونها. سبب التأخير أحياناً أن التقنيات اللي كانوا يعرفونها, قد تكون تجددت وأصبح فيه حلول جديدة, خلك متفتح أيضاً للزيادة بقيمة المشروع لو كانوا وجدوا لك حل جديد في نص العمل وكانوا يبغون يفيدونك فيه
- لتصميم الشعار أو الواجهات, بإمكانك إستخدام خدمات المسابقات مثل 99desgin.com حيث في مثل هذي المواقع, تضع مواصفات مشروعك وتدفع قيمة الجائزة, وتنعرض المسابقة أمام ملايين المصممين في العالم, ويقومون بتقديم أعمالهم لك لمشروعك أنت بالذات, وتعطيهم ملاحظات ويعدلون كلهم, وتختار الأفضل وينتقلون للمرحلة الثانية معاك, وتطلب منهم طلبات إضافية وتختار شخص ينتقل للمرحلة النهائية ويقوم ببعض التتعديلات لك ويسلمك المشروع. هنا بتوفر مبلغ بسيط, وبتكون أمامك خيارات كثيرة للتصميم. لا تشيل هم الترجمة للعربي, امرها بسيط ورخيص جداً
المشاركة والحقوق
عندك مشكلة مع هذي الصفحة أو محتواها؟ إعمل فورك, وإرفع إقتراحك وإن شاء الله مايكون خاطرك إلا طيب>