
المطبخ الداخلي لمطور منتجات تكنولوجيا المعلومات متعدد الجوانب ومليء دائمًا بمهام مختلفة. في كل مشروع ، يجد الأشخاص ذوو المسؤوليات المختلفة طلباتهم.
باستخدام مشروع واحد كمثال ، سوف نلقي نظرة أعمق على عملية التطوير. قبل ذلك ، سوف أصف جميع مراحل هذه العملية والمسؤوليات الوظيفية للموظفين فيها.
دورة حياة تطوير منتجات تكنولوجيا المعلومات
يتم شرح مراحل الدورة أدناه ، بدءًا من لحظة قيام العميل بصياغة أفكاره للمقاول.
يلعب التخطيط السليم لوظيفة المنتج المستقبلية وتحليل المتطلبات دورًا رئيسيًا للمشروع بأكمله. مدير المشروع مسؤول عن هذه المرحلة ، لأنه هو المسؤول عن نجاح عملية التطوير بأكملها.
قبل تصميم المنتج ، يكون التخطيط "تقريبي" بطبيعته ، لأنه من المستحيل معرفة المسار الدقيق للتطور في هذه المرحلة.
بعد اكتمال تصميم UX / UI ، يمكنك وضع خطة دقيقة لكيفية سير التطوير والوظائف التي ستكون في المنتج.
بعد التخطيط يأتي دور مصممي UX / UI - المتخصصين الذين يقومون بتصميم واجهات المستخدم. يدرس المصممون سلوك المستخدم ويبنون واجهة قابلة للقراءة البشرية. المظهر المرئي للمنتج هو أيضًا نتيجة عمل المصممين.
يعمل معهم مهندسو النظام الذين يقررون هيكل المنتج النهائي وكيفية سلوكه.
يتبع المطورون واحدة من المنهجيات - بالنسبة للشركة فهي بشكل أساسي Agile. تنطوي هذه المنهجية على منهج تكراري مرن - أي أن المطورين يتصرفون بالتتابع ، ويقسمون المشروع إلى مهام أصغر.
تسمى التكرارات السريعة الركض ، ويشمل العدو السريع العمل في جميع المجالات: التخطيط والتصميم والتطوير والاختبار.
يقوم متخصصو الاختبار بأنواع مختلفة من الاختبارات: اختبار الوحدة ، واختبار التكامل ، واختبار الواجهة ، وأنواع أخرى حسب الغرض. يجب أن تتوصل هذه الفئة من المتخصصين إلى نتيجة نهائية مفادها أن المنتج لا يحتوي على أخطاء وأنه جاهز للإصدار.
بعد ذلك ، يمكن تنفيذ المنتج ودمجه مع برامج الجهات الخارجية. لا تنتهي عملية التطوير هناك - تستمر حتى يتم إجراء التحسينات.
قد يحتاج المنتج النهائي إلى دعم إضافي ، سواء كان أسئلة إضافية حول عمل المنتج من العملاء ، أو الحاجة إلى إجراء تغييرات على الوظائف المحددة بالفعل - أخصائيو خدمة الدعم مستعدون دائمًا للمساعدة.
تمر معظم مشاريع التطوير بجميع مراحل دورة الحياة الموضحة أعلاه.
على سبيل المثال ، سوف نلقي نظرة فاحصة على عملية تطوير المنتج لمشروع الشركة الحالي.
المرحلة 1: الفكرة
العميل شركة طباعة مملوكة للدولة. في جميع أنحاء العالم ، لا تمر هذه الصناعة بأفضل الأوقات ، لكن في الولايات المتحدة ، لا تزال شركات الطباعة في طور الانتعاش بفضل التقنيات المبتكرة. طلبت منا شركة الطباعة لتطوير تطبيق للواقع المعزز - الواقع المعزز ، AR.
توفر خدمة بريد الولايات المتحدة ، التي ترسل تقارير عن المعاملات المطبوعة ، خصومات للشركات الشريكة التي تقلل من استهلاك الورق من خلال التكنولوجيا. أصبح عملائنا واحدة من هذه الشركات.
المرحلة 2: الاتصال
اتصل بنا ممثلو الشركة لتقديم فكرتهم. أرادوا تطبيق تسويق الواقع المعزز. قبلنا ، استخدموا نظام التعرف على الصور Catchoom ، كما أرادوا ترخيص نظام إدارة المحتوى كمنتج منفصل ، لكن الشركة رفضت. بالإضافة إلى ذلك ، أراد العميل إضافة ميزات فريدة ، وهو ما لم يكن ضمنيًا في حل Catchoom. لذلك ، كانت مهمتنا تطوير نظام مناسب في المقابل.
المرحلة 3: التخطيط
وصف العميل الوظيفة الأساسية للمنتج قبل الاتصال بنا. كان على فريق التطوير دراسة فكرة المشروع وجمع جميع المتطلبات اللازمة ، وتحديد الاختناقات ، وتوثيق كل شيء. تم تحديد تفاصيل المشروع والتفاصيل الفنية داخل كل سباق.
يقوم الفريق الذي يجمع المتطلبات بتقييم المعلومات الواردة والاقتراح وتكاليف التطوير والسعر الذي يطلق عليه RFX. عادة ، يتكون هذا الفريق من أخصائيين فنيين ومدير مشروع ومدير مبيعات. صالح RFX قبل بدء المشروع.

يدرس العميل تقييم المشروع للحصول على فهم أساسي لكيفية ظهور المشروع وكيف سيتم إجراء التطوير. كما يحدد الوقت والتكلفة.
بعد موافقة العميل على خطة التطوير والميزانية ، يمكن بدء المشروع.
تعليق من قبل مدير المشروع الكسندر:
أنا مسؤول عن التقدم المستمر للمشروع. لقد اخترت منهجية Scrum للاستجابة بسرعة لمتطلبات العملاء والسوق. يساعدنا Scrum في تطوير المنتج ، مع مراعاة احتياجات المستخدمين في كل إصدار من المنتج ، واستخدام أحدث التقنيات في التطوير. "
المرحلة 4: التصميم
كان العميل منفتحًا على أي أفكار لمصممينا وثق برؤية المتخصصين. وصف مصمم UX / UI نظرته للنظام المستقبلي ، استنادًا إلى ممارسات UX المقبولة عمومًا ، وافق العميل ، وبدأ التصميم.
المرحلة 5: التطوير والاختبار
قام العميل شخصيًا بزيارة مكتب الشركة للقاء فريق التطوير والتعرف على إدارة الشركة. في الأشهر الستة الأولى ، جاء العميل مرة واحدة في الشهر لإقامة اتصال ، والتعرف على الفريق بشكل أفضل ، وبناء الثقة بين الطرفين.
في المرحلة الأولى من التطوير ، يتكون الفريق من:
- مدير مشروع قام أيضًا بمهام محلل أعمال ؛
- مصمم UX / UI ؛
- فرق التطوير.
في المرحلة الأولية ، أجرى المطورين اختبارات من تلقاء أنفسهم ، دون مشاركة المتخصصين في ضمان الجودة. كان التحدي هو إنشاء مجموعة من النماذج الأولية للتظاهر في المؤتمرات وجذب العملاء المحتملين. ثم لم يكن هناك حاجة إلى اختبار مفصل.
عندما جاءت عملية التطوير للعمل على الوظائف الأساسية ، احتاج الفريق إلى التوسع. نتيجة لذلك ، بدت مثل هذا:
- مدير المشروع
- محلل أعمال لديه مجموعة واسعة من المهام أكثر من المدير السابق ؛
- مصمم UX / UI ؛
- المطورين.
- رئيس فريق التطوير (قائد الفريق) ؛
- مهندس النظام الذي طور بنية المنتج ؛
- أخصائي اختبار
- DevOps - رابط بين التطوير والتشغيل ، يعمل مع شبكة ونشر المنتج.
قدم رئيس فريق التطوير إيغور ابتكاراته:
"في هذا المشروع ، أنا مسؤول عن تنفيذ مهام المشروع ، ومراجعة الكود ، والتخطيط لسرعة التشغيل (التكرارات قيد التطوير) ، وإدخال مهام جديدة. اقترحت إجراء اختبارات وحدة باستخدام GitFlow وإنشاء رمز باستخدام AWS Lambda. أنا أيضًا أعرض أعضاء جدد في الفريق ، وأنا مسؤول عن تكيفهم. "
كان الانضمام إلى Team Lead قرارًا مهمًا ، حيث ساعد في تنسيق تطوير إصدارات التطبيقات لنظامي التشغيل iOS و Android ونسخة الويب حتى يتحرك كل شيء في اتجاه واحد.

محلل الأعمال فلور يقول:
"بفضل تنظيم المشروع ، كان عملي واضحًا وفعالًا للغاية. لقد عالجت طلبات العملاء ونقلتها إلى فريق التطوير بطريقة مفهومة ودقيقة تقنياً. عملت جنباً إلى جنب مع مصمم UX / UI ، وكان مدير مشروعنا مسؤولاً عن المفاوضات ، مما أتاح لي الفرصة للتركيز على مهماتي الرئيسية ، "
كما ترون ، يحتاج الفريق إلى متخصصين إضافيين لحل المهام المضافة. يمكن أن يوفر تكوين الفريق هذا تطوير نظام كفء بدون أخطاء.
المرحلة 6: الدعم
يتم تقديم الدعم عادة على 3 مستويات:
- المستوى الأول. المساعدة الأساسية ، تتم معالجة الأسئلة البسيطة التي لا تتطلب الكثير من الاهتمام على هذا المستوى.
- المستوى الثاني. مساعدة موسعة من الموظفين الذين لديهم معرفة أعمق بالمنتج. هؤلاء ليسوا متخصصين تقنيين بالضرورة ، لكنهم يعرفون المنتج جيدًا بالتأكيد.
- المستوى الثالث. يتم تنفيذ مستوى الخبراء من قبل المتخصصين ذوي الخبرة: مديري المنتجات والمهندسين.
يوجد أيضًا دعم صفر من خلال الكتيبات وأدلة المستخدم.
في الواقع ، لا يوجد وقت يعتبر فيه العمل على البرامج مكتملاً بالكامل. يتم تلقي إما رغبات جديدة من العميل فيما يتعلق بتوسيع القدرات الوظيفية ، أو مطلوب دعم لمستخدمي المنتج. على سبيل المثال ، يرغب المستخدمون العميلون في تحديث التطبيق وتوسيع وظائفه.
يمثل هذا المشروع بشكل جيد جميع مراحل دورة حياة التطوير. إذا أخذنا في الاعتبار بالتفصيل ، فإن العمل على أي برنامج يبدو كما هو تقريبًا وغالبًا ما يتوافق مع المخطط أعلاه.