Thursday, July 5, 2012
التجربة الكندية 3: التطوير للجميع, ممكن؟
Tuesday, June 12, 2012
التجربة الكندية 2 : المسؤلية الاجتماعية
2012
Sunday, December 4, 2011
التجربة الكندية 1: الجامعة
Saturday, November 12, 2011
Microcontroller المحكام الدقيق
كان حلم قديم يداعب الإنسان منذ زمن أن يبتكر آلة تقوم ببعض المهام دون الحاجة إلى تدخله وظهرت روايات الخيال العلمي بنهايات وظهرت روايات الخيال العلمي بنهايات القرن التاسع عشر وبدايات القرن العشرين تتنبأ وتصف هذه الآلات الذكية التي توفر الوقت والجهد على الإنسان وتؤمن له الرفاهية المطلقة ثم جاءات روايات الإنسان الآلي لتصف لنا نوع متطور من هذه الآلة الذكية يحاكى الإنسان في قدراته ولكم تنبأت هذه الروايات بأن هذه الآلات ستكون على قدر من الذكاء لدرجة أنها ستسيطر على الإنسان وتحوله إلى عبد لها.
كل هذه كانت أحلام وأفكار دارت بها أقلام الروايتين في القرنين الـ 19 والـ 20، لكن ألقى نظرة حولك لكن ألقى نظرة حولك، هل تنظر إلى ساعة يدك الرقمية أم إلى شاشة هاتفك الجوال، أن تعد طعامك في المطبخ داخل فرن " الميكروويف" أم أنت الآن داخل سيارتك الحديثة هل فكرت ما وراء هذه الأشياء التي تعمل بلمسة واحدة ما الذي يجعلها تقوم بهذه المهام دون الحاجة إلى مراقبة عملها أو مراجعة نتائجها ما الذي يجعلك تثق بها إلى هذه الدرجة سوف نذهب في رحلة وراء شاشة هاتفك المحمول ومقود سيارتك ومشغل الأغاني المتنقل (MP3) الخاص بك هذا الشيء الذي يعرف رغباتنا، وينفذها بهذه الكفاءة والدقة دون الحاجة إلى تدخلنا تمامًا، ما هذا الشيء الذي نجده في كل شيء حولنا إذا اقتحمت جهاز التحكم عن بعد الخاص بتلفازك أو نظرت داخل فرن الميكروويف في مطبخك قد تفاجأ إذا وجدت دائرة متكاملة واحدة أو اثنين على الأكثر، وقد تقابل هذا الموقف مع العديد من الأجهزة الأخرى داخل منزلك أو سيارتك لكن ما هو سر هذه الدائرة المتكاملة البسيطة القادرة على القيام بهذا الكم من المهام والعمليات.
منذ ظهور الحاسب الآلي في أربعينات القرن العشرين ثم ما تلاه من ظهور الحاسبات الشخصية في الستينات والسبعينات القرن العشرين من شركات مثل Intel, Texas instruments,IBM ظهرت الحاجة على الصعيد المدني والعسكري إلى أجهزة تتميزة بصغر الحجم والوزن قادرة على القيام ببعض (أو كل) العمليات التي تقوم بها الحاسبات الشخصية بنفس الكفاءة والقدرة وذلك توفيرًا للوقت والجهد وفتح الباب إلى أنظمة أكثر رفاهية.
إلى أن أعلنت شركة (Intel) في عام 1976 عن معالج جديد (Intel 8048) ذي معمارية تختلف تمامًا عن المعالجات المتعارف عليها وقتها، حيث من المتعارف عليه أن المعالج يعمل بتصميم تحتاج إلى توصيلات خارجية لذاكرة (ROM) أو(RAM) ومهيئات إدخال وإخراج (I/O interfaces) مما يحتاج إلى دائرة ليست صغيرة الحجم ولا يمكن تداولها بسهولة كانت معمارية هذا المعالج الذي أعلنت عنه إنتل يتكون من وحدة معالجةمركزية (CPU) وذاكرة RAM وذاكرة ROM معًا صغيرة الحجم ومنافذ إدخال/ إخراج (I/O Ports) لكن محدودة كل هذا على شريحة واحدة فقط مما يتيح للمبرمجين إنزال البرنامج الخاص بهم على ذاكرة الـ ROM ويستطيع بعدها هذا المعالج أن يتعامل تلقائيًا مع أوامر إدخال/ إخراج البيانات ومعالجتها دون الحاجة إلى تدخل مستقبلي منه كما أتاحت لهم صغر الحجم وخفة الوزن التي لم تكون متوفرة للمعالجات العامة (General purpose Microprocessor) و بالتالي سهولة الحركة والانتقال لحامل الجهاز، لكن كما ذكرنا أن ذاكرة الـ ROM والـ RAM كانت صغيرة المساحة (وذلك لاستطاعة دمجها على نفس الشريحة) إلى جانب أن وحدة المعالجة المركزية (CPU) تعمل بسرعة أقل من المعالجات ذات الأغراض العامة المعروفة وقتها، مما يجعل هذا المعالج غير قادر على القيام ببعض المهام التي يستطيع المعالج العادي القيام بها، لكي تم التغلب على مشكلة السرعة مستقبلاً بتحديد الأوامر التي يستطيع المعالج القيام بها، فيما عرف فيما بعد بمعمارية (RISC) Reduced instruction set computer حاسب ذات معمارية بأوامر مختزلة ووجدوا أن اسم معالج غير مناسبة لهذا الابتكار الجديد فاصطلحت تسمية المحكام الدقيق (Microcontroller) على هذا النوع من المعالجات.
المحكام الدقيق هو عبارة عن حاسب على مرققة (Computer-on-Chip), و من التسمية نفسها نستطيع أن نستنتج بعض الحقائق عنه, كلمة "محكام" تدل على أنه جهاز يستخدم في التحكم او معالجة شئ او إشارة ما, و كلمة "دقيق" تدل على إنه جهاز صغير الحجم, و يطلق على الأنظمة مثل المحكام الدقيق كلمة "أنظمة مدمجة" (embedded systems) نظرا لانها هي و الدوائر المساعدة تكون مدمجة داخل النظام التي تتحكم به المحكامات.
إذا ألقينا نظرة على الرسم التخطيطي للحاسوب الأولى سنجد أن تصميمها الداخلي يتكون من:
1- وحدة المعالجة المركزية والمكونة من وحدة الحساب والمنطق ALU و وحدة تحكم.
2- وحدة الذاكرة الـROM والـ RAMو القرص الصلب.
3- منافذ إدخال (Input Ports) للوحة المفاتيح والفأرة وأي أجهزة إدخال أخرى مثل الماسحات الضوئية (Scanners).
4- منافذ إخراج للشاشة والطابعة وأي أجهزة إخراج أخرى ودائمًا ما تحتاج المعالجات ذات الأغراض العامة إلى دوائر أخرى للعمل جنبًا إلى جنب وحدة المعالجة المركزية فتحتاج إلى وحدات RAM خارجية دائمًا كما إذا نظرنا إلى اللوحة الأم (Mother Board) سنجد العديد من الدوائر الأخرى الخاصة بكل منفذ مثل شريحة خاصة لمنفذ الـ USB وقد نجد وحدة منفصلة تمامًا خاصة بالشاشة مثل (VGA Card) أو للصوت أو المودم.
على الجانب الأخر إذا نظرنا إلى التصميم الداخلي إلى المحكامات الدقيقة (Microcontrollers) فإنها تتضمن وحدات التخزين الرئيسية (RAM, ROM) ووحدات الإدخال/ الإخراج (I/O modules) جنبًا إلى جنب وحدة المعالجة المركزية (CPU) على نفس الشريحة أو الدائرة المتكاملة نفسها، لكن يجب أن نوضح الفروق التي تجعل المحاكم الدقيق مختلف عن المعالج ذي الأغراض العامة وهي:
1- وحدات الذاكرة سواء الـ ROM أو الــ RAMغالبًا ما تكون محدودة المساحة والقدرة والسرعة مقارنة بوحدات الذاكرة في الحاسبات التي تستخدم المعالجات ذات الأغراض العامة.
2- وحدات إدخال/إخراج الخاصة بالمحكام دائما ما تكون بسيطة للغاية, و وحدات الإدخال و الإخراج في المحكام الدقيق تعمل على مستوى البتات (Bit level interface) و غير قادرة او مجهزة للتعامل مع لوحة مفاتيح او شاشة عرض.
3- وحدات المعالجة المركزية الخاصة بالمحاكم الدقيق غالبًا ما تكون محدودة القدرة والسرعة أي أنها قادرة على القيام ببعض المهام التي يستطيع المعالج ذي الأغراض العامة القيام بها، كما أن سرعة المحكام الدقيق محدودة مقارنة بالمعالجات العادية حيث من المعتاد أن يعمل على مذبذبات 4 أو 5 ميجا هرتز على عكس المعالجات العادية التي تعمل عادة على مذبذبات 2 و 3 جيجا هرتز.
ومحدودية المهام هذه جعلت الأوامر الخاصة ببرمجة المحكام الدقيق محدودة وقليلة العدد، وقد أوحت هذه المحدودية الى إنتاج وحدات معالجة مركزية للمحكامات الدقيقة تتميز بالعمل في بيئة الأوامر المحدودة عرفت بــ RISC (Computer Reduced Instruction Set) تتكون من ثلاث وحدات أساسية:
1- وحدة الحساب والمنطق (Arithmetic Logical Unit ALU)
2- وحدة التحكم في إرسال واستقبال البيانات والخطوط (Buses).
3- مسجلات (Registers).
ودور المسجلات داخل أي وحدة معالجة مركزية هام جدًا والمسجلات هي وحدة الذاكرة صغيرة الحجم (عادة ما تكون قادرة على تخزين عدد محدود من البتات) وسريعة للغاية تستخدم داخل وحدة المعالجة المركزية للاحتفاظ بعنوان معلومات او مكان ما فى الذاكرة مرتبط بالنشاط القائم داخل المعالج وعدد المسجلات داخل المعالجات ذات الاغراض العامة كبير نسبياً وذلك نظراً لعدد العمليات القائمة عليها والسهام الموكلة اليها وقد تسبب زيادة عدد المسجلات داخل وحدة المعالجة المركزية فى بطئ المعالج بعض الشئ خاصة مع اوامر المقاطعة (Interrupt ) والتى يجب فيها على المعالج الانتقال من البرنامج الجارى تنفيذه الى حالة انتظار او توقف لاستقبال بيانات من وحدة الادخال والاخراج (Input/Output ) وعند حدوث حالة المقاطعة للمعالج يتم حفظ البرنامج الجارى تنفيذه والمسجلات داخل مكان ما فى الذاكرة على ان يعود المعالج الى البرنامج الجارى التنفيذ واعادة المسجلات اصبح نقلها من مكان الى اخر فى حالة مقاطعة يحتاج الى وقت اكثر مما قد يجعل المعالج البطئ بعض الشئ.
وللتغلب على مشكلة بطئ وحدة المعالجة المركزية او المعالج فى المحاكمات الدقيقة تم تقليل عدد المسجلات الى الحد الادنى وذلك لتقلل الوقت المستخدم فى نقل البيانات بين المسجلات وبعضها او بين المسجلات والذاكرة سواء فى الاحوال العادية او حالات المقاطعة ( Interrupts) كما ذكرنا سابقا. كما يجب على المحكام الدقيق القيام بمهامه بسرعة كافية لإدراك الغرض المستخدم لاجله حيث ان السرعة مطلوبة والا يكون قد خسر ميزة هامة جداً، لذلك كان عامل سرعة الإستجابة للمدخلات هام للعديد من التطبيقات لذلك كانت تركيز الابحاث فى السنوات الاخيرة على زيادة سرعة المحكامات الدقيقة باستخدام اقل الامكانيات، لذا اتخذوا قرار تقليل عدد المسجلات او جعلها فى ادنى الحدود.
و من أهم مميزات المحكامات الدقيقة هي استهلاكها الضئيل للطاقة, خاصة إن وضعت في المقارنة مع المعالجات ذات المهام العامة, مما يجعل المحكامات الدقيقة قادرة على العمل داخل الأنظمة الإلكترونية ذات الإستخدام الضئيل للطاقة (Low power electronics) او الأنظمة التي تعمل على مصادر الطاقة المتنقلة و المحدودة مثل البطاريات و وحدات الطاقة الشمسية, و تعتبر ميزة إستهلاك الطاقة من أهم الأسباب التي جعلت المحكام الدقيق على صدارة المكونات المستخدمة في التصميم الإلكتروني في العالم, مثال على ذلك تستهلك عائلة PIC 16F8x من إنتاج شركة Microchip تقريبا 800 ميلي وات كحد أقصى للإستهلاك.
و قد نرى تطبيقات المحكام الدقيق منتشرة و متوغلة بشكل قوي في حياتنا, عندما ترى اي جهاز يتمتع بنوع من "الذكاء" او التحكم الذاتي تأكد انه يحتوي على محكام دقيق, و من اشهر تطبيقات المحكام الدقيق الموجودة في حياتنا الهواتف المحمولة و التي تستخدم نوع خاص من المحكامات الدقيقة (DSP) او معالجات الإشارات الرقمية لضمان سرعة الإستجابة و معالجة البيانات, كما توجد المحكامات الدقيقة بشكل قوي في السيارات بدءا من انظمة المراقبة و الإنذار حتى منظومة الفرامل تحتوي على محكام دقيق, كما تحتوي اللوحة الأم (mother board) على عدد من المحكامات الدقيقة مع المعالج ذي المهام العامة للعمل على بعض المهام لضمان التكامل في العمل, و عادة تستخدم مع مهايئات المنافذ (I/O ports interface) لتسهيل عملية إخراج و إدخال البيانات إلى المعالج الرئيسي.
كما تستخدم المحكامات الدقيقة في مجال الصناعة و التحكم الآلي في المصانع التي تعتمد على ماكينات التحكم الرقمية (CNC), كما تعتمد أنظمة الإنسان الآلي بشكل أساسي على المحكامات الدقيقة خصوصا و إن كانت أنظمة متحركة او جوالة و ذلك لضمان التحكم الذاتي و القدرة على إتخاذ القرار بشكل سريع.
المحكام الدقيقPIC 16F84 من إنتاج شركة Microchip من أشهر انواع المحكامات الدقيقة المنتشرة بالاسواق و تآتي شهرتها من عدة اسباب منها بساطة المعمارية و سهولة البرمجة و رخص ثمنها, يحتوي المحكام الدقيق على:
· ذاكرة Flash سعة 1 كيلوبايت, و ذاكرة الflash تتميز قدرة الكتابة و المسح عدة مرات بدون ان تتأثر, كما تتميز بسرعة ولوج (access time) اسرع من الانواع الآخرى من ذاكرات الROM, و تستخدم لنقل البرنامج عليها من ذاكرة الROM اليها عند تشغيل الجهاز.
· ذاكرة قراءة فقط (Read Only Memory ROM) من النوع القابل لإعادة البرمجة (EEPROM) سعة 64 بايت.
· ذاكرة تداول إنتقائي (Random Access Memory RAM ) سعة 68 بايت.
· منفذين إخراج/إدخال (Input / Output ports) لعملية إدخال و إخراج البيانات تحت اسم RA و .RB
· كما تستطيع بعض المنافذ القيام ببعض المهام الآخرى غير الإخراج و الإدخال مثل مهام التعداد و التوقيت (counters / timers).
برمجة الـ Microcontroller :
يمكن برمجة المحكام الدقيق بلغات برمجة عديدة لكن كان دائما لغتين اساسيتين لبرمجة المحكام الدقيق وان اللغات الاخرى او طرق البرمجة الاخرى مشتقة عن هاتين اللغتين:
1- لغة Assembly .
2- لغة C (وفى بعض الاحيان تستخدم الـ C++), وتستخدم هاتين اللغتين لعدة اسباب:
1- لغة الـ Assembly من اقرب اللغات الى لغة الالةmachine language وبرنامجها ذى مساحة
صغيرة للغاية مما يسهل عملية تخزينه وتنفيذه.
2- لغة ( C) توفر صغر حجم البرنامج وسهولة تنفيذه لكن ليس بقدر لغة الـ Assembly حيث انها من اقرب لغات المستوى العالى ( High level language ) فى تركيبتها الى لغة الالة ( Machine Language) بعد لغة الـ Assembly كما تتميز لغة الـ C بسهولة اوامرها مقارنة بلغة الـ Assembly التي تتطلب معرفة جيدة بمعمارية وحدة المعالجة المركزية داخل المحكام الدقيق حيث لا تتطلب البرمجة بلغة C معرفة قوية بمعمارية المحكام الدقيق من الداخل.
وقد تختلف بعض اوامر البرمجة من نوع محكام دقيق الى اخر حيث تغير الشركات بعض الاوامر وتستحدث اوامر جديدة خاصة بانتاجها من المحكامات الدقيقة لكن المبدأ العام ومجموعة كبيرة من اوامر البرمجية موحدة بين اغلب انواع المحكامات الدقيقة.
وظهرت فى الاسواق السنوات الاخيرة محكامات دقيقة يمكن برمجتها باستخدام لغة Basic فيما عرفت بـ ( Basic Stamp Microcontrollers ) وان كانت غير منتشرة فى اسواق الشرق الاوسط بكثرة.
ومن اشهر انواع المحكامات الدقيقة PIC من انتاج شركة Microchip و AVR من انتاج شركة Atmel وتتميز انواع عديدة من المحكامات الدقيقة برخص الثمن وسهولة البرمجة خاصة مع توافق العديد من برامج برمجة المحكامات الدقيقة مجاناً على شبكة الانترنت مثل MPLAB من شركة Microchip .
توجد بعض الانواع الخاصة من المحكامات الدقيقة واشهر هذه الانواع الخاصة هو معالج الاشارات الرقمية ( Digital Signal Processor) ويعرف غالباً بالاختصار DSP)) حيث يتميز عن المعالجات العادية بوجود عدد من وحدات الحساب والمنطق على عكس المعالجات العادية التى تحتوى على وحدة حساب ومنطق ( ALU) واحد فقط، وعدد اكبر من المسجلات (Registers) اكثر مما تحتويه وحدة المعالجة المركزية فى المحكامات الدقيقة ويستخدم هذا النوع من المحكامات الدقيقة فى التطبيقات ذات السرعة العالية والتى تتطلب معالجة بيانات فى زمن حقيقى ( Real Time Processing) مثل تطبيقات الاتصالات فى الهواتف المحمولة لمعالجة بيانات انتقال الصوت والصورة بدون تاخير او اضطراب كما تستخدم فى العديد من التطبيقات الاخرى مثل تطبيقات ( Video and Image Processing ) والرادار كما ذكرنا لسرعة استجابتها ومعالجتها للبيانات وفى كروت الشاشة ( VGA) بالحواسب. ومن اشهر الشركات المنتجة للـ DSP شركة Texas Instruments .
نموذج لبرنامج بلغة C لبرمجة احد منافذ محكام دقيق من نوع PIC:

Monday, May 3, 2010
Knowledge Acquisition in Brief
What is the difference between information, knowledge and expertise?
Such a question is very important because the answer will clear the overlap and confusion most of people suffer from.
Knowledge is the result of intelligent processing done on some input “Information”, and the same is the “Expertise” when intelligent processing is applied on some “Knowledge”, thus its clear now the difference between the three main topics that define the main elements of the field of “Knowledge Engineering”.
The story of “Knowledge Engineering” isn’t from short time, it returns to the beginning of the 20th century when the industry became larger and stronger, needed more labor to be involved, more sophisticated process needed for higher production rate, better quality and, for sure, more profit.
The main industry, in my opinion, that motivated the foundation and establishments for field of “Knowledge Engineering” was the automotive industry.
Automotive industry started by the beginning of the 20th century, this industry need a huge a large number of other fields to incorporate together to made this industry succeed like mechanical engineering, chemicals and metallurgy industries, electrical engineering, sales, marketing, finance, human resources and their management, two main industrial organizations were dominating the market at this time: “Ford” in U.S.A. and Canada and “Daimler – Benz” in Europe, also there were other competitors but they weren’t strong like those organizations, both organizations motivated the researchers and funded them to find the best ways to achieve more success for their organizations..
To manage all these fields together and achieve the integration needed many things should be done, one of the main things needed is to know what they want, what to do, how to do it, how to keep it and how achieve more success in it, one word was the answer “Knowledge”, later they discovered that knowledge isn’t enough and a huge field needed to be established to deal with everything about knowledge, which was “Knowledge Engineering”.
Knowledge, by the time, become very important and critical issue, the more sophisticated the organizations become the more complex knowledge become, organization could be a corporation, educational institute, a research center, a medical center or even the government of a country, and become well known one of the measurements for the strength of any organization is the amount of knowledge the organization have.
But how to get knowledge, from whom, where we can find, why we will need and how will be used, these questions drove the researchers to more deep area that the target isn’t about getting knowledge only or storing knowledge without using it, its more about how this knowledge should be used for the best benefit for the organization, a new hierarchy was founded to organized everything about knowledge: how to manage knowledge, how to store this knowledge and how to get the knowledge you need.
When the researchers get to the knowledge, it was fine and very confusing, especially with huge amounts of knowledge, so the need for standard organizing methodology became a demand to ease the access and understanding the knowledge, so “Knowledge Bases” field was established.
Later they discovered with the increase of the amount of knowledge, knowledge became more confusing even to specialists and the matter is beyond the storage of knowledge in an organized way and the need to put this amount of knowledge into use and not wasting it, so new techniques were developed to organize the knowledge, relations between knowledge topics and elements, resources of knowledge, what to do with it, how to do it, who should do, who can access this knowledge, who should be aware with something specific with this amount or a type of knowledge…etc., all previous questions was stated as the goals for new branch of “Knowledge Engineering” called “Knowledge Management”.
On a later stage it was very important to know how to get the knowledge we want to store and manage?, the matter, as mentioned previously, became more complex and sophisticated and information need to pass a processing stage to achieve knowledge needed for the organization, also when we get this knowledge how to make sure its valid or just correct and not corrupted.
The end of the 1970’s and early 1980’s it became a must to separate between “how to manage knowledge” and “how to get knowledge”, so they sat the rules for a new field under the hierarchy of knowledge engineering called “Knowledge Acquisition”.
II. What is “Knowledge Acquisition”?
Knowledge acquisition, or shortly we will call it KA, is the process of eliciting knowledge from either people or from a process involves and/or results acceptable form of knowledge.
But why we will extract this knowledge from someone or some process?, there should be a result why we want to elicit knowledge or an end product, our end product is to create or provide a contribution for a knowledge base.
Knowledge Acquisition was first established to extract knowledge from expert’s minds, in case they are getting retired or moving to somewhere else, especially when the number of experts in the field is few and their knowledge should be transferred to other people in the organization.
KA processes, in the early days, was done in the organization using interviewing technique to elicit knowledge from experts, but this method wasn’t sufficient enough to elicit all the knowledge needed, also it didn’t show good performance toward validating the elicited knowledge, so the need for more efficient methods and techniques to be introduced to this field, also knowledge need to be categorized and sorted and map the best technique for each type or category of knowledge, so they got to this classification of knowledge:
1.From the point of view of the general frame this knowledge represents:
a.Procedural knowledge: it’s about process, tasks and activities.
b.Conceptual knowledge: it’s about the way things relate to each other and about their properties.
2.From the point of view of the level the knowledge represents:
a.Basic, explicit knowledge.
b.Deep, implicit knowledge.
Also in the early days of KA, KA processes were fully manual processes done by the employees of the organization, a general framework was settled later in the form of steps and procedures to perform KA operation, also they did set aspects for these step procedures to follow.
The KA process consists of 47 procedure step, divided upon four phases, before going through the KA operation phases and steps, the main aspects for procedure step will be explained first, however, not all the aspects mentioned here, just the main aspects because the other aspects are more related to management process or less technical aspects.
2.1.Main aspects for Knowledge Acquisition procedure step
2.1.1.Knowledge capturing
In order to have knowledge acquisition process we should capture this knowledge from either an expert or from a running process, this aspect aim for two main goals:
a.Elicit knowledge.
b.Validate knowledge.
In the following sub-sections knowledge capture main techniques.
2.1.1.1.Interviewing Technique:
This technique is a manual process for questioning the expert; it’s very useful in knowledge elicitation but not efficient in knowledge validation, there are three types of interviewing used:
a.Unstructured interview: little planned and free form chat with the expert.
b.Semi-structured interview: pre-defined questions to the expert, in addition to supplementary questions asked at the interview.
c.Structured interview: pre-defined questions to the expert without any supplementary questions.
2.1.1.2.Modeling Technique:
Using knowledge models to show them to the experts and let them comment, correct or modify any of the fields of the model, this technique is useful in knowledge validation.
2.1.1.3. Specialized Techniques:
Techniques developed by psychologists to elicit knowledge from experts by letting them perform tasks that can reveal knowledge difficult to articulate.
Main goals from knowledge capture techniques are:
a.Focus the expert on the required knowledge only.
b.Help expert to recall knowledge.
c.Help expert to explain knowledge in a clear way.
2.1.2. Knowledge Analysis
Knowledge analysis is a process to perform identification of the elements of knowledge will be entered to the K-base to form its structured and main components; four elements are required to be identified for successful knowledge analysis process:
a.Concepts: things that constitutes a domain, they form main structure of K-base.
b.Values.
c.Attributes.
d.Relations.
“Attribute” and “Values” describe the properties of a concept while the “Relation” element, from its name, describes the relations between concepts and properties of this relation.
2.1.3. Knowledge Modeling
It is the process of creation and use of knowledge models (K-Models) for viewing content of the knowledge base in a clear simple way.
Each K-Model should provide different perspective or different view point to see all different aspects of the knowledge base, main types of K-Model:
a.Tree Model.
b.Matrix Model.
c.Maps.
d.Timelines.
e.Frames.
f.Knowledge pages.
III.Knowledge Acquisition process phases and steps
In this section we will show in brief the four phases of a KA project process, also will go through the steps.
As mentioned before, KA project process consists of 47 procedure step divided between four phases, they are:
I.Phase 1: Start the project, define project scope and plan for the project.
II.Phase 2: Initial capture and modeling for knowledge.
III.Phase 3: a detailed capture and modeling for knowledge elicited.
IV.Phase 4: share and store knowledge.
3.1.Phase 1: Start, Scope and plan for the project
This phase consists of steps 1 to 13, in steps 1 to 4, KA project team will identify the project idea and how this project will benefit the organization, then start to gather opinions from relevant people, create project proposal and get the agree of the key people on the project.
In steps 5 to 8, the project team will create a K-Base to store the future knowledge acquired, in the meantime start to analyze the main topic and decompose it to smaller different topics and rank these topics against key criteria.
In steps 9 to 13, the project team will identify sources of knowledge needed, identify more accurately what sort of project they are doing and define procedures they will follow for the project, using all data from previous steps to create project schedule and build a project plan.
3.2. Phase 2: Initial Capture and Modeling
This phase consists of steps 14 to 29, in steps 14 to 17 the project team will start learning domain basics from documents or free discussion with experts, also they will start preparations for some semi-structured interviews and conducting them, for sure record these interviews and document all data gathered from them.
In steps 18 to 21, analysis for captured knowledge will take place to identify main concepts and create concept tree for the project, validation for this concept tree takes place after with experts and update the project with recent information added after all previous steps.
In steps 22 to 29, project team should create a K-page describing concepts and glossary for all domain terms and expressions then build a meta-model for defining attributes, values for each concept and the relations with other concepts and validate this model with experts.
3.3. Phase 3: Detailed Capture and Modeling
This phase consists of steps 30 to 39, in steps 30 and 31 more deep data capturing process will be conducted for detailed knowledge and creates a finalized main k-model.
In steps 32 to 35 a prototype of the end product of the project and propose it to a sample of end-users and get their feedback for end-product assessment and capturing more deep knowledge by analyzing feedback, in the meantime a completion plan is produced to define actions required to complete the project.
In steps 36 to 39, a cross validation takes place with secondary expert to check models developed before and gather the differences between experts opinions and try to resolve it, finally record all validated knowledge and finalize the K-models and the K-base of the project.
3.4.Phase 4: Share and Store Knowledge
This phase consists of steps 40 to 47, in steps 40 to 43 a format for the end-user is created, using this format and the K-base a semi-final end product is created and presented to end users to conduct a full assessment by them and identify modifications and improvements, then create the final product.
In steps 44 to 47 a final product is released to the market and publicized, after this product is used for a time, its impact on the organization is assessed and documented.
A complete project review takes place to learn lessons and make suggestions for further improvements in methodologies and support the system.
Karim El-Rayes
May 3, 2010
Canada