كيفية تنفيذ Atlassian Jira + Confluence في شركة. أسئلة فنية

هل تخطط لتطبيق برنامج Atlassian (Jira، Confluence)؟ لا تريد أن ترتكب أخطاء تصميم قاسية ، والتي يجب حلها بعد ذلك في اللحظة الأخيرة؟

كيفية تنفيذ Atlassian Jira + Confluence في شركة. أسئلة فنية
إذن أنت هنا - نحن ندرس تنفيذ Atlassian Jira + Confluence في شركة ، مع مراعاة الجوانب الفنية المختلفة.
مرحبًا ، أنا مالك منتج في RSHB وأنا مسؤول عن تطوير نظام إدارة دورة الحياة (LCMS) المبني على منتجات برامج Atlassian Jira و Confluence.

في هذه المقالة سوف أصف الجوانب الفنية لبناء LCMS. ستكون المقالة مفيدة لأي شخص يخطط لتنفيذ أو تطوير Atlassian Jira و Confluence في بيئة الشركة. لا تتطلب المقالة معرفة خاصة وتم تصميمها للحصول على مستوى أولي من الإلمام بمنتجات Atlassian. ستكون المقالة مفيدة للمسؤولين ومالكي المنتجات ومديري المشاريع والمهندسين المعماريين وكل من يخطط لتنفيذ أنظمة تعتمد على برنامج Atlassian.

مقدمة

ستناقش المقالة المشكلات الفنية المتعلقة بتنفيذ نظام إدارة دورة الحياة (LCMS) في بيئة الشركة. دعنا أولاً نحدد ما يعنيه هذا.

ما هو حل المؤسسة؟

هذا يعني الحل:

  1. القابلة للتطوير. في حالة زيادة الحمل ، هناك إمكانية فنية لزيادة قدرة النظام. التحجيم الأفقي والرأسي المنفصل - مع القياس الرأسي ، تزداد سعة الخوادم ، مع القياس الأفقي ، يتم زيادة عدد الخوادم لتشغيل النظام.
  2. فشل آمن. سيبقى النظام متاحًا في حالة فشل أحد العناصر. بشكل عام ، لا تتطلب أنظمة الشركات التسامح مع الخطأ ، لكننا سننظر في مثل هذا الحل فقط. نحن نخطط لوجود عدة مئات من المستخدمين التنافسيين في النظام ، وسيكون التوقف أمرًا بالغ الأهمية.
  3. أيد. يجب أن يدعم البائع الحل. يجب استبدال البرامج غير المدعومة بالتطوير الداخلي أو البرامج الأخرى المدعومة.
  4. تركيب الإدارة الذاتية (في مكان العمل). الإدارة الذاتية هي القدرة على تثبيت البرنامج ليس في السحابة ، ولكن على الخوادم الخاصة بك. لنكون أكثر دقة ، هذه كلها خيارات تثبيت بخلاف SaaS. في هذه المقالة ، سننظر فقط في خيارات التثبيت المدارة ذاتيًا.
  5. إمكانية التطوير والاختبار المستقل. لتنظيم التغييرات التي يمكن التنبؤ بها في النظام ، يلزم وجود نظام منفصل للتطوير (التغييرات في النظام نفسه) ونظام اختبار (مراحل) ونظام إنتاجي للمستخدمين.
  6. Другое. يدعم سيناريوهات المصادقة المختلفة ، ويدعم سجلات التدقيق ، وله نموذج دور مخصص ، وما إلى ذلك.

هذه هي العناصر الرئيسية لحلول المؤسسة ، ولسوء الحظ ، غالبًا ما يتم نسيانها عند تصميم النظام.

ما هو نظام إدارة دورة الحياة (LCMS)؟

باختصار ، في حالتنا ، هذان هما Atlassian Jira و Atlassian Confluence - وهو نظام يوفر أدوات لتنظيم العمل الجماعي. لا "يفرض" النظام قواعد لتنظيم العمل ، ولكنه يوفر مجموعة متنوعة من أدوات العمل ، مثل Scrum ، ولوحات Kanban ، ونموذج الشلال ، و Scrum القابل للتطوير ، إلخ.
اسم LCMS ليس مصطلحًا صناعيًا أو مصطلحًا شائعًا ، إنه ببساطة اسم النظام في مصرفنا. LCMS بالنسبة لنا ليس نظامًا لتتبع الأخطاء ، فهو ليس نظام إدارة الحوادث ونظام إدارة التغيير.

ماذا يشمل التنفيذ؟

يتكون تنفيذ الحل من العديد من القضايا الفنية والتنظيمية:

  • تخصيص القدرات الفنية.
  • شراء البرمجيات.
  • تكوين فريق لتنفيذ الحل.
  • تركيب وتكوين الحل.
  • تطوير بنية الحل. قدوة.
  • تطوير الوثائق التشغيلية ، بما في ذلك التعليمات واللوائح والتصميم الفني واللوائح ، إلخ.
  • تغيير عمليات الشركة.
  • إنشاء فريق دعم. تطوير جيش تحرير السودان.
  • تدريب المستخدم.
  • Другое.

في هذه المقالة ، سننظر في الجوانب الفنية للتنفيذ ، دون تفاصيل حول المكون التنظيمي.

ميزات Atlassian

شركة Atlassian هي شركة رائدة في العديد من القطاعات:

تحتوي منتجات Atlassian على جميع ميزات المؤسسة التي تحتاجها. سألاحظ الميزات التالية:

  1. تعتمد حلول Atlassian على خادم الويب Java Tomcat. تم تضمين برنامج Apache Tomcat مع برنامج Atlassian ، كجزء من التثبيت ، لا يمكنك تغيير إصدار Apache Tomcat المثبت ببرنامج Atlassian ، حتى إذا كان الإصدار قديمًا ويحتوي على نقاط ضعف. الخيار الوحيد هو انتظار التحديث من Atlassian بإصدار أحدث من Apache Tomcat. الآن ، على سبيل المثال ، تحتوي الإصدارات الحالية من Jira على Apache Tomcat 8.5.42 ، ويحتوي Confluence على Apache Tomcat 9.0.33.
  2. واجهة مريحة ، يتم تنفيذ أفضل الممارسات المتاحة في السوق لهذه الفئة من البرامج.
  3. حل قابل للتخصيص بالكامل. مع التحسينات ، يمكنك تنفيذ أي تغيير في الوظائف الأساسية للمستخدم.
  4. نظام بيئي متطور. هناك عدة مئات من الشركاء: https://partnerdirectory.atlassian.com، بما في ذلك 16 شريكًا في روسيا. يمكنك شراء برامج Atlassian ومكوناتها الإضافية والحصول على التدريب من خلال شركاء في روسيا. الشركاء هم الذين يطورون ويحافظون على معظم المكونات الإضافية.
  5. متجر التطبيقات (ملحقات): https://marketplace.atlassian.com. تعمل المكونات الإضافية على تحسين وظائف برنامج Atlassian بشكل كبير. تعد الوظيفة الأساسية لبرنامج Atlassian متواضعة للغاية ، حيث يصبح من الضروري تقريبًا تثبيت مكونات إضافية إضافية مجانًا أو مقابل أموال إضافية لأية مهمة. لذلك ، قد تكون تكاليف البرامج أعلى بكثير مما كان مقدرا في الأصل.
    حتى الآن ، تم نشر عدة آلاف من المكونات الإضافية في المتجر ، وتم اختبار ما يقرب من آلاف منها والتحقق من صحتها بموجب برنامج التطبيقات المعتمد من مركز البيانات. يمكن اعتبار هذه المكونات الإضافية مستقرة ومناسبة للاستخدام في الأنظمة المشغولة.
    أنصحك بالتعامل بعناية مع مسألة تخطيط المكونات الإضافية ، فهذا يؤثر بشكل كبير على تكلفة الحل ، ويمكن أن يؤدي العديد من المكونات الإضافية إلى عدم استقرار النظام ولا تقدم الشركة المصنعة للمكونات الإضافية الدعم لحل المشكلة.
  6. التدريب والشهادة: https://www.atlassian.com/university
  7. يتم دعم آليات SSO و SAML 2.0.
  8. يتوفر دعم قابلية التوسع والتسامح مع الأخطاء فقط في إصدارات مركز البيانات. ظهرت هذه الطبعة لأول مرة في عام 2014 (Jira 6.3). يتم باستمرار توسيع وتحسين وظائف إصدارات Data Center (على سبيل المثال ، ظهرت إمكانية تثبيت عقدة واحدة فقط في عام 2020). لقد تغير نهج المكونات الإضافية لإصدارات Data Center كثيرًا في 2018 مع تقديم التطبيقات المعتمدة من مركز البيانات.
  9. تكلفة الدعم. تكاد تكون تكلفة الدعم من البائع مساوية للتكلفة الكاملة لتراخيص البرامج. فيما يلي مثال لحساب تكلفة التراخيص.
  10. عدم وجود إصدارات طويلة المدى. هناك ما يسمى إصدارات المؤسسة، لكنها ، مثل جميع الإصدارات الأخرى ، مدعومة لمدة عامين. مع اختلاف أنه يتم إصدار الإصلاحات فقط لإصدارات Enterprise ، دون إضافة وظائف جديدة.
  11. خيارات دعم ممتدة (للحصول على أموال إضافية). https://www.atlassian.com/enterprise/support-services
  12. يتم دعم العديد من المتغيرات لنظام إدارة قواعد البيانات. يأتي Atlassian مع قاعدة بيانات H2 مجانية ، والتي لا ينصح بها للاستخدام المنتج. يتم دعم نظم إدارة قواعد البيانات التالية للاستخدام الإنتاجي: Amazon Aurora (مركز البيانات فقط) PostgreSQL و Azure SQL و MySQL و Oracle DB و PostgreSQL و MS SQL Server. هناك قيود على الإصدارات المدعومة وغالبًا ما يتم دعم الإصدارات الأقدم فقط ، ولكن لكل DBMS إصدار يدعم البائعين:
    منصات Jira المدعومة,
    منصات دعم التقاء.

العمارة الفنية

كيفية تنفيذ Atlassian Jira + Confluence في شركة. أسئلة فنية

تفسيرات للمخطط:

  • يوضح الرسم التخطيطي التنفيذ في مصرفنا ، وقد تم تقديم هذا التكوين كمثال ولا يوصى به.
  • يوفر nginx وظائف الوكيل العكسي لكل من Jira و Confluence.
  • يتم تنفيذ التسامح مع الخطأ لنظام إدارة قواعد البيانات عن طريق نظام إدارة قواعد البيانات.
  • يتم نقل التغييرات بين البيئات باستخدام مدير التهيئة لبرنامج Jira الإضافي.
  • AppSrv في الرسم التخطيطي هو خادم تطبيق تقارير أصلي ، ولا يستخدم برنامج Atlassian.
  • تم إنشاء قاعدة بيانات EasyBI لبناء المكعبات وإعداد التقارير باستخدام تقارير ومخططات eazyBI لمكوِّن Jira الإضافي.
  • لا يتم فصل خدمة Confluence Synchrony (مكون يسمح بالتحرير المتزامن للمستندات) في تثبيت منفصل وتعمل مع Confluence على نفس الخادم.

الترخيص

تستحق قضايا تراخيص Atlassian مقالاً منفصلاً ، وسأذكر هنا المبادئ العامة فقط.
القضايا الرئيسية التي التقينا بها هي قضايا ترخيص إصدارات مركز البيانات. ميزات الترخيص لإصداري الخادم ومركز البيانات:

  1. ترخيص إصدار الخادم دائم ويمكن للعميل استخدام البرنامج حتى بعد انتهاء صلاحية الترخيص. ولكن بعد انتهاء صلاحية الترخيص ، يفقد المشتري الحق في تلقي دعم المنتج وتحديث البرنامج إلى أحدث الإصدارات.
  2. يعتمد الترخيص على عدد المستخدمين في نظام الأذونات العالمي "مستخدمو JIRA". لا يهم ما إذا كانوا يستخدمون النظام أم لا - حتى إذا لم يسجل المستخدمون الدخول إلى النظام مطلقًا ، فسيتم وضع جميع المستخدمين في الاعتبار للحصول على الترخيص. إذا تم تجاوز عدد المستخدمين المرخصين ، فإن الحل هو إزالة إذن "مستخدمي JIRA" من بعض المستخدمين.
  3. ترخيص مركز البيانات هو في الواقع اشتراك. مطلوب رسوم ترخيص سنوية. عند انتهاء المدة ، سيتم حظر العمل مع النظام.
  4. قد تتغير تكلفة التراخيص بمرور الوقت. كما تظهر الممارسة ، بطريقة كبيرة ، وربما بشكل ملحوظ. لذلك ، إذا كانت تكلفة التراخيص الخاصة بك تبلغ واحدًا هذا العام ، فقد تزداد تكلفة التراخيص في العام المقبل.
  5. يتم الترخيص بواسطة المستخدمين حسب المستوى (على سبيل المثال ، مستوى 1001-2000 مستخدم). من الممكن الترقية إلى درجة أعلى بتكلفة إضافية.
  6. إذا تم تجاوز عدد المستخدمين المرخصين ، فسيتم إنشاء مستخدمين جدد دون الحق في تسجيل الدخول (الإذن العام لمستخدمي JIRA).
  7. لا يمكن ترخيص المكونات الإضافية إلا لنفس عدد المستخدمين مثل البرنامج الرئيسي.
  8. يلزم ترخيص عمليات التثبيت المنتجة فقط ، أما الباقي فيمكنك الحصول على ترخيص مطور: https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html.
  9. لشراء الصيانة ، يلزم شراء صيانة برنامج Renew - تبلغ التكلفة حوالي 50٪ من تكلفة البرنامج الأصلي. هذه الميزة غير متوفرة لمركز البيانات ولا تنطبق على المكونات الإضافية - سيتعين عليك دفع التكلفة الكاملة سنويًا لدعمها.
    وبالتالي ، يكلف دعم البرامج السنوي أكثر من 50٪ من التكلفة الإجمالية للبرنامج في حالة إصدار الخادم و 100٪ في حالة إصدار مركز البيانات - وهذا أكثر بكثير من معظم البائعين الآخرين. في رأيي ، هذا عيب كبير في نموذج الأعمال الأطلسية.

ميزات الانتقال من إصدار الخادم إلى مركز البيانات:

  1. يتم الدفع مقابل الانتقال من إصدار الخادم إلى مركز البيانات. يمكن العثور على السعر هنا https://www.atlassian.com/licensing/data-center.
  2. عند التبديل من إصدار الخادم إلى مركز البيانات ، لن تحتاج إلى الدفع مقابل تغيير إصدار المكونات الإضافية - ستعمل المكونات الإضافية لإصدار الخادم. ولكن سيكون من الضروري تجديد تراخيص المكونات الإضافية لإصدار مركز البيانات.
  3. يمكنك استخدام المكونات الإضافية التي ليس لها إصدار للاستخدام مع إصدارات مركز البيانات. في الوقت نفسه ، بالطبع ، قد لا تعمل هذه المكونات الإضافية بشكل صحيح ومن الأفضل توفير بديل لهذه المكونات الإضافية مقدمًا.
  4. تتم الترقية إلى إصدار مركز البيانات عن طريق تثبيت ترخيص جديد. في الوقت نفسه ، لا يزال ترخيص إصدار الخادم متاحًا.
  5. لا توجد فروق وظيفية بين إصداري مركز البيانات والخادم للمستخدمين ، كل الاختلافات موجودة فقط في وظائف الإدارة والقدرات التقنية للتثبيت.
  6. تختلف تكلفة البرامج والمكونات الإضافية باختلاف إصداري Server و Data Center. غالبًا ما يكون الفرق في التكلفة أقل من 5٪ (ليس ضروريًا). يظهر مثال لحساب التكلفة أدناه.

النطاق الوظيفي للتنفيذ

تتضمن حزمة برامج Atlassian الأساسية عددًا كبيرًا من الميزات ، ولكن غالبًا ما تكون الميزات التي يوفرها النظام ناقصة بشدة. في بعض الأحيان ، لا تتوفر أبسط الوظائف في الحزمة الأساسية ، لذلك لا غنى عن المكونات الإضافية لأي تطبيق تقريبًا. بالنسبة لنظام Jira ، نستخدم المكونات الإضافية التالية (الصورة قابلة للنقر):
كيفية تنفيذ Atlassian Jira + Confluence في شركة. أسئلة فنية

بالنسبة لنظام Confluence ، نستخدم المكونات الإضافية التالية (الصورة قابلة للنقر):
كيفية تنفيذ Atlassian Jira + Confluence في شركة. أسئلة فنية

تعليقات على الجداول ذات الملحقات:

  • تستند جميع الأسعار إلى 2000 مستخدم ؛
  • الأسعار مبنية على الأسعار المشار إليها https://marketplace.atlassian.com، التكلفة الحقيقية (مع الخصومات) أقل ؛
  • كما ترى ، فإن المبلغ الإجمالي هو نفسه عمليا لإصدارات مركز البيانات والخادم ؛
  • تم تحديد المكونات الإضافية التي تدعم إصدار مركز البيانات فقط للاستخدام. استبعدنا بقية المكونات الإضافية من الخطط ، من أجل استقرار النظام.

يتم وصف الوظيفة بإيجاز في عمود التعليق. زادت المكونات الإضافية الإضافية من وظائف النظام:

  • تمت إضافة العديد من الأدوات المرئية ؛
  • آليات تكامل محسنة ؛
  • الأدوات المضافة لمشاريع نموذج الشلال ؛
  • تمت إضافة أدوات لـ Scrum القابل للتطوير لتنظيم عمل فرق المشروع الكبيرة ؛
  • وظيفة إضافية لتتبع الوقت ؛
  • أدوات مضافة لأتمتة العمليات وتكوين الحل ؛
  • تمت إضافة وظائف لتبسيط إدارة الحل وأتمتتها.

بالإضافة إلى ذلك ، نستخدم ملفات تطبيق Atlassian Companion. يتيح لك هذا التطبيق تحرير الملفات في التطبيقات الخارجية (MS Office) وإعادتها مرة أخرى إلى Confluence (تسجيل الوصول).
تطبيق لمحطات عمل المستخدم (عميل سميك) ALM يعمل عميل جيرا https://marketplace.atlassian.com/apps/7070 قررت عدم الاستخدام بسبب ضعف دعم البائعين والمراجعات السلبية.
إلى التكامل مع مشروع MS نحن نستخدم تطبيقًا مكتوبًا ذاتيًا يسمح لك بتحديث حالات المشكلات في MS Project من Jira والعكس صحيح. في المستقبل ، وللأغراض نفسها ، نخطط لاستخدام مكون إضافي مدفوع جسر سيبتاه - البرنامج المساعد لمشروع JIRA MS، والتي تم تثبيتها كإضافة لبرنامج MS Project.
التكامل مع التطبيقات الخارجية تم تنفيذها من خلال روابط التطبيقات. في الوقت نفسه ، يتم تكوين عمليات تكامل تطبيقات Atlassian مسبقًا وتعمل فورًا بعد الإعداد ، على سبيل المثال ، يمكنك عرض معلومات حول المشكلات في Jira على صفحة في Confluence.
يتم استخدام واجهة برمجة تطبيقات REST للوصول إلى خوادم Jira و Confluence: https://developer.atlassian.com/server/jira/platform/rest-apis.
تم إهمال واجهات برمجة تطبيقات SOAP و XML-RPC وغير متوفرة في الإصدارات الجديدة للاستخدام.

اختتام

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

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

سأكون سعيدًا للإجابة على الأسئلة في التعليقات.

المصدر: www.habr.com