مقدمة في هندسة البرمجيات - ITGS-213
76 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

ما هي أهمية ضمان الجودة في أي مشروع تجاري؟

ضمان الجودة يضمن إنشاء منتج عالي الجودة يلبي احتياجات العملاء ويحقق نجاح المشروع.

ما هو دور هندسة البرمجيات في ضمان الجودة؟

هندسة البرمجيات تلعب دورًا هامًا في تطوير منتوج برمجي عالي الجودة يلبي المعايير والمواصفات المطلوبة.

ما هي أنواع نشاطات ضمان الجودة في البرمجيات؟

تشمل أنشطة ضمان الجودة : المراجعة، الفحص، التصفح.

ما هي خصائص البرمجيات الجيدة؟

<p>خصائص البرمجيات الجيدة تشمل : سهولة الاستخدام (User-friendliness) ، الأمان، أداء عالي، الاعتمادية (Reliability)، قابلية الصيانة (Maintainability).</p> Signup and view all the answers

ما هي معايير البرمجيات؟

<p>معايير البرمجيات هي مواصفات تُحدد الجودة المطلوبة للبرمجيات في العديد من الجوانب مثل الأداء ، الأمن، واستخدام الموارد.</p> Signup and view all the answers

ما هي أنواع أخطاء البرمجة؟

<p>أنواع أخطاء البرمجة تشمل : أخطاء الصرف (Syntax errors)، أخطاء المنطق (Logic errors)، واخطاء البيانات (Data errors).</p> Signup and view all the answers

ما هو الغرض من اختبار البرمجيات؟

<p>اختبار البرمجيات يسعى لاكتشاف الأخطاء في البرنامج و تقييم جودته و أداؤه تقديم مُخرجات صحيحة، وقياس مقدار مُطابقته للمواصفات المحددة.</p> Signup and view all the answers

ما هي أهم أنواع اختبار البرمجيات؟

<p>أهم أنواع اختبار البرمجيات : اختبار الوظائف، اختبار الأداء، اختبار الأمان، اختبار التوافق، اختبار الاستخدام.</p> Signup and view all the answers

ما هو مفهوم "Quality Assurance"؟

<p>ضمان الجودة هو مُجموعة من الأنشطة و العملية التي تُهدف إلى تحسين جودة منتج أو خدمة ، مع ضمان تلبية مواصفات واحتياجات العملاء بشكل كامل.</p> Signup and view all the answers

ما هو العامل الأهم في نجاح عملية ضمان الجودة؟

<p>العامل الأهم في نجاح عملية ضمان الجودة هو التعاون بين فريق التطوير وعلى الجميع أن يقوم بمهمة المحافظة على الجودة و تقديم منتج عالي الجودة.</p> Signup and view all the answers

ما هو دور مهندس البرمجيات في إطار عمل نظام معلومات؟

<p>فهم احتياجات المستخدم وتصميم وتنفيذ البرنامج. (B)</p> Signup and view all the answers

ما هي القضية المهنية التي يجب على مهندس البرمجيات إعطائها الأولوية في عملية عمل البرنامج؟

<p>ضمان عدم المساس بحقوق الآخرين وخصوصياتهم. (D)</p> Signup and view all the answers

من هي الجهة التي يجب على مهندس البرمجيات أن يعمل لصالحها قبل كل شيء؟

<p>العمل لصالح المصلحة العامة. (C)</p> Signup and view all the answers

ما هو دور مهندس البرمجيات في إطار إدارة المشروع؟

<p>المشاركة في اتخاذ القرارات المتعلقة بالمشروع. (A)</p> Signup and view all the answers

ما هو دور مهندس البرمجيات في التعامل مع زملائه في العمل؟

<p>مساعدة زملائه والتعاون معهم. (B)</p> Signup and view all the answers

ما هي القيمة التي يجب على مهندس البرمجيات مراعاتها عند اتخاذ قرارات مالية متعلقة بمشروع؟

<p>الالتزام بأعلى معايير المهنية. (C)</p> Signup and view all the answers

ما هي القيمة التي يجب على مهندس البرمجيات مراعاتها عند اتخاذ قرارات تطوير البرنامج؟

<p>تلبية احتياجات العميل. (C)</p> Signup and view all the answers

ما هي التحديات التي يجابهها مهندس البرمجيات في عمل برنامج عالي الجودة؟

<p>عدم توفر الخبرات الكافية. (C)</p> Signup and view all the answers

ماذا تُسمى المبادئ العامة التي تنظم سلوك مهندس البرمجيات؟

<p>قواعد أخلاقيات المهنة. (A)</p> Signup and view all the answers

ما هي الطريقة المناسبة لضمان جودة البرنامج الذي يقوم بتطويره مهندس البرمجيات؟

<p>استخدام اختبارات الجودة. (B)</p> Signup and view all the answers

ما هي أهم أسباب فشل مشاريع تطوير البرمجيات؟

<p>عدم وجود تواصل فعال. (A)</p> Signup and view all the answers

ما هي أهمية مراعاة الخصوصية في مشاريع تطوير البرمجيات؟

<p>كل ما سبق. (A)</p> Signup and view all the answers

ما هو دور المجتمع في ضمان الأخلاقيات المهنية لهندسة البرمجيات؟

<p>كل ما سبق. (B)</p> Signup and view all the answers

ما هو دور مهندس البرمجيات في نقل احتياجات العميل إلى تطبيق برمجي?

<p>فهم احتياجات العميل وتنفيذها (D)</p> Signup and view all the answers

ما هو المبدأ الأساسي في هندسة البرمجيات الذي يؤكد على أهمية فهم مشكلة العميل?

<p>فهم المشكلة هو الخطوة الأولى لحلها (A)</p> Signup and view all the answers

من من النقاط التالية تُعد من أولويات مهندس البرمجيات في عملية التطوير?

<p>التواصل مع العميل (A)</p> Signup and view all the answers

ما هو الهدف من 'الربط' بين احتياجات العميل و تنفيذ البرمجة?

<p>ضمان أن البرنامج يحقق احتياجات العميل (C)</p> Signup and view all the answers

ما هو المفهوم المهم الذي يُظهر أن مهندس البرمجيات يُركز على فهم احتياجات العميل?

<p>التواصل الفعال مع العميل (C)</p> Signup and view all the answers

ما هي البرمجيات؟

<p>كل ما سبق (B)</p> Signup and view all the answers

ما هو الفرق بين البرمجيات العامة والبرمجيات الخاصة؟

<p>البرمجيات العامة تُطور لتباع لعدة زبائن مختلفين بينما البرمجيات الخاصة تُطور لزبون واحد معين (C)</p> Signup and view all the answers

ما هو دور برمجيات أنظمة التشغيل في نظام الحاسوب؟

<p>تُستخدم لإدارة موارد الحاسوب مثل الذاكرة و المعالج و األجهزة الملحقة (A)</p> Signup and view all the answers

ما هي أحد مشاكل أزمة البرمجيات؟

<p>عدم استقرار متطلبات المستخدم (D)</p> Signup and view all the answers

ما هو الهدف من هندسة البرمجيات؟

<p>إنشاء برمجيات فعالة و مُحسنة في الزمن و التكلفة (B)</p> Signup and view all the answers

ما هو الفرق بين هندسة البرمجيات و علوم الحاسوب؟

<p>هندسة البرمجيات تهتم بتصميم و بناء البرمجيات بينما علوم الحاسوب تهتم بدراسة مبادئ العمل و التكنولوجيا الأساسية للبرمجيات (B)</p> Signup and view all the answers

ما هو الفرق بين مهندس البرمجيات و المبرمج؟

<p>مهندس البرمجيات هو من يقوم بتحليل و تصميم و تنفيذ مشاريع البرمجيات بينما المبرمج هو من يقوم بكتابة الشفرة البرمجية فقط (B)</p> Signup and view all the answers

ما هي أهمية ضمان الجودة في مشاريع البرمجيات؟

<p>كل ما سبق (C)</p> Signup and view all the answers

ما هو الفرق بين هندسة البرمجيات و هندسة النظم؟

<p>هندسة البرمجيات تهتم بتصميم و بناء البرمجيات بينما هندسة النظم تهتم بتصميم و بناء النظم التقنية المُعقدة مثل نظم العتاد و البرمجيات و الشبكات (A)</p> Signup and view all the answers

ما هي فوائد استخدام أسلوب هندسة البرمجيات في تطوير البرمجيات؟

<p>ضمان جودة البرمجيات و تقليل التكلفة و الزمن المُستغرق (A)</p> Signup and view all the answers

ما هي أنواع برمجيات النظم؟

<p>كل ما سبق (C)</p> Signup and view all the answers

ما هو الفرق بين البرمجيات المخصصة و البرمجيات النظامية؟

<p>البرمجيات المخصصة هي برمجيات مُتخصصة في أداء وظيفة معينة ، بينما البرمجيات النظامية هي برمجيات تُستخدم لإدارة موارد الحاسوب (C)</p> Signup and view all the answers

ما هي أهم أهداف هندسة البرمجيات؟

<p>تحسين جودة البرمجيات و تقليل التكلفة و الزمن و تحسين التواصل بين المُستخدم و المُبرمج (D)</p> Signup and view all the answers

ما هو الدور الأساسي لـ "مهندس البرمجيات"؟

<p>فهم احتياجات العميل وتنفيذها في نموذج برمجي. (B)</p> Signup and view all the answers

ما هو مفهوم "القانون الأول لهندسة البرمجيات"؟

<p>يجب أن يكون مهندس البرمجيات على دراية بمجال مشكلة العميل. (C)</p> Signup and view all the answers

ما هو الهدف النهائي من ربط احتياجات العميل بتنفيذ البرمجة؟

<p>إنشاء برنامج يلبي احتياجات العميل بدقة وفعالية. (C)</p> Signup and view all the answers

ما هو أهم دور "مهندس البرمجيات" في عملية ربط احتياجات العميل بتنفيذ البرمجة ؟

<p>تأكد من فاعلية التواصل بين العميل و فريق التطوير. (D)</p> Signup and view all the answers

ما هو المفهوم الذي يوضح أن "مهندس البرمجيات " يُركز على فهم احتياجات العميل ؟

<p>القدرة على فهم متطلبات العميل بشكل دقيق. (D)</p> Signup and view all the answers

ما هو دور مهندس البرمجيات في فهم احتياجات العميل؟

<p>تحديد كيفية تفاعل النظام مع العميل (C)</p> Signup and view all the answers

ما هو المبدأ الأخلاقي الذي يُركز على أهمية النزاهة في عمل مهندس البرمجيات؟

<p>الحكم (اتخاذ القرارات) (B)</p> Signup and view all the answers

ما هو المبدأ الذي يُركز على أهمية ضمان جودة المنتجات في عمل مهندس البرمجيات؟

<p>المنتجات (C)</p> Signup and view all the answers

ما هو المبدأ الذي يُركز على أهمية التوازن بين مصالح 'مهندس البرمجيات' , 'صاحب العمل' , و 'العملاء' مع 'الصالح العام' ؟

<p>المصلحة العامة (C)</p> Signup and view all the answers

ما هو التصرف الذي يُظهر أن 'مهندس البرمجيات' يعمل لصالح 'صاحب العمل' بشكل أفضل?

<p>اتخاذ القرارات الضرورية لتحقيق أفضل مصلحة ل 'صاحب العمل' (C)</p> Signup and view all the answers

ما هو الدور الذي يُركز على 'التواصل' و 'الانتباه للضوابط و المعايير' في عمل مهندس البرمجيات؟

<p>االدارة (D)</p> Signup and view all the answers

ما هو المبدأ الذي يُركز على أهمية 'الدعم و التعاون' بين 'زمالء مهندس البرمجيات'؟

<p>الزمالء (B)</p> Signup and view all the answers

ما هي 'المشكلة التي يجب على مهندس البرمجيات حلّها' في عملية تطوير النظام؟

<p>تحديد كيفية تفاعل النظام مع العميل أو مجال المشكلة ليحقق أهداف العميل (B)</p> Signup and view all the answers

ما هو 'المبدأ الأخلاقي' الذي يُركز على أهمية 'الحفاظ على حقوق الملكية' في عمل 'مهندس البرمجيات'؟

<p>الحفاظ على حقوق الملكية (A)</p> Signup and view all the answers

ما هي 'القضية المهنية' التي يجب على 'مهندس البرمجيات' 'مراعاتها' عند 'استخدام الكمبيوتر'؟

<p>عدم اساءة استخدام الكمبيوتر (C)</p> Signup and view all the answers

ما هو 'المبدأ الأخلاقي' الذي يُركز على أهمية 'مراعاة خصوصية الأفراد' في عمل 'مهندس البرمجيات'؟

<p>الخصوصية (C)</p> Signup and view all the answers

من 'المبادئ الأخلاقية' التي يجب على 'مهندس البرمجيات' 'مراعاتها'؟

<p>جميع الخيارات السابقة (D)</p> Signup and view all the answers

ما هو 'الهدف الأساسي' من عمل 'مهندس البرمجيات'؟

<p>تحقيق أهداف العميل من خلال النظام البرمجي (B)</p> Signup and view all the answers

ما هي 'الخطوة الأولى' التي يجب أن يقوم بها 'مهندس البرمجيات'؟

<p>فهم 'احتياجات العميل' (A)</p> Signup and view all the answers

ما هو 'الفرق' بين 'مهندس البرمجيات' و 'المبرمج'؟

<p>جميع الخيارات السابقة صحيحة (C)</p> Signup and view all the answers

ما هي 'أهم المبادئ الأخلاقية' التي يجب على 'مهندس البرمجيات' 'مراعاتها'؟

<p>جميع الخيارات السابقة (B)</p> Signup and view all the answers

ما هي البرمجيات التي يتم تطويرها خصيصًا لزبون معين ولأغراض معينة؟

<p>البرمجيات المخصصة (B)</p> Signup and view all the answers

ما هي البرمجيات التي تُستخدم في إدارة الملفات وتشغيل البرامج؟

<p>برمجيات النظم (B)</p> Signup and view all the answers

ما هو أحد أسباب أزمة البرمجيات؟

<p>قصور في مرحلة جمع متطلبات المستخدم (D)</p> Signup and view all the answers

ما هي أهمية هندسة البرمجيات؟

<p>لضمان تطوير برمجيات ذات جودة عالية وإنتاجية عالية وتكلفة منخفضة (D)</p> Signup and view all the answers

ما هي واحدة من مهام مهندس البرمجيات؟

<p>صيانة البرمجيات (C)</p> Signup and view all the answers

ما هي أحد خصائص البرمجيات الجيدة؟

<p>سهولة التعديل والتطوير (A)</p> Signup and view all the answers

أي مما يلي يعد من فوائد هندسة البرمجيات؟

<p>جميع الخيارات السابقة صحيحة (D)</p> Signup and view all the answers

ما هو مفهوم 'أزمة البرمجيات'؟

<p>وجود أخطاء العديد من البرمجيات التي تُستخدم في المجتمع (A)</p> Signup and view all the answers

ما هو الفرق بين برمجيات النظم و برمجيات التطبيق؟

<p>برمجيات النظم تُستخدم لإدارة موارد الحاسوب بينما برمجيات التطبيق تُستخدم لإنجاز مهام معينة للمستخدم (A)</p> Signup and view all the answers

ما هو الفرق بين مهندس البرمجيات و المبرمج؟

<p>المبرمج يُركز فقط على كتابة الشفرة البرمجية بينما مهندس البرمجيات يُركز على التصميم و التحليل (A)</p> Signup and view all the answers

ما هي أحد أهداف هندسة البرمجيات؟

<p>التأكد من أن البرمجيات قابلة للاستخدام من قبل المستخدم (D)</p> Signup and view all the answers

ما هي واحدة من أسباب فشل مشاريع تطوير البرمجيات؟

<p>عدم تحديد المتطلبات بدقة من قبل المستخدمين (C)</p> Signup and view all the answers

ما هو دور مهندس البرمجيات في إدارة مشروع تطوير البرمجيات؟

<p>التخطيط و تنظيم و إدارة عمليات التطوير من بداية المشروع إلى نهايته (D)</p> Signup and view all the answers

ما هو الفرق بين برمجيات الوقت الحقيقي و برمجيات النظم؟

<p>برمجيات الوقت الحقيقي تُستخدم في تطبيقات تتطلب سرعة استجابة فورية بينما برمجيات النظم تُستخدم في تطبيقات تتطلب سرعة استجابة معقولة (A)</p> Signup and view all the answers

Study Notes

مقدمة في هندسة البرمجيات - ITGS-213

  • المحاضرة حول تأكيد جودة البرمجيات واختبارها.
  • تاريخ المحاضرة: خريف 2020.
  • المادة تخص تأكيد الجودة البرمجيات (Software Quality Assurance & Testing)، و تعتبر من النشاطات المهمة في أي مشروع برمجي.

مواضيع المحاضرة

  • مفاهيم أساسية في الجودة وأهميتها.
  • تأكيد جودة البرمجيات (Software Quality Assurance).
  • المراجعة والفحص والتصفح (Reviewing, inspection & Walkthrough).
  • خصائص الجودة (Quality Attributes).
  • معايير البرمجيات (Software Standards).
  • أنواع أخطاء البرمجيات.
  • الاختبار(Testing)
  • أنواع الاختبارات (Type of Testing).
  • طرق الاختبار (Methods of Testing).
  • المسؤولية المهنية و الأخلاقية.

مفاهيم أساسية في الجودة وأهميتها

  • مراقبة الجودة (Quality Control) هي عناية بالمنتج البرمجي منذ مرحلة التصنيع وحتى وصوله للمستخدم ويتم اختباراته عبر حلقة ردود (Feedback loops).
  • تُعطى الإدارة العليا معلومات عن المنتج البرمجي (تقرير) حول مطابقته للمعايير.

تأكيد الجودة البرمجيات (Software Quality Assurance)

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

المراجعة والفحص والتصفح (Reviewing, inspection & Walkthrough)

  • Walkthrough: مراجعة غير رسمية، مشاركة فريق اعداد المنظومة.
  • Code Inspection: فحص الشفرة، بحضور فريق الفحص و معد الجزء البرمجي.
  • Software Review: مراجعة التوثيق في كل مرحلة (التحليل، التصميم، البرمجة).

خصائص الجودة (Quality Attributes)

  • الاعتمادية (Reliability): الموثوقية/الدرجة التي يمكن للبرنامج أن يؤدي وظائفه دون أخطاء.
  • قابلية الصيانة (Maintainability): سهولة تحديد وإصلاح الاخطاء.
  • الأمن والحماية (Security): حماية البيانات، التحكم في الوصول.
  • التوسعية (Expandability): إمكانية ترقية البرنامج وزيادة قدراته.
  • الدقة (Accuracy): خاصة الحسابات (يُعتبر مستوى 3 أخطاء في الألف مقبولًا).
  • الأداء (Performance): سرعة الاستجابة والمعالجة.
  • سهولة الاستخدام (Usability): واجهة رسومية جذابة.
  • قابلية لإعادة الاستخدام (Reusability): إمكانية استخدام أجزاء المنظومة في برامج أخرى.

معايير البرمجيات (Software Standards)

  • تُهدف إلى التعاون بين متخصصي الحاسوب والزبائن، وتجنب أخطاء الماضي، والحفاظ على استمرارية المنظومة (حتى في غياب بعض موظفي التطوير).
  • توحيد التقنيات والأدوات المستخدمة.
  • إنتاج منتج برمجي عالي الجودة.

أنواع أخطاء البرمجيات (Types of Errors)

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

الاختبار (Testing)

  • عملية تقييم النظام أو عنصره لتحديد ما إذا كان يفي بالمتطلبات المحددة.
  • الاستخدام لإجراءات خاصة لتحديد المشاكل أو العيوب (الثغرات).
  • الهدف من الاختبار هو إيجاد الثغرات/الأخطاء/المتطلبات المفقودة من الاحتياجات الفعلية والتأكد من مطابقة البرمجيات لمتطلبات الزبون.

أنواع الاختبارات (Type of Testing)

  • اختبار الوحدة (Unit Test): اختبار أصغر وحدة في النظام.
  • اختبار التكامل (Integration Test): اختبار الوحدات معًا.
  • اختبار النظام (System Test): اختبار النظام بالكامل.
  • اختبار القبول (Acceptance Test): اختبار المستخدم النهائي.
  • اختبار أخطاء الأداء (Performance Test).
  • اختبار الحماية (Security Test).
  • اختبار الاسترداد (Recovery Test).

طرق الاختبار (Methods of Testing)

  • اختبار الصندوق الأبيض (White-Box Test): يعتمد على معرفة الشفرة.
  • اختبار الصندوق الأسود (Black-Box Test): يعتمد على الواجهة والمتطلبات فقط.
  • اختبار ألفا (Alpha Test): اختبار في مكان المطور.
  • اختبار بيتا (Beta Test): اختبار في مكان الزبون.

لمعلومات إضافية ومزيد من التفاصيل : راجع صفحات العرض المُرفقة.

المسؤولية المهنية و الأَخلاقية

  • مناقشة الخصوصية
  • الحفاظ على حقوق الملكية
  • عدم استخدام الكمبيوتر بطريقة غير سليمة.
  • مصلحة العامة.
  • العملاء وصاحب العمل.
  • المنتجات.
  • الزملاء.
  • الحكم (اتخاذ القرارات)
  • الادارة.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

Description

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

More Like This

Use Quizgecko on...
Browser
Browser