سؤال

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

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

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

يحرر:وجدت هذا البحث من جامعة ألبورج حول "قصص المطور".

هل لديك أي خبرة أو فكرة أو معارضة؟

شكرا لكم مقدما! (هذا هو سؤالي الأول!: د)

هل كانت مفيدة؟

المحلول

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

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

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

ضع في اعتبارك أن الفريق يجب أن يقرر (ويتمكن من تبرير مالك المنتج) كيف سيقضي وقتهم. وهكذا يمكنهم تقسيم جهودهم بين الوظائف والديون الفنية والديون المعمارية كما يرون مناسبا.

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

نصائح أخرى

إجابتي هنا ينطبق.

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

انها بسيطة مثل وضع تأكد من أن مكون العضوية يمكن اختباره من جميع المكونات الأخرى قصة "المستخدم"، يجب أن تحتوي Backlog الخاص بك على قصص نظام / تطوير، طالما أنها بمثابة مزامنة مع رغبة صاحب المنتج في هذا التنفيذ.

هذه هي الطريقة التي نضعها عادة المتطلبات غير الوظيفية في تراكم، مثل "نموذج المجال يجب تشغيله على Datacenter مختلفة تحت موازنة التحميل" إلخ.

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

في فريقنا، نسميها "بطاقات تكنولوجيا المعلومات"، والتي هي بطاقات النموذج: "كمطور. لن أدمج مكون XYZ. لتقليل تكلفة الصيانة وزيادة المرونة".

أعضاء الفريق مجانيون في اختيار أي بطاقة يتم تعيينهم مهمين بدلا من ظهرت "بطاقة ميزة" من المتراكم الأولوية.

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

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

نظرا لأنني أكتب هذا أفكر في أن المرء يمكن أن يقترب من الهندسة المعمارية من خلال تفسير القصص. حدد الأهداف المعمارية مع الملحمات التي تندلعها إلى موضوع للتركيز عليها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top