❞ 📚 أهم  كتب في هندسة برمجيات . ❝

❞ 📚 أهم كتب في هندسة برمجيات . ❝

الأهم والأكثر تحميلًا .. في كتب هندسة برمجيات . . جميع الكتب المتعلقة بـ هندسة برمجيات . . هندسة البرمجيات (بالإنجليزية: Software engineering)‏ المجال الذي يهتم بتطوير، وتصميم البرمجيات، عالية الجودة آخذة بعين الاعتبار تخصيصات المستخدم، ومتطلباته على جميع المستويات. تهتم هندسة البرمجيات بتكوين البرنامج منذ مراحله الأولى أثناء تحليل المشكلة، ومن ثم التصميم، وكتابة البرنامج حتى القيام بتجريبه، واختباره، وتنصيبه على الأجهزة، والقيام بعملية صيانته. وهي حديثاً يمكن أن تنقسم لقسمين الحوسبة اللينة والحوسبة الصلبة. تاريخ هندسة البرمجيات استخدمت هندسة البرمجيات كمفهوم نظري من حين لآخر في أواخر الخمسينات وبداية الستينات من القرن الماضي. أما الاستخدام الرسمي الأول لهذا المصطلح فكان في مؤتمر عقد من قبل اللجنة العلمية في منظمة حلف شمال الأطلسي 1968 حول البرمجيات، وقد أخذ هذا المصطلح بالانتشار منذ ذلك الحين ولاقى اهتماماً متزايداً في نواح مختلفة. عقد المؤتمر لمعالجة مايعرف "أزمة البرمجيات" والتي ظهرت بسبب عدم استخدام منهجية في التفكير (Software Development Process) عند بناء البرمجيات، مما أدى إلى ظهور أخطاء كثيرة خلال عملية بناء وصيانة البرمجيات، وبالتالي أصبحت البرمجيات تحتاج إلى وقت كبير لتطويرها ولصيانتها، وكلفة مالية عالية أكثر مما هو مخمن لها، وبعد تحمل التأخر في الوقت وتجاوز الميزانية كانت البرمجيات ذات كفاءة ضعيفة في إنجاز الوظائف المطلوبة، وقلة في الفعالية كذلك بعدم تلبية كافة المتطلبات بالشكل الكامل. مفهوم هندسة البرمجيات البرمجية (بالإنجليزية: Software)‏ شيء غير ملموس إلى حد ما بالمقارنة مع المنتجات الأخرى، وهي سلسلة من آلاف أو ملايين الأوامر التي تطلب من الحاسوب إجراء عمليات معينة مثل عرض المعلومات، أو إجراء الحسابات، أو تخزين البيانات. هذه البرمجيات هي بمثابة الروح من الجسد في النظام الحاسوبي وهي في توسع دائم وازدياد في التعقيد والمتطلبات والمهام التي تقوم بتنفيذها. أما هندسة البرمجيات فهي فرع من فروع الهندسة يقوم على مجموعة أسس وقواعد تهدف إلى تصميم وتطوير البرامج بوفرة ونوعية عالية تلبي احتياجات المستخدمين، هذا الفرع من الهندسة يتميز بأنه لا يحتاج إلى رأس مال كبير وبالتالي الخسارة فيه قليلة على عـكس بقية الفروع الأخرى من الهندسة، كما لا يكفي لإيجاد البرمجية المتكاملة والجيدة عمل شخص واحد وإنما يتطلب ذلك فريقاً من المهندسين الجيدين. وقد كان ضروريا إيجاد علم يعني بهندسة البرمجيات لوضع الأسس والمعايير التي تصون هذه المهنة من المتطفلين بحيث يصبح بالإمكان تمييز البرنامج الجيد من غير الجيد. مراحل بناء النظام البرمجي في هندسة البرمجيات، بناء النظام البرمجي ليس مجرد كتابة شفرة، وإنما هي عملية إنتاجية لها عدة مراحل أساسية وضرورية للحصول على المنتج، وهو البرنامج بأقل كلفة ممكنة وأفضل أداء محتمل. يطلق على هذه المراحل اسم دورة حياة النظام البرمجي(Software Lifecycle) التي قد يبدو بعضها ليس له علاقة بالبرمجة. وهناك الكثير من التصورات والنماذج في هندسة البرمجيات تصف عملية إنتاج برنامج والخطوات اللازمة لذلك. كما أن هذه الدورة خاضعة للتطوير دائما، حيث بالإضافة للدورات الكلاسيكية، ظهر مفهوم المنظومة المرنة (Agile Process) والتي تتخلي عن النموذج الثابت للمنظومة الكلاسيكية في سبيل المزيد من حرية الحركة للمشروع. و فيما يلي عرض لإحدى أشهر دورات حياة النظام البرمجي الكلاسيكية وهي دورة الشلال (Waterfall Model): كتابة وثيقة الشروط الخارجية والداخلية وثيقة الشروط الخارجية يتم أخذها من الزبون. تحتوي الوثيقة على متطلبات الزبون في ما يخص مواصفات البرنامج الذي يجب إنشاؤه. ثم يتم تحليل المتطلبات بشكل أولي ثم كتابة وثيقة شروط داخلية تحتوي على تفسير المواصفات التي يريدها الزبون بدقة أكبر، وبطريقة تتماشى مع مصطلحات المبرمجين. قد تكون طلبات الزبون متعارضة وفي هذه الحالة يتم الرجوع إليه لتنقيح وثيقة الشروط. ثم يتم تحديد عدد الساعات اللازمة للعمل وحساب التكلفة. التحليلٍ في هذه العملية تجمع المعلومات بدقة ثم تحدد المتطلبات والمهام التي سيقوم بها البرنامج، وتوصف هذه المهام بدقة تامة، كما تدرس الجدوى المرجوة من البرنامج، فالمستخدم مثلاً يضع تصوراً للبرنامج ليقوم بعمليات معينة، ومهمة مهندس البرمجيات في هذه المرحلة هي استخلاص هذه الأفكار وتحديدها؛ لذلك فهي تتطلب مهارة عالية في التعامل مع الزبائن، وقدرة على التحليل الصحيح. ينتج في نهاية هذه المرحلة وثيقة تدعى جدول الشروط والمواصفات دينامكاميد التصميم تصميم البرمجيات هي مرحلة من مراحل دورة حياة النظام، تساعدنا في تحديد كيفية حل المشكلة "كيف سنحل المشكلة؟"، والتخطيط للتوصل إلى حلول للمشكلة، والدخول في تفاصيل النظام. التصميم يحدد هيكلية وبنية النظام من خلال تجزئة النظام إلى مجموعة من الأنظمة الفرعية Sub-Systems مما يساهم في السيطرة على التعقيد في النظام System Complexity، وتحديد الواجهات ونوافذ المستخدم User Interfaces ،والمكونات Components، والوحدات Modules والبيانات للنظام كي يحقق النظام متطلبات الزبون. ونقوم بمرحلة التصميم باستخدام المتطلبات التي حددناها في مرحلة التحليل. مرحلة التصميم يتم خلالها إيجاد التصميم الأمثل لنظام المعلومات الحاسوبي الذي يلبي احتياجات المستخدمين التي تم توصيفها في مرحلة التحليل. إن عملية التصميم في جوهرها هي عملية حل مشكلات، أي يجري البحث خلالها عن أفضل الحلول التصميمية لبناء نظم ذات أهداف محددة. الترميز(كتابة الكود) تحول الخوارزميات والمخططات Diagrams التي تم انتاجها في مرحلة التصميم إلى إحدى اللغات البرمجية، وذلك لانتاج برنامج أو نظام قابل للاستخدام من قبل الزبون، يلبي احتياجتة الموضحة في وثيقة الشروط. خلال هذه المرحلة تتم بعض الاختبارات test على بعض اجزاء النظام للتاكد من عمله بطريقة صحيحة، علماً ان مرحلة الاختبار Testing هي مرحلة منفصلة يتم العمل عليها لاحقاً. الاختبار والتكاملية تجمع الكتل مع بعضها ويختبر النظام للتأكد من موافقته لجدول الشروط والمواصفات، وخاصة إذا كانت الكتل قد كتبت من قبل عدة أعضاء في الفريق. التوثيق وهي مرحلة هامة من مراحل بناء النظام البرمجي حيث يتم توثيق البناء الداخلي للبرنامج؛ وذلك بغرض الصيانة والتطوير. يفضل عادة أن يترافق التوثيق مع كل مرحلة من المراحل السابقة واللاحقة، وأن يكون هناك فريق خاص يهتم بعملية التوثيق لجميع المشاكل والحلول التي يمكن أن تظهر أثناء بناء البرمجية. وبدون التوثيق قد يصل مصنع البرمجية إلى مرحلة لا يعود بعدها قادراً على متابعة صيانتها وتطويرها؛ مما يزيد الكلفة المادية والزمنية الخاصة بهذه البرمجية إلى حدود غير متوقعة، أو بمعنى آخر الفشل في بناء برمجية ذات جودة عالية ودورة حياة طويلة. وهناك أكثر من طريقة للتوثيق -توثيق المبرمج وهو ممكن أن يكون بأضافة تعليقات داخل الشفرة البرمجية. -توثيق المحلل بكتابة مستندات شرح لدورة البرنامج المستندية وخلافة. -توثيق مختبر النظام وفيها يتم تسجيل نقاط الخلل في البرنامج. الصيانة والتطوير إن هذه المرحلة هي المرحلة الأطول في حياة النظام البرمجي لبقاء النظام قادراً على مواكبة التطورات والمعدات الحديثة، جزء من هذه المرحلة يكون في تصحيح الأخطاء، والجزء الآخر يكون في التطوير وإضافة تقنيات جديدة. إن هذه الخطوات كما نلاحظ مشابهة لخطوات الإنتاج في الهندسيات الأخرى. الفرق بين البرمجة وهندسة البرمجيات البرمجة هي كتابة الكود المصدري للبرنامج، وبالتالي تعتبر جزء من مرحلة التنفيذ (Implementation) في هندسة البرمجيات التي تعمل على بناء النظام البرمجي كمشروع متكامل. المجالات المختلفة التي لها علاقة بهندسة البرمجيات الرياضيات: يحتوى أغلب البرنامج على عناصر رياضيات مثل (logarithms) لذلك فإن مطوري هذا النوع من البرامج يكونون على اطلاع بالعديد من النواحي الرياضية. العلوم: البرنامج له مواصفات علمية قياسية عديدة، مثل: الأداء وحجم البرنامج وتنوع الأحمال.network speed المعادلات الرياضية الطرق الحديثة لقواعد البيانات الهندسة التصنيع: البرامج عبارة عن مجموعة من الخطوات. كل خطوة يتم تحديدها وتنفذ بدقة. مثل الكثير من الصناعات، لتحسين وتطوير خطوط الآنتاج والوصول إلى مستوى الجودة المطلوب. إدارة المشروعات: سواء كان تجاريا أو غير تجارى فإنة يحتاج إلى إدارة. مثل: جدول زمني وتكلفة تخصص له. عوامل بشرية للإدارة ومصادر مثل مكتب وأجهزة كمبيوتر. أول مهندس برمجيات أول مهندس برمجيات هو ديفيد كامينر، توفي وعمره 92 عام...

📚 عرض أكثر الكتب تحميلًا في كتب هندسة برمجيات .:


قراءة و تحميل كتاب Clean Code PDF

Clean Code PDF

قراءة و تحميل كتاب Clean Code PDF مجانا

قراءة و تحميل كتاب تعلم البرمجة مع بايثون 3 PDF

تعلم البرمجة مع بايثون 3 PDF

قراءة و تحميل كتاب تعلم البرمجة مع بايثون 3 PDF مجانا

قراءة و تحميل كتاب The Web Application Hacker's Handbook 2nd Edition PDF

The Web Application Hacker's Handbook 2nd Edition PDF

قراءة و تحميل كتاب The Web Application Hacker's Handbook 2nd Edition PDF مجانا

قراءة و تحميل كتاب Python Cookbook الإصدار الثاني PDF

Python Cookbook الإصدار الثاني PDF

قراءة و تحميل كتاب Python Cookbook الإصدار الثاني PDF مجانا

قراءة و تحميل كتاب Python Crash Course, 2nd Edition PDF

Python Crash Course, 2nd Edition PDF

قراءة و تحميل كتاب Python Crash Course, 2nd Edition PDF مجانا

قراءة و تحميل كتاب Murach's MySQL (3rd Edition) PDF

Murach's MySQL (3rd Edition) PDF

قراءة و تحميل كتاب Murach's MySQL (3rd Edition) PDF مجانا

قراءة و تحميل كتاب تعلم PHP و MySQL و JavaScript و CSS الاصدار الخامس PDF

تعلم PHP و MySQL و JavaScript و CSS الاصدار الخامس PDF

قراءة و تحميل كتاب تعلم PHP و MySQL و JavaScript و CSS الاصدار الخامس PDF مجانا

قراءة و تحميل كتاب COMPTIA SECURITY+ STUDY GUIDE: EXAM SY0-501 7TH EDITION PDF

COMPTIA SECURITY+ STUDY GUIDE: EXAM SY0-501 7TH EDITION PDF

قراءة و تحميل كتاب COMPTIA SECURITY+ STUDY GUIDE: EXAM SY0-501 7TH EDITION PDF مجانا

قراءة و تحميل كتاب High Performance Python 2st Edition PDF

High Performance Python 2st Edition PDF

قراءة و تحميل كتاب High Performance Python 2st Edition PDF مجانا

قراءة و تحميل كتاب الكل يكذب : البيانات الضخمة، والبيانات الحديثة، وقدرة الانترنت على اكتشاف الخفايا PDF

الكل يكذب : البيانات الضخمة، والبيانات الحديثة، وقدرة الانترنت على اكتشاف الخفايا PDF

قراءة و تحميل كتاب الكل يكذب : البيانات الضخمة، والبيانات الحديثة، وقدرة الانترنت على اكتشاف الخفايا PDF مجانا

قراءة و تحميل كتاب Invent Your Own Computer Games with Python, 4E PDF

Invent Your Own Computer Games with Python, 4E PDF

قراءة و تحميل كتاب Invent Your Own Computer Games with Python, 4E PDF مجانا

قراءة و تحميل كتاب Modern C++ Programming with Test-Driven Development PDF

Modern C++ Programming with Test-Driven Development PDF

قراءة و تحميل كتاب Modern C++ Programming with Test-Driven Development PDF مجانا

قراءة و تحميل كتاب problem-solving using scala PDF

problem-solving using scala PDF

قراءة و تحميل كتاب problem-solving using scala PDF مجانا

قراءة و تحميل كتاب CompTIA Network+ Certification All-in-One Exam Guide 4th Edition PDF

CompTIA Network+ Certification All-in-One Exam Guide 4th Edition PDF

قراءة و تحميل كتاب CompTIA Network+ Certification All-in-One Exam Guide 4th Edition PDF مجانا

قراءة و تحميل كتاب Google Flutter Mobile Development Quick Start Guide PDF

Google Flutter Mobile Development Quick Start Guide PDF

قراءة و تحميل كتاب Google Flutter Mobile Development Quick Start Guide PDF مجانا

المزيد ●●●

مناقشات واقتراحات حول صفحة هندسة برمجيات .: