تقنية رقمية • ثالث ثانوي • الوحدة الثانية

الدرس الأول: دورة حياة النظام

من تحديد المشكلة إلى تطوير الحل وصيانته: المراحل، والمتطلبات، وطرق جمع البيانات.

ماذا ستتعلم؟

ما دورة حياة النظام؟

دورة حياة النظام (System Life Cycle) إطار عمل لتنظيم عمليات الإنتاج لأي نظام بشكل ممنهج. وتهدف إلى تحسين المنتج النهائي، وإدارة الإنتاج والتطوير، والاستخدام الأمثل للموارد.

نطبق هذه الدورة هنا على أنظمة تقنية المعلومات والاتصالات (ICT). تبدأ بفهم المشكلة، ثم تصميم الحل وتطويره واختباره وتنفيذه وصيانته.

مراحل دورة حياة النظام: التحليل، التصميم، التطوير، الاختبار، التنفيذ، الصيانة، ويصاحبها التوثيق والتقييم
يفصل المخطط بين التطوير والاختبار، بينما يجمعهما شرح الدرس في مرحلة واحدة. أما التوثيق والتقييم فيستمران خلال جميع المراحل، ولا ينتظران نهاية المشروع.

1. التحليل (Analysis)

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

ما المشكلة؟

حدد الوضع الحالي وما يحتاج إلى تحسين، ثم حدد ما يتوقعه أصحاب المصلحة من النظام الجديد.

كيف نجمع المتطلبات؟

بالاستبانات والمقابلات والملاحظة وفحص وثائق النظام الحالي.

مثال الكتاب: تطبيق سياحي لكبار السن

تطبيق يقدم معلومات عن المعالم السياحية في المملكة العربية السعودية، ويدعم من لديهم مشكلات بصرية أو رعاش في اليدين. يحتاج المستخدم إلى تغيير حجم الخط والأزرار، وإمكانية استخدام الأسود والأبيض لتسهيل القراءة.

2. التصميم (Design)

يسهم محلل النظم في بناء هيكل النظام وتصميمه، وتقسيم المشكلة الرئيسة إلى مشكلات أصغر يمكن حلها باستخدام الحاسب.

  1. تحديد تدفق البيانات والمعلومات بين أجزاء النظام.
  2. تحديد البيانات الرئيسة وهياكلها.
  3. تحديد مكان التخزين وطريقته، مع سهولة الوصول والأمان.
  4. تصميم التقارير ومخرجات البيانات.
  5. تصميم واجهة المستخدم ووظائف عناصرها.
  6. تصميم واجهات تبادل البيانات مع الأنظمة الأخرى.
  7. تحديد طريقة الاختبار وبياناته لضمان الجودة.
في التطبيق السياحي: تصميم يعمل على أندرويد ويتكيف مع الهواتف والأجهزة اللوحية، مع نظام أمان، وألوان محدودة، وقائمة بسيطة، وأوامر صوتية لمساعدة المستخدمين.

3. التطوير والاختبار (Development and Testing)

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

صحة البيانات المدخلة

التحقق من قبول البيانات الصحيحة ورفض غير الصحيحة؛ مثل قواعد كلمات المرور وأرقام الهواتف وحدود مبالغ التحويل في النظام المصرفي.

الوظائف وقابلية الاستخدام

اختبار واجهة المستخدم (UI) وتجربة المستخدم (UX)، والتأكد من سهولة التصفح وعمل الوظائف كما ينبغي.

أخطاء التصميم والتشغيل

اختبار منطق التعليمات وتسلسل العمليات وظهور رسائل الخطأ والتأكيد في مواضعها الصحيحة.

الاتصال بالأنظمة الأخرى

اختبار التكامل مع الأنظمة المرتبطة؛ مثل قواعد بيانات العملاء وتحويل العملات والصراف الآلي.

تطوير التطبيق السياحي واختباره

يعرض الكتاب مطور التطبيقات App Inventor لبناء تطبيق أندرويد، مع إمكانية استخدام هاتف متصل بالإنترنت أو محاكٍ. تختبر نسخة تجريبية بمشاركة كبار السن ومن لديهم مشكلات بصرية أو رعاش، للتأكد من ملاءمتها لهم.

تحقق من فهمك

اختبر فريقٌ تطبيقًا مع كبار السن للتأكد من سهولة الضغط على الأزرار. ما نوع الاختبار؟

اختبار وظائف النظام وقابلية الاستخدام؛ لأنه يتحقق من ملاءمة الواجهة وتجربة المستخدم للفئة المستهدفة.

4. التنفيذ (Implementation)

بعد موافقة المستخدم على النظام الذي تم تطويره واختباره، ينشر النظام ويثبت في الموقع المستهدف ليصبح جاهزًا للعمل.

في التطبيق السياحي: تثبيت التطبيق في بيئة الإنتاج وتشغيله وإتاحته للمستخدمين عبر متجر تطبيقات، مثل Google Play.

5. الصيانة (Maintenance)

تعالج الصيانة الأخطاء التي تظهر أثناء الاستخدام الفعلي، وتكيف النظام مع تغير بيئة العمل. وتشمل تحسين الوظائف وإضافة ميزات تلبي الاحتياجات المستقبلية.

تساعد ملاحظات المستخدمين وتقييم فريق تقنية المعلومات على تحديث النظام وضمان أدائه. وفي التطبيق السياحي، قد تتطلب التحديثات تعديل التعليمات البرمجية أو متطلبات النظام.

6 و7. التوثيق والتقييم المستمران

التوثيق (Documentation)

وصف تفاصيل التصميم والتطوير والاختبار والتنفيذ وسجلات الصيانة، ليكون مرجعًا لفهم النظام وتعديله. يبدأ مع التخطيط والتحليل ويستمر حتى الصيانة، ويحدث عند إجراء تغييرات.

التقييم (Evaluation)

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

أمثلة على توثيق التطبيق

يمكن الاستفادة من تقييمات المستخدمين وملاحظاتهم في متجر التطبيقات لتقييم التطبيق.

المتطلبات الوظيفية وغير الوظيفية

تحدد المتطلبات خلال التحليل، وتنقسم إلى نوعين:

المتطلبات الوظيفية

تحدد ما يجب أن يقوم به النظام: أدوار المستخدمين، عرض البيانات والألوان والخطوط المطلوبة، التنقل، الرسائل والتنبيهات، وظائف الأزرار، البحث، وإصدار التقارير وطباعتها.

المتطلبات غير الوظيفية

تصف خصائص جودة النظام ومعايير تشغيله: الأداء وزمن الاستجابة، الإتاحة، الموثوقية والاسترداد، الأمان والصيانة، التوافق والتكامل، سهولة الإدارة والاستخدام، وتكامل البيانات والتراخيص.

مثالان من الكتاب لمتطلبات غير وظيفية: استرجاع البيانات غير المحفوظة عند انقطاع مفاجئ للطاقة، وعمل النظام بفاعلية عند استخدام عشرة آلاف مستخدم له في آن واحد.

صنف المتطلبين: «طباعة تقرير» و«خدمة عشرة آلاف مستخدم في وقت واحد».

طباعة تقرير: متطلب وظيفي. خدمة عشرة آلاف مستخدم بفاعلية في وقت واحد: متطلب غير وظيفي يتعلق بالأداء.

طرق جمع المتطلبات

الاستبانات (Questionnaires)

توزع على أصحاب المصلحة بأسئلة محددة وواضحة. توفر الوقت والجهد، ويمكن تحليلها آليًا وجمعها دون تحديد الهوية. من تحدياتها غموض الأسئلة أو عدم جدية المستجيب، وهي أقل ملاءمة للبيانات الوصفية.

المقابلات (Interviews)

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

الملاحظة (Observation)

متابعة العمل الفعلي لتحديد العمليات والتحديات والتفاصيل الدقيقة دون مقاطعة المستخدمين. تحتاج معرفة بالنظام، وقد يغير الشخص سلوكه أثناء مراقبته.

فحص توثيقات النظام

جمع التقارير والنماذج والفواتير والسجلات وتحليلها لفهم تدفق البيانات والمدخلات والمخرجات وحجم النظام. توفر الوقت عند توافر وثائق جيدة، لكنها تتطلب جهدًا وتعتمد على جودة الوثائق ودقتها.

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

مقارنة طرق جمع المتطلبات

الطريقةالوقتالتكلفة والجهددقة البيانات
الاستباناتأقل عادةًمحدودانتعتمد على وضوح الأسئلة وجدية المستجيب
المقابلاتيزيد بزيادة المشاركينمكلفة وجهدها متزايدتعتمد على مهنية المشاركين والمحلل
الملاحظةأكثر من الاستبانات وأقل من المقابلاتتكلفة محدودة وجهد أكبر للمحللتكشف تفاصيل دقيقة وتتأثر بسلوك من تتم ملاحظتهم
فحص الوثائقيوفر الوقت حسب توافر الوثائق وجودتهايصف جدول الكتاب تكلفته بالمحدودة وجهده بالكبيرواقعية وتعتمد على دقة الوثائق ومصداقيتها

يشير شرح الكتاب أيضًا إلى أن جمع الوثائق وتحليلها قد يكون مكلفًا؛ لذا تتغير التكلفة وفق حجم الوثائق وحالتها.

مراجعة سريعة

التحليل والتصميم

التحليل يحدد المشكلة والمتطلبات؛ والتصميم يحدد بنية الحل وواجهاته وبياناته.

التطوير والاختبار

تحويل المتطلبات إلى برمجيات والتحقق من صحتها وسهولة استخدامها.

التنفيذ والصيانة

التنفيذ يضع النظام في الاستخدام الفعلي؛ والصيانة تصلحه وتحسنه.

التوثيق والتقييم

نشاطان مستمران عبر جميع المراحل.

تدريبات الكتاب وإجابات مقترحة

أعيدت صياغة التدريبات نصيًا لتسهيل القراءة والتفاعل. الإجابات الآتية مقترحة بناءً على شرح الدرس.

تدريب 1: دورة حياة متجر إلكتروني

عرّف دورة حياة النظام من خلال مراحل إنشاء متجر إلكتروني.

هي إطار ينظم إنشاء المتجر وتحسينه: تحليل احتياجات العملاء والمنتجات والميزانية؛ تصميم الواجهات والبيانات؛ برمجة المتجر واختبار الشراء والدفع؛ نشره وتدريب المسؤولين؛ صيانة الأخطاء وتطوير الوظائف. ويصاحب جميع ذلك توثيق العمل وتقييمه.

تدريب 2: صح أم خطأ؟

تنحصر عملية تطوير البرمجيات في الصيانة.

خطأ؛ تشمل دورة الحياة التحليل والتصميم والتطوير والاختبار والتنفيذ والصيانة، مع التوثيق والتقييم.

كتابة تعليقات وصفية للمقاطع البرمجية من إجراءات التوثيق.

صحيحة.

تشمل مرحلة التطوير إنشاء نظام المعلومات وتطويره واختباره.

صحيحة وفق جمع الدرس بين التطوير والاختبار، فالاختبار يجري أثناء التطوير وبعده.

يمكن طرح الأسئلة على جميع المعنيين بالنظام لجمع المتطلبات في التحليل.

صحيحة.

يكتب محلل النظم المقطع البرمجي أثناء التطوير.

خطأ وفق توزيع الأدوار في الدرس؛ المبرمجون يحولون المتطلبات والمواصفات إلى مقاطع برمجية.

تدريب 3: اختر الإجابة الصحيحة

في أي مرحلة تستخدم أدوات جمع البيانات؟
التحليلالتصميمالتنفيذالصيانة

التحليل.

في أي مرحلة تستخدم إحدى لغات البرمجة لإعداد النظام؟
التصميمالتقييمالتطويرالتوثيق

التطوير.

في أي مرحلة يعد دليل المستخدم؟
التحليلالتوثيقالتقييمالاختبار

التوثيق.

ما الإجراء المرتبط بصيانة تطبيق الهاتف؟
إنشاؤه بمطور التطبيقاتتحديد الاحتياجاتاستقبال التغذية الراجعةتصميمه لأندرويد

استقبال التغذية الراجعة من المستخدمين والاستفادة منها في التحسين.

تدريب 4: صل المرحلة بالعملية

طابق: نشر النظام، تحسين الوظائف، تحويل المتطلبات إلى برمجيات، الوصف المكتوب، تحديد البيانات وتدفقها، تحديد المشكلة، مشاركة المستخدمين والإدارة في الحكم على النظام.

  • نشر النظام: التنفيذ.
  • تحسين الوظائف بناءً على التغذية الراجعة: الصيانة.
  • تحويل المتطلبات إلى برمجيات وتجربتها: التطوير والاختبار.
  • الوصف التفصيلي المكتوب: التوثيق.
  • تحديد البيانات وتدفقها: التصميم.
  • تحديد المشكلة: التحليل.
  • الحكم على النظام بمشاركة المستخدمين والإدارة: التقييم.

تدريب 5: دور المستخدم

وضح دور المستخدم في كل مرحلة من مراحل دورة حياة النظام.

  • التحليل: يوضح احتياجاته ومشكلات النظام الحالي.
  • التصميم: يقدم ملاحظات على الواجهة والحل المقترح.
  • التطوير والاختبار: يجرب الوظائف ويبلغ عن المشكلات.
  • التنفيذ: يتدرب على النظام ويستخدمه بعد الموافقة عليه.
  • الصيانة: يقدم التغذية الراجعة والاحتياجات المستجدة.
  • التوثيق: يستفيد من دليل المستخدم ويساعد في توضيح الإجراءات.
  • التقييم: يحكم على سهولة الاستخدام ومدى تلبية احتياجاته.

تدريب 6: إنشاء موقع على الإنترنت

ما إجراءات التطوير والاختبار والتنفيذ عند إنشاء موقع؟ علل إجابتك.

التطوير: برمجة الصفحات والوظائف وربط البيانات وفق التصميم لتحويل المتطلبات إلى موقع يعمل.
الاختبار: فحص المدخلات والروابط والنماذج والتنقل والتوافق مع الأنظمة الأخرى، وتجربة الاستخدام لكشف الأخطاء قبل الإطلاق.
التنفيذ: نشر الموقع في بيئة التشغيل بعد الموافقة عليه، ونقل البيانات وتدريب المسؤولين عند الحاجة، ليصبح متاحًا للاستخدام الفعلي.