تحديد المثيل المقدم
| البارامترات البارامترة | معنى |
|---|---|
| إصدار الإصدار | 2.0.3 |
| التزام المصدر الكامل | 399717d1ed4c0e83e00150912a2a029eae |
| قناة التوريد | stable |
| متغير المثيل | demo |
| اسم المجموعة الكاملة | cshark-2.0.3-demo-ubuntu-24.04- |
| SHA-256 مجموعة كاملة | ccb36a121bf8e1b756f1190f9369e49058 |
| SHA-256 المفتاح العام | 0908f56ddcd6cd13fe95d81faae6543b9c |
1. الغرض من الوثيقة
تصف الوثيقة عمليات التطوير والتسليم والصيانة واستكشاف الأخطاء وإصلاحها وتحسين برنامج CShark، بالإضافة إلى كفاءات الموظفين المطلوبة لتنفيذ هذه العمليات.
1.1. التفاصيل التنظيمية
| البارامترات البارامترة | معنى |
|---|---|
| المنظمة | جمعية ذات مسؤولية محدودة "كومبيتينسيا" |
| عنوان تطوير البنية التحتية | 115280، موسكو، ش. لينينسكايا سلوبودا، 21 عاما، مبنى 1 |
| عنوان مكان عمل المطور | 115280، موسكو، ش. لينينسكايا سلوبودا، 21 عاما، مبنى 1 |
| عنوان الدعم الفني | 115280، موسكو، ش. لينينسكايا سلوبودا، 21 عاما، مبنى 1 |
| ساعات عمل خدمة الدعم الفني | الاثنين - الجمعة، 09:00 - 18:00 بتوقيت موسكو |
| رقم هاتف الدعم الفني | +7 495 532-61-18 |
| مسؤول عن الدعم | جمعية ذات مسؤولية محدودة "كومبيتينسيا" |
يتم تنفيذ وظائف التطوير والاختبار وDevOps وإدارة النظام، بالإضافة إلى الدعم الفني من قبل متخصصين من شركة COMPETENCE LLC. يتم أخذ مجموعة الوظائف في الاعتبار عند تخطيط العمل وفصل عمليات التطوير والتحقق والإصدار في الوقت المناسب.
2. مراحل دورة الحياة
دورة الحياة تشمل:
- جمع وتحليل المتطلبات؛
- تغيير التصميم؛
- تطوير الكود ومراجعته؛
- توليد الإصدار؛
- تجميع ومراقبة مجموعة التسليم؛
- التثبيت أو التحديث؛
- المراقبة التشغيلية؛
- معالجة الطلبات والعيوب؛
- الافراج عن الإصلاحات والتحسينات.
- وقف دعم الإصدار والهجرة.
يجب أن يكون لكل تغيير معرف، ووصف للغرض منه، ومعايير القبول، ورابط لنسخة التسليم.
3. المتطلبات وإدارة التغيير
تشمل مصادر المتطلبات الالتزامات التعاقدية والطلبات التشغيلية ومتطلبات السلامة ونتائج الاختبار وخطة المنتج.
التغيير قبل التنفيذ:
- توصف بأنها نتيجة محددة قابلة للاختبار؛
- مصنفة حسب الأولوية والمخاطر؛
- تم اختبار توافقه مع البيانات وعمليات التكامل الحالية؛
- يتلقى معايير القبول؛
- المدرجة في خطة الإصدار.
4. التنمية
يتم تخزين كود المصدر في نظام التحكم في الإصدار. يتم التطوير في تغييرات معزولة مع التحليل الإلزامي للمكونات المتضررة.
للتغييرات استخدم:
- التحليل والتنسيق الثابت؛
- اختبارات الوحدة؛
- اختبارات التكامل مع PostgreSQL وNATS الحقيقيين؛
- واجهة برمجة تطبيقات العقد واختبارات الأحداث؛
- التحقق من عمليات ترحيل قاعدة البيانات؛
- اختبارات الواجهة؛
- سيناريوهات النسخ الاحتياطي والاسترداد؛
- التحقق من مجموعة التثبيت.
لا يعتبر التغيير كاملاً بمجرد تشغيله محليًا؛ مطلوب الشيكات القابلة للتكرار لتتناسب مع مخاطرها.
5. مراقبة الجودة
قبل إطلاق الإصدار، يتم تنفيذ ما يلي:
- التحقق من مجموعة كاملة من الاختبارات الآلية؛
- التحقق من تجميع صور الحاوية؛
- التحقق من OpenAPI والعميل الذي تم إنشاؤه؛
- المسح بحثًا عن التسريبات السرية؛
- التحقق من عمليات الترحيل على قاعدة بيانات نظيفة وموجودة؛
- اختبار سريع للمثيل الذي تم نشره؛
- الفحص البصري لنصوص المستخدم المعدلة؛
- التحقق من أرشيف التسليم والمجاميع الاختبارية؛
- تحديث الوثائق.
يؤدي اكتشاف عيب في الحظر إلى إيقاف الإصدار حتى يتم إجراء إصلاح أو اتخاذ قرار رسمي بالنقل مع وجود قيود ثابتة.
6. مجموعة الإصدار والتسليم
روابط النسخة:
- معرف كود المصدر؛
- إصدارات صور الحاوية؛
- مراجعة مخطط قاعدة البيانات؛
- بيان الأرشيف؛
- المجاميع الاختبارية؛
- المثبت.
- الوثائق وقائمة التغييرات.
بالنسبة للحلقة المغلقة، يتم إنشاء مجموعة غير متصلة بالإنترنت باستخدام صور Docker المحلية وتبعيات APT. تم اختبار المجموعة على Ubuntu Server 24.04 LTS AMD64 النظيف دون الوصول إلى المستودعات الخارجية.
7. التسليم والتركيب
يتم التسليم من خلال خادم آمن أو عن طريق نقل أرشيف غير متصل بالإنترنت. يتم فحص SHA-256 قبل التفريغ. يقوم المثبت بإعادة التحقق من صحة البيان الداخلي، وتثبيت التبعيات، وتطبيق عمليات الترحيل، وإجراء اختبار سريع.
يتم حفظ نتائج التثبيت والسجلات لأغراض التشخيص. في حالة حدوث خطأ، تتوقف الحاويات ولا يتم حذف البيانات تلقائيًا.
8. تحديث النظام
عملية التحديث الحالية هي عملية إدارية خاضعة للرقابة:
- الالتزام بالنسخة المثبتة؛
- التحقق من المساحة الحرة وحالة النظام؛
- إنشاء نسخة احتياطية والتحقق منها؛
- الحصول على مجموعة محددة من الإصدار الجديد؛
- التحقق من المجاميع الاختبارية وملاحظات الإصدار؛
- التحقق من توافق مخطط البيانات؛
- تطبيق عمليات الترحيل في خطوة منفصلة؛
- تبديل الحاويات إلى إصدار جديد؛
- إجراء فحص الصحة واختبار الدخان؛
- سجل نتيجة التحديث.
يعد التحديث التلقائي من واجهة المستخدم ميزة واعدة. قبل إصداره، يتم إجراء التحديث بواسطة مسؤول النظام وفقًا للتعليمات المعتمدة.
9. إدارة الهجرات والتراجعات
يعمل Core فقط مع مخطط قاعدة بيانات متوافق. إذا كان المخطط خلف إصدار التطبيق، فسيتم حظر بدء التشغيل حتى يتم تطبيق عمليات الترحيل.
قبل التحديث، يتم تحديد إمكانية التراجع القابل للعكس. بالنسبة للتغييرات الضيقة (عمليات الترحيل المتوافقة)، قد يتم تشغيل الإصدار السابق مؤقتًا على المخطط الجديد. بالنسبة للتغيير غير المتوافق، يتم تنفيذ التراجع فقط باستخدام خطة منفصلة، واستعادة نسخة احتياطية تم التحقق منها.
10. مراقبة العمليات
تتم مراقبة حالة النظام من خلال:
/api/health;- حالات الحاوية؛
- مقاييس النشر ومعالجة الأحداث؛
- عمق قائمة انتظار البوابة؛
- دولة ناتس؛
- توفر PostgreSQL وS3؛
- المجلات الأساسية والبوابة والبنية التحتية؛
- مساحة حرة على القرص؛
- حالة الجهاز.
يتم تعيين قيم الحد الأدنى وتوجيه التنبيه في اللوائح التشغيلية لمنشأة معينة.
11. تسجيل الطلبات وتصنيفها
يجب أن تتضمن النتيجة الوقت والإصدار ودور المستخدم وتسلسل الإجراءات والنتائج الفعلية والمتوقعة والسجلات ولقطات الشاشة إذا لزم الأمر.
| الأولوية | مثال | الغرض من المعالجة |
|---|---|---|
| حرجة | النظام غير متاح أو فقدان البيانات | التشخيص الفوري والشفاء |
| عالية | وظيفة المشغل الرئيسية لا تعمل | الحل البديل أو الإصلاح في إصدار الأولوية |
| متوسط | خلل جزئي دون توقف العمل | الإصلاح في الإصدار المخطط له |
| منخفض | تحسين سهولة الاستخدام أو التوثيق | إدراجها في خطة المنتج |
يتم تحديد أطر زمنية محددة للاستجابة والتعافي من خلال اتفاقية الدعم.
12. استكشاف الأخطاء وإصلاحها
تتضمن عملية الإزالة ما يلي:
- تسجيل الاستئناف؛
- حفظ الحالة الأصلية والسجلات؛
- تصنيف التأثير؛
- التشغيل على حامل آمن؛
- توطين السبب.
- إعداد الإصلاح؛
- اختبارات الانحدار؛
- إصدار نسخة منقحة؛
- التثبيت وفقا لنافذة متفق عليها؛
- تأكيد النتيجة من قبل المستخدم.
- تحديث قاعدة المعرفة.
يُسمح بإجراء تغييرات يدوية على البيانات فقط وفقًا لإجراء متفق عليه مع نسخة احتياطية وسجل الأوامر والتحقق اللاحق.
13. النسخ الاحتياطي والاستعادة
تشتمل بيانات الأعمال على قاعدة بيانات PostgreSQL ووسائط في وحدة تخزين متوافقة مع S3.
الجدول الزمني الأساسي الموصى به:
- قاعدة البيانات - يوميا؛
- نسخة كاملة من الوسائط - أسبوعية؛
- استعادة الاختبار - بعد تغيير الإجراء وبشكل دوري وفقًا للوائح التشغيل.
تعتبر النسخة متحقق منها فقط بعد استعادتها إلى بيئة مؤقتة والتحقق من عدادات التحكم. تم التحقق من الوسائط وفقًا لـ SHA-256 وملخص البيان النهائي.
14. إدارة الأمن
تتضمن عملية الدعم ما يلي:
- تحديث الصور الأساسية والتبعيات؛
- تحليل الضعف؛
- تناوب الأسرار.
- التحقق من حقوق المستخدم؛
- تدقيق الإجراءات الإدارية؛
- التحكم في فترات تخزين البيانات؛
- استبعاد الأسرار والبيانات الشخصية من التقارير العامة؛
- توثيق التصحيحات الأمنية.
قد يتم إصدار التحديثات الأمنية الهامة خارج الدورة المجدولة.
15. تحسينات البرمجيات
يتم إنشاء التحسينات من طلبات المستخدم ونتائج المراقبة وعمليات تدقيق الواجهة وخطة المنتج. لكل تحسين، يتم تسجيل مشكلة المستخدم والنتيجة المستهدفة والقيود وطريقة التحقق.
تشمل مجالات التطوير المستقبلية التحديثات الآلية، وتطوير قوالب الشاشة الرئيسية، وعمليات التكامل الإضافية، والبنية التحتية للشحن والوحدات التجارية. ولا تعتبر من ميزات الإصدار الحالي حتى إصدار منفصل.
16. التوثيق
عندما يتغير السلوك، يتم تحديث ما يلي:
- تعليمات التثبيت
- وصف الخصائص الوظيفية؛
- دليل التعليمات
- دليل التشغيل للمسؤولين؛
- OpenAPI وعقود الأحداث؛
- ملاحظات الإصدار؛
- تعليمات النسخ الاحتياطي والاستعادة.
تقوم الوثائق بتخزين التاريخ الحالي ومعرف الإصدار الذي يشير إليه.
17. الموظفين المطلوبين للمرافقة
| الدور | الكفاءات الأساسية | المهام النموذجية |
|---|---|---|
| مسؤول النظام | Ubuntu، وDocker Compose، والشبكة، وTLS، والنسخ الاحتياطية | التثبيت والتحديث والمراقبة والاسترداد |
| مدير CShark | الأدوار والطوبولوجيا والأجهزة والإعدادات | التكوين ودعم المستخدم |
| أخصائي الدعم | تشخيصات الويب/واجهة برمجة التطبيقات (API)، وجمع السجلات، والاتصالات | التسجيل والمعالجة الأولية للطلبات |
| مطور الواجهة الخلفية | بايثون، FastAPI، PostgreSQL، NATS، الهجرات | إصلاح منطق الأعمال والتكامل |
| مطور الواجهة الأمامية | TypeScript، React، واجهات الويب | تصحيح وتطوير البرامج النصية للمستخدم |
| مهندس الجودة | تصميم الاختبار وواجهة برمجة التطبيقات/واجهة المستخدم وعمليات التحقق من الانحدار | تأكيد الإصلاحات والإصدارات |
| مهندس ديف أوبس | CI/CD، الصور، إمكانية الملاحظة، سلسلة التوريد | التجميع واستنساخ التسليم |
| أخصائي أمن المعلومات | إدارة الثغرات الأمنية، والتدقيق، وحماية البيانات | تقييم المخاطر ومراقبة التدابير الوقائية |
| محلل أو مالك المنتج | المتطلبات والقبول | تحديد الأولويات والسيطرة على النتائج |
في فريق صغير، يمكن لأحد المتخصصين الجمع بين الأدوار إذا كان لديه الكفاءات اللازمة. للتشغيل العادي للكائن، يلزم وجود الحد الأدنى من مسؤول النظام ومسؤول CShark؛ يشارك المطورون ومهندس الجودة في إصلاح الإصدارات الجديدة وإصدارها.
18. إهمال الإصدار
قبل إيقاف الدعم، يتم تزويد المستخدمين بمعلومات حول أحدث إصدار مدعوم والقيود المعروفة ومسار الترحيل. قبل حذف المثيل، يتم تصدير البيانات المطلوبة، ويتم إجراء النسخ الاحتياطية، ويتم إبطال مفاتيح التكامل. يتم تحديد فترات الدعم والإخطار من خلال سياسة العقد والإصدار.