19 فبراير, 2011

ماهيّة التخصصات الحاسوبيّة ..

بواسطة: m7ammad7assan في: انتــ( نـــ ــت|تقنـ..يـّــ| ـت|جــ|معتيـــ..

wa;;

قبل أن أكون طالبا في كلية حاسوبية كنت اتساءل كثيرا عن عن التخصص الأنسب لي وكنت لا أعرف ما هو التخصص الذي سأقرر الدراسة فيه؟ لأنني ببساطة لا أعرف الفرق بين التخصصات الحاسوبية وكانت فعلا عالما مجهولا بالنسبة لي ,وربما هي عالما مجهولا للكثيرين ومن هنا أحببت أن أتكلم عن هذا الموضوع لتنجلي هذه الغمّه ..

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

و في موضوعي هذا سأتكلم عن تخصصات الحاسب حول العالم ولن أركز النظر على جامعةِ معينة أو دولة معيّنة ومن هنا لا بد أن يعلم الجميع وخصوصا من لم يدخل بمرحلة الدراسة الجامعية أن التخصصات العلمية حول العالم ثابته ومتطابقة لحد كبير ولكن إن كان هناك فرق فالفرق سيكون بطريقة التدريس وطريقة تقديم المعلومة والكم المعرفي ربما يكون أكثر بقليل في الدول المتقدمة .. ولكن المعرفة واحدة .. وهذا لكي يطمأن الطالب المستجد أن المعرفة التي سيأخذها من جامعة “س” هي نفس المعرفة التي سيأخذها من جامعة “ص” ..

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

وكلامي هنا كله عن المعرفة والمعلومات التي ستنالها من خلال دراستك في أي تخصص حاسوبي .. وهذا الذي يهمك الان ان كنت فعلا تريد التعلّم .. وتريد النهوض بأمتك ..

أولا: عليك ان تعلم ان التخصصات المتعلقة بالكمبيوتر التي تدرس في الجامعات حول العالم هي خمسة تخصصات وهي:-

-هندسة الحاسب “CEN” أو “CE”

-علوم الحاسب “CSC” أو “CS”

- تقنية المعلومات “IT”

-هندسة البرمجيات “SEW” أو “SE”

- نظم المعلومات “IS”

قبل أن نبدأ بالحديث عن هذه التخصصات الخمسة عليك ان تعلم ما هو مفهوم الحوسبة الذي ستكون هي الموضوع الرئيس لكل من التخصصات الحاسوبية ..

الحوسبة هي مفهوم واسع نقصد به اية وسيلة صنعها الانسان لحل مشاكله حسابيا ..

وهذه الوسيلة ممكن أن تكون :-

- هاردوير .. _ المعالجات وبعض الدوائر الالكترونية مثالا على ذلك ..

- سوفتوير “برمجيات”.. _ الخوارزميات والبرمجيات مثالا على ذلك ..

من هنا أريد أن أخبرك أن كل التخصصات الحاسوبية .. الهدف منها هو تطوير الحوسبة و حل مشاكلها في كل النواحي سواء كان هذا التطوير “هاردوير” أو “سوفتوير” .. وأي تخصص لا يهدف الى تطوير الحوسبة فهو تخصص إما أن يكون استخداما للحاسب أو غير ذلك، لكن ليس تخصص حاسب ..

ثانيا: الى التخصصات..

أولا: هندسة الحاسب:-

cen

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

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

نعود لحديثنا عن ماهية الآلة التي ستدرس .. كما قلنا بعد إتمامك لهذا التخصص ستكون فاهما ومدركا لكيفية تصميم و والتحكم و برمجة و تكوين أية آلة الكترونية تتضمن MicroProcessor او MicroController لأن أية آلة تتضمن هذين الشيئين هي كمبيوتر في الحقيقة وليس الكمبيوتر هو فقط الكمبيوتر المكتبي أو المحمول الذي نستخدمه يوميا .. بل أنه حتى الآلة الحاسبة هي كمبيوتر .. وفي السيارة كمبيوتر  .. وفي الروبوتات كمبيوتر .. وبعض ألعاب الأطفال هي كمبيوتر ..والهاتف النقّال هو كمبيوتر .. وفي الشاشات كمبيوتر .. وفي الثلاجات كمبيوتر ..  وفي كل مكان تقريبا هناك كمبيوتر لكن تختلف هذه الكمبيوترات وتصنف بـ General Purpose او Specific Purpose اي انه هناك حواسيب تأدي وضائف عامة والمبرمج حرا في الوظيفة التي سيؤديها الحاسوب .. أو أنها تكون قابلة لأداء وظائف محددة فقط ومعينة  مثل الـ embedded systems .. والطالب سيتعلم تصميم هذه الآلات بشكل منطقي بالرسوم ..وسيتعلم بناءها في المشاريع بشكل حقيقي لدراسته لبعض الكورسات المرتبطه بالكهرباء والإلكترونيات ..

وأيضا من اختصاصات هندسة الحاسب الآلي الشبكات computer networks من البداية وحتى الوصول الى مراحل متقدمة بحيث يبدأ الطالب بالشبكات المحلية واجزاؤها حتى يصل إلى مستوى شبكة الإنترنت وكيف يتم التراسل خطوة بخطوة وبعض البرمجيات التي تتدخل في أداء الشبكة وكيف تتم برمجتها حتى أن يصل الى الشبكات اللاسلكية وهي تعتبر جزءا متقدما من الشبكات يختص بها مهندسي الحاسب ..

www.mhs4.com

يدرّس في هندسة الحاسب ..

- يتعلم الطالب في بداية مشواره طرق تمثيل البيانات Data Representation وبها يتعلم كيفية تمثيل الأرقام للحاسب , بطريقة تمكنه من تحويل الارقام الى قيم Digits من الممكن تحويلها إلى كهرباء  وهي الـ 0و 1 في النظام الثنائي Binary representation بحيث تحوّل اي رقم في الكون الى سلسلة من الـ 0 و 1 فبالتالي من الممكن أن نعبر عن أي رقم نريده إلى لغة يفهمها الحاسب الا وهي الكهرباء , ثم يتعلم التصميم المنطقي وهو Logic design وهنا يتعرف الطالب على العمليات الأساسية التي تنفذ بواسطة الكمبيوتر التي من خلالها يبدا الطالب بفهم كيفية سير عمل الكمبيوتر ..

- يتعلم الطالب معمارية أو تركيب الحاسب بالتفصيل في Computer Architecture وكيف تحدث خطوات تنفيذ الأوامر بشكل منطقي ورياضي ويتعلم الكثير من مكونات الكمبيوتر  ,MicroProcessors , Ram , Rom ,Buses ,Control Unit ,registers ,ALU وكيفية عملها رياضيا ومنطقيا .. ومعرفة الأوامر الاساسية لبرمجتها والتحكم بها بواسطة لغة الأسمبلي ..

-وأيضا يتعلم الطالب أساسيات الكهرباء .. والمكونات الكهربيّة الأساسية في تصميم الدوائر الكهربيّة .. ويتعلم الطالب أيضا أساسيات الإلكترونيات ربما يتساءل البعض من المبتدئين مالفرق بين الكهرباء والإلكترونيات .. هذا الفرق سيعرفه حينما يدرس في هندسة الحاسب وسيدرس أشباه الموصّلات .. Diode , Transistors وما يتعلق بها في صناعة الدوائر وحمايتها ..

- من ما يدرس الطالب وما يجب عليه أن يتقنه هو التمرن على لغات الآلة  Machine Languages والطالب سيدرس لغة الاسمبلي Assembly language لبرمجة الحاسب وسيتعلم الأوامر   Instructions set لعدة معالجات والقيود عليها وكيفية تفسيرها بواسطة المفسرات الـ Assemblers في كورسات Computer Orginization .. وذلك مهما في برمجة الكثير من الحواسيب والنظم المحتواه  embedded systems و الروبوتات Robotics

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

-يدرّس في هندسة الحاسب كورسات تتعلق بالإشارات signals و تحليلها وتصميم النظم التي تعطينا الإشارات التي نريدها من هذه النظم .. وكلمة النظم لا تعني البرمجيات فقط بل هي تتعدى ذلك لأننا نستطيع ان نسمي بعض الأجهزة نظماً .. والكورس المتقدم في الاشارات هو ما يسمى بالـ DSP او Digital Signal Processing وهنا يدرس الطالب الاشارات بشكل مرئي وعملي غير نظري فقط .. يدرس فيه مثل الفلاتر للصوت Filters  وغيرها و الرادارات والشاشات ومعالجة الصور والرسوم  والاتصالات وغيرها وكيف يتم الاتصال في كثير من اجهزة الاتصال ..

- في كورس هندسة نظم الحاسب Computer Systems Engineering يدرس الطالب كيفية بناء النظام ويتعلم دورة النظام من البداية بحيث يقوم بتحليل واستنباط المتطلبات او ماذا يجب أن يقوم به النظام .. ويقوم برسم النظام وحصر مكوناته ..واختبار النظام .. وتطويره .. ويدرس فيها ايضا ادارة المشاريع ..

-ومن كورسات هندسة الحاسب الاساسية هي الشبكات Networks وهنا طالب هندسة الحاسب يتناولها في عدة مستويات ومراحل .. بحيث يبدأ من كورسات أساسية تهتم في مكونات الشبكة المحلية والموسعة .. ويتطرق لشبكات الانترنت .. وبرمجياتها وحمايتها .. في كورس Computer Networks .. ويصل الى كورسات متقدمة مثل Data Transmission  تتطرق الى الشبكات اللاسلكية والسلكية وكيف يتم التراسل فيها بشكل تفصيلي .. وايضا يدرسون الحوسبة الحوسبة المتنقلة واللاسلكية Wireless and Mobile Computing بحيث تتم دراسة الاجهزة مثل الراديو وبروتوكولات الاتصال اللاسلكية ..

- ايضا من الاختصاصات المهمة  هو النظم المحتواه او embedded systems اي الحواسيب ذات الوظيفة المحددة ..وكيفية تصميمها وكيفية برمجتها وتلك الأجهزة مثل الالة الحاسبة ومثل الريموت كونترول ومثل المسجلات والكاميرات الخ والكثير من الاجهزة الإلكترونية ..

- يدرّس في هندسة الحاسب كورس الروبوتيكس Intelligent Systems and Robotics والنظم الذكية ..وهنا سيتعلم الطالب تقنيات الذكاء الاصطناعي المستخدمه في برمجة الروبوتات .. وايضا تحريك الروبوتات والدخول في تفاصيل الحساسات للألوان والابعاد .. والتحكم في الروبوتات عن بعد ..

- ومن الجيد أيضا في هندسة الحاسب أنه يتناول العديد من المهارات والمعرفة التي يتناولها المختص في علوم الحاسب .. مثل كورسات البرمجة Programming بمختلف انواعه مثل Object oriented Programming و يتعلم ايضا بعض المعلومات المرتبطة في تصميم الخوارزميات Algorithms ويدرس ايضا كيفية ربط البيانات وتركيبها في Data Structures ويدرس مهندس الحاسب من علوم هندسة الحاسب ايضا نظم التشغيل Operating Syss

www.mhs4.com

ثانيا:علوم الحاسب :-

csc

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

في علوم الحاسب يكون التركيز على تصميم وتحليل الخوارزميات Algorithm design and analysis و استخدام البرمجة كطريقة لتمثيل واختبار الخوارزميات اذا هو لا يركز على البرمجة فقط بل يتجاوز ذلك ولكنه أحيانا يتطرق الى البرمجة على اساس أنه أداة لتمثيل الخوارزميات وليس المطلوب هو بناء البرنامج فقط .. واذا لم تكن تعلم ماهي الخوارزمية فالخوارزمية هي الخطوات المرتبة بترتيب محدد .. لحل مشكلة ما .. والخوارزميات تشاهدها في كل مكان حولك حتى خارج نطاق الحواسيب وانت تقوم بها ايضا .. فحينما تتوجه لبيت زميلك فأنت تتبع خوارزمية والخوارزمية هنا هي العنوان الذي استخدمته .. اذًا علوم الحاسب يقوم بتطوير الحوسبة من خلال بناء الخوارزميات الجيدة والسريعة والدقيقة وغير المكّلفة ..

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

وبالإضافة الى بناء الخوارزميات فإن مختصي علوم الحاسب هم المسؤولون عن تطوير لغات البرمجة وهم الذين بنوها وطورها من لغات الآلة الى لغات ابسط للمبرمج في السابق وما زالوا يطورونها حتى وصلت الى ما وصلت اليه الان وتفرعت الى لغات متعددة  ومترجمات متطورة Compilers ..

يدرّس في علوم الحاسب ..

www.mhs4.com

- في علوم الحاسب يتناول الطالب مقدمات في البرمجة لكي يتعلم اساسيات البرمجه ومن خلالها ايضا يتعلم كيفية تصميم الخوارزميات البسيطة .. وذلك في introduction to programming ..  وغالبا في هذا الكورس يبرمج الطالب بلغة السي و في البرمجة الشيئية  .. Object oriented Programming ..  سيبرمج بلغة السي بلص بلص وسيتمرّس عليها ..

- ايضا هناك كورسات مهمه في تصميم الخوارزميات مثل introduction to algorithms وفيها يتعلم الطالب خوارزميات كثيرة من خوارزميات الفرز Sorting Algorithms .. حينما تقوم بفرز سكان المنطقة بحسب رقم الهوية بسرعة البرق فاعلم ان خوارزمية الفرز سريعة جدا وهذا من اختصاص طلاب علوم الحاسب ..

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

- ويدرس الطالب ايضا مواد مرتبطه بالـ Graphics وكيفية تمثيل الاشكال على الشاشة وكيفية تصميم هذه الخوارزميات ودراسة بعض برامج الرسم لفهم الرسم بالحاسب ..

- تراكيب البيانات او Data Structures من العلوم الاساسية لدى كافة تخصصات الحاسب وهنا يتعلم الطالب كيفية تجميع البيانات بطرق مختلفة وكيفية الوصول اليها ..  يتعلم الطالب كيفية تنفيذ المكدّس Stack و الطابور Queue بعدة طرق من خلال الـ Linked lists وغيرها وايضا سيتطرق لتنفيذ ما يسمى بالشجرة او ال Tree وخوارزميات الرسوم Graph Algorithms ..

في علوم الحاسب يدرس الطالب مفاهيم اساسية في انظمة التشغيل وكيفية التعامل معها .. في كورس Operating systems

- وايضا في علوم الحاسب يفهم الطالب كيفية بناء لغات البرمجة وكيف تمت وكيف تترجم في الكمبيوتر في كورسات عدة مثل بناء المترجمات Compilers وكيف تنقل الاكواد في لغة ما الى لغة الاسمبلي ومن ثم الى لغة الآلة 0 , 1  .. وكيفية تطورات لغات البرمجه وكيف اشتقت اللغات من بعضها ..

- هناك كورس يدرّس في علوم الحاسب يسمى برمجة النظم Systems Programming ويتمحور حول تصميم نظام تشغيل لآله معينه ..بحيث يدرس معالج محدد ثم تدرس لغة الاسمبلي الخاصه به ثم يصمم الاسمبلر او المفسر للغة الاسمبلي خاصته بكل تفاصيله ثم يقومون بتصميم الكيرنال لنظام التشغيل بمحتوياته الاساسية وبرامج الاقلاع والبوت ستراب BootStrab

- من الكورسات المهمة ايضا تحليل الخوارزميات Algorithm analysis وهنا يستطيع الطالب تحليل الخوارزمية أي معرفة الزمن الذي تحتاجه الخوارزمية لتأتي بالنواتج .. وهذا من صلب إبداع مختصي علوم الحاسب .. فقد تستخدم أحيانا برنامج في اصداره الخامس على جهازك وتكون له سرعه معينه وحينما تستخدم نفس هذا البرنامج في اصداره السادس تجد الفرق في السرعه كبير وواضح .. اعلم ن السبب حينها هو أن خوارزميات البرنامج تغيرت جذريا او جزئيا وهنا مكمن الإبداع ..

- ويدرس الطالب كورس الذكاء الإصطناعي Artificial Intilligance وهذا التخصص حسب ما يبدو لي أنه ليس بالسهل .. حينما تلعب لعبة شطرنج وتنافس الكمبيوتر ويغلبك عدة مرات وبكل محاولة تنبهر بتحرّكات الكمبيوتر غير المتوقعة .. اعلم حينها أن من قام ببرمجة هذه اللعبة هم المبدعين في عالم الذكاء الاصطناعي ..

ثالثا:تقنية المعلومات:-

www.mhs4.com

IT

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

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

ايضا تهتم تقنية المعلومات في الويب وتقنياته المختلفه .. وبرمجة التطبيقات الخدمية web Application على الويب والتمرس عليها في اكثر من كورس وهذا المجال اهميته ظاهرة للجميع  ..

يدرّس في تقنية المعلومات ..

www.mhs4.com

- يدرس الطالب في بداية دراسته بالإضافة الى كورسات الحاسب الأساسية التي يدرسها كافة الاقسام .. كورس اساسي في قواعد البيانات .. يناقش المبادئ الاساسية في تصميم قواعد البيانات Normalization وال ERD وغيرها لكي يتعلم تصميم قاعدة بيانات منطقية وبلا مشاكل .. وايضا يتخللها تعلم لغة ال SQL وهي لغة الاستعلامات المعروفة ..

- يدرس الطالب عدة مواد متقدمة في قواعد البيانات Oracle التي تستخدم على نطاق ..

- كما قلنا في بداية الكلام .. تحليل النظم  Information Systems Analysis and Design

من المواد الاساسية في تقنية المعلومات ..

- هناك مواد تهتم ببرمجة الواجهات الرسومية Visual Programming تدرّس لطلاب تقنية المعلومات لأنه من اختصاصهم بناء البرامج .. يتعلمون فيها تصميم الواجهات وكيفية تحقيق مبدأ الـ  usability  اي التحكم في مدى سهولة استخدام النظام .. ويتعلمون ايضا كيفية ربط النظام بقاعدة بيانات سواءا كانت محلية او .. على الويب .. وربما يستمر ذلك في كورسين أو أكثر ..

- ومن الكورسات المهمة التي تدرس في تقنية المعلومات كورس يتعلق في فهم المفاهيم الحديثة والتطبيقية في برمجة التطبيقات التي تستخدم عمليا وفي الواقع وهذه المفاهيم ستدور حول فهم المشاكل وتحليلها ورسم الحلول لها وتنفيذ الحلول وتوثيقها ومن ثم عرض وتقديم ما تم تنفيذه ..  وذلك في Modern Concepts of Application Programming وهناك ايضا بعض المشاريع التي ستنفذ على ايدي الطلبه ..

- Data Mining من المواد التي تعنى بعملية استخراج البيانات بفاعلية من مخازن للبيانات

data warehouses و قواعد البيانات Data Bases الضخمة .. بحيث سيتعلم الطالب الكثير من الأدوات التي تستخدم في الـ Data mining وخاصة تلك الادوات المستخدمة في الانترنت ..

- بحكم أن تقنية المعلومات مرتبطة بقطاعات الاعمال لذا من المهم أن يكون  لديهم القدرة على التواصل مع الاخرين ومهارات الاتصال والعرض والتقديم  .. وذلك مهم لاسيما اذا اراد المبرمج ان يعرض البرنامج لجهة ما او اذا اراد تقديم عرض لأي جهة .. وذلك يدرّس في Communication skills

- التعلم بواسطة الحاسب Multimedia Data Management كورس يدرّس لطلاب تقنية المعلومات .. ويهتم ببناء البرمجيات وتصميم الوسائط سواء كانت صوت أو صورة .. من أجل الأغراض التعليمية ..

- كما قلنا في بداية الكلام عن تقنية المعلومات .. أنه من اختصاصها التجارة الإلكترونية Electronic Commerce Systems وهذا الكورس يتكلم عن التجارة بكافة معارفها ولكن بشكل الكتروني بحيث انه يتطرق الى استراتيجيات التسويق والعرض عن طريق الويب .. وادارة المخاطر المرتبطة بالتجارة الإلكترونية Risk Management , وايضا كيفية التعامل مع التحديات والمنافسات في التجارة الإلكترونية ’ وايضا يتطرق للنظم البنكية .. والإعلانات في الانترنت  والنشر الإلكتروني والدفع الإلكتروني ولا تخفى أهمية هذه المفاهيم في العالم والتي تزيد يوما عن يوم ..

www.mhs4.com

رابعا: هندسة البرمجيات:-

SWE

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

في البداية يتم دراسة الجدوى للبرنامج وقابلية تنفيذة بالإمكانيات المتوفرة، وبعد ذلك تأتي

- مرحلة دراسة المتطلبات، وهنا يتم استخراج المتطلبات من العميل وتحليلها وتحديد معالمها بالتفصيل باستخدام نماذج محددة لتسهل فهم مهام البرنامج وبعض واجهاته ليتم الإتفاق عليها. والبدء بالتنفيذ.

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

- مرحلة كتابة الكود، وهنا يبدأ البناء الفعلي للبرنامج بكتابة الكود بناءاً على نماذج مرحلة التصميم، فتصبح عملية كتابة الكود واضحة ومحددة. أو يُمكن البدء بالبرمجة مباشرة من مرحلة المتطلبات في حالة صغر حجم البرنامج ومحدوية متطلبات الجودة.

- مرحلة الإختبار ومُعايرة الجودة، وهنا يتم تجربة البرنامج وفق استراجيات وحالات اختبار محددة مسبقاً لإثبات كفاءة البرنامج وخلوه من المشاكل والأخطاء.

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

www.mhs4.com

وأيضا من يدخل في هندسة البرمجيات  الاتفاقيات بين المبرمجين والجهة الطالبة للبرنامج وكيف يتم التفاوض وكيف يتجنب الفرق المخاطر التي ربما تحدث في اي نقطة في بناء النظام او البرنامج في الـ Risk Management  .. ولكي تصل الى هذه الأهداف تحتاج الى الكثير من الخطوات والمهام التي يجب تنفيذها .. ومن هنا نقول ان هندسة البرمجيات تهتم في دراسة ما هي اهداف البرنامج او النظام وما يجب ان يقوم به هذا البرنامج او النظام من متطلبات  وذلك يسمى هندسة المتطلبات او Requirements Engineering وتلك العملية ليست سهلة للبرمجيات الصغيرة فلا تستغرب ان معرفة المتطلبات بحد ذاتها هي تخصص مستقل .. وظمن هندسة المتطلبات دراسة الجدوى Feasibility Study اي هل البرنامج مجدي من حيث العملية ومن حيث التكلفة؟ .. ويتضمن ايضا ادارة المشاريع البرمجية  Software Projects Managments التي تركز على متابعة النظام من بدايته حتى نجاحه ومن ثم استخدامه ..   وظمن ادارة المشاريع ايضا  ادارة فرق العمل في اي منظمة تريد إنشاء نظام  جديد او تطوير نظام موجود..

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

يدرّس في هندسة البرمجيات ..

www.mhs4.com

- كورس يناقش اساسيات هندسة البرمجيات Introduction to Software Engineering يتعلم فيها الطالب المعارف الاساسية في هندسة البرمجيات مثل نماذج وخطوات تنفيذ البرمجيات , وأيضا كيفية اكتشاف المتطلبات Requirements للنظام المطلوب واستنباطها من مصادر متنوعه والمقابلات الشخصية لمصادر المتطلبات او ما يسمى بالـ View Points .. وايضا يدرسون ومسؤليات مهندس البرمجيات وأخلاقيات المهنة التي تهتم في تعليم الطالب الامور الهامة المتعلقة في إبرام العقود لأنه في الأساس يتعامل مع عملاء ومنظمات تطلب منه البرمجيات او النظم لذا هو من المهم ان يتعلم كيف تسير الامور وكيف يتم التعاقد والمشاكل حول ذلك ..

- من الكورسات الأساسية ايضا كورس يناقش مبادئ في هندسة البرمجيات Principles of Software Engineering بحيث انه سيدرس كيفية قياس النظم واقصد بذلك تققيم البرنامج او النظام وجودته مثل مدى استقرار النظام او مدى الامان في النظام .. او هل هو آمن او لا .. ومثل هذه الاسئلة تستطيع الاجابة عليها من خلال هذا الكورس ..

- يتعلم في كورس تصميم الواجهات User Interface Design يتعلم كيفية تصميم القوائم والنوافذ والامور المرتبطة بسهولة وقابلية الاستخدام Usability اي ان الطالب يتعلم كيف يجعل برنامجه مرغوبا ومقبولا من قبل المستخدمين ..

- في عمارة وتصميم البرمجيات Software Design and Architecture يدرس الطالب الادوات والرسوم القياسية التي تستخدم في عملية تصميم البرمجيات ، وكيفيت تحقيق معايير الجوده مثل الأداء والحماية والموثوقية .

- في كورس اختبار البرمجيات وضمان الجودة Software Testing and Quality Assurance يتعلم الطالب ما معنى الجودة للبرمجيات وقياسات الجودة وكيف تتحقق الجودة في البرمجيات .. ويدرس ايضا عمليات التفتيش عن الاخطاء وكيفية اصلاحها لظمان جودة البرنامج ..

- ايضا يدرس الطالب برمجة البرمجيات التي تعمل في الشبكات Internet Protocols and Client-Server Programming وليس برمجيات الويب التي تعمل في المتصفحات الفرق هنا ان البرمجيات Desktop Applications ولكن تستخدم الشبكة مثل برامج المحادثات ورفع  الملفات وغيرها ..

- ادارة المشاريع البرمجية Software Project Management التي هي من اركان اختصاص هندسة البرمجيات تغطي الامور المهمة لإدارة المشروع البرمجي مثل التوقيت ، التكلفة الجودة ، الاخطار المحتملة ، الموارد البشرية والاتصالات الخ ، و به كيفية ادارة فرق العمل وكيفية اختيارهم وتقييمهم ..

www.mhs4.com

- اما بالنسبة لبرمجيات الويب فهم يدرسونها في هندسة وتطوير الويب Web Engineering and Development ..

www.mhs4.com

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

comp_disp_taple

نِصاب مواضيع الحوسبة في التخصصات الحاسوبية ..

www.mhs4.com

*معلومات هذا الجدول من بحث Computing Curricula 2005

www.mhs4.com

تنبيه :-

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

www.mhs4.com

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

للاقتراحات والاستفسارات .. راسلنا على هذا البريد

mhs4com@live.com

قام بتنفيذ هذا العمل :محمد الحسن

طالب بقسم هندسة الحاسب في كلية الحاسب بجامعة القصيم ..

مدونة محمد الحسن

www.mhs4.com

كتيب الماهيّة في التخصصات الحاسوبيّة بصيغة PDF

شارك واستمتع !
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • RSS
  • StumbleUpon
  • Twitter
وسوم: , , , , , ,

 

 

12 تعليقات على "ماهيّة التخصصات الحاسوبيّة .."

1 | Tweets that mention اذا فضيت اطّلع عليه وعطنا رايك بالموضوع -- Topsy.com

فبراير 19th, 2011 6:15 ص

Avatar

[...] This post was mentioned on Twitter by Sarah|| and Ahmed Al Osaimi, m7ammad7assan. m7ammad7assan said: @iAhmedPho http://bit.ly/dPcj2q .. اذا فضيت اطّلع عليه وعطنا رايك بالموضوع [...]

2 | وسيم

فبراير 19th, 2011 8:10 ص

Avatar

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

3 | m7ammad7assan

فبراير 19th, 2011 2:28 م

Avatar

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

4 | عبدالعزيز البلوشي

فبراير 19th, 2011 10:15 م

Avatar

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

5 | m7ammad7assan

فبراير 19th, 2011 10:18 م

Avatar

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

نورت الموضوع يا استاذ عبدالعزيز

6 | عبد الله

فبراير 20th, 2011 12:38 ص

Avatar

مشكور علي هذة التدوينة بارك الله فيك ويعطيك الف عافية

7 | عبدالعزيز البلوشي

فبراير 20th, 2011 1:13 ص

Avatar

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

8 | m7ammad7assan

فبراير 20th, 2011 2:37 م

Avatar

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

9 | m7ammad7assan

فبراير 23rd, 2011 2:26 ص

Avatar

احب اقول نقطه لأخواني القراء .. انه الماهيّة راح تدعم وراح يكون لها اصدارات قادمة تتضمن بعض الاضافات خلال الاسابيع القادمة .. اتنمنى نشر الماهية لأبعد مدى

10 | m7ammad7assan

فبراير 23rd, 2011 2:08 م

Avatar

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

11 | عبدالرحمن السيد

أبريل 9th, 2011 10:26 ص

Avatar

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

12 | عاشق الميمي

أبريل 29th, 2011 10:27 ص

Avatar

اهلا محمد
اتمنى لك التوفيق فانت انسان مجتهد وذو طموح ومن خلال هذه المدونه ارى انك انسان ناجح ومكافح وتستحق ان تكون ذا شان في هذه الحياه وفقك الله لما تحب في الدارين

اكتب تعليقك

                                              

    ما شفت شي .. اصبر علي بس ..

  • عبود الشريف: مجمل وجمل الله حالك
  • m7ammad7assan: حسب معلوماتي .. تخصصات الحاسب للتخصصات العلمية .. امما خريج الادبي يستحيل عليه الدر
  • عبود الشريف: الله يجزاك خير ويعطيك العافية .. استفدت كثير من هذا البحث القيم .. بس عندي سؤال لو تك
  • Jassmin: مدونه رآئعه يا محمد  حماسك زآد على حماسي حمآس   واحب اقول لك اني است
  • sami: اشكرك على مدونتك وعلى شرحك واتفق معك كون المدونه تكون ملك لك وان تكون متبوع لا تاب
  • نورا: تشرفنا اخ محمد  الجميل انه يجمعنا مجال دراسه واحد  فانا طالبه علوم حاسب ولله الحم
  • خالد: لقد  أبدعت يا عزيزي  بالتوووفيق تقنية معلومات
  • LORDI: MACHEKOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOR  
  • كتاب المعرفة: مشكورين على المعلومات المفيدة بس ممكن معلومات أكثر

حول المدونة

مدونتي هي دفتري وكشكولي الذي اكتب فيه ما يدور بداخلي ولكن على الشبكه العنكبوتيه!!


::القائمه البريدية::

    أدخل بريدك الإلكتروني:

اتبعني ..

متابعيــنـ..

Google connect..

لتصفح أفضل