تُعرَّف حالات الاستخدام بأنها وسيلة اتصال جيدة ومطوّرة بين المستخدم ومطوّر النظام، حيث توفر الوسائط المناسبة لكل منهما لمناقشة وظائف النظام وتصرفاته، بينما يعرف بأنها أطراف خارجية تتعامل مع النظام بمقتضى الحاجة إلى الوظائف المتوفرة فيه.
يندرج موضوع نمذجة حالات الاستخدام في إطار وصف تصرف النظام، حيث يعتبر نموذج حالات الاستخدام توثيقاً لأوجه وظائف النظام المرجوة والمتفاعلين مع هذه الحالات والعلاقات بينهم.
وتنبع أهمية نموذج حالات الاستخدام من الدور الذي يقوم به هذا النموذج في تسهيل الاتصال بين المستخدم ومحلل النظام، حيث يوفر النموذج الوسائط المناسبة لمناقشة وظائف النظام وتصرفه. ويتم تصميم نموذج حالات الاستخدام في المراحل الأولى من تصميم النظام؛ حيث تتم بداية تحديد المتفاعلين، ومن ثم في المراحل المتقدمة من النظام تتم إضافة وتعديل بعض حالات الاستخدام.
لا يعتبر المتفاعلون جزءاً من النظام بل هم أطراف خارجية تتعامل مع النظام بمقتضى الحاجة إلى الوظائف المتوفرة فيه. ويمكن أن يكون المتفاعل شخصاً أو نظاماً آخر أو آلة كالطابعة مثلاً. ويمكن أن يكون المتفاعل مصدراً من مصادر معلومات النظام، أو قد يكون طرفاً يتلقى مخرجات من النظام، أو قد يكون الطرف نفسه مصدراً ومستلماً في آن واحد.
وتستطيع عادة استنباط المتفاعلين من وصف المشكلة المتخصصة أو بمحادثة الزبائن، ويمكن بذلك الإجابة على أسئلة مشابهة بالأسئلة التالية:
يجب التنبيه بالذكر هنا -عزيزي الدارس- أن هذه الأسئلة ليست محصورة بهذه المجموعة بل يمكن للمحلل إضافة أسئلة أخرى حسب متطلبات النظام. ويجدر التنبيه أيضاً إلى أنه لا يوجد حل واحد لتحديد نوع أو عدد المتفاعلين من نظام معين، فقد يوجد فريق عمل من خبراء ذوي شأن في الموضوع، وعلى سبيل المثال هل يوجد فرق بين متفاعلَين يستخدمان النظام بنفس الطريقة ولكن كلٌّ منهما يتعامل معه بحالة مختلفة تماماً؟ لكن في حال وجود فرق كبير في طريقة استخدامهما للنظام فلا بد من فصلهما إلى متفاعلَين اثنين.
يقوم محلل النظام بتوثيق كل متفاعل في النظام بوصف مختصر شرحاً له. ويضاف هذا الوصف إلى نموذج حالات الاستخدام الذي سيتم شرحه لاحقاً في هذه الوحدة. ويتم توثيق المتفاعلين باستخدام الرمز البياني الذي يُرمز له بشكل شخص، ويتم كتابة اسم المتفاعل أسفل هذا الرمز.
ومن الأمثلة الشائعة على المتفاعلين في نظام تسجيل الطلاب الجامعي: "الطالب" وهو أهم المتفاعلين في مثل هذا النظام، حيث يستعمل الطالب الرمز المبيّن أعلاه مع كتابة اسم المتفاعل ("Student") أسفله.
ويُفضَّل عادة إضافة وصف مختصر لكل متفاعل، حيث يبيّن هذا الوصف وظيفة المتفاعل ويوضح طريقة تفاعله مع النظام بما هو ملائم لفريق التحليل والتصميم لاحقاً.
تعتبر حالات الاستخدام وسيلة اتصال جيدة بين المستخدم ومطوّر النظام حيث توفر الوسائط المناسبة لكل منها لمناقشة حالات الاستخدام ووظائف النظام وسلوكه. وتمثل حالة الاستخدام الوظيفة التي يستطيع النظام توفيرها حيث تكون هذه الوظيفة عبارة عن مجموعة من العمليات يمكن أن تُتابع من الحصول على نتيجة قابلة للقياس من قِبل متفاعل معين.
يمكن تعريف حالة الاستخدام بأنها عبارة عن تتابع من العمليات التي يمكن أن يتابعها النظام يستطيع من خلالها المستخدم لقياس معين. لكن أعتقد العديد من محللي الأنظمة إلى تصنيف حالات الاستخدام إلى نوعين رئيسين هما: حالات الاستخدام ذات الشكل العام (General Use-Cases)، وحالات الاستخدام ذات الشكل الأساسي (Essential Use-Cases).
| النوع | الوصف |
|---|---|
| حالات الاستخدام ذات الشكل العام (General Use-Cases) | إن حالات الاستخدام ذوات الشكل العام تمكّن محللي النظام ومستخدميه من التوصل إلى اتفاقية حول متطلبات النظام بشكل مبدئي، وعادة ما تنشأ حالات الاستخدام من هذا النوع في مرحلة متقدمة من تحليل متطلبات النظام للأشخاص الأساسية، وتكون عبارة عن توثيق عام لحالة الاستخدام يحتوي الاسم، والرقم التسلسلي، والمتفاعل الرئيس، والوصف المختصر. |
| حالات الاستخدام ذات الشكل الأساسي (Essential Use-Cases) | تحتوي على وظيفة استخدام محددة بشكل مسبق يمكن استخدامها من قبل حالة الاستخدام الأخرى، مثل حالة تسجيل الدخول (Login) التي يمكن استدعاؤها من العديد من حالات الاستخدام الأخرى، ويمكن استخدامها من قبل عدة متفاعلين مثل الطالب والمسجّل، لذلك تُعتبر حالة استخدام أساسية مجرَّدة. |
بناءً على طبيعة الوظائف التي تقدّمها هذه الحالات، وفي أحيان أخرى قد يلجأ المحلل إلى تجزئة حالة استخدام واحدة إلى عدة حالات استخدام أخرى.
لبناء حالات الاستخدام قد يحتاج محلل النظام إلى محل نفسه واستقراء إيجاد الأسئلة التالية لطرح النقاشات بينه وبين المستخدمين:
هذه الأسئلة -عزيزي الدارس- ليست حصرية، بل يمكن للمحلل إضافة أي أسئلة أخرى يرى أنها تساعده على حصر حالات الاستخدام قدر الإمكان.
مثال: بناءً على هذا المثال، ونبني بعض حالات الاستخدام في نظام التسجيل الجامعي التي لها علاقة بالمتفاعل "الطالب"، وذلك عن طريق طرح الأسئلة السابقة وتحديد الإجابة عنها:
وبعد تنقيح المجموعة الابتدائية من حالات الاستخدام التي يمكن للطالب القيام بها، يمكن إجمالها كالآتي: تسجيل المواد، دفع رسوم التسجيل، تعديل المواد المختارة، الانسحاب من فصل دراسي، تسجيل الطالب، وتعديل ملف الطالب.
يُستخدم عادة الشكل البيضاوي لتوثيق حالات الاستخدام حيث يتم كتابة اسمها ويوضع أسفل هذا الشكل أو داخله وصف مختصر يفيد لبيان الهدف من حالة الاستخدام ووظيفتها.
يُعتبر "تسجيل المواد" إحدى حالات الاستخدام الممكن استخراجها من نظام التسجيل، ولتوثيق هذه الحالة وإضافة وصف مختصر لها، يُستخدم الشكل البيضاوي وتُكتب اسمها بداخله أو أسفله، ويحتاج المحلل لإضافة وصف مختصر لكل حالة استخدام حيث يفيد هذا الوصف في بيان الهدف من حالة الاستخدام ويوفّر تعريفاً أوضح لوظيفتها.
بعد تحديد مجموعة المتفاعلين ومجموعة حالات الاستخدام، لا بد من إيجاد العلاقات بين كل مجموعتين، حيث لا بد لكل متفاعل من حالة استخدام واحدة أو أكثر، وإذا لم يقتنِ متفاعل بأي حالة استخدام أو حالة استخدام بدون متفاعل يجب إعادة النظر في هذين المتفاعلَين وتعديلهما.
تُسمى العلاقة بين المتفاعل وحالة الاستخدام بعلاقة التشارك (Associate Relationship)، وتحديد طريقة الاتصال تحدد من أين يبدأ تنفيذ الوظيفة الموصوفة في حالة الاستخدام. يُستخدم عادة خط يربط ما بين الأطراف المشاركة لترميز علاقة التشارك، ويمكن تحديد اتجاه السهم لبيان أي طرف يبدأ نقطة التنفيذ.
يمكن أن تتكون علاقة بين حالات الاستخدام نفسها، حيث يوجد نوعان من هذه العلاقات:
قد تتشارك العديد من حالات الاستخدام في جزء من وظيفة، فبدلاً من تكرارها في العديد من حالات الاستخدام يمكن تضمين هذا الجزء المشترك في حالة استخدام واحدة، وإنشاء علاقة تربط بينها وبين حالات الاستخدام التي تحتاج هذه الوظيفة، ويساعد هذا النوع من العلاقات في تقليل التكرار غير الضروري مما يساعد على فهم أفضل للنظام وصيانته.
يُستخدم هذا النوع من العلاقات بين حالة استخدام معينة وحالات أخرى حسب شرط معين يتحقق منها. فمثلاً، علاقة الامتداد حيث إن الطالب على المرور بحالة "تسجيل دخول الطالب" كشرط مسبق قبل الدخول إلى حالة الاستخدام "تسجيل المواد".
ويمكن أن تتضمن مخططات حالات الاستخدام كلا النوعين من العلاقات في آن واحد، حيث تتم ملاحظة أن لكل منها وظيفتها المحددة الخاصة بها.
مخطط حالات الاستخدام هو عبارة عن شكل يعبّر عن مجموعة المتفاعلين وحالات الاستخدام والعلاقات بينهما، وبما أن المخطط الرئيس يمكن أن يكون جزءاً (Modular) وذلك بالإضافة إلى ذلك يمكن تجزئة المخططات الرئيس حسب عدد من المخططات الأخرى من المخطط الرئيس، وتُسمى هذه الأجزاء بحدود النظام (System Boundary).
وكل نظام يحتوي عادة على مخطط حالات استخدام رئيس يصف حدود النظام، ويبيّن الوظائف الرئيسة في النظام، وبالإضافة إلى ذلك يمكن استخراج بعض المخططات الأخرى من المخطط الرئيس وذلك لتسهيل عملية بناء النظام. ويمثل الشكل التالي مخطط حالات استخدام في نظام التسجيل الجامعي ويحتوي على أغلب المتفاعلين وحالات الاستخدام التي تم تحديدها مسبقاً وربطها بعلاقات:
ويلاحَظ من الشكل أعلاه كيف يتعامل كل من المتفاعل "الطالب" و"الأستاذ" مع حالة الاستخدام "تسجيل دخول الطالب" من خلال علاقة الامتداد بحالتَي "تسجيل المواد" و"اختيار مواد للتدريس"، بينما تتضمن حالة "تسجيل دخول الطالب" حالة "تسجيل الدخول" الأساسية المشتركة، فيتلقّى "نظام الفوترة" و"المسجّل" النتائج التي تُفضي إليها هذه الحالات ليقوما بإنجاز مهامهما.
اضغط على كل بطاقة لعرض تعريف المصطلح.
8 مصطلحات أساسية لهذه الوحدة.
يتكوّن الاختبار من 5 أسئلة صح/خطأ، و5 أسئلة اختيار من متعدد، و3 أسئلة إنشائية. تُصحَّح الأسئلة الموضوعية تلقائياً، بينما تعرض الأسئلة الإنشائية إجابة نموذجية لتقييم إجابتك بنفسك.