كراسة مواصفات تطبيق واضحة هي أفضل استثمار تقوم به قبل التواصل مع أي شركة برمجة. بدونها ستتلقى عروض أسعار لا يمكن مقارنتها، لأن كل شركة تخيلت تطبيقًا مختلفًا من الوصف نفسه، وستكتشف الفروق بعد أن تدفع.
في هذا المقال ستتعلم ما الذي تضعه في الكراسة قسمًا قسمًا، وكيف تصف المستخدمين والمميزات والشاشات بلغة عادية دون خبرة تقنية، وما الذي تكتبه عن لوحة التحكم والتكاملات والأمان، مع نموذج مختصر قابل للتعديل، وأخطاء شائعة تجنبها.
ما هي كراسة مواصفات التطبيق ولماذا تحتاجها؟
كراسة المواصفات وثيقة تصف ماذا يجب أن يفعل تطبيقك ولمن، لا كيف سيُبرمج. تُسمى أيضًا وثيقة المتطلبات، ودورها أن يفهم كل من يقرأها التطبيق نفسه بالتفاصيل نفسها.
فوائدها العملية:
- عروض أسعار دقيقة وقابلة للمقارنة: كل شركة تسعّر النطاق نفسه، فتقارن بين أسعار حقيقية لا بين تخمينات.
- أسئلة أقل وبداية أسرع: الفريق المنفذ يبدأ من فهم مكتوب، لا من ذاكرة مكالمات متفرقة.
- مرجع عند الخلاف: ما هو مكتوب يدخل في النطاق، وما ليس مكتوبًا إضافة تُناقش.
- معايير للاستلام: تعرف متى يكون العمل «منتهيًا» فعلًا، وتختبره على أساس واضح.
كتابة المواصفات مرحلة أساسية ضمن مراحل عمل تطبيق موبايل من الفكرة للنشر، وتأتي بعد التحقق من الفكرة وتحديد النسخة الأولى.
لا تحتاج إلى قوالب تقنية معقدة. اكتب بلغتك العادية ما يفعله كل مستخدم خطوة بخطوة، والشركة الجيدة ستحوّله إلى مواصفات تقنية وتسألك عن الناقص.
ما الأقسام الأساسية في كراسة مواصفات تطبيق؟
كراسة مواصفات تطبيق جيدة تضم تسعة أقسام، ويمكن أن تبقى قصيرة إذا كانت واضحة. الترتيب التالي يناسب أغلب تطبيقات المشاريع:
- نظرة عامة: فقرة عن المشروع، والمشكلة التي يحلها التطبيق، والهدف التجاري منه.
- المستخدمون والصلاحيات: أنواع المستخدمين، وما يحق لكل نوع أن يراه ويفعله.
- المميزات بالأولوية: ما هو ضروري للنسخة الأولى، وما يمكن تأجيله.
- الشاشات ومسارات الاستخدام: قائمة الشاشات، وخطوات كل مهمة رئيسية.
- لوحة التحكم: ما يديره فريقك، والتقارير المطلوبة.
- التكاملات: الدفع، والخرائط، والرسائل، وواتساب، والأنظمة القائمة.
- المتطلبات غير الوظيفية: اللغات، والأجهزة، والأداء، والأمان، والعمل دون إنترنت.
- خارج النطاق: ما لن تتضمنه هذه النسخة، مكتوبًا صراحة.
- الميزانية والجدول الزمني: نطاق تقريبي لما يمكنك إنفاقه، وموعد الإطلاق المرغوب وسببه.
لا يُشترط أن تكتب كل الأقسام بالعمق نفسه. الأقسام الثلاثة الأولى هي الأهم، وإذا كانت واضحة فستساعدك الشركة الجيدة في إكمال الباقي.
كيف تصف المستخدمين والمميزات بوضوح؟
صف كل ميزة من وجهة نظر المستخدم الذي يستفيد منها، ثم رتّب المميزات حسب الأولوية. هذه الطريقة تمنع العبارات العامة مثل «تطبيق سهل وشامل لكل شيء».
استخدم صيغة «قصة المستخدم»
قصة المستخدم (User Story) جملة قصيرة بالشكل التالي: «بصفتي [نوع المستخدم]، أريد أن [أفعل شيئًا]، حتى [أحصل على فائدة]». أمثلة من تطبيق حجز لعيادة:
- بصفتي مريضًا، أريد أن أرى المواعيد المتاحة لطبيب معين، حتى أحجز دون اتصال هاتفي.
- بصفتي موظف استقبال، أريد أن أرى حجوزات اليوم مرتبة بالوقت، حتى أجهز الملفات مسبقًا.
- بصفتي مدير العيادة، أريد تقريرًا أسبوعيًا بعدد الحجوزات والإلغاءات، حتى أعرف أوقات الضغط.
رتّب المميزات في أربع خانات
| الخانة | المعنى | مثال من تطبيق العيادة |
|---|---|---|
| ضروري | لا يعمل التطبيق بدونه | الحجز، والإلغاء، والتذكير قبل الموعد |
| مهم | يحسن التجربة ويمكن تأجيله قليلًا | ملف مختصر للمريض بمواعيده السابقة |
| إضافي | جميل لكنه لا يؤثر في قرار الاستخدام | تقييم الزيارة بعد انتهائها |
| ليس الآن | مؤجل صراحة لنسخة لاحقة | الاستشارات عبر الفيديو |
هذا الترتيب هو أساس تحديد النسخة الأولى. اقرأ المزيد عن إطلاق نسخة أولى MVP بأقل تكلفة.
كيف تصف الشاشات ومسارات الاستخدام دون أن تكون مصممًا؟
اكتب قائمة بالمهام الرئيسية، ثم صف خطوات كل مهمة من أول ضغطة إلى النتيجة، وستخرج منها قائمة الشاشات تلقائيًا. الرسم اليدوي على ورقة يكفي، ولا يُطلب منك تصميم احترافي.
مثل: حجز موعد، وإلغاء موعد، وتعديل البيانات الشخصية.
افتح التطبيق، اختر التخصص، اختر الطبيب، اختر الوقت، أكّد، استلم رسالة تأكيد.
كل خطوة تحتاج غالبًا شاشة أو جزءًا من شاشة.
على ورق أو بأداة رقمية، أو جرّب مصمم شاشات التطبيقات بالذكاء الاصطناعي المجاني من Apex لتوليد شاشات من وصف نصي.
ماذا يظهر إذا لم توجد مواعيد متاحة؟ أو فشل الاتصال؟ أو أدخل المستخدم بيانات خاطئة؟
الحالات الخاصة هي ما ينساه كثير من أصحاب المشاريع، وهي جزء حقيقي من العمل والتكلفة. ذكرها في الكراسة يجعل العرض أدق ويقلل المفاجآت. وللتعمق في أساسيات تصميم الواجهات، راجع أساسيات تصميم UI/UX لصاحب المشروع.
ماذا تكتب عن لوحة التحكم والتكاملات؟
لوحة التحكم والتكاملات كثيرًا ما تُنسى في الكراسة، مع أنها قد تمثل جزءًا كبيرًا من العمل. صف ما يحتاجه فريقك يوميًا، وكل نظام خارجي يجب أن يتصل به التطبيق.
لوحة التحكم
- من يستخدمها، وما صلاحيات كل شخص: مدير، ومحاسب، وموظف خدمة عملاء.
- ما الذي يُدار منها: المنتجات أو الخدمات، والأسعار، والطلبات أو الحجوزات، والمستخدمون.
- التقارير: ما الأرقام التي تريد رؤيتها يوميًا وأسبوعيًا، وهل تحتاج إلى تصديرها إلى Excel؟
التكاملات
- الدفع: هل تحتاج إلى دفع إلكتروني؟ وأي بوابة تفضل؟ وهل يوجد دفع عند الاستلام؟
- الرسائل والإشعارات: رسائل التحقق (OTP)، وإشعارات داخل التطبيق، ورسائل واتساب.
- الخرائط والموقع: عرض الفروع، أو تحديد عنوان التوصيل، أو تتبع المندوب.
- الأنظمة القائمة: برنامج حسابات أو مخزون أو ERP، مع ذكر اسمه وهل يوفر API، وهو الواجهة البرمجية التي تسمح بتبادل البيانات معه.
- الأتمتة: مثل إرسال كل طلب جديد إلى جدول أو نظام متابعة. في Apex نستخدم سير عمل في n8n يستقبل طلبات النماذج ويحفظها وينبه الفريق.
ما المتطلبات غير الوظيفية التي يجب ذكرها؟
المتطلبات غير الوظيفية تصف جودة عمل التطبيق لا وظائفه: اللغات، والأداء، والأمان، والأجهزة المدعومة. المتطلبات الوظيفية تقول «ماذا يفعل التطبيق»، وغير الوظيفية تقول «كيف يجب أن يكون أثناء ذلك».
- اللغات واتجاه الكتابة: عربي فقط، أم عربي وإنجليزي مع تبديل الاتجاه.
- المنصات: أندرويد، أم iOS، أم الاثنان، وهل تحتاج نسخة ويب.
- العمل دون إنترنت: هل يجب أن تستمر بعض الوظائف عند انقطاع الاتصال؟
- الأداء: مثل أن تفتح الشاشات الرئيسية بسرعة على هاتف متوسط، لا على أحدث هاتف فقط.
- الأمان والخصوصية: البيانات الحساسة، وطريقة تسجيل الدخول، وصلاحيات الوصول. وإذا كان التطبيق يتعامل مع بيانات صحية أو مالية، فراجع المتطلبات القانونية في بلدك مع مختص.
- الملكية والحسابات: الكود، وحسابات المتاجر، والخادم، والنطاق باسمك أو باسم شركتك.
نموذج مختصر لكراسة مواصفات (مثال توضيحي)
هذا مثال توضيحي مختصر لتطبيق حجز مواعيد لصالون تجميل، يمكنك نسخ بنيته وتعديلها لمشروعك:
| القسم | المحتوى |
|---|---|
| نظرة عامة | صالون بفرعين يريد تقليل المكالمات، وتنظيم المواعيد، وتقليل الغياب عن المواعيد. |
| المستخدمون | العميلة، وموظفة الاستقبال، والمديرة. |
| المميزات الضرورية | عرض الخدمات والأسعار، واختيار الفرع والموظفة والوقت، والحجز والإلغاء، والتذكير قبل الموعد. |
| مؤجل | باقات الاشتراك، ونقاط الولاء، والدفع الإلكتروني المسبق. |
| لوحة التحكم | جدول مواعيد يومي لكل فرع، وإدارة الخدمات والأسعار، وتقرير أسبوعي. |
| التكاملات | إشعارات داخل التطبيق، وتأكيد الحجز عبر واتساب. |
| غير وظيفي | العربية فقط، وأندرويد وiOS، وكل الحسابات باسم الصالون. |
| خارج النطاق | بيع المنتجات أونلاين، والمحاسبة. |
| الميزانية والموعد | نطاق ميزانية تقريبي، والإطلاق قبل موسم الأعياد. |
لاحظ أن المثال يذكر ما هو مؤجل وما هو خارج النطاق بالقدر نفسه من الوضوح الذي يذكر به المميزات. هذا ما يمنع سوء الفهم لاحقًا.
ما الأخطاء الشائعة في كتابة كراسة المواصفات؟
أخطر الأخطاء هي العبارات العامة، وغياب الأولويات، ونسيان لوحة التحكم. تجنب ما يلي:
- «مثل تطبيق كذا»: التطبيقات الكبيرة بُنيت على مدى سنوات. حدد أي جزء منها تقصد بالضبط.
- كلمات لا تُقاس: «سهل» و«سريع» و«احترافي» لا تعني شيئًا محددًا للمبرمج. صف السلوك المطلوب.
- كل الميزات ضرورية: إذا كان كل شيء أولوية، فلا شيء أولوية.
- نسيان لوحة التحكم والتقارير: فتجدها لاحقًا في عرض منفصل.
- إغفال ما هو خارج النطاق: فيعتبر كل طرف أن شيئًا ما «مفهوم ضمنًا».
- إخفاء الميزانية تمامًا: ذكر نطاق تقريبي يساعد الشركة على اقتراح حل يناسبه، بدل عرض لا يناسبك.
بعد كتابة الكراسة، استخدمها لمقابلة الشركات بالأسئلة الصحيحة. جمعنا أهمها في مقال 15 سؤالًا تسألها لشركة البرمجة قبل التعاقد. ويمكنك أيضًا مراجعة كراستك مع مؤسس Apex في مكالمة مجانية مدتها 30 دقيقة عبر صفحة التواصل.
الخلاصة
- كراسة مواصفات تطبيق تصف ماذا يفعل التطبيق ولمن، لا كيف يُبرمج، وتكتبها بلغتك العادية.
- أهم أقسامها: المستخدمون، والمميزات بالأولوية، والشاشات، ولوحة التحكم، والتكاملات، وما هو خارج النطاق.
- استخدم قصص المستخدم وخانات الأولوية الأربع لتحديد النسخة الأولى.
- اذكر الحالات الخاصة والمتطلبات غير الوظيفية، فهي جزء حقيقي من التكلفة.
- الكراسة الواضحة تعطيك عروضًا قابلة للمقارنة، ومرجعًا عند أي خلاف.
