نيوتك

خطوات إنشاء البرنامج



إعداد- م· عبير السيد
ab_elsayed1002@yahoo.com

تمر مرحلة إنشاء البرنامج بعدة خطوات حتى نصل في النهاية إلي البرنامج المطلوب لحل مشكلة أو تنفيذ مهمة وهذه الخطوات هي:
1- التحليل (Analysis)
وفيها يتم تحديد وفهم المتطلبات المراد تحقيقها باستخدام البرنامج، وهذا يتطلب الفهم الدقيق لطبيعة عمل النظام اليدوي المراد تحويله إلى برنامج ويتم هذا عن طريق اتصال المبرمج مع مستخدمي النظام حتى يتمكن من فهم كل التفاصيل الخاصة بالنظام، ومن تحديد المدخلات والمخرجات من البرنامج، وجمع كافة البيانات اللازمة لعمل البرنامج ·
فإذا أردنـــــا مثلا عمل برنامج لنظام المرتبات في أحد الأماكن فلابد أولا من فهم طريقة عمل هذا النظام كاملة، وهذا يشمل معرفة كيفية احتساب المرتب وكل ما يؤثــــــر عليهـــــا من عوامل مثل الإجازات والجـــزاءات وما إلى ذلك ·
2- التصميم (Design)
والغرض من هذه المرحلة هو إيجاد حل للمشكلة أو المهمة التي تم تحديدها في مرحلة التحليل· وفيها يتم تصميم وتحديد مسودة الكود الذي سيتم كتابته في البرنامج، ولكنه لا يكون مكتوبا في صورة كود فعلي مكتوب بإحدى لغات البرمجة، وإنما هناك طرق أخرى يتم بها تصميم مسودة الكود في هذه المرحلة ويمكن استخدام إحدى هذه الطرق أو كلاهما معا لتصميم مسودة الكود وهذه الطرق هي:
أ- خريطة الانسياب (Flow Chart)
عبارة عن رسم يوضح الخطوات التي سيتم تنفيذها بالبرنامج، وفيها يتم استخدام مجموعة من الخطوط والأشكال للتعبير عن هذه الخطوات· والصورة التالية توضع أكثر الأشكال استخداما في خريطة الانسياب ومعنى كل منها: كما في الشكل رقم1
الرسم التالي يمثل خريطة الانسياب للبرنامج الذي يقوم باستقبال قيمة رقمين كمدخلات من المستخدم ويقوم بجمعهما وطباعة المجموع على الشاشة وكذلك طباعة قيمة أكبر رقم فيهما·كما في الشكل رقم2
ب-Pseudocode
عبارة عن مجموعة من الجمل المكتوبة باللغة الإنجليزية، والتي تعبر عن الخطوات والأوامر المراد تنفيذها بواسطة البرنامج· الجمل التالية تمثل Peseudocode خاص ببرنامج يقوم باستقبال قيم لرقمين كمدخلات وحساب مجموعهما وطباعته على الشاشة:
Enter the value of the first number
Enter the value of the second number
Calculate the sum of the two numbers
Print the result
وهذه الجمل لا تمثل كودا فعليا يمكن استخدامه مباشرة وإنما توضح فقط الخطوات اللازمة لكتابة البرنامج ويجب تحويلها أولا إلى أوامر فعلية بإحدى لغات البرمجة حتى يمكن تنفيذها بواسطة الكمبيوتر·
3- التنفيذ (Implementation or Development)
وفيهـــــــا يتم تحويل مسودة الكود التي تم تصميمهـــــــا في مرحلة التصميم إلي كود فعلي مكتوب بإحدى لغات البرمجة، ويلاحظ أنه لا توجد طريقة واحدة، ومعروفـــــــة تتم بها كتابة الكود، وإنما يعتمد هذا على إمكانيات المبرمج وقدراته، وكلما كان الكود مكتوبا بطريقة سهلــــــة، وكان عدد سطـــــــوره أقل، كلما كانت عملية اختبار البرنامج وعملية صيانته والتعديل فيه أسهل·
4- الاختبار (Testing)
بعد أن تتم كتابة البرنامج بإحدى لغات البرمجة تكون هناك حاجة لاختبار البرنامج، وذلك حتى نتمكن من معرفة ما إذا كان البرنامج يعمل بصورة صحيحة دون حدوث أي أخطاء أثناء استخدامه، وكذلك لمعرفة ما إذا كان البرنامج يقوم بتنفيذ المهمة المطلوبة بصورة صحيحة دون وجود خلل فيها· وإذا وجدنا أي قصور أو خطأ في آلية عمل البرنامج أثناء اختباره يتم عمل التعديلات اللازمة في البرنامج حتى نتغلب على هذا القصور· وتنقسم أنواع الخطأ التي يمكن أن تظهر أثناء تشغيل البرنامج إلى ثلاثة أنواع وهي:
أ- خطأ منطقي (Logical Error)
وهو عبارة عن خطأ في المنطق الذي استخدمه المبرمج لكتابة الكود كأن يقوم باحتساب إجمالي المرتب للموظف مثلا عن طريق ضرب الراتب الأساسي في الحوافز (إجمالي الراتب = الراتب الأساسي * الحوافز) بدلا من أن يقوم بجمعها معا (إجمالي الراتب = الراتب الأساسي + الحوافز)· وهذا النوع من الأخطاء لا يستطيع الـ Complier اكتشافه وإنما يجب على المبرمج اكتشافه بنفسه·
ب- خطأ لغوي (Syntax Error)
وهو عبارة عن خطأ في كتابة صيغة الجملة التي تمثل أمرا معينا في لغة البرمجة، وكل لغة من لغات البرمجة يكون لها أشكال معروفة ومحددة لكتابة صيغ الجمل الخاصة بها· على سبيل المثال فإنه إذا أردنا طباعة كلمة مرحبا على شاشة الكمبيوتر تكون صيغة الأمر في لغة Pascal هي :
write('مرحبا')
أما في لغة C فتكون صيغة الأمر هي:
printf (''مرحبا'')
فإذا كتبنا الأمر في C كالتالي:
prinf (''مرحبا'')
فإن هذا يكون Syntax Error. وهذا النوع من الأخطاء يستطيع الـ Complier اكتشافه أثناء عمل Compile (تحويل أوامر اللغة إلى لغة الجهاز) ويقوم بإرشاد المبرمج إليه كما في الشكل رقم·3
ج- خطأ أثناء التشغيل (Runtime Error)
هذا النوع من الأخطاء يحدث أثناء عملية التشغيل ويكون هذا الخطأ ناتجا عن قيام المستخدم بإدخال قيمة غير صحيحة لأحد مدخلات البرنامج، وهذا النوع من الأخطاء لا يتم اكتشافه بواسطة الـ Compiler وذلك لأن عملية الـ Compilation تتم قبل عملية التشغيل· فعلى سبيل المثال إذا كان لدينا برنامج يقوم بحساب ناتج قسمة رقمين، وكان البرنامج يطلب من المستخدم إدخال الرقمين المراد حساب ناتج قسمتهما وقام المستخدم بإدخال صفر كقيمة للرقم المراد القسمة عليه فإن هذا يؤدي لحدوث Runtime Error لأن ناتج قسمة أي عدد على الصفر يكون كمية غير محددة· كما في الشكل رقم4

5- نشر البرنامج (Deployment)
بعد أن تتم عملية الاختبار بنجاح يتم نشر البرنامج وتثبيته عند كل المستخدمين الذين سيقومون باستخدام النظام· وتمثل هذه الخطوة بداية الاستخدام الفعلي للبرنامج·
6- الصيانة (Maintenance)
وفيها تتم متابعة عمل البرنامج بعد أن تم نشره عند المستخدمين وعمل ما يلزم من تعديلات أو متطلبات تستجد الحاجة إليها· وعند ظهور تعديلات أو وظائف جديدة مراد إضافتها للبرنامج يتم أتباع نفس الخطوات السابقة (من 1إلى 5) التي تم أتباعها في إنشاء البرنامج·