Tuesday, 29 April 2008

دورة الحياة البرمجية الحبيسة


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

أذكر أنني كتبت في ذاك الوقت أوراق بسيطة، أهتم فيها بذكر إجراءات فتح وتخطيط وتنفيذ وإغلاق المشروع - أي مشروع - وسميتها Loose Paper Folder، وذلك تيمنا بإحساسي أن هناك شيئا ما مفقود، ما لم أعرفه في هذه الآونة ولكنني عرفته فيما بعد هو أن المهندس أحمد حماد مدير قسم الإنترنت آن ذاك كان قد قطع شوطا لا بأس به في هذا الاتجاه بشكل أكثر تنظيما وأكثر ابتكارا وأكثر توثيقا، ولكنه وللأسف لم يتناسب مطلقا والعمل في قسم البرامج المكتبية الذي كنت اعمل فيه، ولا يتناسب مع التكنولوجيا المستخدمة عندنا في هذا الوقت ألا وهي الفيجوال سي ولا يتناسب مع الحلول البرمجية التي كان يقدمها قسمي، عرفت أن حماد والزواوي وضعوا لبنات تطبيق نظام الأيزو أو بالأحرى طوروها وحاولوا تحسينها قدر إمكانهم، لم أدرك وقتها المعاني الخفية وراء كتل المصطلحات المستخدمة، فكنت مثلا أخلط بين ال (Process) المعروفة برمجيا وتكنولوجيا في نظام التشغيل Windows وبين المعنى الإداري للكلمة والذي بات واضحا لي أيما وضوح في مطلع العام 2005 بعد اجتياز الدورة التدريبية للPSP حيث اتضح أن للكلمة معنى مغاير تماما، وهو مجموعة الخطوات المعيارية والقياسية لأي إجراء إداري أو إجراء تنفيذي أو إجراء تطويري في محيط العمل.

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

وعندما أصبحت مديرا لوحدة ميكروسوفت أيقنت أن هناك خللا ما عند الجميع، أيقنت أن مرحلة التحليل الوظيفي لرؤية العميل والتحليل التقني لرؤية المطور بينهما خلط كبير عند الجميع بلا استثناء، فركزت على فكرة تحليلية بسيطة وهي الUse-case storyboard، كما أدركت أن 70% من المشاريع تقوم على نفس المفاهيم والأدوار والمهام والوظائف، فأعددت محاضرات تدريبية وألقيتها على رفقاء الدرب وجنود المسيرة، وأبرزت دورة الحياة البرمجية الحبيسة التي ظللت أبحث عنها طيلة 3 سنوات، وحاولت تقديمها بشكل عملي ملموس.


Component Assembly Model، نعم هي، مطلب دام أكثر من أربع سنوات بالشركة وظل يراود القادة والمدراء، ودورة حياة ظلت حبيسة الكتب والإنترنت عن كثير من المشاريع، أخيرا تظهر للنور، نعم :) حققت أحد المعادلات الهامة في حرف، فضل من الله ونعمة، ركزت جهودي مع رفقاء الدرب على مكتبة المكونات اللازمة كمبدأ من مبادئ هذه الدورة لتحقيق فكرة إعادة الاستخدام، وبدأت تدعيمها بتأريخ منظم وإحصائيات فعلية عن كل مكون داخل المكتبة، حتى يكون تقيم المشاريع المستقبلية أكثر دقة، وبالفعل بدأت سرعة الإنتاج تدب في المشاريع بعد بناء 70% من المكتبة.

هنا يجب أن نعي أن الوعاء الثقافي فارغ عند الكثيرين في هذه المهنة الصعبة، وإنه لن يمتلئ إلا مع مرور الوقت وزيادة الخبرات والمعرفة والتعلم المنهجي، والتعلم هنا يختلف عن التثقيف ;).

Component Assembly Model – Development Lifecycle Model

Object technologies provide the technical framework for a component-based process model for software engineering. The object oriented paradigm emphasizes the creation of classes that encapsulate both data and the algorithm that are used to manipulate the data. If properly designed and implemented, object oriented classes are reusable across different applicationsand computer based system architectures. Component Assembly Model leads to software reusability. The integration/assembly of the already existing software components accelerate the development process. Nowadays many component libraries are available on the Internet. If the right components are chosen, the integration aspect is made much simpler.

Thursday, 24 April 2008

مبروك لإسراء عبد الفتاح

القاهرة - محرر مصراوي -

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



ألـــــف ... مــبـروك ... خروج إســـراء عبد الفتاح بالسلامة
كنت قد توقفت عن الكتابة حزنا لما أصاب مصر وأبنائها
وخصوصا إسراء عبد الفتاح
الآن أعود لأكتب من جديد
أللهم حرر كل المسجونين والأسرى والمعتقلين الأحرار

Wednesday, 2 April 2008

التجربة القطرية 2

الحلقة 2

في الطريق من المطار إلى الفندق ...

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


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


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


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



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




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


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



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



وللحديث بقية فكونوا معنا ... فاصل ونواصل J