Saturday, December 1, 2012

Development Workflow of a WPF Project

تمر جميع الانظمة بمراحل تنظم نمو تقدمها وتقسم الأعمال على فريق العمل وهناك الكثير من المنهجيات التي تركز على تنظيم مراحل عمل بناء وتطوير الأنظمة ويمكنك الأطلاع على النص التالي SDLC .وعند أستخدامك لتقنية WPF لبناء نظام برمجي من نوع Customer Management Relation او غيره يفضل في هذه الأنظمة استخدام مراحل واضحة تحدد المهام والوظائف لفريق العمل أضافة الى توزيع البيئات التي سوف يستخدمها الفريق على مراحل التطوير واقصد بيئة  Visual Studio تذهب الى مرحلة التطوير مثلا.أذن لنبدأ بشرح المراحل لتطوير مشروع WPF :


1.أستخلاص المتطلبات  (Elicit Requirement)                      :   
وهي المرحلة الأولة في بناء أي نظام وتضم هذه المرحلة الزبون ومايسمى أحيانا بذوي المصلحة(Stack older)ومحللي الأنظمة وتعتبر هذه المرحلة من أهم المراحل لأنها القاعدة الأساسية التي سوف يعتمد عليها المراحل اللاحقة لذا يجب أن تكون واضحة ومفهومة من كلاالطرفين ويمكن التعديل عليها.وتضم هذه المرحلة في مقدمتها جمع المتطلبات وتلخيصها مع الطرف الأخر أضافة الى تحليلها وتكوين مسودة تسمى (User Stories) وهي عبارة عن مسودة تشرح كافة التفاعلات مابين العناصر اضافة الى المهام والوضائف المطلوبة من قبل العميل.ألأدوات المستخدمة القلم والورقة وكاميرة فيديو لتسجيل المقابلات.

2. الخلق والتحقق من النموذج الأولي (Create and Validate     Prototype) :
وهنا تأتي مرحلة خلق النموذج الأولي للواجهات الرسومية وتعتبر خطوة مهمة لتبادل الأفكار مابين مهندسي التطوير وذوي المصلحة وخلق فهم عام وموحد للواجات الرسومية للتطبيق.وتعتبر هذه المرحلة مهمة من جانب كشف الأخطاء مبكرا بحيث تركز على بناء نموذج اولي يتم مناقشته وتعديله بأستمرار مع ذوي المصلحة لأجل تفادي مشكلة البناء المباشر للواجهات واعتراض الطرف الأخر على رسم الواجهات وعملها مما يوقعنا بمشكلة أعادة التصميم الحقيقي لذا يجب علينا بناء نموذج اولي تخيلي بمعنى لايعمل منطقيا وغير مكتوب به أكواد بحيث أذا وجد أعتراض ما ممكن التغير مباشرة من دون كلفة او ضياع في الوقت والجهد.ويمكن عمل هذا النموذج من خلال ثلاث طرق رئيسية :
  . أستخدام الورق والقلم ورسم الواجهات الجامدة وعرضها على ذوي المصلحة والتعيل عليها اذا اقتضت الضرورة.
 .أستخدام برنامج PowerPoint , Visio لأجل رسم الخطوط العريضة للواجهات الرسومي وعرضها بشكل العرض التقديمي.
 .أستخدام برنامج (Expression Blend Sketch Flow)وهو برنامج حديث ومتميز يعمل على بناء نموذج أولي ديناميكي بتم عرضه على الطرف الأخر ببيانات غير حقيقية وهو أكثر جمالية ووضوح من الطريقتين السابقتين وياتي ضمن طقم Expression Blend .

3. تنفيذ الأعمال تجارية المنطقية وأكواد الواجهات (Implement Business Logic and UI) :
وهنا تأتي مرحلة التطوير والبناء وكتابة الأكواد البرمجية بحيث يتم الأعتماد على المراحل السابقة, تستخدم في هذه المرحلة بيئة Visual Studio أضافة الى بعض المكتبات والتقنيات المساعدة لتطوير أكواد  Validation Rules , Transaction,Business Logic ,Business Rules الى أخره من الأمور الأخرة.وعادة تتألف هذه المرحلة من فريق برمجي ويعتمد في كل الأحوال على نوعية وكبر المشروع.

4. تكامل التصميم الرسومي (Integrate Graphical Design)        : 
وهنا تأتي مرحلة تصميم الواجهات الرسومية الحقيقية الفعالة بألاعتماد على النموذج الأولي النهائي أضافة الى مرحلة تطوير الأكواد يتم استخدام بيئة Expression Blend لأجل أدواته الكثيرة أضافة الى فصل المطوريين والمصممين ببيئات مختلفة ويمكنك قراءة المقالة التالية Development tools .وبعد انتهاء هذه المرحل سوف ينتج قطعة برمجية يمكن نقلها الى المرحلة التالية.

   5. أختبار البرنامج  (Test Software)     وبعد اكتمال المراحل السابقة سوف تتولد حزمة برمجية يمكن أختبارها والتأكد من عملها ونوعية الأخراج الحاصل عند تنفيذ أمر ما , تيتخدم في هذه المرحلة بيئة Visual Studio بسبب احتوائها على أدوات الأختبار وتوليد (Unit test)ويقوم بهذه المهمة متخصصين بأختبار البرامجيات .


مع العلم ان جميع مطوري ومصممي ومعماري الأنظمة الحديثة يقومو بتقسيم المشروع الى مهام متعددة ضمن حدود محددة وأفراد ومصادر معلومة ومبدأ تقسيم المشروع الى مهام متعددة يعطي لنا فوائد كثيرة ومنها :
 معرفة الأخطاء ان وقعت , وتقسيم الأعمال ومعرفة الأدوار لكل فرد في الفريق وتقليل الوقت لأن العمل سوف يكون بالتوازي مع جميع المراحل ,أضافة الى توفير الأختبار لكل مقطع برمجي بحيث تصحح الأخطاء عند نهاية كل مرحلة وبهذا نتخلص من تراكم الأخطاء البرمجية والمنطقية في النهاية .
أن جميع المراحل التي ذكرناها سوف تتكرر لكل مهمةاو عملية موضوعة مثلا الطلبات (Order Process)سوف نبدأ اولا بمرحلة جمع المتطلبات وتحليل العمليات الخاصة بالطلبات والشروط المستحقة والمخرجات عند نجاح العملية او فشل العملية الى أخرة من الأمور , ومن ثم تأتي مرحلة رسم النموذج الأولي للواجهات الطلبيات وعرضها على ذوي المصلحة وأضافة بعض التعديلات , وتأتي مرحلة تكوير وكتابة الأكواد وبناء الأعمال التجارية المنطقية والموديل الذي سوف يرتكز عليه الى أخره , وبعد أكتمال هذه المرحلة تتأتي مرحلة تصميم الواجهات الرسومي الجميلة وربطها مع الأكواد المطورة , ,اخيرا تأتي مرحلة أختبار عمل الكود ومشاهدة المخرجات .وبعد أكتمال هذه العملية او المهمة نأخذ العملية التالية مثلا مهمة الأشخاص (Personal Operation) التي سوف تمر بنفس المراحل السابقة .
وبعد انتهاء جميع المهام سوف ينتج التطبيق المتكامل الذي سوف يختبر كحزمة برمجية متكاملة. الرسم التالي يوضح المراحل التطويرية لمشروع ونلاحظ التكرار الذي يكرر المراحل لكل عملية في المشروع المقترح.



No comments:

Post a Comment