🎧 New: AI-Generated Podcasts Turn your study notes into engaging audio conversations. Learn more

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Document Details

Tags

software development process models waterfall model programming

Full Transcript

‫‪3‬المحاضرة رقم‬ ‫عمليات البرمجيات ‪1-‬‬ ‫‪Software Processes‬‬ ‫مقدمة‬ ‫‪ Software Processes‬عمليات البرمجيات‬ ‫هى مجموعة من األنشطة المترابطة المتماسكة المطلوبة لتطوير وإنتاج النظم ‬ ‫البرمجية‪.‬‬ ‫واألنشطة العامة هى‪ :‬توصيف المتطلبات‪ ،‬التصميم‪ ،‬التنفيذ‪ ،‬اإلختبار‪ ،‬‬ ‫التحقق‪...

‫‪3‬المحاضرة رقم‬ ‫عمليات البرمجيات ‪1-‬‬ ‫‪Software Processes‬‬ ‫مقدمة‬ ‫‪ Software Processes‬عمليات البرمجيات‬ ‫هى مجموعة من األنشطة المترابطة المتماسكة المطلوبة لتطوير وإنتاج النظم ‬ ‫البرمجية‪.‬‬ ‫واألنشطة العامة هى‪ :‬توصيف المتطلبات‪ ،‬التصميم‪ ،‬التنفيذ‪ ،‬اإلختبار‪ ،‬‬ ‫التحقق‪ ،‬الصيانة‪ ،‬إرتقاء النظم البرمجية‪.‬‬ ‫وتمثل هذه األنشطة فى نموذج عمليات البرمجيات‪.‬‬ ‫نماذج عمليات البرمجيات‬ ‫هو تمثيل مجرد لوصف ‪Software process model‬نموذج العملية البرمجية ‬ ‫العملية من منظور معين‪ ،‬ومن النماذج العامة لعمليات البرمجيات‪:‬‬ ‫‪ :‬وهى عبارة عن مراحل واضحة ‪The waterfall model‬نموذج الشالل ‬ ‫المعالم منفصلة لوضع المواصفات والتطوير‪.‬‬ ‫‪ :‬وفيه تتداخل المواصفات ‪Evolutionary development‬التطوير اإلرتقائى ‬ ‫مع التطوير‪.‬‬ ‫‪Reuse-based development :‬التطوير المعتمد على إعادة اإلستخدام ‬ ‫بتجميع النظام من مكونات موجودة‪.‬‬ ‫ نموذج الشالل‬Waterfall model :‫مراحله‬.‫تعريف وتحليل وتحديد المتطلبات‬Requirements analysis and definition.‫تصميم النظام وتصميم البرمجيات‬System and software design.‫تنفيذ وإختبار وحدات النظام‬Implementation and unit testing.‫تجميع النظام وإختباره‬Integration and system testing .‫عمل النظم وصيانته‬Operation and maintenance Waterfall model Requirements definition System and software design Implementation and unit testing Integr ation and system testing Operation and maintenance ‫من عيوب نموذج الشالل صعوبة تقدير وتكييف التغييرات أثناء ‬ ‫العملية‪.‬‬ ‫من مشاكل نموذج الشالل‪ :‬التقسيم غير المرن للمشروع إلى مراحل ‬ ‫منفصلة‪ ،‬يزيد من صعوبة اإلستجابة عن تغيير متطلبات‬ ‫المستهلك‪ ،‬لهذا يصبح هذا النموذج مفيدا فقط ومرغوبا عند التفهم‬ ‫الكامل للمتطلبات وقلة التغييرات فيها إلى الحد األدنى‪.‬‬ ‫التطوير اإلرتقائى‬ ‫‪Evolutionary development‬‬ ‫نموذج تطوير إلنتاج البرمجيات تتداخل فيه المواصفات مع ‬ ‫التطوير‪.‬‬ ‫الهدف هو ‪Exploratory development‬التطوير اإلستكشافى‪ :‬‬ ‫العمل مع المستهلك والتوصل إلى النظام النهائى من خالل خطوط‬ ‫عامة تمهيدية للمواصفات ويجب البدء بمتطلبات مفهومة جيدا‪.‬‬ ‫الغرض هو فهم ‪Throw-away prototyping‬النماذج األولية‪ :‬‬ ‫متطلبات النظام ويجب البدء بمتطلبات مفهومة إلى حد ما‪.‬‬ Evolutionary development Concurr ent activities Initial Specification version Outline Intermediate Development description versions Final Validation version ‫فى التطوير اإلرتقائى يتم وضع خطوط وصف عامة ثم تتم متابعة ‬ ‫العمل بأنشطة متالقية مساعدة لتحديد المواصفات التى التى تعطى‬ ‫إصدا ار أوليا بمكن أن يتفاعل مرة أخرى مع تحديد المواصفات‬ ‫لتغييرها وتعديلها وهكذا‪ ،‬ثم من تحديد المواصفات تبدأ أعمال‬ ‫التطوير التى توفر إصدارات وسيطة تتفاعل بدورها مع التطوير‬ ‫وتؤثر فيه وتتأثر به‪ ،‬ثم يتم التحقق من النظام للوصول إلى‬ ‫اإلصدار النهائى‪.‬تتفاعل أيضا مراحل تحديد المواصفات والتطوير‬ ‫والتحقق مع بعضها البعض‪.‬‬ ‫‪ :‬نقص وضوح ‪Problems‬من مشاكل التطوير اإلرتقائى ‬ ‫العمليات‪ ،‬فقر هيكلية النظم‪ ،‬وتحتاج مهارات خاصة بلغات‬ ‫تسمح بالنماذج األولية السريعة‪.‬‬ ‫‪ :‬للنظم ‪Applicability‬قابلية تطبيق التطوير اإلرتقائى ‬ ‫الصغيرة والمتوسطة الحجم ذات التفاعلية‪ ،‬وألجزاء من‬ ‫النظم الكبيرة مثل واجهة المستخدم‪ ،‬وللنظم قصيرة األمد‪.‬‬ ‫التطوير المبنى على إعادة اإلستخدام‬ ‫‪Reuse-oriented development‬‬ ‫يعتمد على إعادة اإلستخدام التقليدى حيث يتم تجميع النظام من عدة مكونات ‬ ‫‪(Commercial-off-the-shelf).‬موجودة أو من نظم أخرى‬ ‫‪Process stages‬مراحل العمليات‪.‬‬ ‫‪Component analysis‬تحليل المكونات‪.‬‬ ‫‪Requirements modification‬تعديل اإلحتياجات‪.‬‬ ‫‪System design with reuse‬تصميم النظام بإعادة اإلسنخدام‪.‬‬ ‫‪Development and integration‬التطوير والتجميع‪.‬‬ ‫خطواتها‪ :‬توصيف المتطلبات‪ ،‬تحليل المكونات‪ ،‬تعديل المتطلبات‪ ،‬تصميم النظام ‬ ‫بإعادة اإلستخدام‪ ،‬التطوير والتجميع‪ ،‬التحقق من النظام‪.‬‬ Reuse-oriented development Requirements Component Requirements System design specification analysis modification with reuse Development System and integration validation ‫‪Process iteration‬تكرار العمليات‬ ‫دائما ما تستخرج متطلبات النظام من سير المشروع لهذا تتكرر العملية ويعاد ‬ ‫العمل على المراحل المبكرة من المشروع خاصة فى النظم الكبيرة‪ ،‬وقد يتم التكرار‬ ‫المتتالى فى أى عملية أو فى أى نموذج‪ ،‬وهناك منهجيتان للتكرار هما‪ :‬التطوير‬ ‫المتزايد أو التطوير بنموذج الحلزون‪.‬‬ ‫بدال من التوصل إعداد ‪Incremental development‬التطوير المتزايد‪ :‬‬ ‫النظام مرة واحدة يقسم التطوير والتسليم إلى أجزاء متزايدة يقوم كل منها بتوفير‬ ‫وظيفة مطلوبة‪ ،‬وتكون لمتطلبات المستخدمين أعلى أولوية‪ ،‬وتوضع المتطلبات‬ ‫ذات األولوية األعلى فى األجزاء المبكرة من النظام‪.‬‬ ‫تعريف الخطوط العريضة للمتطلبات‪ ،‬تخصيص المتطلبات لألجزاء المتزايدة‪ ،‬‬ ‫تصميم معمارية النظام‪ ،‬تطوير أجزاء تزايد النظام‪ ،‬تحقق من التزايد‪ ،‬تجميع‬ ‫األجزاء المتزايدة‪ ،‬التحقق من النظام حتى نصل للنظام النهائى‪.‬‬ Incremental development Define outline Assign requirements Design system requirements to increments architecture Develop system Valida te Integrate Valida te increment increment increment system Final system System incomplete ‫التطوير الحلزونى‬ ‫‪Spiral development‬‬ ‫يمثل تطوير العمليات على هيئة لولبية بدال من تتابع متتال ‬ ‫لألنشطة أو التتابع المتتالى مع الرجوع عكسيا لمزيد من‬ ‫التحسين‪ ،‬وتمثل كل حلقة من الحلزون مرحلة من مراحل‬ ‫العملية‪ ،‬والتوجد مراحل ثابتة مثل توصيف المتطلبات أو‬ ‫التصميم‪ ،‬ويتم إختيار الحلقات فى الحلزون بناء على ما هو‬ ‫مطلوب‪ ،‬ويتم تقدير المخاطر وتحليلها وحل أمورها خالل‬ ‫العمليات‪.‬‬ Spiral model of the software process Determine objectives Evaluate alternatives alternatives and identify, resolve risks constraints Risk analysis Risk analysis Risk analysis Opera- Prototype 3 tional Prototype 2 protoype Risk REVIEW analy sis Proto- type 1 Requirements plan Simulations, models, benchmarks Life-cycle plan Concept of Operation S/W requirements Product design Detailed Requirement design Development plan validation Code Design Unit test Integration and test plan V&V Integr ation Plan next phase test Acceptance Service test Develop, verify next-level product ‫قطاعات نموذج الحلزون‬ ‫‪Spiral model sectors‬‬ ‫فى الربع األول من الحلزون يتم تحديد األهداف والبدائل والقيود‪ ،‬‬ ‫فى الربع الثانى يتم تقييم البدائل وتعريف وتحليل المخاطر‪ ،‬فى‬ ‫الربع الثالث يتم التطوير والتأكد من منتج المرحلة التالية‪ ،‬وفى‬ ‫الربع األخير يتم تخطيط المرحلة التالية‪.‬‬ ‫النهـــــــــــــاية‬

Use Quizgecko on...
Browser
Browser