Transcript Slide 1

‫تصميم وتحليل النظم‬
‫أساليب ومناهج تطوير أنظمة املعلومات‬
‫د‪ /‬مازن عمر خيرو‬
‫‪[email protected]‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫أساليب تطوير النظم ومناهجه‬
‫• يمكن تطوير أنظمة املعلومات باستخدام أساليب تطووير مختلةوة و قوا لطييعوة‬
‫وحج و ووم النظ و ووام ومتطلي و ووات اس و ووتخدامه أم و ووا مناجي و ووات التط و وووير يقص و وود و وا‬
‫مجموع و و ووة اخدوات املذ و و ووتخدمة لنمتب و و ووة النظ و و ووام والط و و وور املتيع و و ووة لتحدي و و وود‬
‫متطلي و ووات املذ و ووتخدم (احتياب و ووات املذ و ووتخدم ) تحويله و ووا م و و نظ و ووام معلوم و وات‬
‫حاسوبي‪.‬‬
‫• وهك ووتا و وونن تطو وووير أنظمو ووة املعلومو ووات اأساس ووو ية يمكو وون أن يو ووتم و و و أسو و‬
‫متعووددو و اسووتخدام مناجيووات تطوووير مختلةووة وعل و ري و تطوووير النظووام أن‬
‫يحوودد ووب اليدايووة أسوولور التطوووير الووتمل سوويعتمدي واملناجيووة ال و س ذووتخدمها‬
‫ب ذلك‪.‬‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫• هو ووب طريق و ووة م و وون ط و وور التحلي و وول والتصو ووميم م لة و ووة م و وون ع و وودو مراح و وول موزع و ووة‬
‫بأسوولور ي وومن تطوووير الوونظم بأ وول ووخل ممكوون موون خ و اسووتخدام دورو‬
‫معينة من اخنشطة ال يقوم ا املحللون واملذتخدمون‪.‬‬
‫• علو الوور م موون أن روول مرحلووة مم لووة شووخل معوورو عوون بقيووة املراحوول م انووه‬
‫توبوود مرحلووة تنةووت صخطوووو منةصوولة عوون بقيووة املراحوول بوول يمكوون أن تحوودث‬
‫عدو أنشطة ب الوقت نةذه وقد يتكرر ع ها‪.‬‬
‫• موون املةيوود أن نتخيوول أن دورو حيوواو تطوووير الوونظم علو أم ووا تنةووت ووب مراحول روول‬
‫من ووا تحتووومل علو أنشووطة تيلووح أعلو مراحوول اخداد واأسيويووة وتتووداخل مو يرهووا‬
‫موون املراحوول اووم يطنوواقي نشوواطها توودريجيا ووب خطوووات منةصوولة عوون ع ووها‬
‫اليعي‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫حتديد املشالك والفرص‬
‫وا ألهداف‬
‫حتديد متطلبات‬
‫املعلومات‬
‫تنفيذ النظام عىل أأرض‬
‫الواقع وتقيميه‬
‫حتليل احتياجات النظام‬
‫اختبار النظام وصيانته‬
‫تطوير وتوثيق الربميات‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫تحديد املشارل والةرص واخهداف‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫ال يوجد شخص يريد أن يهدر وقته في حل املشكلة الخطأ‪.‬‬
‫تتطلووب هووتي املرحلووة موون املحلوول أن يقوووم بووالنظر بواقعيووة م و مووا يحوودث ووب العموول اووم يحوودد املشووارل‬
‫بدقة بالتعاون م أع اد املنظمة اآلخرين‪.‬‬
‫تتولد هتي املشارل من قيل أشخاص آخرين وهتا هو الذبب التمل دعا للجود م محلل النظام‪.‬‬
‫أم ووا الة وورص حو و اأس ووا ت ال و و عتق وود املحل وول أن ووه يمك وون تحذ ووين ا م وون خو و نظ ووم املعلوم ووات‪ .‬من‬
‫اصطشاف الةرص يمكن أن ي دمل م زيوادو قودرو العمول علو املنا ذوة أو قود ذوهم وب و و معيوار موا‬
‫ب مجا التجارو ال يقوم ا أو اأخدمة ال ي دي ا‪.‬‬
‫صما أن تحديد اخهداف هو أي ا مخون هام من مخونات هتي املرحلة واخهداف هوب موا يحواو العمول‬
‫تحقيقو ووه‪ .‬يجو ووب عل و و املحلو وول أو أن عو وورف اخهو ووداف وبعو وودها سو وويعرف مو ووا مذا رو ووان بنمخو ووان نظو ووم‬
‫املعلوموات أن سذوواعد العموول ووب تحقيو أهدا ووه عوون طريو حوول مشووارل معينووة أو موون خو اسووت‬
‫رص معينة‪.‬‬
‫من اخشووخاص املطلووور مشووارص م ووب هووتي املرحلووة هووم‪ :‬املذووتخدمون واملحللووون وموودراد الوونظم الووتين‬
‫يقومون بتنذي املشروع‪.‬‬
‫اخنشووطة املطلو ووة ووب هووتي املرحلووة‪ :‬مقابلووة مدارو املذووتخدمين وتلخوويم املعلومووات ال و تووم اأسصووو‬
‫علي ا وتقدير نطا املشروع ام تواي النتائج‬
‫أما مخربات هتي املرحلة ح ‪ :‬تقرير لدراسة بدوى يت من تحديدا للمشوارل واخهوداف‪ .‬و وب الن ايوة‬
‫ييقى عل اإلدارو أن تقرر ما مذا رانت ستمض ب املشروع املقترح أم ‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫تحديد متطليات املعلومات‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫وهنووا عوودو طوور لتعري و متطليووات معلومووات العموول من ووا‪ :‬طري و ميا وورو راملقوواب ت ال خصووية واإلس وطيانات‬
‫وأخووت عينووات موون الييانووات الورقيووة ودراسو ا ومن ووا طوور يوور ميا وورو م وول مراقيووة سوولو ووناع القورار و ئووات‬
‫املخاتب وهنا طر تجم الصةتين م ل النمتبة اخولية‪.‬‬
‫ووب هووتي املرحلووة ييووت املحللووون أقمو ح بهوودهم لتحديوود احتيابووات املذووتخدمين ال زمووة إلنجوواز مهووامهم‪ .‬هنووا‬
‫عوودو طوور لتحديوود متطليووات املعلومووات وبميعهووا يتطلووب التةاعوول امليا وور م و املذووتخدمين من هووتي املرحلووة‬
‫سذاهم ب مصما الصورو ال رسمها املحلل عن املنظمة وأهدا ها‪.‬‬
‫ب عي اخحيان يتم منجاز املرحلتين اخو وال انية قط من دورو حياو تطوير النظم بقصد هدف آخر و اليا‬
‫ما يقوم ا محلل املعلومات )‪.Information Analyst (IA‬‬
‫أما اخشخاص املشاررون ب هتي املرحلة هم‪ :‬املحللون واملذتخدمون ومدراد العمليات والعاملون ب العمليات‪.‬‬
‫يجووب أن عوورف محلوول ال وونظم واووائ النظووام اأس ووا ب بالتةص وويل‪ :‬اخش ووخاص املش ووارصين يووه أنشووطة العم وول‬
‫مخان العمل زمن منجاز العمل صيةية منجاز مبرادات العمل اأسالية يجب أن ذوأ املحلول عون سوبب سذويير‬
‫العمل بالطر اأسالية وأن يأخت هتا الذبب عين ا عتيار عند تصميم أمل نظام بديد‪.‬‬
‫مذا رووان اأجوووار عوون اسووتخدام العمليووات اأساليووة هووو‪ :‬أنووه يو ادى دائمووا علو هووتا النحووو و ووتي الطريقووة عنودها‬
‫يجووب علو املحلوول تطوووير تلووك اإلبورادات وقوود ذوواعد مةهوووم معووادو هندسووة عمليووات اخعمووا ‪Business‬‬
‫‪ Process Reengineering‬عل و طريقة إلعادو التةكير ب العمل بطريقة مبداعية‪.‬‬
‫عند متمام هتي املرحلة يجب أن يخون املحلل قد استوعب سير العمل وامتلك معلومات عن رل من لوه ع قوة‬
‫بالعمل من أشخاص وأهداف و يانات ومبرادات‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫تحليل احتيابات النظام‬
‫• هنووا أدوات وتقنيووات خا ووة سذوواعد املحلوول عل و تحديوود املتطليووات م وول‪ :‬مخططووات‬
‫تد الييانوات ‪ Data Flow Diagrams‬لتم يول الييانوات الداخلوة م و العمول‬
‫وآليووة معاأجووة هووتي الييانووات واملعلومووات الناتجووة شووخل رسووومي هيكلووب اووم ذووتةاد‬
‫موون مخططووات توود الييانووات ووب منشوواد قووامو الييانووات الووتمل يحتووومل عل و بمي و‬
‫تةصيلب لخل عنصر من ا‪.‬‬
‫عنا ر الييانات املذتخدمة ب النظام م و‬
‫• أانوواد هووتي املرحلووة يقوووم املحلوول بتحليوول الق ورارات الهيخليووة وهووب الق ورارات ال و يمكوون‬
‫ي ا تحديد الشروط و دائلها واخ عا وقواعدها وهنا او ث طور رئ ذوية لتحليول‬
‫القرارات الهيخلية‪ :‬الل ة اإلنجليزية الهيخلية وبداو القرار وأشجار القرار‪.‬‬
‫• ووب هووتي النقطووة موون دورو حيوواو تطوووير الوونظم يقوووم املحلوول بنعووداد عوور يلخووم م وا‬
‫قووام بجمعووه ويقوودم عووي ا قتراحووات والنصووائ م و اإلدارو بخصوووص مووا ين و بووه‬
‫وونذا وا ق ووت اإلدارو علو و ه ووتي املقترح ووات يت ووا املحل وول عمل ووه ووب منش وواد النظ ووام‪ .‬ر وول‬
‫مشووخلة موون مشووارل النظووام ريوودو ويمكوون أن تحوول عوودو طوور وسعتموود الطريقووة ال و‬
‫شخل ا ا قتراح عل مقومات شخصية محلل النظم وعل مدى احترا ه‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫تصميم النظام املقترح‬
‫• ذووتخدم املحل وول هنووا املعلومووات ال و بمعه ووا ووب املراحوول الذووابقة لو و التصووميم املنطق ووي‬
‫لنظام املعلومات يجب عليه تصميم مبرادات دقيقة إلدخا الييانات م نظام املعلوموات‬
‫لي من صسة الييانات املدخلة صما يجب أن يخوون تصوميم نمواذش و ا وات اإلدخوا بيود‬
‫ل و وومان اعليو ووة اإلدخو ووا ‪ .‬م و وون أب و وراد التصو ووميم املنطقو ووي لنظو ووام املعلوم و ووات‪ :‬ابتخ و ووار وابه و وة‬
‫املذتخدم وسميت تا ا سم خم ا تور ط املذوتخدم مو النظوام ولوتا حو هاموة ومون اخم لوة‬
‫علو وابهووة املذووتخدم‪ :‬لوحووة املةوواتي القوووائم ال و تظهوور علو ا ووة اأساسووور ومجموعووة‬
‫متنوعوة مون وابهوات املذوتخدم الرسوومية ‪ GU‬ال و سذوتخدم الةوأرو والشا وات ال و سعموول‬
‫باللم ‪.‬‬
‫وتي املرحلووة تصووميم امللةووات وقواعوود الييانووات ال و سوونقوم بتخوورين الييانووات ال و‬
‫• تت وومن هو‬
‫ا‬
‫يحتابهووا ا ووناع الق ورار ووب املنظمووة‪ .‬حيووع سعوود قاعوودو الييانووات ال و تتميووز بدرب وة عاليووة م وون‬
‫التنظوويم اخسووا أجميو نظووم املعلومووات و ووب هووتي املرحلووة يتعوواون املحلوول واملذووتخدمون ووب‬
‫تص و ووميم املخرب و ووات ال و و تحق و و متطلي و ووات املعلوم و ووات س و ووواد أران و ووت مطيوع و ووة عل و و ور أم‬
‫ستظهر عل الشا ة‪ .‬يجب عل املحلول أن يصومم أزرار الوتحكم ومبورادات النالوت ا حتيواطي‬
‫موون أبوول حمايووة النظووام والييانووات وموون أبوول منتوواش حوورم املوا ووةات لل رنووامج وال و سوويعطي ا‬
‫للم وورمجين حيووع سووتحتومل روول حرمووة علو مخططووات الوودخل واأخوورش موا ووةات امللة وات‬
‫تةا وويل املعاأج ووة ب ووداو قو ورار أو أش ووجار ق ورار أو مخطط ووات ت وود الييان ووات أو مخطط ووات‬
‫انذيابية للنظام وأسماد وواائ را ة روت نات الشيةرو املكتو ة‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫تطوير وتواي ال رمجيات‬
‫• عم و وول املحل و وول وامل رمج و ووون عل و و تط و وووير ال و ورامج اأجدي و وودو وهن و ووا تقني و ووات هيخلي و ووة‬
‫لتصوميم وتوايو ال ورامج من وا‪ :‬مخططوات الينيوة ‪ Structure Chart‬ومخططوات‬
‫ناس و ‪ -‬وونايدرمان والشوويةرو الوهميووة ‪ Pseudocode‬حيووع يمكوون للمحلوول أن‬
‫ذووتخدم واحوودو أو أصهوور موون هووتي اخدوات ويعطيووه للم وورمج ليعوورف مووا الووتمل سوويقوم‬
‫ب رمجته‪.‬‬
‫• يتع و وواون املحل و وول واملذ و ووتخدمون علو و و و و و و وا و ووائ ال و و ورامج وه و ووب‪ :‬دلي و وول ا س و ووتخدام‬
‫واملذوواعدو الةوري ووة ومواق و الوي ووب ال و تقوودم اخس ووئلة اخصه وور طرح ووا ‪ FAQS‬وذل ووك‬
‫من ملةات ‪ Read Me‬ال سوتر مو ال ورامج اأجديودو ائودو الواوائ هوب أم وا‬
‫تر وود املذووتخدمين م و صيةيووة اسووتخدام ال ورامج وم و صيةيووة حوول مشووارل ال ورامج ووب‬
‫حا اهورها‪.‬‬
‫• يلعووب امل رمجووون دورا هامووا ووب هووتي املرحلووة خم ووم يقومووون بتصووميم ال رن وامج وو و‬
‫وويةرته ومزالووة اخخطوواد القواعديووة منووه‪ .‬مذا رانووت سطش و ل ال ورامج ووب ب ئووة حاسووور‬
‫مرصورمل ‪ Mainframe‬يجوب منشواد ل ووة الوتحكم باخعموا ‪Job Control‬‬
‫)‪ Language (JCL‬ويمكون للم ورمج أن يأخوت التصوميم أو الشويةرو ال و صتب وا‬
‫ويشو وورح اخب و وراد املعقو وودو مو وون ال رنو ووامج لةري و و مو وون امل و وورمجين اآلخو وورين لر و و مذ و وتوى‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫اختيار النظام و يانته‬
‫• قيل التمكن من استخدام نظام املعلومات يجب اختيواري خن اصطشواف اخخطواد‬
‫قيوول توزي و النظووام عل و املذووتخدمين يخل و أقوول ممووا يخلةووه اصطشوواف اخخطوواد‬
‫عوود التوزي و ‪ .‬ووب هووتي املرحلووة يووتم مب وراد عووي ا ختيووارات موون قيوول امل ورمجين‬
‫وحوودهم أو بالتعوواون م و محللووب الوونظم يووتم أو مب وراد سلذوولة موون ا ختي وارات‬
‫لتص وويد اخخط وواد بواسو ووطة بيان ووات تجريبيو ووة ا ووم بواس ووطة بيانو ووات حقيقي ووة مو وون‬
‫النظام اأسا ب‪.‬‬
‫• ب هوتي املرحلوة قوط تيودأ ويانة النظوام وسذوتمر الصويانة شوخل روتينو ح وح‬
‫م اي ووة عم وور النظ ووام ويقضو و امل وورمج ب وورد صيي وور م وون عمل ووه ووب الص وويانة وتنةو و‬
‫اخعما أموا طائلة علي ا‪.‬‬
‫• هنا أنوواع مون الصويانة يمكون مبرافهوا وورا ع ور موقو اليواو علو الويوب م ول‬
‫ب و و ورامج التحو و ووديع‪ .‬يمكو و وون أن سذو و وواعد اإلب و و ورادات املخططو و ووة واملدروسو و ووة ال و و و‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫تنةيت النظام عل أر‬
‫الواق وتقييمه‬
‫• و ووب املرحلو ووة اخخيو وورو مو وون دورو حيو وواو تطو وووير الو وونظم عمو وول املحلو وول عل و و تنةيو ووت نظ و وام‬
‫املعلوم ووات عل و أبه وورو املذ ووتخدمين ووب مخ ووان العم وول وتت وومن ت وودريب املذ ووتخدمين‬
‫علو صيةيووة اسووتخدام النظووام ويمكوون أن يقوووم اليوواوعون بجوورد موون هووتي التوودرييات‬
‫لكوون يجووب أن يووتم التوودريب بن وراف محلوول الوونظم يجووب علو محلوول الوونظم أن ي و‬
‫طريقووة سلذوولة للتحووو موون النظووام القووديم م و النظووام اأجديوود وموون هووتي العمليووات‬
‫تحويل امللةات من التنذيقات القديمة م التنذيقات اأجديدو أو بناد قاعدو بيانات‬
‫وتنص ب التجهيزات وو النظام اأجديد عل خط العمل‪.‬‬
‫• التقييم هو آخر املراحل ب دورو حياو تطوير النظم ويتم مبرافي ودف املناقشوة خن‬
‫التقي وويم يح وودث علي ووا ووب ر وول مرحل ووة وهن ووا معي ووار رئ و عط ووي م ووارو عل و نج وواح‬
‫النظام ويجب التأصد منه وهو‪ :‬هل املذتخدمون ذط مرون النظام حقا؟‬
‫• من محلل النظم عمل ب حلقة دائرية عندما ينتح من مرحلة ييودأ وب التاليوة وقود‬
‫ي و ووطري اصطشو وواف مشو ووخلة مو ووا و ووب محو وودى املراحو وول م و و العو ووودو م و و املرحلو ووة الذو ووابقة‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫دورو حياو تطوير النظم ‪SDLC‬‬
‫أسلور دورو حياو النظم ‪SDLC‬‬
‫• و ووالر م موون أهميووة أسوولور دورو تطوووير حيوواو النظووام ومووا يووو ري موون خطوووات‬
‫مطذلذ و و وولة ومح و و ووددو ي و و ووتم اتياعه و و ووا ل و و وومان تط و و وووير أنظم و و ووة معلوم و و ووات تل و و و و‬
‫ا حتياب ووات املطلو ووة للمذ ووتخدمين م أن ووه عت وور ي وور مناس وويا لتط ووير أنظم ووة‬
‫املعلومو ووات الكييو وورو بو وودا وصو ووتلك تلو ووك اخنظمو ووة ال و و تتص و و عو وودم الو و ووح‬
‫‪ Imprecise System‬صأنظموة دعوم القورارات واخنظموة اأجديودو عموموا نظورا‬
‫لع وودم ت ووو ر اأخ وورو الخا ي ووة ووا أس ووداا ا أو لخوم ووا ل ووم سذ ووتخدم ع وود و وب ب ئ ووة‬
‫العمل‪.‬‬
‫• وهكو ووتا و وونن أسو وولور دورو حيو وواو تطو وووير اخنظمو ووة عت و وور م اليو ووا وبيو وودا لتطو وووير‬
‫اخنظمة ال يمكن تحديدها بدقة ‪( Precisely Defined‬أمل تحديود مخربا وا‬
‫وعمليا ا ومدخ ا بالدقة الخا ية) مما وب اأسوا ت ال و يمكون الو وو ي وا‬
‫م م ول هوتا التحديود الودقي ( نظورا لخوخامة حجمهوا أو لعودم توو ر املعلوموات‬
‫الخا يووة بمخونا ووا ) ننووه بوود موون اللجووود م و اسووتخدام أسوواليب تطوووير أخوورى‬
‫رو ووالتطوير التو وودري ب ‪ Staged Approach‬أو اسو ووتخدام النمو وواذش الطشو وويي ية‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫‪Extreme Programming XP‬‬
‫دية‬
‫مشاريع البرمجة الح ّ‬
‫دية ‪ XP‬هي إحدى الطرق‬
‫‪ ‬البرمجة الح ّ‬
‫المستخدمة في تطوير النظم تقوم على مبدأ‬
‫تبني ممارسات التطوير الجيدة‪ ،‬ثم القيام‬
‫بدفعها إلى أقصى مدى ممكن‪.‬‬
‫‪ ‬هناك أربعة متحوالت يمكن لمحلل النظم أن‬
‫يتحكم بها و هي‪ :‬الزمن والكلفة والجودة‬
‫والمجال‪.‬‬
‫دية‪:‬‬
‫‪ ‬و هناك أربعة أنشطة في البرمجة الح ّ‬
‫كتابة الشيفرة‪ ،‬االختيار‪ ،‬االستماع‪ ،‬و التصميم‪.‬‬
‫‪Extreme Programming XP‬‬
‫املتحوالت‬
‫ا ألنشطة‬
‫اجلودة‬
‫الاختيار‬
‫اجملال‬
‫التصممي‬
‫اللكفة‬
‫الاس امتع‬
‫الزمن‬
‫الش يفرة‬
‫‪Extreme Programming XP‬‬
‫المتحوالت األربعة األساسية في طريقة‬
‫البرمجة الحدية‬
‫دية أنه إذا قام المحلل بتحديد كمية‬
‫‪ ‬تفترض فلسفة البرمجة الح ّ‬
‫المجال و الجودة و الفترة الزمنية الالزمة إلتمام المشروع فإنه‬
‫يستطيع بحساب تلك المتحوالت الثالثة أن يضبط المتحول الرابع و‬
‫هو الكلفة و بأحسن قيمة ممكنة له‪ ،‬و هذا هو معنى ‪ Extreme‬أي‬
‫أن المتحول يبلغ أقصى غاية ممكنة‪.‬‬
‫املتحوالت الثالثة‬
‫املتحول الرابع‬
‫املتحوالت الثالثة‬
‫املتحول الرابع‬
‫‪Extreme Programming XP‬‬
‫المتحوالت األربعة األساسية في طريقة‬
‫البرمجة الحدية‬
‫‪ ‬فإذا كان المشروع يمر في المرحلة األخيرة من الجدول‬
‫الزمني‪ ،‬فيمكن زيادة الكلفة عن طريق استئجار أفراد‬
‫آخرين‪ .‬أو‪ ،‬إذا قام المحلل بتحديد الفترة الزمنية الالزمة‬
‫إلتمام المشروع و الجودة و الكلفة‪ ،‬فإنه يستطيع‬
‫تحديد المجال وفقاً لذلك‪ ،‬عندها إذا واجه المشروع‬
‫خطر التأخر عن موعد التسليم يمكن للمحلل مثال ً أن‬
‫يعرض على الزبون التخلي عن إحدى مزايا النظام‪.‬‬
‫‪ ‬وهذا هو المقصود بكلمة ‪ Extreme‬حيث يتم تحديد قيمة‬
‫بعض الموارد و يتم دفع قيمة المورد األخير إلى أقصى‬
‫غاية ممكنة‪.‬‬
‫‪ ‬ففلسفة ‪ XP‬هي أن تبحث عن األداء األقصى‪ ،‬و من هنا‬
‫دية‬
‫يظهر أن التفكير بالطرق المعتمدة في البرمجة الح ّ‬
‫شيء‪ ،‬و العمل بها شيء آخر تماماً‪.‬‬
‫‪Extreme Programming XP‬‬
‫دية و طريقتها في زيادة و إنقاص‬
‫البرمجة الح ّ‬
‫المورد‬
‫‪ ‬ال شك أن إنهاء المشروع في الزمن المحدد و‬
‫ضمن كل القيود هو أمر عظيم‪ ،‬ولكن كي يتم ذلك‬
‫ال بد من االعتناء بمسألة إدارة المشروع ألهميتها‬
‫البالغة‪ ،‬فإدارة المشروع ال تعني مجرد تحديد‬
‫األنشطة وفق الموارد فقط‪ ،‬بل يعني أيضاً أن‬
‫المحلل يجب أن يقوم ببعض المقايضات‪ ،‬فأحياناً‬
‫يتم تحديد الكلفة في البداية‪ ،‬و في ظروف أخرى‬
‫يكون الزمن أهم العوامل‪،‬‬
‫‪ ‬و فيما يلي سنناقش المتحوالت األربعة للتحكم‬
‫بالموارد و هي الزمن و الكلفة و الجودة و المجال‪.‬‬
‫‪Extreme Programming XP‬‬
‫الزمن‬
‫‪ ‬يجب أن يقوم المحلل بتحديد الزمن الكافي إلتمام المشروع ثم يقوم‬
‫بتقسيمه إلى عدة فترات‪ ،‬فهناك زمن مخصص لالستماع إلى الزبائن و‬
‫زمن مخصص للتصميم و زمن مخصص لكتابة شيفرة البرامج و زمن مخصص‬
‫لالختبار‪.‬‬
‫‪ ‬ينطبق هذا الكالم على تطوير النظم فيمكن للمحلل إنتاج برامج ذات جودة‬
‫عالية‪ ،‬و لكن يفشل في االستماع‪ ،‬و يمكنه أن يصمم نظاماً رائعاً و لكن ال‬
‫يقضي الوقت الكافي الختبار النظام‪ .‬إن إدارة الوقت مسألة صعبة‪ ،‬فإذا‬
‫وجدت نفسك تعاني من ضيق في الوقت‪ ،‬فماذا ستفعل ؟‬
‫دية تبطل فكرة أن توفر المزيد من الوقت سيحقق النتائج‬
‫‪ ‬إن البرمجة الح ّ‬
‫المطلوبة‪ ،‬ألنه ربما كان الزبون يفضل استالم المشروع في الموعد‬
‫المحدد‪ ،‬بدال ً من تمديد الموعد النهائي مقابل إضافة ميزة جديدة‪ ،‬و قد‬
‫أثبتت الدراسات أن الزبائن يشعرون بالسعادة عندما يرون بعض الوظائف‬
‫التي طالبوا بها قد تم إنجازها وأصبحت قابلة للتشغيل‪ ،‬و قد تبين لنا أن‬
‫الزبون يكون راضياً بنسبة ‪ %80‬مع انتهاء ‪ %20‬من إنجاز الوظائف‪ ،‬و هذا‬
‫يعني أن سعادته ستكون أقل بعد إتمام النسبة ‪ %80‬الباقية من العمل‪ ،‬و‬
‫أننا بهذا الكالم نريد إيصال الرسالة التالية ‪ :‬ال تقم بتمديد موعد التسليم‬
‫دية تصر على وجوب إنهاء العمل في الوقت‬
‫النهائي‪ ،‬إن نظرية البرمجة الح ّ‬
‫المحدد‪.‬‬
‫‪Extreme Programming XP‬‬
‫الكلفة‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫قد يظهر لنا أن أنشطة التشفير و التصميم و االختبار و االستماع ترجح كفة الميزان و أن الموارد‬
‫المتوفرة و هي الزمن و المجال و الجودة ال تكفي لموازنة المشروع‪ ،‬و أنه حتى لو خصصنا كمية‬
‫طبيعية من الكلفة فهي ال تكفي لتحقيق الموازنة في المشروع‪ ،‬في هذه الحالة يجب أن تكون‬
‫الكلفة المطلوبة فوق المعدل بكثير‪.‬‬
‫معنى هذا أنه يجب المساهمة بالمزيد من المال‪ ،‬حتى تتم موازنة المشروع‪ ،‬و أسهل الطرق لزيادة‬
‫الكلفة هي استئجار المزيد من العاملين‪ ،‬و قد يبدو هذا الحل هو الحل األمثل‪ ،‬فإذا استأجرنا مبرمجين‬
‫آخرين سننتهي بسرعة أكبر‪ .‬أليس كذلك ؟‬
‫الواقع أن هذا ليس بالضرورة صحيحاً و لنوضح ذلك تخيل أنك استأخرت عاملين إلصالح سقف منزلك‪،‬‬
‫ثم استأخرت عاملين آخرين‪ ،‬فأصبح عددهم أربعة‪ ،‬إن هؤالء العمال سرعان ما سيصطدم بعضهم‬
‫ببعض‪ ،‬إن زيادة عدد العمال من ‪ 2‬إلى ‪ 4‬ال يعني بالضرورة أن الزمن الالزم إلتمام العمل سينخفض‬
‫إلى النصف‪ ،‬فهناك مسألة التواصل و التكاليف غير المادية التي يجب حسابها قبل استئجار المزيد من‬
‫العاملين‪ ،‬ألن العضو الجديد في الفريق ال يعرف المشروع وال الفريق‪ ،‬و سيؤدي بالتالي إلى عرقلة‬
‫األعضاء األصليين في الفريق و خفض سرعة العمل‪ ،‬ألن األعضاء األصليين مضطرون إلى أن يصرفوا‬
‫شيئاً من وقتهم إلدخال األعضاء الجدد في جو العمل‪.‬‬
‫كما أن وضع ساعات عمل إضافية ليس حال ً سليماً‪ .‬صحيح أن هذا يزيد الكلفة‪ ،‬لكن ال يزيد اإلنتاجية‬
‫بالضرورة‪ ،‬ألن المبرمج المتعب أقل فاعلية من المبرمج اليقظ فهو يستغرق وقتاً طويال ً إلنجاز مهمة‬
‫عادية كما أنه ترتكب أخطاء تستهلك وقتاً أطول في إصالحها‪.‬‬
‫هناك طرق أخرى إلنفاق المال من أجل زيادة اإلنتاجية مثل إحضار تجهيزات جديدة‪ ،‬فالحواسيب‬
‫المحمولة و األجهزة الخلوية تزيد اإلنتاجية عندما يكون العمل بعيداً عن المكتب‪ ،‬شاشات العرض‬
‫الضخمة و أجهزة الماوس و لوحات المفاتيح الالسلكية و بطاقات الرسوميات القوية يمكنها أيضاً أن تزيد‬
‫اإلنتاجية‪.‬‬
‫‪Extreme Programming XP‬‬
‫الجودة‬
‫دية بضبط هذا المورد و بجهد أقل من‬
‫‪ ‬تسمح فلسفة البرمجة الح ّ‬
‫الجهد المبذول في الموارد األخرى‪ ،‬و يمكن ضبط الجودة داخلياً و‬
‫خارجياً‪،‬‬
‫‪ ‬فالجودة الداخلية تتضمن اختبار البرمجيات من ناحية التشغيل (هل يقوم‬
‫البرنامج بما هو مطلوب منه فعال ً ) و من ناحية االنسجام ( هل يلبي‬
‫البرنامج معايير معينة في االنسجام و هل هو مقابل للصيانة ؟)‪ ،‬و بشكل‬
‫عام ال يكون هناك أجر مقابل التعديالت الصغيرة التي تعمل على تحسين‬
‫الجودة الداخلية‪.‬‬
‫‪ ‬أ ّما الجودة الخارجية و هي كيف يتخيل الزبون النظام‪ .‬يهتم الزبون بموضوع‬
‫األداء فمن األسئلة التي يحتمل أن يطرحها ‪ :‬هل يعمل البرنامج بموثوقية‬
‫أم ال تزال هناك أخطاء في البرنامج ؟ هل مخرجات البرنامج فعالة ؟ هل‬
‫تصل المخرجات في الوقت المطلوب ؟ هل تعمل البرمجيات بسهولة ؟ هل‬
‫واجهة المستخدم سهلة الفهم و االستخدام ؟‬
‫‪ ‬تسمح فلسفة الحدية للبرمجة الحدية بالتنازل عن بعض نواحي‬
‫الجودة الخارجية‪ ،‬فلكي يتم تسليم النظام في الوقت المطلوب و‬
‫اضطر المحلل إلى مكافحة بعض أخطاء البرمجيات‪ ،‬عندها يمكن أن‬
‫تكون واجهة المستخدم غير كاملة في اإلصدار األول و يمكن‬
‫تحسينها في إصدار الحق‪.‬‬
‫‪Extreme Programming XP‬‬
‫المجال‬
‫‪ ‬المجال المتحول الرابع و األخير هو المجال‪ .‬يتم‬
‫دية من خالل‬
‫تحديد المجال في البرمجة الح ّ‬
‫االستماع إلى الزبائن و تكليفهم بكتابة‬
‫قصصهم‪ ،‬و بعدها يتم فحص و تحليل تلك‬
‫القصص لمعرفة كمية العمل الممكن إنجازها‬
‫في فترة زمنية معينة من أجل إرضاء الزبون‪ ،‬و‬
‫يجب أن تتسم هذه القصص باالختصار و‬
‫سهولة الفهم‪.‬‬
‫‪Extreme Programming XP‬‬
‫األنشطة األربعة األساسية في طريقة‬
‫البرمجة الحدية‬
‫‪ ‬هناك أربعة أنشطة تطويرية في البرمجة الحدية‬
‫هي ‪ :‬كتابة الشيفرة البرمجية واالختبار واالستماع‬
‫والتصميم‪ ،‬ويجب على المحلل الذي يتبع طريقة‬
‫البرمجة الحدية أن يعرف مقدار الجهد الالزم في‬
‫كل نشاط ثم موازنة ذلك مع الموارد المتوفرة إلنجاز‬
‫المشروع‪ ،‬على شكل ميزان قد وضع في كتفيه‬
‫عدد من األوزان‪ ،‬تمثل األوزان الموضوعة في الكفة‬
‫اليمنى في طريقة البرمجة الحدية األنشطة في‬
‫حين تمثل األوزان الموضوعة في الكفة اليسرى‬
‫الموارد التي تحدثنا عنها سابقاً‪.‬‬
‫‪Extreme Programming XP‬‬
‫كتابة الشيفرة‬
‫‪ ‬يوصف نشاط كتابة الشيفرة البرمجية بأنه النشاط‬
‫الوحيد الذي ال يمكن القيام بشيء بدونه‪ ،‬وقد ذكر‬
‫أحد المؤلفين أن أثمن شيء نستفيده من الشيفرة‬
‫البرمجية هو التعلم ويتم هذا على النحو التالي‪:‬‬
‫‪ ‬ابتكر فكرة ثم اكتب شيفرتها ثم اختبرها ثم انظر هل‬
‫كانت الفكرة فكرة منطقية أم ال‪ .‬ويمكن استخدام‬
‫الشيفرة البرمجية أيضاً لتوصيل أفكار معينة مشوشة‬
‫وغير واضحة لو لم يتم كتابة شيفرتها‪ ،‬فعندما أشاهد‬
‫الشيفرة التي كتبتها يمكن أن أكتسب فكرة جديدة ‪.‬‬
‫إن الشيفرة المصدرية تعد األساس للنظام الحي وهي‬
‫ضرورية لعملية التطوير‪.‬‬
‫‪Extreme Programming XP‬‬
‫االختبار‬
‫‪ ‬تعتبر االختبارات المؤتمتة هامة للغاية في طريقة البرمجة‬
‫الحدية‪ ،‬لذلك ننصح بكتابة االختبارات الالزمة لفحص الشيفرة‬
‫والوظائفية واألداء واالستجابة ‪ .‬تعتمد البرمجة الحدية على‬
‫االختبارات المؤتمتة حيث إنه توجد في معظم لغات البرمجة‬
‫مكتبات ضخمة تحتوي على االختبارات وتحتاج هذه االختبارات‬
‫الى التحديث عند الضرورة أثناء إنجاز المشروع ‪.‬‬
‫‪ ‬هناك أسباب قصيرة المدى وأسباب طويلة المدى إلجراء‬
‫االختبار الذي يتم إجراؤه في فترة قصيرة يمنحك الثقة‬
‫القصوى في الشيء الذي تقوم ببنائه حيث إن إجراء االختبار‬
‫بشكل ممتاز يمكن المبرمج من االستمرار في العمل وقد‬
‫تجددت ثقته‪ ،‬أما االختبارات التي يتم إجراؤها على المدى‬
‫الطويل فهي التي تبقي النظام حياً وتسمح بإجراء تغييرات‬
‫أطول من التغييرات التي يمكنك إجراؤها لو لم تنفذ أية‬
‫اختبارات‪.‬‬
‫‪Extreme Programming XP‬‬
‫االستماع‬
‫‪ ‬في البرمجة الحدية يتم تطبيق نشاط االستماع‬
‫بأقصى ما يمكن حيث يستخدم المطورون االستماع‬
‫الفعال لكي يستمع كل منهم الى شريكه في البرمجة‬
‫وبما أنه في البرمجة الحدية هناك اعتماد قليل على‬
‫التواصل المكتوب فقد أصبح االستماع المهارة العظمى‬
‫والمهيمنة‪.‬‬
‫‪ ‬كما يحتاج المطور الى االستماع الفعال الى الزبون ‪.‬‬
‫يفترض أنه ال يعلم شيئاً عن العمل الذي يقوم بإنجازه‬
‫ولذا يجب أن يستمع بعناية وحرص ألصحاب األعمال‬
‫ليحصل على إجابات ألسئلتهم ‪ .‬يجب أن يعرف المطور‬
‫كيف يكون االستماع الفعال‪ ،‬ألن المطور الذي ال‬
‫يحسن االستماع‪ ،‬لن يعرف الشيء الذي يجب عليه‬
‫أن يكتب شيفرته وال الشيء الذي يجب عليه اختباره ‪.‬‬
‫‪Extreme Programming XP‬‬
‫التصميم‬
‫‪ ‬يعرف بأنه الطريقة المستخدمة إلنشاء بنية تنظم‬
‫منطق النظام الكامل‪ ،‬وهو نشاط دائم التطور‬
‫ولذلك ينظر الى النظم المصممة باستخدام‬
‫البرمجة الحدية على أنها نظم متطورة يجري‬
‫تصميمها دائماً ‪ .‬وعادة يكون التصميم الجيد هو‬
‫التصميم البسيط ويجب أن يسمح التصميم‬
‫بالمرونة أيضا ‪ ،‬وأن يمكن من إجراء توسيعات على‬
‫النظام بإجراء التغييرات في مكان واحد فقط‪ .‬إن‬
‫التصميم الفعال هو الذي يبحث عن المنطق قرب‬
‫البيانات التي سيعمل عليها وفوق كل شيء يجب‬
‫أن يكون التصميم مفيداً لكل شخص سيحتاجه مع‬
‫مضي جهود التطوير وهذا يتضمن الزبائن‬
‫والمبرمجين ‪.‬‬
‫‪Extreme Programming XP‬‬
‫الممارسات الجوهرية األربع في البرمجة‬
‫دية‬
‫الح ّ‬
‫‪ ‬إن موازنة الموارد إلتمام‬
‫مشروع ما في الوقت‬
‫المطلوب هي إحدى طرق‬
‫المشاريع إال أن الطريقة‬
‫األفضل هي ‪ :‬تطوير‬
‫ممارسات تعطى نتائج‬
‫مدهشة‪ ،‬فقد طوّرت حركة‬
‫دية مجموعة من‬
‫البرمجة الح ّ‬
‫الممارسات الجوهرية التي‬
‫غيرت طريقة تطوير النظم‪ ،‬و‬
‫سنذكر فيما يلي أربع‬
‫دية و هي حدية‬
‫ممارسات ح ّ‬
‫مقارن ًة بما ناقشناه حتى اآلن‬
‫في إدارة المشاريع‪.‬‬
‫‪short‬‬
‫‪release‬‬
‫‪working‬‬
‫‪40 hours‬‬
‫‪per week‬‬
‫‪XP‬‬
‫‪Onsite‬‬
‫‪Customer‬‬
‫‪Pair‬‬
‫‪Program‬‬
‫‪ming‬‬
‫‪Extreme Programming XP‬‬
‫اإلصدار المؤقت ‪short release‬‬
‫دية يجب إصدار‬
‫‪ ‬حتى تنجح طريقة تطوير البرمجة الح ّ‬
‫المنتج في الوقت المحدد في الجدول الزمني حتى لو‬
‫لم يستطيع المبرمجون وضع كافة المزايا في البرنامج‪.‬‬
‫‪ ‬ربما تكون هذه مبالغة لكن الزبائن سيكونون عندها‬
‫سعداء لحصولهم على المنتج‪ ،‬أما التحسينات فيمكن‬
‫القيام بها الحقاً‪ ،‬و هذه الممارسة شائعة االستخدام‬
‫في مجال تطوير برمجيات الحاسوب و أكثر شيوعاً في‬
‫عالم األجهزة الكفية‪ ،‬ففي الواليات المتحدة يتم إصدار‬
‫برامج الضرائب في بداية موسم الضرائب قبل االنتهاء‬
‫من وضع قوانين الضرائب في البالد‪ ،‬ألن مطوري برامج‬
‫الضرائب يعرفون جيداً أن الزبون يريد المنتج في أقرب‬
‫وقت ممكن‪.‬‬
‫زمن أسبوع العمل ‪ 40‬ساعة‬
‫‪Extreme Programming XP‬‬
‫‪working 40 hours‬‬
‫‪per week‬‬
‫‪ ‬لقد شجع هذا النموذج المبرمجين على قضاء حياتهم‬
‫في المكتب و هم يعملون على مدار الساعة‪ ،‬و األمر‬
‫دية‪ .‬حيث يقوم فريق‬
‫ليس كذلك في البرمجة الح ّ‬
‫دية هنا بتوقيع اتفاقية على ممارسة‬
‫تطوير البرمجة الح ّ‬
‫ثقافية جوهرية و هي أن يعملوا معاً بجد طيلة أسبوع‬
‫عمل تقليدي مدته ‪ 40‬ساعة‪ .‬تهدف هذه الممارسة‬
‫الجوهرية إلى تحفيز أعضاء الفريق على العمل بجد‬
‫أثناء الدوام ثم أخذ استراحة كافية بحيث يكونون في‬
‫حالة استرخاء عند العودة إلى العمل و غير متوترين و‬
‫قادرين على اكتشاف المشاكل‪ ،‬و يقل احتمال‬
‫ارتكابهم لألخطاء المكلفة و احتمال الوقوع في‬
‫النسيان نتيجة األداء المتعب و استهالك طاقة المبرمج‬
‫و هذا ما يحدث عندما ال تكون هناك فترة راحة‪.‬‬
‫‪Extreme Programming XP‬‬
‫إحضار الزبون إلى موقع العمل ‪Onsite‬‬
‫‪Customer‬‬
‫‪ ‬معظم مطوري النظم يوافقون على ضرورة وجود‬
‫الزبون و أهميته في نجاح النظام لكنهم يكتفون‬
‫بعد ذلك بإجراء لقاء أو لقائين مع الزبون ليحددوا‬
‫متطلبات النظام‪ .‬إن وجود الزبون في موقع‬
‫العمل يبلغ أقصى قوته عند وجود الزبون الخبير‬
‫في شؤون العمل في مكان العمل أثناء فترة‬
‫التطوير‪ ،‬و هو الشخص الفعال في تحديد آلية‬
‫معالجة البيانات‪ ،‬و كتابة قصص المستخدمين و‬
‫التواصل مع أعضاء الفريق و المساعدة في‬
‫تحديد األولويات‪.‬‬
‫‪Extreme Programming XP‬‬
‫البرمجة الزوجية ‪Pair Programming‬‬
‫‪ ‬إن البرمجة الزوجية هي في غاية القوة‪ .‬فطالما أن‬
‫هناك فريق من محللي النظم لماذا ال يكون هناك‬
‫فريق من المبرمجين ؟‬
‫‪ ‬ال نعني بالبرمجة الزوجية أن يقوم المبرمج األول‬
‫باختالس النظر إلى شيفرة المبرمج الثاني الكتشاف‬
‫األخطاء التي ارتكبها‪،‬‬
‫‪ ‬بل المقصود ‪ :‬أن يقوم المبرمجان بالعمل معاً لكتابة‬
‫الشيفرة البرمجية و إجراء االختبارات و مناقشة أفضل‬
‫الطرق و أكثرها فاعلية في إنجاز العمل‪ .‬إن البرمجة‬
‫الزوجية توفر الوقت و تقلل من التفكير الالمبالي و تشغل‬
‫حس اإلبداع و تضفي على البرمجة جواً من المرح‪.‬‬
‫‪Extreme Programming XP‬‬
‫دية‬
‫عملية التطوير لمشروع البرمجة الح ّ‬
‫‪ ‬هناك عدد من األنشطة و‬
‫السلوكيات تشكل طريقة‬
‫أعضاء فريق التطوير و‬
‫الزبائن أثناء تطوير مشروع‬
‫دية‪ ،‬هناك‬
‫البرمجة الح ّ‬
‫كلمتان تصفان المشروع‬
‫المنجز بهذه الطريقة هما‬
‫‪ :‬التفاعل و التدرج‪.‬‬
‫‪Extreme Programming XP‬‬
‫دية‬
‫عملية التطوير لمشروع البرمجة الح ّ‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫الحظ األسهم الثالثة التي تخرج‬
‫من صندوق (التكرارات على‬
‫اإلصدار األول) و تعود إليه و التي‬
‫تدل على وجود حلقة تكرار‪ ،‬هذه‬
‫األسهم تدل على التعديالت‬
‫المتدرجة نتيجة االختبار و‬
‫التقييم المتكررين‪ ،‬حيث حصلنا‬
‫في النهاية على نظام مستقر و‬
‫دائم التطور‪.‬‬
‫الحظ أيضاً وجود أسهم مماثلة‬
‫في مرحلة اإلنتاج‪ ،‬تدل هذه‬
‫األسهم على أن خطوة‬
‫التعديالت المتكررة تزداد بعد‬
‫إصدار المنتج‪.‬‬
‫هناك سهم يخرج من مرحلة‬
‫الصيانة و يعود إلى مرحلة‬
‫التخطيط و هو يدل على حلقة‬
‫تغذية عكسية مستمرة يشترك‬
‫فيها الزبائن و فريق التطوير‬
‫ألنهم اتفقوا على تعديل النظام‬
‫المطوّر‪.‬‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫النمتبة اخولية ‪Prototyping‬‬
‫ا‬
‫• سذمح أي ا النمتبة التجريبية أو النمتبة الطشيي ية‪.‬‬
‫ا‬
‫• سذووتخدم النمتبووة اخوليووة للمذوواعدو ووب تو ووي وتحديوود متطليووات املذووتخدم‪.‬‬
‫ولقد انطشر هتا اخسلور ب التطووير نظورا للسابوة م و تطووير أنظموة بديودو لوم‬
‫سذووتخدم موون قيوول و ووب م وول هووتي اأسووا ت يخووون النظووام املطلووور تطووويري يوور‬
‫واض اي ا لخل من املذتخدم واملحلل عل الذواد‪.‬‬
‫• هووب محوودى تقنيووات بم و املعلومووات حيووع ذووتخدمها املحلوول للتعوورف عل و ردود‬
‫أ ع ووا املذ ووتخدمين واإلدارو تج وواي النم وووذش اخو ووب ويق وووم بطال ووجيل اقتراح ووات‬
‫املذو ووتخدمين لت يو وور النمو وووذش اخو و ووب الو ووتمل يم و وول النظو ووام وتحذ و و نه وو و و أمل‬
‫م ا ات بديدو ممكنه وتحديد خطط املرابعة من ابل تحديد أبراد النظوام‬
‫ال و يجووب اليوودد ووا قيوول يرهووا وتحديوود ووروع املنظمووة ال و يجووب نمووتب ا ووب‬
‫املرحلة التالية‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫النمتبة اخولية ‪Prototyping‬‬
‫• وهكو و ووتا يمكو و وون اسو و ووتخدام أس و وولور النمو و وواذش التجريبيو و ووة لتطو و وووير أنظمو و ووة املعلومو و ووات‬
‫اأساسو ية ب اأسا ت التالية‪:‬‬
‫▫‬
‫▫‬
‫▫‬
‫▫‬
‫▫‬
‫عنوودما تخووون ا حتيابووات يوور معرو ووة نظ ورا أسدااووة النظووام الووتمل يجوورمل تطووويري وع ودم‬
‫توو ر اأخ ورو الخا يووة لتحديود هوتي املتطليووات وهوتا يحودث اليووا عنود اسوتخدام تطييقووات‬
‫بديدو لتقنية املعلومات‪.‬‬
‫عندما تخون ا حتيابات معرو ة ولكن املذتخدم ير متأصد من ممخانية تطييقهوا شوخل‬
‫مي ووداني عل و أر الواق و ول ووتلك يحت وواش م و تجر ووا أو وتقييمه ووا قي وول الي وودد ب والتطيي‬
‫الةعلب للنظام‪.‬‬
‫عندما يخون تطوير النظام مخلةا بدا ولتا ير وب املذوتخدم بالتأصيود مون صوسة وبوودو‬
‫التصووميم املقتوورح قيوول اليوودد بالتنةيووت ولووتلك يمكوون اسووتخدام النموووذش التجري و إلبوراد‬
‫ا ختيارات ال زمة والتأصد من صسة وبودو عمل النظام‪.‬‬
‫عندما تخون املخاطرو با نتقا م النظوام اأجديود صييورو بودا وب هوتي اأسالوة يمكون أو‬
‫اللجووود م و النموووذش التجري و إلبوراد ا ختيووارات ال زمووة والتأصوود موون صووسة وبووودو عموول‬
‫النظام‪.‬‬
‫عندما تخون املخاطرو با نتقا م النظام اأجديد صييرو بدا اُ ب هتي اأسالوة يمكون أو‬
‫اللج ووود م و و النم وووذش التجري و و والت وودريب علو و اس ووتخدام ومبو وراد ا ختي ووارات للظو ووروف‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫النمتبة اخولية ‪Prototyping‬‬
‫• ويختل و و أس و وولور النم و وواذش التجريبي و ووة ‪ Prototype‬ع و وون أس و وولور التط و وووير‬
‫ا رتق وواوي ب ووأن النم وووذش اخو ووب ‪ Pilot System‬ال ووتمل ي ووتم مع وودادي خ و‬
‫عمليووة التطوووير يتحووو م و الن ايووة ليصووي بووردا موون النظووام الن وواوي الووتمل يجوورمل‬
‫بن ووادي‪ .‬أم ووا ووب أس وولور النم وواذش التجريبي ووة وونن ه ووتا النم وووذش ي ووتم اس ووطيداله ووب‬
‫الن اية بالنظام اخ لب أمل ذتخدم قط صأداو للتحليل وتحديد ا حتيابات‪.‬‬
‫• أما أهم مجا ت استخدام النماذش التجريبية ح ‪:‬‬
‫▫ اختيار اأسلو التصميمية اأجديدو شخل عملب‪.‬‬
‫▫ تحلي وول املتطلي ووات ‪ Requirement Analysis‬باعتياره ووا أداو هام ووة‬
‫سذاعد ب ذلك تو ي متطليات املذتخدم‪.‬‬
‫▫ عر اإلمخانات واأخيارات ال يمكن أن يو رها النظام املقترح‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫النمتبة اخولية ‪Prototyping‬‬
‫• صمووا يمكوون اسووتخدام النموواذش التجريبيووة وومن دورو حيوواو النظووام ووب مرحلووة دراسووة اأجودوى‬
‫لأل را التالية‪:‬‬
‫وول ع وون اأسل ووو املمكن ووة للمش ووخلة ال و و تج وورى‬
‫▫ إلبو وراد ا ختي ووارات وودف الو ووو م و و ه ووم أ‬
‫دراس ا‪.‬‬
‫▫ لتحديد العمليات الرئ ذية للنظام املطلور تطويري‪.‬‬
‫▫ لتقييم اليدائل املختلةة ا ملقترحة لتصميم النظام‪.‬‬
‫• أما ب مرحلة التصميم‬
‫▫‬
‫▫‬
‫▫‬
‫▫‬
‫▫‬
‫طذتخدم النماذش التجريبية لتعري املذتخدم شخل ملمو علو مودخ ت ومخربوات النظوام‬
‫املقترح وعل طريقة عمله‪.‬‬
‫تحديد املتطليات‪.‬‬
‫تطوووير النموووذش التجري و واسووتخدام لةتوورو موون الوورمن للتعوورف عل و ممخاناتووه وواائةووه واصطذووار‬
‫اأخ رو ب التعامل م مدخ ته ومخرباته‪.‬‬
‫تقي وويم النم وووذش التجري و وودف اقت وراح اأخص ووائم ال و يج ووب ح ووت ها من ووه أو تل ووك ال و يج ووب‬
‫سعديلها أو م ا ة خصائم بديدو وهكتا‪.‬‬
‫مبراد التعودي ت املطلو وة وب النمووذش التجري و اوم و وعه قيود ا سوتخدام وتقييموه وهكوتا ح وح‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫أنواع النماذش اخولية‬
‫•‬
‫•‬
‫•‬
‫•‬
‫النموذش اخو ب املجم‬
‫النموذش ير القابل للطش يل‬
‫نموذش اخو ب الذلذلة‬
‫النموذش ا و ب ذو املرايا املنتقاو‬
‫النموذج األولي المجمع‬
‫‪ ‬هو نموذج يعمل ويؤدي وظيفته بغض النظر عن مستوى الفاعلية‬
‫فيه‪ ،‬ويكون مجمعا أي انه مكون من أجزاء مركبة من هنا وهناك‪،‬‬
‫ومن األمثلة على ذلك من عالم اإللكترونيات ‪ :‬لوحة التجريب‬
‫‪ breadboard‬وهي لوحة تحتوي على ثقوب تسمح بتركيب العناصر‬
‫اإللكترونية عليها بدون استخدام لحام ولذلك يمكن إعادة‬
‫استخدامها‪ ،‬فهذه اللوحة تسمح لنا بصنع دارات يمكن تشغيلها‬
‫بشكل نظامي ولكن عملها اليشترط إن يكون على احسن وجه‪،‬‬
‫وهكذا يمكن إنشاء دارة الكترونية كاملة وتجربتها وتشغيلها‪.‬‬
‫‪ ‬وينطبق هذا الكالم على عالم نظم المعلومات‪ .‬فالنموذج المجمع‬
‫هو نموذج قابل للتشغيل ويحتوي على كافة المزايا الالزمة لكن ال‬
‫يشترط ان يكون فعاال في مخرجاته‪ ،‬وهكذا يمكن للمستفيدين‬
‫التفاعل مع النظام والتأقلم مع واجهته وأنواع المخرجات المتوفرة‪،‬‬
‫ولكن استعادة وتخزين المعلومات يمكن أال تتم على نحو فعال الن‬
‫البرامج تمت كتابتها بسرعة بحيث تكون قابلة للتشغيل دون التركيز‬
‫على فاعلية االنجاز‪.‬‬
‫النموذج غير القابل للتشغيل‬
‫‪ ‬هذا النوع من النماذج ال يمكن تشغيله حيث يتم اعداده من‬
‫اجل اختبار نواح معينة من التصميم ومن األمثلة علية إنشاء‬
‫نموذج كامل لهيكل السيارة يمكن استخدامه في اختبارات‬
‫النفق الهوائي ‪ ،‬ويكون حجم وشكل السياره دقيقين تماما‬
‫ولكن ال يمكن تشغيل السيارة وليس هذا مطلوبا‪ ،‬وفي هذا‬
‫النوع من النماذج يتم التركيز فقط على مزايا السياره الالزمة‬
‫لتنفيذ اختبارات النفق الهوائي‪.‬‬
‫‪ ‬وينطبق الكالم على عالم نظم المعلومات حيث يتم انتاج‬
‫نموذج كامل لنظام المعلومات ولكنه غير قابل للتشغيل ألن‬
‫الشيفره البرمجية الالزمة لكتابة التطبيقات مكلفه جدا ومن‬
‫المتعذر نمذجتها ولكن يمكن الحصول على فكرة جيدة عن‬
‫النظام عن طريق نمذجة المدخالت والمخرجات فقط وال تتم‬
‫هنا نمذجة العمليات ألنها تكلف الكثير من المال والوقت‪.‬‬
‫نموذج األول في السلسلة‬
‫‪ ‬في هذا النوع يتم إنشاء نموذج أولي كامل لنظام‬
‫يطلق عليه عادة ‪ :‬الطيار‪ ،‬ومن األمثلة على هذا‬
‫النموذج نموذج الطائرة األولي في سلسلة من‬
‫الطائرات‪ ،‬حيث يكون النموذج األولي هنا قابال‬
‫للتشغيل ويتم االستفادة منه بهدف إنشاء سلسلة‬
‫من الطائرات تتمتع بمزايا أولية مماثلة حتى لو كانت‬
‫ستختلف في المراحل التالية‪.‬‬
‫‪ ‬وفي عالم نظم المعلومات يمكن استخدام هذا النوع‬
‫من النماذج األولية عند التخطيط إلجراء عدة إعدادات‬
‫تنصيب لنظام معلومات وحيد‪ .‬يسمح النموذج الكامل‬
‫للمستخدمين بالتفاعل مع النظام الجديد ولكن هذا‬
‫النموذج يقلل من تكاليف إصالح المشاكل التي تحدث‬
‫فيه‪.‬‬
‫النموذج االولي ذو المزايا المنتقاة‬
‫‪ ‬هذا النوع قابل للتشغيل ولكنه ال يتضمن جميع المزايا التي‬
‫سيتم وضعها في النظام النهائي‪ ،‬ومن االمثلة على ذلك‬
‫القيام بافتتاح مركز تجاري جديد للبيع بالتجزئة قبل ان يكتمل‬
‫بناء كل المحالت االخرى‪.‬‬
‫‪ ‬إما في عالم نظم المعلومات فعندما نريد نمذجة نظم‬
‫المعلومات بهذه الطريقة نقوم بإضافة بعض مزايا النظام وليس‬
‫كلها‪ ،‬ومن األمثلة على ذلك ‪ :‬قائمة النظام الكامل للبرنامج‬
‫التي تظهر على الشاشة وتقدم ست مزايا وهي ‪ :‬اضافة‬
‫سجل وتحديث سجل وحذف سجل والبحث في سجل ما عن‬
‫كلمة اساسية وعرض سجل ومسح سجل‪ ،‬في حين يتم في‬
‫النموذج االولي لهذا النظام وضع ثالث مزايا فقط من المزايا‬
‫الست السابقة فيتمكن المستخدم فقط من اضافة سجل‬
‫وحذف سجل وعرض سجل‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫استخدام النمتبة ا ولية صيديل لدورو حياو النظم‬
‫• عت وور عووي املحللووين النمتبووة ا وليووة طريقووة بديلووة مة وولة عل و طريقووة دورو‬
‫حي و وواو تط و وووير ال و وونظم وه و ووب طريق و ووة منطقي و ووه منظم و ووه ومدروس و ووه لتط و وووير نظ و ووم‬
‫املعلومات‪.‬‬
‫▫ طو الرمن ال زم لتنةيت مراحل دورو حياو تطوير النظم‪ :‬م ازدياد الرمن التمل‬
‫ذ لكه املحلل ترداد رلةة النظام املطلور تنةيتي‬
‫▫ ان متطلي ووات املذ ووتخدمين تت ي وور مو و الو وورمن ة ووي الةت وورو الطويل ووة الةا و ولة ب ووين‬
‫الوقووت الووتمل تووم تحليوول متطليووات املذووتخدمين يووه ووقووت سذووليم النظووام الن وواوي‬
‫تت يور متطليووات املذوتخدمين و التووا ب وونم م قود ي مووو النظووام بأنوه يل و متطليووات‬
‫املعلومات ال يردوم ا‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫استخدام النمتبة ا ولية صيديل لدورو حياو النظم‬
‫• ويمكوون ان نذووتنتج موون هووتي املشووخلة أنووه موون ال وورورمل أن نيقووى عل و ا ط و ع‬
‫ال وودائم ملتطلي ووات املذ ووتخدمين‪ .‬ر م ووا ر ووان املذ ووتخدمون عر ووون ع و م وواذا‬
‫يريدون وما يريدونه ح ح شاهدونه محذوسا‪.‬‬
‫• وهن ووا تمك وون املش ووخلة ووب دورو حي وواو ال وونظم حي ووع يخ ووون الي ووا ق وود ووات ا وان‬
‫تماما عل س ير النظام ير املر ور يه عد ان يتم سذليمه‪.‬‬
‫ا‬
‫• النمتبو ووة اخوليو ووة سذو وواهم و ووب الق و وواد عل و و ال مو ووو الو ووتمل يكتن و و تحديو وود‬
‫متطليات املعلومات للمذتخدمين‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫قواعد تطوير النموذش اخو ب‬
‫•‬
‫•‬
‫•‬
‫•‬
‫تقذيم العمل ا وحدات قابلة لإلدارو‪.‬‬
‫اإلسراع ب منشاد النموذش اخو ب‪.‬‬
‫ان يخون النموذش اخو ب قابل للتعديل ب مراحل التحذين املتتالية‪.‬‬
‫الترصيز عل وابهة املذتخدم‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫قواعد تطوير النموذش اخو ب‬
‫• تقذيم العمل ا وحدات قابلة لإلدارو‪:‬‬
‫▫ يجب ان يقوم املحلول بتقذويم العمول ا و وحودات قابلوة لوإلدارو و ذتحذون بنواد نظوام‬
‫رامل قابل للطش يل وهتي من مرايا النمتبة اخولية‪.‬‬
‫▫ ومعنووح الوحوودو القابلووة لووإلدارو هووب الوحوودو ال و يمكوون للمذووتخدمين التةاعوول مو مراياهووا‬
‫ا ساسووية ويمكوون بنافهووا بمعوور عوون الوحوودات ا خوورى ويووتم تجاهوول املرايووا ذات اخهميووة‬
‫اخقل وعدم ا ا ا ا النموذش اخو ب امليدوي‪.‬‬
‫• اإلسراع ب منشاد النموذش اخو ب‪:‬‬
‫▫ بوود ا س وراع ووب انشووائه خن موون نقوواط ووع دورو حيوواو الوونظم التقليديووة طووو الةتوورو‬
‫الرمنية الةا لة بوين تحديود املتطليوات و وين سذوليم النظوام الخامول للر وائن مموا يقلول مون‬
‫اعلي ا ب تليية احتيابات املذتخدمين ال تت ير دوما‪.‬‬
‫▫ يج و ووب علو و و املحل و وول تقص و ووير تل و ووك الةج و وووو الرمني و ووة وتق و ووديم نموذب و ووا عملي و ووا ذ و ووتطي‬
‫املذووتخدم رفيتووه ويكطذووب خ وورو عمليووة ووب اسووتخدامه ووب مرحلووة ميكوورو بوود مون ا نتظووار‬
‫ح ح يكتمل النظام م ائيا‪.‬‬
‫▫ ان تط وووير نم وووذش او ووب قاب وول للطشو و يل ذ وورعه ووب مرحل ووة ميك وورو م وون دورو حي وواو تطو ووير‬
‫النظم يرود املحلل برفيه عن صيةية اصما بقية املشروع ‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫قواعد تطوير النموذش اخو ب‬
‫• سعديل النموذش اخو ب‪:‬‬
‫▫‬
‫▫‬
‫▫‬
‫▫‬
‫عنوود انشوواد نموووذش او ووب هووب ان يووتم بنووافي بحيووع يمكوون ابوراد التعوودي ت عليووه حقووا وهووتا عنو‬
‫ان يتووأل النموووذش اخو ووب موون وحوودات سعتموود ع ووها علو عووي شووخل صييوور و التووا ب يخووون‬
‫هنا مشخلة عند اأسابة حقا ا ابراد بي التعدي ت‪.‬‬
‫ا‬
‫يتم عادو سعديل النموذش اخو ب عدو مرات باملرور ب عودو مراحول تكراريوة سذومح ‪.Iterations‬‬
‫حيووع يووتم ووب روول مرحلووة مب وراد الت ي ورات ال و ت و دمل م و تقريووب النظووام موون اأسالووة ال و تناسووب‬
‫املذتخدمين‪.‬‬
‫ب م اية رل مرحلة بتقييم النموذش اخو ب من بديد وهتا هو املقصود بالتكرار‪.‬‬
‫يج ووب ان ع وورف املذ ووتخدمون من النم وووذش اخو ووب ل و نظام ووا م ائي ووا ب وول ه ووو نال ووخة اولي ووة س و تم‬
‫سعووديلها عوودو م ورات و التووا ب يجووب عل و املذووتخدمين القيووام بتقيوويم النظووام ووب م ايووة روول مرحلووة‬
‫تكرارية ح ح يتم تحذين النظام‪.‬‬
‫• الترصيز عل وابهة املذتخدم‪:‬‬
‫▫ ان وابهة املذتخدم ب النموذش اخو ب و ب النظام الن اوي هب بال ة اخهمية‪.‬‬
‫▫ يجو ووب من يو ووتمكن املذو ووتخدمون مو وون التةاعو وول م و و النمو وووذش اخو و ووب للنظو ووام ذو ووهوله خن الهو وودف‬
‫اخساس و و م و وون النم و وووذش اخو و ووب ه و ووو من يق و وووم املذ و ووتخدمون بتو و ووي متطلي و ووات املعلوم و ووات ال و و‬
‫يحتابوم وا شووخل اص وور و موا من الوابهووة بالنذووية للعديود موون املذووتخدمين هوب النظووام يجووب من‬
‫يخون التعامل معها سه ح ح سذاعدي عل مي اح متطليات املعلومات‪.‬‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫التطوير الذري للتطييقات‬
‫‪Rapid Application Development‬‬
‫‪RAD‬‬
‫• هب طريقة رائنيه التوبه ب تطوير النظم تتأل‬
‫من‪:‬‬
‫▫ طريقة التطوير‪.‬‬
‫▫ أدوات برمجة‪.‬‬
‫• وودف م و اختصووار الوورمن الطويوول الووتمل يةصوول بووين تصووميم النظووام وتنةيووتي ووب‬
‫دورو حيوواو تطوووير الوونظم و التووا ب م و تلييووة متطليووات العموول املت يورو ذوورعة ووب‬
‫وقت قصير‪.‬‬
‫• ينظوور عووي املطووورين م و التطوووير الذووري للتطييقووات علو أنووه طريقووة مذوواعدو‬
‫ووب ب ئ ووات التج ووارو اإللكتروني ووة اأجدي وودو املعتم وودو علو و الوي ووب حي ووع يكطذ ووب‬
‫اه ووور العم وول عل و الوي ووب قي وول اخعم ووا املنا ذ ووة ل ووه أهمي ووة خا ووة وونذا أراد‬
‫املحلوول و و تطييو مووا علو الويووب ذوورعة قيوول أن تةعوول اخعمووا املنا ذووة لووه‬
‫اخ ل أن يطينح هو و ريقه طريقة التطور الذري للتطييقات‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫مراحل التطوير الذري للتطييقات ‪RAD‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫املرحلة اخو ‪ :‬مرحلة تخطيط املتطليات‬
‫• ب هتي املرحلة يجتم املحللوون واملذوتخدمون مون أبول تحديود أهوداف النظوام‬
‫ومتطليات املعلومات الناتجة عن تلوك اخهوداف‪ .‬وهوب تتطلوب مشوارصة قويوة مون‬
‫املذووتخدمين وموون املحللووين ول ذووت مجوورد توقي و عل و عووي ا تةاقي وات وموون‬
‫اأجدير بالوتصر هنوا أنوه يمكون أن تحتواش هوتي الطريقوة م و مشوارصة املذوتخدمين‬
‫من بمي مذتويات املنظمة العليا والوسطى والدنيا‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫املرحلة ال انية‪ :‬ور ة التصميم‬
‫• وسذوومح أي ووا مرحلووة‪ :‬وومم و ا‬
‫حذوون ‪ design-and-refine‬وأد مووا ع وور‬
‫عن ووا ه ووو رلم ووة ور ووة ‪ workshop‬عن وودما نتخي وول ور ووة العم وول تقة وور م و‬
‫أذهاننا ورو املشارصة القوية لأل راد وعدم الذليية‪.‬‬
‫• يج ووب علو و املذ ووتخدمين أان وواد ه ووتي املرحل ووة مب ووداد ردود أ ع ووالهم واس ووتجابا م‬
‫للنماذش اخوليوة القابلوة للطشو يل وعلو املحللوين أن يقومووا بتحذوين الوحودات‬
‫ال رمجية ال تم تصميمها اعتمادا عل ردود أ عا املذتخدمين‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫املرحلة ال ال ة‪ :‬التنةيت‬
‫• ن حو أن املحللوين واملذوتخدمين عملوون وب ور وة التصوميم مون أبول تصوميم‬
‫النوووا ب يوور الةنيووة موون النظووام وبعوود ا تةووا عل و النوووا ب يوور الةني وة و نوواد‬
‫النظووام وسشووتييه يووتم اختيووار الوونظم اأجديوودو أو عووي أبرا ووا اووم عر وها علو‬
‫املنظمة‪.‬‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫التطوير التدري ب ‪Staged Development‬‬
‫• ذ ووتخدم ه ووتا اخس وولور لتط وووير اخنظم ووة الكيي وورو ب وودا وال و يمك وون تقذ وويمها م و ع وودد م وون‬
‫اخنظمة الةرعية دف تنةيت عملية بناد هتي اخنظمة عل مراحل مموا يطوي ممخانيوة مدارو‬
‫هووتي العمليووة بكةووادو و اعليووة‪ .‬و قووا لهووتي الطريقووة يووتم ووب روول مرحلووة ‪ Stage‬تطوووير أحوود‬
‫الوونظم الةرعيووة لنظووام املعلومووات الووتمل يجوورمل تطووويري اووم يووتم ر ووط هووتا النظووام الةرعووب مو‬
‫املراحل الذابقة‪.‬‬
‫• أما خطوات تطيي هتا اخسلور ح ‪:‬‬
‫▫‬
‫▫‬
‫▫‬
‫▫‬
‫دراسة بدوى النظام الكلب الكيير‪.‬‬
‫تقذيم النظام م عدد من اخنظمة الةرعية‪.‬‬
‫تقذيم املشروع م عدد من املراحل بحيع يتم ب رل مرحلة تطووير أحود هوتي اخنظموة الةرعيوة‬
‫باستخدام مناجية دورو حياو تطوير النظام ال سعر نا ملي ا ب الةقرو الذابقة‪.‬‬
‫ر ووط النظووام الةرعووب الووتمل تووم تنةيووتي ووب م ايووة روول مرحلووة باخنظمووة الةرعيووة ال و تووم تطويرهووا ووب‬
‫املراحل الذابقة‪.‬‬
‫• م و ‪ :‬يمك وون تقذ وويم نظ ووام املعلوم ووات ووب وورصة صيي وورو م و ع وودو أنظم ووة رعي ووة م ول‪ :‬نظ ووام‬
‫معلومووات املييعووات ونظووام معلومووات املشووتريات ونظووام رقابووة املخوورون اووم يووتم ووب رول مرحلووة‬
‫بن وواد أح وود ه ووتي اخنظم ووة ق ووط مم ووا يط ووي إلدارو املش ووروع ممخاني ووة متا ع ووة أنش ووطة التطو ووير‬
‫والرقابووة علي ووا بطريقووة أ وول‪ .‬صمووا يةيوود هووتا اخسوولور ووب رونووه ذوواعد علو اصطذوار اأخ وورو‬
‫ال زمة تي العمليات لدى رل من املدراد واملذتخدمين و ري العمل التمل يقووم بوالتطوير‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫التطوير املعتمد عل ري عمل‬
‫‪Team Centered‬‬
‫‪Development‬‬
‫•‬
‫•‬
‫•‬
‫•‬
‫يقوووم هووتا اخسوولور عل و لذووةة مناق ووة تمامووا ملةهوووم دورو حيوواو تطوووير اخنظم ووة‬
‫حيووع يتوور اأسريووة الخاملووة لةري و التطوووير لتطوووير نظووام املعلومووات دون ايووة قيووود‬
‫تتعل بطذلذل عمليات التطوير‪.‬‬
‫يوود موون الترصيووز عل و تنةيووت عمليووات وأنشووطة التطوووير شووخل رسووم ومطذلذوول صمووا‬
‫ه ووو اأس ووا ووب دورو حي وواو تط وووير النظ ووام ا ذ ووم للةريو و بالعم وول ووب ه ووتي اخنشو وطة‬
‫باخسلور التمل يراي مناسيا وأصهر عالية إلنجاز النظام املطلور‪.‬‬
‫وسذ ووطند لذ ووةة ه ووتا اخس وولور لتط وووير أنظم ووة املعلوم ووات ال و تخ ووون ووب اليداي ووة ي وور‬
‫واض ووسة التحدي وود ‪ Imprecise Systems‬وو قووا ل ووتلك ي ووتم تطوووير النظ ووام بطريق ووة‬
‫تجريبية وبشخل ارتقاوي‪.‬‬
‫ة ووي اليداي ووة ي ووتم تط وووير نظ ووام أو ووب ذ وويط ‪ Pilot System‬يو و قي وود ا س ووتخدام‬
‫وا ختيووار اووم تجوورمل ترقيتووه ‪ Upgrading‬شووخل متوودرش علو خطوووات حيووع يووتم ووب روول‬
‫خطوووو تاليووة م ووا ة ممخانووات وقوودرات بديوودو م و هووتا النظووام املوبووود قيوود ا ختيوار‪.‬‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫أسلور الترصيب ‪Synthesis‬‬
‫• و ق و ووا له و ووتا اخس و وولور ي و ووتم تط و وووير أنظم و ووة املعلوم و ووات م و وون وح و وودات وايةي و ووة‬
‫‪ Modules‬موبو ووودو وهو ووتا يتطلو ووب أن يتو ووو ر لو وودى املنظمو ووة مكتيو ووة برمجيو ووات‬
‫‪ Software Library‬ت ووم العدي وود م وون الوح وودات الوايةي ووة ‪ Modules‬وال و و‬
‫يمكوون معووادو اسووتخدامها م ورات عديوودو ‪ Reusable‬عنوود بنوواد أنظمووة ا ملعلومووات‬
‫اأجديدو‪.‬‬
‫• ولخ و ووي تت و ووو ر م و وول ه و ووتي املكتي و ووة يج و ووب أن سعتم و وود املنظم و ووة اخس و وولور الهيكل و ووب‬
‫لتص ووميم ال وونظم ‪ Structural Design‬ال ووتمل يق وووم علو و تقذ وويم النظ ووام م و و‬
‫مجموع ووة م وون الوح وودات الوايةي ووة ‪ Program Modules‬ال و و تق وووم ر وول من ووا‬
‫بواية ووة مح ووددو تمام ووا‪ .‬وأه ووم ميو وزات ه ووتا اخس وولور ه ووو مع ووادو اس ووتخدام ه ووتي‬
‫الوحدات الوايةية عند تصميم اخنظمة اأجديدو‪.‬‬
‫ نسخة خاصة غري قابلة للنشر والتوزيع‬،‫ مازن خريو‬/‫د‬
‫أساليب تطوير النظم‬
SDLC
Prototyping
Rapid Application Development RAD
Extreme Programming XP
Staged Development
Team Centered Development
Synthesis
Ready Made Software Packages
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫اسلور استخدام اأسرم ال رمجية اأجاهرو‬
‫• نظرا لخون العديد من التطييقات اإلدارية ذات طييعوة متماالوة وب مختلو املنظموات‬
‫لق وود انطش وورت وبش ووخل واس و ح وورم برمجي و اوات تطييقي ووة ب وواهرو ت ووو ر ممخاني ووات بي وودو‬
‫أسوس ووية مجموع ووة واس ووعة م وون وا ووائ املنظم ووة م وول‪ :‬املحاس ووية والتخط وويط امل ووا ب‬
‫والتني و ومدارو اإلنت وواش واملخ وورون وتحلي وول املييع ووات ومعاأج ووة الطلي ووات وم وودار أوام وور‬
‫الشراد و يرها‪.‬‬
‫• ولق و وود و و وورت ه و ووتي اأس و وورم اأج و وواهرو ممخاني و ووة حوس و ووية التطييق و ووات املختلة و ووة ذ و وورعة‬
‫و كةادو ملسواة‪ .‬وعند استخدام هتي املناجية لتطوير اخنظمة اأساسوو ية ننوه مون‬
‫اله ووم ب وودا أن يخ ووون املذ ووتخدم أو اأجه ووة املذ ووتةيدو علو و دراي ووة واس ووعة باحتيابا ووا‬
‫تمكن ووا م وون اختي ووار اأسرم ووة املناس ووية وو ووعها قي وود الطش و يل وا س ووتةادو من وا بأس وورع‬
‫وقت و دون اأسابة م مبراد س ييرات أو سعدي ت واسعة ي ا‪.‬‬
‫• وبش ووخل ع ووام يتزاي وود اإلقي ووا علو و اس ووتخدام اأس وورم اأج وواهرو ووب حوس ووية التطييق ووات‬
‫والنظم املختلةة نظرا للتطور الذري والكيير ب اإلمخانوات ال و تو رهوا هوتي اخنظموة‬
‫ووب معاأج ووة الييان ووات ومل ووا تطيح ووه م وون مرون ووة صيي وورو ووب مدخ ووا التع وودي ت والت يو ورات‬
‫وتة ووي ت املذووتخدم بمووا يتماغ و ح معووالت يرات املمكنووة ووب ا حتيابووات ولكوون ييقووى‬
‫استخدام هتي اأسرم محصورا أو محددا بالتطييقات النمطية ذات الطييعة العامة‪.‬‬
‫د‪ /‬مازن خريو‪ ،‬نسخة خاصة غري قابلة للنشر والتوزيع‬
‫اختيار اخسلور اخم ل لتطوير النظام‬
‫• دربووة و وووح وتحديوود بنيووة النظووام‪:‬‬
‫يمكوون تطويرهووا باسووتخدام أسوولور دورو حيوواو تطوووير النظووام املشووار ملي ووا أع و ي أمووا‬
‫بالنذووية لألنظمووة ال و تخووون ب ن ووا يوور واضووسة وويمكن تطويرهووا باسووتخدام اخسوولور‬
‫التدري ب أو النماذش التجريبية‪.‬‬
‫• ت ووو ر اأخ وورو واملعر ووة بتقني ووة اخنظم ووة‪ :‬أمل عن وودما يخ ووون املذ ووتخدمين علو و معر ووة و‬
‫مط ع بتقنية املعلوموات يمكون تطووير النظوام باسوتخدام أسولور دورو حيواو النظوام‬
‫أم ووا عن وودما يخ ووون املذ ووتخدمين ي وور ع ووار ين ووتي التقني ووة ويذ ووتخدموم ا للم ورو اخو و‬
‫ننه ية ل تطوير النظام باستخدام اخسلور التجري ‪.‬‬
‫• حجووم النظووام الووتمل يجوورمل تطووويري عنوودما يخووون النظووام صييوور بوودا ية وول تجرئتووه م و‬
‫نظوم رعيووة محوددو شووخل واضو اووم اتيواع اخسوولور املرحلوب ‪ Staged‬لتطووويري أمل‬
‫التطوير عل مراحل‪.‬‬
‫النظووام ذات الينيووة الواضووسة ‪Well Defined‬‬
‫مناهج تطوير النظم‬
‫‪ ‬يقصد بمنهجية التطوير مجموعة الطرق واألدوات المستخدمة‬
‫في تطوير النظام بدءاً من تجميع المعلومات و تحديد احتياجات‬
‫المستخدم‪ ،‬مروراً بعمليات النمذجة ووصوال ً إلى بناء النظام‬
‫الحاسوبي الجديد بالطريقة التي تلبي االحتياجات بالكفاءة‬
‫والفاعلية المطلوبة‪.‬‬
‫‪ ‬وهكذا فإن المنهجية تحدد الخطوات التي سيتم من خاللها‬
‫تطوير النظام واألدوات ‪ Tools‬الالزمة لكل خطوة ونظراً للتنوع‬
‫الشديد في أساليب تطوير النظم ووجود العديد من األدوات‬
‫التي يمكن استخدامها في كل خطوة أو مرحلة من عملية‬
‫التطوير‪ ،‬فإنه نظرياً يمكن اشتقاق العديد من المنهجيات‬
‫الممكنة لتطوير النظم ولكن من الناحية العملية يفضل أن‬
‫تستخدم المنظمات منهجية واحدة عامة لتطوير أنظمتها‬
‫‪ Standard Methodology‬نظراً للمزايا التالية‪:‬‬
‫‪ ‬تنميط وتوحيد عمليات وأنشطة التطوير لكي تتم بأسلوب موحد‬
‫ومنسق مما يسهل عمليات التوثيق والمتابعة‪.‬‬
‫‪ ‬تركيز جهود المحللين والمصممين على دراسة النظم التي يقومون‬
‫بتطويرها‪ ،‬وإعفائهم من المهام المتعلقة باختيار األدوات واألساليب‬
‫المختلفة للنمذجة والتوثيق لكل مشروع على حدة‪.‬‬
‫مناهج تطوير النظم‬
‫‪ ‬ويقصد بتحديد منهجية معينة‪ ،‬واعتمادها لتطوير أنظمة المعلومات في‬
‫المنظمة ما يلي‪:‬‬
‫‪‬‬
‫‪‬‬
‫تحديد مجموعة األدوات واألساليب التي سيتم استخدامها في إنجاز المهام‬
‫المختلفة بدءاً من تجميع المعلومات وانتهاء بتنفيذ النظام ووضعه قيد التشغيل‪.‬‬
‫توزيع استخدام هذه األدوات واألساليب على سلسلة من الخطوات التي سيتم‬
‫وفقها تطوير النظام‪ ،‬وبحيث تكون مخرجات كل خطوة هي مدخالت الخطوة التالية‪.‬‬
‫وهذا يعني تحديد الخطوات التي سيتم من خاللها تنفيذ مراحل دورة حياة التطوير‬
‫واألدوات التي ستستخدم في كل مرحلة والطريقة التي سيتم استخدامها لتوثيق‬
‫النظام‪.‬‬
‫‪ ‬وبشكل عام فإن جميع منهجيات التطوير تؤدي في النهاية إلى بناء نظام‬
‫المعلومات المطلوب ولكن اختالف هذه المنهجيات يعود إلى اختالف‬
‫الطريقة التي تعتمدها كل منهجية لتنفيذ مهام وأنشطة عملية التطوير‪،‬‬
‫‪ ‬ونظراً ألن المكونات الرئسية ألي نظام هي عملياته وهيكل بياناته وتدفقات‬
‫البيانات فيه‪ ،‬فإن المنهجيات المختلفة يمكن أن تبدأ بدراسة إحدى هذه‬
‫المكونات وتنطلق منها لبناء نموذج النظم وتطويره‪ .‬ولذلك نجد أن بعض‬
‫المنهجيات تركز على دراسة تدفقات البيانات‪ ،‬بينما تركز منهجيات أخرى‬
‫على دراسة العمليات‪ ،‬في حين تركز منهجيات ثالثة على دراسة هيكل‬
‫بيانات النظام‪.‬‬