اللجنة العلمية_مستوى رابع
600 subscribers
195 photos
23 videos
362 files
198 links
القنوات العملية المركزية:
سنة اولى/ https://t.me/USF_Computer1
سنه ثانية/ https://t.me/USF_computer2
سنة ثالثة/ https://t.me/USF_Computer3
سنة رابعة/ https://t.me/USF_Computer4

تم ارشفة اغلب قنوات ومجموعات الدفع السابقة ، وهي مثبته
Download Telegram
Forwarded from Cloud Computing (A H M E D)
أنواع السُحب في الحوسبة السحابية:-


السحابة العامة Public Cloud:-

عادةً ما تحتوي على كميات هائلة من المساحة المتاحة، مما يُترجم إلى قابلية التوسع بسهولة. يوصى به لتطوير البرمجيات والمشاريع التعاونية.


السحابة الخاصة Private Cloud :-

عادة ما تكون موجودة خلف جدار حماية وتستخدمها مؤسسة واحدة. يوصى به للشركات ذات المتطلبات التنظيمية الصارمة للغاية


السحابة الهجينة Hybrid Cloud:-

خليط بين السحابة العامة مع السحابة الخاصة للسماح للمنصتين بالتفاعل بسلاسة. يوصى به للشركات التي تعمل على تحقيق التوازن بين تحليلات البيانات الضخمة ولوائح خصوصية البيانات الصارمة.



سحابة المجتمع Community Cloud:-

منصة تعاونية ومتعددة المستأجرين تستخدمها العديد من المؤسسات المتميزة لمشاركة نفس التطبيقات. يعمل المستخدمون عادةً في نفس الصناعة أو المجال.


#الحوسبة_السحابية_نظري
Forwarded from Cloud Computing (A H M E D)
بنية الحوسبة السحابية هي مزيج من العمارة الموجهة للخدمة و المعمارية المدفوعة بالحدث

Cloud computing architecture is a combination of service-oriented architecture and event-driven architecture

#الحوسبة_السحابية_نظري
Forwarded from Cloud Computing (A H M E D)
Cloud Computing
#الحوسبة_السحابية_نظري
Application Layer

طبقة التطبيقات، الموجودة في الجزء العلوي من الهرم، هي المكان الذي توجد فيه التطبيقات السحابية الفعلية. يمكن للتطبيقات السحابية، على عكس التطبيقات التقليدية، الاستفادة من وظيفة التوسع التلقائي للحصول على أداء أكبر وتوافر وتكاليف تشغيل أقل


#الحوسبة_السحابية_نظري
Forwarded from Cloud Computing (A H M E D)
Cloud Computing
#الحوسبة_السحابية_نظري
Platform Layer

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


#الحوسبة_السحابية_نظري
Forwarded from Cloud Computing (A H M E D)
Cloud Computing
#الحوسبة_السحابية_نظري
Infrastructure Layer

طبقة البنية التحتية هي مبنى مركز البيانات والمعدات والأنظمة التي تحافظ على تشغيله


#الحوسبة_السحابية_نظري
Forwarded from Cloud Computing (A H M E D)
Cloud Computing
#الحوسبة_السحابية_نظري
Hardware Layer

تتكون طبقة الأجهزة من البنية التحتية للأجهزة، بما في ذلك مراكز البيانات والخوادم وأجهزة التخزين ومعدات الشبكات


#الحوسبة_السحابية_نظري
Forwarded from Cloud Computing (A H M E D)
مراقب الأجهزة الافتراضية برنامج Hypervisor:-


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


هناك نوعان من برامج Hypervisor:


النوع الأول برامج Hypervisor المعدنية:

يتم تثبيتها مباشرة على أجهزة الجهاز الفعلي وإدارة أنظمة التشغيل المثبتة عليها. ولذلك، فهي تساعد الأجهزة الافتراضية على الاستفادة من موارد الجهاز الفعلي مباشرةً دون الحاجة إلى نظام تشغيل.



النوع الثاني برامج Hypervisor المستضافة:

يتم تثبيتها كتطبيق برمجي على نظام التشغيل، ويعمل كل جهاز افتراضي كمثيل برنامج منفصل أو عملية على النظام المضيف. تشمل الأمثلة محطة عمل VMware وOracle VirtualBox.



#الحوسبة_السحابية_نظري
Forwarded from IS4 PM_2025 (A H M E D)
Software requirements specification srs template.doc
127.5 KB
ملف مساعد لتطبيق ال SRS

منقول من الأستاذة فاطمه سعد عامر
#IS4

#مشروع_التخرج
Forwarded from IS4 PM_2025 (A H M E D)
IS4 PM_2025
Use case description.docx
This document appears to be a template for documenting use case descriptions.
The main elements include:

1. Use Case Name: The name or title of the use case.
2. Unique ID: A unique identifier for the use case.
3. Area: The area or domain that the use case belongs to.
4. Actors: The stakeholders or users involved in the use case.
5. Description: A brief description of the use case.
6. Trigger Type: Indicates whether the use case is triggered externally or temporally.
7. Steps Performed (main path): The main steps or flow of the use case.
8. Information of Steps: Additional details about the steps performed in the use case.
9. Preconditions: Conditions that must be met before the use case can be executed.
10. Post conditions: Conditions that are expected to be true after the use case is completed.
11. Requirements Met: The requirements or user needs that the use case addresses.
12. Outstanding Issues: Any known issues or concerns with the use case.
13. Priority: The importance or priority level of the use case.
14. Risk: The potential risks or challenges associated with the use case.

This template provides a structured way to document the key aspects of a use case, which is a common technique in software engineering and requirements analysis to capture and communicate user interactions with a system.

#IS4

#مشروع_التخرج
Forwarded from IS4 PM_2025 (A H M E D)
IS4 PM_2025
Use case description.docx
#IS4
لتحديد Trigger Type و Priority في وصف حالات الاستخدام، يمكن الاعتماد على المعايير التالية:

Trigger Type
1. External:
- استخدم هذا الخيار إذا كانت الحالة تتطلب دخولًا من مستخدم خارجي أو نظام آخر.
- مثال: عندما يقوم المستخدم بالنقر على زر، أو عندما يتلقى النظام طلبًا من واجهة برمجة التطبيقات (API).

2. Temporal:
- استخدم هذا الخيار إذا كانت الحالة تعمل بناءً على الوقت، مثل المهام المجدولة.
- مثال: تقرير يتم إنشاؤه تلقائيًا كل نهاية شهر.
Priority
1. Urgent:

- الحالات التي تحتاج إلى التنفيذ الفوري أو التي تؤثر بشكل كبير على العمل.
- مثال: إصلاحات للأخطاء الحرجة التي تعطل النظام.

2. High:

- الحالات المهمة ولكن يمكن الانتظار قليلاً لتنفيذها.
- مثال: ميزات جديدة تعزز تجربة المستخدم.

3. Medium:

- الحالات التي لها تأثير معتدل ويمكن برمجتها في الجدول الزمني.
- مثال: تحسينات بسيطة على واجهة المستخدم.

4. Low:

- الحالات التي ليست ذات أولوية عالية ولا تمثل خطراً على النظام.
- مثال: تغييرات جمالية أو تحسينات ثانوية.

#مشروع_التخرج
Forwarded from Cloud Computing (A H M E D)
GitLab

هو منصة شاملة لتطوير البرمجيات (DevOps) تجمع بين العديد من الأدوات والخدمات في مكان واحد.

تتيح لك GitLab إدارة دورة حياة المشروع بأكملها، بدءًا من كتابة الكود وحتى نشره.


ما هي أهم مزايا GitLab؟

إدارة مستودعات Git:

تخزين وتنظيم كودك بسهولة.

تعقب الأخطاء:

إدارة المهام والمشاكل التي تواجه المشروع.

ويكي:

إنشاء وثائق المشروع وتبادل المعلومات.

دمج مستمر ونشر مستمر:

أتمتة عمليات البناء والاختبار والنشر.

أمن قوي:

حماية كودك وبياناتك.

تعاون فعال:

العمل مع فريقك بسهولة ومرونة.

ما هي استخدامات GitLab؟

تطوير البرمجيات:

إدارة مشاريع البرمجيات من البداية إلى النهاية.
التعاون بين الفرق:

تسهيل العمل المشترك بين فرق التطوير والعمليات.

نشر التطبيقات:

نشر تطبيقاتك بسرعة وأمان.

#الحوسبة_السحابية_نظري
#الحوسبة_السحابية_عملي
Forwarded from اللجنة العلمية CS 22 (Abdullah Almsaodi)
صباح الخير CS22


كلنا عارفين كيف مشروع التخرج يأخذ وقت ومجهود
وماعد يبقي معانا وقت للأشياء الثانية من تكاليف و مشاريع المواد،
فضروري نستخدم Chatgpt بقدر المستطاع عشان تزيد الانتاجية
ومش يعني انك تستخدم AI خلاص أنت بليد وماعد تفهم شيء 😂💔 ،

الفكرة هي طريقة استخدامك وكيف تخليه مرشدك و مساعدك الشخصي،
والذي يفرق هو Prompt الذي تكتبه فضروري تعرف كيف تتواصل مع
الذكاء الاصطناعي وتتعلم (Prompt Engineering).

طيب معانا تكاليف الدعيس ويشتي نطبق SOLID Principl و Design Pattern
وكلنا عارفين كيف الوليد يناقش ويطرح الدرجات 😂 فضروري تفهم ايش الذي فعلت.

طيب كيف تفعل ومافيش معك وقت؟
وتضيع وقتك تدور مشاريع جاهزة من Github وتنزلها وتفهمها
وترجع تبنيها من جديد 🥲


بقلك ايش الحل من رأي المتواضع
أنت الآن مستوى رابع 🌚 واكيد اشتغلت على مشاريع سابقة
سواء Web PHP أو #C أو أي لغة وتقدر تطبق Design Pattern
و SOLD طبيعي بدون أي مشاكل .


مثلاً إذا معك مشروع PHP وبدن OOP فتقدر تحوله وبكل سهولة ،
كل الذي عليك التي :

١- تفتح المشروع في VSCode وتحمل extension تتستخرج هيكلية المشروع اسمها

Export Tree

Ctrl+Shift+P وابحث على Tree Exporter: Export


ال Extension تتستخرج الهيكليه كامل في ملف .ini
ويطلع لك 2000 سطر 🥲💔.
فحذف الملفات وبقي المجلدات فقط وعدلها كذا مثلا:

furni-store
├── .idea
| └──
├── admin
│ ├── assets
│ ├── css
│ │ ├── style.min.css
│ │ └── styles.css
│ ├── js
│ │ ├── all.js
│ │ ├── datatables-simple-demo.js
│ │ └── scripts.js
│ ├── login.php
│ ├── logout.php
│ ├── register.php
│ ├── dbconnect.php
│ ├── editcategory.php
│ ├── editusers.php
│ ├── index.php
│ └── users.php
├── css
├── images
| └──
├── include
| └──
├── login.php
├── products.php
├── index.php
├── README.md



٢- افتح ChatGP واكتب اوامر واضحة و لمهمة واحدة ومحددة ويكون في تسلسل في المشكلة والموضوع (مش تكتب اشتي مشروع كامل وجاهز 🌚) .

مثال:

I have a php e-commerce store project, and I need to modify and convert it to OOP with the SOLID principle.
could you help me and be my instructor?

وضيف الهيكليه في Prompt ثاني :

I will provide you my project structure and guide me based on it


بيجيب لك الخطوات واضحة وكيف تقدر تحول وتغير هيكلية المشروع،
وبنفس الوقت تفهم ايش الفرق قبل وبعد التعديل.



الخلاصة طريقة استخدامك ل ChatGPT هي الذي بتفرق معك
وكيف أنك تفهم طريقة وخطوات حل المشاكل وتحلها أنت.


🎵 اقتراحات (زيادة خير 🌚) :

- اذا في أي جزئية مافهمته خليه يشرح لك المبدئ ويبحث في النت
عشان يجيب لك افضل النتائج مثل:

search on the internet and tell me
what is the SOLID Principl?


- ضيف للمتصفح Grammarly extension وسجل الدخول في موقعهم،
واثناء كتابة Prompt يطلع لك مقترحات وتصحيح للكلمات مع القواعد
لأنها بتفرق جداً في response حق ChatGPT.

- للذي يشتي يطلع على حقي المحادثة و Prompt هذا الرابط:
https://chatgpt.com/share/9ae90bc9-aa3f-4c2a-a2ac-5aed5a2782ae



والسلام عليكم ورحمة الله...

#مشاريع
#مساعدة
#برمجة_متقدمة_عملي
Forwarded from اللجنة العلمية CS 22 (Ahmed Alkhateeb)
السلام عليكم

حبيت لو اسوي دروس عن الlow level languages و كمان المفاهيم تبعهن، هذا درس من دروس كثيرة.
درسنا بسيط و الاغلب فاهم 70 بالمية منه و لكن بقية ال30 بالمية بيجيب لك قدرات في مسيرتك البرمجية ما تتخيلها، بتشوف العالم مختلف تماما 😉

الدرس هو عن المؤشرات و انواعها، و للي يقول ايش الفائدة او مثلا هي بس تستخدم في اللغات الlow level اقول له فائدتها كبيرة جدا و اغلب المفاهيم البرمجية ما بتكون ممكنه إلا و باستخدام المؤشرات، اما استخدامها صح هي الاغلب في اللغات الlow level و لكن لا تهمل اللغات ذولا عشان ممكن هن "صعبات" او "ما بتستخدمهن" انت ما تجلس في نفس المكان و بنفس العمل طول حياتك و كل ما انت متمكن في اشياء اكثر انت كذا تقدر تشتغل اي شيء و ما تضيق عليك الدنيا.

طبعا طول الدروس اللي باجيبها عن الlow level languages انا باتكلم عن ثلاث لغات و ممكن من وقت لوقت باجيب لغة مختلفة بس عشان اظهر تطور اللغات، اللغات اللي باستخدمهن (#C, C++, C). كذلك المستوى المطلوب لفهم الدروس مية بالمية هي انك بس تكون قد كملت برمجة ١، و حتى مش كامل، يكفي نصه، اهم شيء تعرف ايش هي البرمجة 😄

أولا لازم نعرف ايش هو المؤشر، هو فقط متغير يحتوي على رقم، هذا الرقم هو عنوان في الRAM تبعك. هو المؤشر بس كذا.

ابسط نوع للمؤشرات هو الvoid pointer، هذا المؤشر يأشر على بايت في الRAM. فكرته انه مؤشر ما يهتم بالtype حق البيانات اللي بيأشر لها.

طريقة كتابة هذا المؤشر في C و C++ كذا

void* pointer = 1000;
تحذير للجميع، لا تجيب لمؤشر قيم ثابته لأن اغلب الأوقات انت بتجيب له مكان في الRAM بشكل عشوائي و ممكن تخرج عن المجال حق البرنامج تبعك. اغلب الانظمة التشغيلية بتوقف البرنامج و لكن لا تخاطر

هنا تشوف ان اول شيء كتبته هو void عشان نقول ان احنا مش مهتمين بالنوع حق البيانات اللي بأشر لها، بعدين كتبت * هذا يقول لك انه مؤشر، بعدين اسم المؤشر و بعدها القيمة.

ذحين لو انا مثلا احتاج العنوان حق متغير معين، احنا عارفين ان المتغيرات في مكان معين في الRAM، فكيف ناخذ مكانهن.

الطريقة هي انك تكتب اسم المتغير و قبله &

int num = 10;
void* pointer = #
كذا عرفنا كيف المؤشر يأشر على بيانات معينه، بس لو مثلا اشتي اعرف ايش القيمة اللي بيأشر لها.

هذه اولا بتكون عندنا مشكلة، احنا بنستخدم void* و هذا ما يهتم بالنوع حق البيانات، بالاصح ما يهتم ايش البيانات اللي بيأشر لها، لذلك عنضطر ان احنا نستخدم مؤشر يهتم بالنوع، و ذا بسيط لكن هنا تبدأ الاعمال الغير آمنة (الأمنية تعني من ناحية التعامل لبرنامجك، ما بتغلط و تخرب على جهازك لا تخاف)

عشان نخلي المؤشر يعرف النوع حق البيانات ابدل كلمة void بالنوع اللي اشتيه، مثلا

int num = 10;
int* pointer_num = #
حلو ذحين لو مثلا انا قلت للمؤشر يخرج لي القيمة، هو بيكون عارف ايش النوع حقها، بس باقي اعرف كيف اخرج القيمة، و الصدق سهلة جدا، اكتب قبل المؤشر * و بيجيب لك القيمة اللي بيأشر لها

int num = 10;
int* pointer_num = #
std::cout << *pointer_num << std::endl;
ممكن تقول فين المشكلة الأمنية، في عندنا مكانين ممكن يطلع لنا مشاكل.
اولا ممكن نكتب مؤشر من نوع البيانات حقنا من نوع، و مشكلة كبيرة خصيصا لو مثلا المؤشر له نوع حجمه بالبايت اكبر من اللي احنا بنأشر له، بيطلع لنا بايتات احنا ما لنا دخل بهن
ثانيا ممكن المؤشر ما يأشر لأي شيء، و لو حاولنا نخرج القيمة كذا بيقفل علينا البرنامج بحكم ان احنا بنأشر إلى null.

الحالتين ممكنه كالتالي

char ch = 'A';
int* pointer = &ch;
int* pointer2;
std::cout << *pointer2 << std::endl;
لو مثلا انت تشتي تتخطى هذولا المشاكل تقدر تتأكد ان كل مؤشر بيأشر على الشيء الصحيح، كذلك لو تشتي تعرف ان المؤشر بيأشر لقيمة صحيحة تقدر تدخلها في if و بس

int num = 10;
int* pointer = &num;
if (pointer) {
std::cout << *pointer << std::endl;
}
int* pointer2;
if (!pointer2) {
pointer2 = &num;
}
std::cout << *pointer2 << std::endl;
آخر شيء عندنا هو الفائدة للمؤشرات.
اولا لو مثلا عندك عدة قيم من نفس النوع تقدر تغير المؤشر، بدل ما يأشر على واحد، يأشر على الثاني، كذا تقدر تخلي اختيار القيمة في مكان واحد و المؤشر يكون كالمرجع لآخر واحد انت استخدمته.
ثانيا بيسرع فكرة نقل البيانات، لو مثلا عندك ملف في مجلد و تشتي تغيره لمجلد ثاني، النظام التشغيلي بس يغير المؤشر، بدون ما ينسخ ولا شيء (هذه لو الملف حقك في نفس القرص)
ثالثا لو قده بالقوة، مثلا عندك مكتبة بيستخدموا مؤشرات و بس، او انت بتتعامل مع الRAM مباشرة كذا بتحتاجها.

الدرس القادم بيكون عن العمليات اللي تقدر تسويها على المؤشر و كذلك عن الconst.
لو في أي سؤال اسال البوت.
Forwarded from اللجنة العلمية CS 22 (أحمد جلال | 𐩱𐩢𐩣𐩵 𐩴𐩡𐩱𐩡)
السلام عليكم

الجميع بدأ بالعمل على مشاريع التخرج، وقد انتقلنا من المرحلة الأولى إلى المرحلة الثانية وهي الأهم والأصعب في عملية بناء المشروع..
طبعا المرحلة الأولى كانت عبارة:
جمع وتحديد المتطلبات (Requirements Gathering and Analysis) أو ما تسمى بمرحلة التخطيط (Planning )
والأغلب يعلم مكونات هذه المرحلة وما تحتويه من بحث ودراسة جدوى ..ألخ
ولكن مخرجات مرحلة Planning هي عبارة عن proposal ومحتوياته بناء على مطلبات المشروع ولا يوجد قالب يضبط الموضوع بشكل كامل وإنما حسب الاحتياج..
نعم proposal هو الأقتراح الذي تم تسليمه للعمادة، وأظن أن البعض كان يدرك هذه المرحلة ولكن الأغلب عمهم ChatGpt ما قصر معاهم، لكن المهم أنك عملت Proposal وتمت الموافقه علية 😅

ثم دخلنا في المرحلة الثانية وهي:
التحليل والنمذجة (Analysis and modeling )
وكما هو معلوم لديكم أن دورة حياة النظام (System Development Life Cycle - SDLC) تمر ب6 مراحل أو أكثر بدء من
- Planning
- Analysis and Requirements
- Design
- Implementation
- Testing

ولكن المرحلة الثانية هي الأهم والأصعب في هذه الدورة، ومن هنا تظهر قوتك ك Systems Analyst 😀
يجب عليك أن تبذل قصار جهدك في تحليل متطلبات وأعمال نظامك، ثم عمل تصور كامل لذلك.. فبعد التحيل يأتي دور النمذجة Modeling وهو عمل Modle "تصور شامل للنظام بشكل أفتراضي" قبل الأنتقال للمرحلة الرابعة implementation وبدء عملية التنفيذ؛ لأن جزء من المرحلة الثالثة Design تدخل في عملية النمذجة وبناء ال Modle.

ركز على عملية النمذجة سنرجع لها بعد قليل😉

طيب يا هندسة مش الجامعة طلبوا منّا في هذه المرحلة SRS
و مجموعة من Daigrams !؟🤔
أوليس SRS هو توثيق كامل للنظام كما يحدث في سوق العمل والشركات! وفي نفس الوقت ال Daigrams مثل Use Case ..ألخ ألتي ذُكرت بعد SRS أيضا هي جزء منه !؟

طيب أقلك كلامك سليم 💯 ولكن حسب فهمي للموضوع أن SRS هنا المقصود به طور عملية التخطيط والتحليل أي أنك ستكتب التالي
مقدمة- غاية- نطاق- وتقوم بتحديد المتطلبات الوظيفية للنظام والغير وظيفية- والأعتمادية..ألخ وغيرها حسب احتياجات نظامك، ولا يوجد قالب SRS ثابت يحدد لك ما ستكتبه لأن البعض اطلع على كثير من المصادر فوجد اختلاف في هيكلية وتقسيمات SRS فأصيب بالاحباط ولكن هناك أمور ضرورية توجد عند الجميع ..

ثم بعد ذلك ستنتقل للمتطلبات الأخرى :
- Use Case Diagram
- Class Diagram
- Sequence Diagram
- Interaction Diagram

هذه كلها Diagrams وهي عبارة عن مخططات UML.

حسنا بعد الفاصل هنا سنرجع للنمذجة Modeling 😉

النمذجة: هي عملية إنشاء تمثيلات ومخططات تجريدية لمكونات النظام المعقدة لتسهيل تحليلها وفهمها وتصميمها، وتُستخدم النماذج والمخططات لتوضيح الأفكار المعمارية، الأنماط السلوكية، وهياكل البيانات، بالإضافة إلى التفاعلات بين عناصر النظام المختلفة..
طبعاً النمذجة تُمكّن من التحقق من صحة التصاميم، وتوقع أو محاكاة سلوك النظام قبل بناءه الفعلي، كما أنها لغة مشتركة بين أصحاب المصلحة أو أعضاء الفريق؛ فالجميع يستطيع فهم مكونات وعمل النظام بعكس لو كان قد تم بناء النظام.

طيب كيف نقوم بنمذجة النظام ؟
كما ذكرت سابقا من خلال Daigrams موحدة وتوجد لغة تسمى UML توفر هذه المخططات..
و هي لغة بصرية قياسية تُستخدم في هندسة البرمجيات لإنشاء نماذج تمثل تصميم الأنظمة البرمجية، بما في ذلك هيكلها وسلوكها وتفاعلاتها، وتساعد UML في توثيق وتحليل وتصميم النظام بشكل منظم ومفهوم.
مقطع قصير عن UML:
https://youtu.be/cLmOQCx7v3k?si=iIb5lRol7MOjDgsw

ليش سموها قياسية؟ ومتى ظهرت؟ روح ابحث🤧 طبعا ستستفيد..

وال UML تحتوى تقريبا على 13 مخطط وهي كتالي :
المخططات الهيكلية (Structural Diagrams):
- Class Diagram
- Object Diagram
- Component Diagram
- Deployment Diagram
- Package Diagram
- Composite Structure Diagram

المخططات السلوكية (Behavioral Diagrams):
- Use Case Diagram
- Sequence Diagram
- Communication Diagram
- Activity Diagram
- State Machine Diagram
- Interaction Overview Diagram
- Timing Diagram

وكل مخطط له عمله الخاص وليست كل المخططات يتم عملها في مرحلة التحليل مثلا بعض المخططات يتم عملها في مرحلة الاختبار والنشر..وكذلك ليست كل المخططات ضرورية؛ بل حسب متطلبات واحتياج نظامك، وحالياً طلب منك 4 مخططات فقط.
ولم أجد كورس قوي وكامل يشرح الموضوع ولكن ستجد أنها مقاطع متفرقة قد تجدها في كورسات تحليل الأنظمة وهندسة البرمجيات فيكفي أن تفهم الفكرة ثم تنطلق بطريقتك الخاصة..
وفي الأخيرة أتمنى الفائدة للجميع🫡 فلا يعد ما قلت إلا اجتهاد لتوضيح الموضوع وقد يعتريه بعض النقص أو الخطأ، ولكن بحثك واجتماع مع مشرفك أو مساعده سيوضح لك كثير من الأمور..

نسيت شيء مهم جدا prototype😒
عليك🤧.

دام لكم البشر والفرح 🙂
Forwarded from Cloud Computing (A H M E D)
Docker
عبارة عن منصة مصممة لمساعدة المطورين على بناء تطبيقات الحاويات ومشاركتها وتشغيلها.
حيث تتولى عملية الإعداد المملة، حتى يتمكن المطور من التركيز على الكود.

#الحوسبة_السحابية_عملي
#الحوسبة_السحابية_نظري
Forwarded from Cloud Computing (A H M E D)
تقنية الدوكر (Docker) هي منصة مفتوحة المصدر تستخدم لتطوير وتشغيل التطبيقات بطريقة مستقلة عن البنية التحتية للنظام. تعتمد تقنية الدوكر على مفهوم الحاويات (containers)، حيث يتم تعبئة التطبيقات وجميع المكونات اللازمة لتشغيلها في حاوية واحدة قابلة للنقل والتشغيل على أي نظام تشغيل يدعم دوكر.

تقنية الدوكر توفر عزلًا تامًا بين التطبيقات المختلفة الموجودة على نفس النظام، مما يسمح بتشغيل التطبيقات بشكل مستقل وآمن دون التأثير على بعضها البعض. كما تسهل عملية تطوير ونشر التطبيقات بسرعة وسهولة، حيث يمكن إعداد بيئة تشغيل موحدة ومتجانسة للتطبيقات عبر مختلف البيئات.

تقنية الدوكر أصبحت شائعة الاستخدام في مجال تطوير البرمجيات وإدارة البنية التحتية، حيث تساعد في تبسيط عملية التوصيل المستمر وتحسين كفاءة استخدام الموارد وتوفير بيئات تشغيل موحدة ومستقرة.

#الحوسبة_السحابية_نظري