Friday, August 4, 2017

- ما هو الفرق بين لغة السي والسي بلس ؟ what the different between c and c++ language

- ما هو الفرق بين لغة السي والسي بلس ؟ what the different between c and c++ language



1- ما هو الفرق بين لغة السي والسي بلس ؟

لغة السي ظهرت قبل لغة السي بلس . بالتالي لغة السي بلس هي إمتداد للغة السي .

فكل الامور الموجودة في السي ستجدها في السي بلس لكن العكس غير صحيح .

2- ما هو الفرق بين

Cpp و Borland Cpp .

Cpp و Visual Cpp

CPP و CPP.NET

CPP و ؟؟؟؟؟؟ . ؟

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

كلها في النهاية تمكنك من تحويل كود السي إلى تطبيق .

أما لغة Cpp.net وتسمى الان بالCLI ,, فهي مختلفة ... ولايلزمك تعلمها .. فهي خاصة ببيئة الدوت نت ..

3 - هل أتعلم السي أو أتعلم السي بلس وهل اذا تعلمت واحدة منهما اكون قد تعلمت الاخرى ؟

نصيحة :

لاتقل : أريد ان اتعلم السي .. ثم اتعلم السي بلس . ومن هذا الكلام .

فالان أغلب الكتب والدروس هي تدمج السي بالسي بلس او لنقل تركز على السي بلس .

لانك اذا تعلمت فقط السي تكون قد قطعت 75% من المشوار .

اما اذا تعلمت السي بلس فانك تكون قد قطعت 100% من المشوار .

( من هنا وصاعدا وفي هذا الموضوع اذا رأيتني اكتب " لغة السي" فاني اعني السي والسي بلس لا افرق بينهما )

4- ماهي حدود لغة السي ( او السي بلس بلس ) ؟

ليس أمامك حدود فكل شيء تستطيع عمله باستخدام هذه اللغة . ( هذا بشكل عام ولا علينا من الامور الدقيقة ) .

فمثلا برامج التصميم كالفوتوشوب والثري دي ماكس . من انتاج هذه اللغة ,

90% من برامج اللينكس هي من انتاج لغة السي .

لاتنسى أيضا برمجة الالعاب .. اللغة الرئيسية لبرمجة الالعاب هي لغة السي بلس

5- أنا تعلمت لغة برمجة اخرى في السابق ( مثل لغة الفيجوال بيسك او لغة الدلفي او الجافا ) .. هل من الممكن أن يفيدني هذا بشيء عندما أتعلم لغة السي ؟

نعم .. اتقانك للغة اخرى يسهل اتقانك للغة السي ..

فلغات البرمجة تشترك في كثير من الامور .. فهي تتكون من متغيرات ومصفوفات ودوال وتراكيب وكائنات ..

لكن يجب عليك أن تكون مستعدا للتأقلم مع لغة السي .. فستجد بعض الاختلافات والفروق .. وتحتاج وقت لاتقانها .

6- ماهي المدة التي أحتاجها لاتقان لغة السي ؟

هذا يعتمد على طريقتك في التعلم .

فاذا كنت يوميا تتعلم هذه اللغة .. فبامكانك تعلمها في مدة لاتزيد عن خمسة أشهر .

7- أريد تعلم هذه اللغة واشتريت ونزلت وقرأت كتب ... وانا متحمس جدا .. لكن أين أكتب الكود ؟ ؟ ألا يوجد برنامج للغة السي يقوم بتحويل الكود الى برنامج ؟

شكر : للاخ AmR EiSa لتعديله على هذا الجواب:

حسنا, أنت تحتاج لشرح بعض المصطلحات :

البرنامج الذي تكتب فيه ( كود لغة السي ) تستطيع أن تكتبه بأي محرر نصوص .. وليكن المفكرة .. ولكن توجد برامج توصف بأنها بيئة تطوير IDE .. والذي يقوم بتحويل الكود الى ملف معين يسمى (COMPILER) الكومبايلر او المترجم او المصرف ...

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

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

أما اذا أردت مزيد من التفصيل .. فنقول :

يوجد عدة مترجمات .. مثلا مترجمات مايكروسوف و أيضا البورلاند .. وايضا GCC وغيرها .

ثم يوجد ما يسمى بالرابط linker .. المترجم والرابط يقومان في النهاية بإنشاء الملف التطبيقي .

وتترجم الكود عن طريق موجه الاوامر ..

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

مسألة أخرى وهي أنواع ملفات السي بلس :

ملفات السي كثيرة وتختلف من مترجم الى آخر ..

ولكن أهمها :

ملف إمتداده

.cpp - c

ملف إمتداده

.h او hpp . ( ويسمى الملف الرأسي ( header file )

ويوجد ملف ثالث هو الذي يقوم بتجميع مشروعك .. يعني لنفرض عندك 15 ملف cpp و 15 ملف h من الصعب أن تفتحها كلها يدويا

بالتالي يوجد ملف ثالث يختلف من مترجم لاخر يقوم بتجميع مشروعك من هذه الملفات :

ملف امتداده :

.dsw او dsp وهو من ملفات مترجم الفيجوال سي 6 .

dev وهو من ملفات المترجم dev-cpp . وغيرها ....

نعود مرة أخرى للمترجمات .. الاسئلة والأجوبة التالية ستوضح لك أي مترجم تختار وكيف تعمل عليه .

8- ما أفضل المترجمات ؟

يجب أن تعرف أنه يوجد فرق بين المترجم والمحررات المرئية IDE ..

بعض المترجمات تأتي بمترجم + واجهة للعمل عليه مثل مترجمات مايكروسوفت ,

وهنا مترجمات تأتي بدون واجهة ... ونستعمل برامج أخرى لتسهيل العمل على هذا النوع من المترجمات .. وتسمى تلك البرامج بالIDE .

أما المترجمات فهي :

1- 1- Visual Cpp : وهو عدة اصدارات .. 6 ثم 2003 ثم 2005 ,والان 2008 وكلها من انتاج مايكروسوفت .. يوجد اصدار مجاني لكن لا انصح به لان ينقصه عدد من المكتبات الاضافية , لذلك حاول الحصول على النسخة الكاملة .. المترجم هو أفضل المترجمات حاليا للويندوز. 2- ِC++ builder : ( شكر للاخ B.M.AbdelAziZ على الاضافة) http://www.codegear.com/products/cppbuilder غير مجاني .. ولست متأكد بعد من وجود نسخة مجانية . من يملك معلومات أكبر عنه فليزودني بها أو يعدل على هذا الموضوع 3- Dev-cpp : هو عبارة عن محرر IDE يستخدم المترجم MinGW .. هو كاف لمن يريد تعلم لغة السي بلس وبرمجة تطبيقات الويندوز .. وهو مجاني . 4- CodeBlocks: أيضا هو عبارة عن IDE يعني محرر .. وستخدم مترجمات أخرى .. منها MinGW .. أيضا مجاني ويعمل على الويندوز و لينكس . http://www.codeblocks.org/ 9- أريد تطبيق أول برنامج لي في لغة السي بلس .. باستخدام Visual Cpp 6 .. هل من الممكن المساعدة ؟ اقرأ هذا الدرس . المترجم : visual c++ 6 10- أريد تطبيق أول برنامج لي في لغة السي بلس .. باستخدام Visual Cpp 2005 .. أو Visual Cpp 2008 , هل من الممكن المساعدة ؟ اقرأ هذا الدرس 11- أريد تطبيق أول برنامج لي في لغة السي بلس .. باستخدام Dev-Cpp .. هل من الممكن المساعدة ؟ اقرأ هذا الدرس 12- طفشت من الشاشة السوداء .. هل يمكنني أن أطور برامج مرئية فيها أزرار ورسومات ؟ نعم .. لكن تذكر أن لغة السي بلس تعمل على أكثر من نظام .. لذلك .. في كل نظام يوجد طريقة خاصة لانشاء برامج مرئية .. نذكر منها : 1- Win32 API : هي عبارة عن مجموعة من الدوال والتراكيب التي منها تم بناء نظام الويندوز .. موجودة في ملفات DLLs مثل GDI .. ( التعريف ليس دقيق) . أي شيء تراه في الويندوز أمامك هو نتيجة لدالة من هذه الدوال .. الجافا والسي شارب والاسمبلي .... كلها ومن اجل انشاء برنامج مرئي .. تستخدم الWin32 API بشكل مباشر أو غير مباشر .. ميزة الWin32 API هي أنها الأساس والقاعدة .. لو فهمتها فهمت أصول البرمجة لويندوز , كما يمكن تطوير برامج من خلالها باستخدام Dev-Cpp أو Visual Cpp , ويكفيك تعلم لغة السي فقط لتتعلمها . وعيوبها .. أنها طويلة + خاصة لنظام الويندوز . 2- MFC : مكتبة تقوم بتغليف الWin32 API بطريقة كائنية OOP .. ميزتها أنها أسهل من Win32 API فقط لمن هو وصل لدرجة الاحتراف في السي بلس بلس ..وفهم الOOP, وعيوبها أنها خاصة بالويندوز وخاصة بمترجمات مايكروسوفت Visual Cpp . 3- QT : تعمل على أكثر من نظام .. وعيوبها انها مجانية فقط للمشاريع الغير تجارية + لاتعمل على Visual Cpp انما على المترجمات المجانية الاخرى . ( أنا هنا أتكلم عن النسخة المجانية من qt ) . 4- .. عشرات المكتبات الاخرى ... لايتسع المقام لذكرها .
No comments

Thursday, August 3, 2017

دالة الإخراج في لغة الجافا : System.out.print


دالة  الإخراج في لغة الجافا  :              

System.out.print







دالة  الإخراج في لغة الجافا  :              
System.out.print
وهي من الدوال الهامة في لغة الجافا وهي تقوم بطباعة المخرجات سواء كانت عددية أو حرفية .

ولتوضيح عمل  هذه الدالة سوف يتم دراسة بعض الأمثلة :
مثال( 1 )المطلوب عمل برنامجا يقوم بطباعة العبارة Hello Egypt.
public class  HelloEgypt
 {
     
     public  static  void  main ( String  [ ] s)
              {                

                  System.out.print("Hello  Egypt") ;
     
                      }
 }     
شرح البرنامج            
2. السطر الأول    


وهذا هو السطر الأول في البرنامج وهو يتكون من:

Public  (  الفصيلة عامة ) ائما تسبق تعريف الفئة أو الفصيلة Class وهي تعني أن هذه الفئة أو أي يمكن لأي فئة أخرى في البرنامج استخدام عناصر هذه الفئة .لأن برنامج الجافا قد يتكون من أكثر من فئة class.
  class   وهنا يتم بداية الفصيلة

HelloEgypt             اسم الفصيلة ( البرنامج ) ولقد تم تسميته هنا بالاسم الذي نريده .
 ولابد هنا أن نشير إلى نقطة هامة جدًا وهي أنه عند حفظ ملف الجافا لابد أن يتم حفظه بنفس اسم الفصيلة وبنفس شكل الحروف والمسافات وفي مثالنا هذا سيكون الاسمHelloEgypt.java .
{         قوس بداية تعريف الفصيلة . 

3. السطر الثاني  

viod        أي أن الدالة بعد تنفيذ البرنامج لن تعود بأي قيم.

main     نقطة البداية لوظيفة الفصيلة main method .

( s  (String [ ]الجملة الموجودة داخل قوسي البداية للدالة main وهي String  s[ ] تعني مصفوفة من النوع الحرفي وتسمى s لتخزين جملة الطباعة في البرنامج .

وكما قلنا من قبل أن لغة الجافا هي لغة حساسة لحالة الأحرف لذلك يجب ملاحظة أن حرف S في كلمة String يجب أن يكون حرفاً كبيراً (capital letter) وإلا سيعطى البرنامج خطأ عند الترجمة .


السطر الثالث                     

 وهذا هو أمر الطباعة في لغة الجافا وسوف نتناوله بالتفصيل في الأمثلة القادمة .

                          وهنا يجب أن نلاحظ أن حرف S يجب أن يكون كبير (Capital letter)
   النص المراد طباعته ويجب أن يوضع بين علامتي تنصيص ("  ")                               وقوسين 
    لابد وأن تنتهي كل جملة (سطر أو أمر) بعلامة (;) 
  بعد ذلك يتم إنهاء البرنامج بقوسي النهاية حيث يمثل القوس الأول نهاية الوظيفة method 

        للدالة main  والقوس الآخر يمثل نهاية الفصيلة class . والشكل الآتي يبين ذلك :

     خطوات تنفيذ البرنامج                                            
1. نجري له عملية ترجمة كالآتي: 
Java c HelloEgypt.java  
إذا لم يكن هناك أخطاء لا تظهر أي رسالة ومعنى ذلك أن البرنامج صحيح لغويا وهنا يتم عمل (إنشاء ) ملف كلاس أي Hello Egypt. class .

2. بعد ذلك نقوم بعملية تشغيل البرنامج كالآتي:
Java Hello Egypt

فتظهر على الشاشة عبارة   Hello Egypt
وبذلك يكون قد تم تنفيذ البرنامج.
وكما هو معروف فأن خطوات كتابة وتنفيذ أي برنامج يمكن أن تكون كما بالشكل (1-12)
 

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

أمثلة على جملة الطباعة 
مثال( 2 ): ما هي مخرجات البرنامج التالي :
public class  Welcome {
     
     public  static  void  main ( String  s[ ] ) {

 System.out.print("Welcome to") ;

    System.out.print("Egypt") ;  
     
     }
 }
نلاحظ أنه عند تنفيذ هذا البرنامج ستظهر العبارة (Welcome to Egypt) على سطر واحد
وذلك تبعا لعبارتي الطباعة في السطر (3،4)

أما إذا أردنا أن تكون المخرجات على سطرين مختلفين فيتم إضافة حرفي (ln) على العبارة print ومعناها الانتقال إلى سطر جديد (new line) ويتم ذلك في السطر الثالث كالآتي :

 System.out.println ("Welcome to") ;

    System.out.print("Egypt") ;  
     
فتكون مخرجات البرنامج كالتالي:



welcome to Egypt

ويمكن تنفيذ نفس شكل المخرجات السابقة بسطر واحد وذلك عن طريق إضافة (\n) وتعني الانتقال إلى سطر جديد ويكون شكل البرنامج كالتالي :

  System.out.print ("Welcome to\n Egypt") ;
فتكون شكل المخرجات كالشكل السابق:

Welcome to 
Egypt
وفي هذه الحالة يتم إلغاء السطر رقم (4)
أما اذا أردنا طباعة عدة أسطر متتالية بأمر طباعة واحد فيتم ذلك بتكرار (\n) كالتالي:
  System.out.print ("One\n Two \n Three \n Four") ;

  فتكون المخرجات كالتالي:
One two three



أما اذا أردنا أن تكون المخرجات على مسافات أفقية متساوية فأننا نستخدم (\t) كالتالي:
 System.out.print ("One\t Two \t Three \t Four") ;

وتكون المخرجات كالتالي:


مثال (3): أكتب برنامج يقوم بجمع العددين (5+16)

ويتم ذلك بكتابة الأرقام المراد جمعها داخل أقواس جملة print ولكن من دون علامتي تنصيص
لأن علامتي التنصيص تكون دائما لطباعة الحروف وحتى اذا تم كتابة ارقام داخل علامتي التنصيص فأنها تعامل معاملة الحروف أي لا يمكن اجراء أي عمليات حسابية عليها .
ويكون شكل عبارة print كالتالي:
System.out.print (5+16) ;
ويكون الناتج (21) .


1-2-5 التعليقات Comment   
إن  أي مبرمج يحتاج في بعض الأحيان إلى إضافة بعض التعليقات والملاحظات الخاصة به و التي لا يتم تنفيذها في البرنامج ولكن فقط تذكره بالغرض من الأوامر التي يقوم بكتابتها .
ويمكن تعريف التعليقات كالآتي :
أنها الأسطر التي يتجاهلها مترجم الجافا، و لكنها تجعل البرنامج أسهل قراءة للمبرمج نفسه. بعبارة أخرى، أنها مجموعة الملاحظات التي يضعها المبرمج في برنامجه لتسهيل قراءته. 

والتعليقات في الجافا هي نفسها التعليقات الموجودة في لغة C++ كما سبق دراسته .

ومن أنواع التعليقات في الجافا  :
1. التعليق بسطر واحد
ويكون هذا السطر مسبوقا بعلامتي (//) كالآتي :

 
    أو يمكن كتابة التعليقات بجانب أسطر البرنامج كما يلي :




2. التعليق بعدة أسطر 

وفي هذه الحالة يمكن كتابة تعليق مكون من عدة أسطر كما يلي:
ويكون التعليق بين علامتي (/*   التعليق  */)







مثال (4 ): أكتب برنامج يقوم بجمع عددين أحدهما صحيح والآخر حقيقي.


 
ويلاحظ في السطر الأخير للبرنامج أنه تم كتابة (+C) .  وذلك لطباعة محتويات المخزن (C) أمام علامة (=) وعند تنفيذ البرنامج سوف تكون المخرجات كالتالي:








No comments

Tuesday, August 1, 2017

الكلمات المحجوزة في الجافا reserved words in java




الكلمات المحجوزة في اللغة
public finally abstract
return float boolean
short for break
static if byte
super implements case
switch import catch
synchronized instanceof char
this int class
throw interface continue
throws long default
transient native do
true new double
try null else
void package extends
volatile private false
while protected final

        



No comments

حروف وثوابت ورموز الجافا letters constant variable


حروف وثوابت ورموز الجافا  letters constant variable



أولا :حروف لغة الجافا     تتألف حروف لغة الجافا مما يلي :
1. الحروف الأبجدية (Letters) وهي الحروف الكبيرة (Capital Letters) من A إلى Z وكذلك الحروف الصغيرة (Small Letters) من a إلى z.
2. الأرقام العددية (Digits) من 0 إلى 9.
3. الحروف الخاصة (Special Characters) وهي تلك الحروف التي ليست بأعداد أو بحروف أبجدية ولكنها تكون على هيئة رموز كالآتي:  (+,-,/,//,<,>,$,#,%,(),||,!,[],!=,,;,”,…..)
 ثانيا الثوابت والمتغيرات     Constants & variables:
أولا : الثوابت :Constants 
وهى عبارة عن قيم ثابتة يراد الاحتفاظ بها طوال البرنامج ولا تتغير قيمتها أبدًا.
وتنقسم الثوابت في لغة الجافا إلى:-
1- ثوابت عددية Numeric Constants  
2- ثوابت رمزية   Non-numeric Constants
1- الثوابت العددية: 
يمكن تمثيل الثوابت العددية في لغة الجافا كالآتي:-
-الثابت العددي الصحيح : integer الثابت العددي الحقيقي Floating Constant
- هو عبارة عن عدد مكون من الأرقام من (0 إلى 9).
- لا يحتوي على فاصلة عشرية.
- يمكن أن يحوى الإشارة ( + أو - ).
مثال  (0، 12، 1000، -20،..........). 1. هو عدد مكون من الأرقام من ( 0 إلى 9)
2. يجب أن يحتوي على فاصلة عشرية
3. يمكن أن يحوي الإشارة ( +، - )
مثال    (421.5، 10.55، -67.99، ..)
تصنف الأعداد الصحيحة في لغة الجافا حسب طولها والسعة التخزينية لها في الذاكرة كما يلي :-
- الثوابت الصحيحة ( 19679، 40000)               تسمى ثوابت صحيحة طويلة long int.
- الثوابت (-16، 90 ، 55 )                              تسمى ثوابت صحيحة قصيرة short int.
- الثوابت (20000 ، 967 )                  تسمى ثوابت صحيحة بدون إشارة unsigned int.

2- الثوابت الرمزية Non-Numeric: 

 وهى عبارة عن رموز اللغة وتتكون من الحروف والأرقام وتكون بين علامتي تنصيص أو اقتباس.
ومن الأمثلة على الثوابت الرمزية ما يلي:-
"name" - "Khaled" - "12345" - "30+40 "))
وإذا أردنا أن نضع قيمة سوف تظل ثابتة داخل البرنامج في مكان في الذاكرة فأننا نستخدم العبارة final للإعلان أن هذه القيمة ستظل ثابتة طوال تنفيذ البرنامج مثل:



ويجب مراعاة أن اسم الثوابت constants يكون بالأحرف الكبيرة كاملاً و يفصل بين الكلمات كما يتم في المتغيرات مع ملاحظة أن الثوابت يتم تعريفها على أنها final .
 مثال لأسماء الثوابت :
                       EXIT_ON_CLOSE                       
                                 MY_NAME              
                      CLASS_VERSION
                                  MATH_PI
ثانيا : المتغيرات  Variables:
هي عبارة عن أسماء تحجز مواقع في الذاكرة حتى يتمكن البرنامج من تخزين البيانات فيها. 
هي عبارة عن وعاء يمكن تحميله بقيمة وهذا الوعاء يتغير حجمه حسب القيمة التي سوف توضع فيه.
قواعد تسمية المتغيرات:
- يمكن أن يبدأ الاسم بالحرف أو الشرطة السفلية ( _ ) under score أو علامة الدولار ($) ولكن لا يمكن بدء التسمية برقم ولكن يمكن أن نضع رقم بعد الحرف.
- لا يمكن تسمية المتغير بإحدى الكلمات المحجوزة 
للغة الجافا والجدول شكل (1-6 ) يبين هذه الكلمات .
- اسم المتغيرات variables يكون بالأحرف الصغيرة لكل الأحرف ويلاحظ عدم وجود أقواس.

أنواع المتغيرات 
1. – متغيرات أساسية    Primitive Variables        
أ -متغيرات رمزية (حرفية).                                      ب -  متغيرات عددية.
    2 – متغيرات مرجعية Reference Variables    
يجب الإعلان عن المتغير  قبل استخدامه 
كما يجوز تعريف المتغير وتخصيص قيمة له  فى نفس الوقت كالتالي:







أ- المتغيرات الحرفية Char: 
وتتضمن الحروف بكافة أشكالها والرموز والفراغات (مسافة فارغة) مثل:
char a,b;
a= 'a';    char var1;
b=' ';       var1=' ' ;
1. المتغيرات العدديةNumeric Variables :
أ) المتغيرات العددية الصحيحة :Integer
تتضمن قيم عددية صحيحة يمكن أن تأخذ قيمة تصل إلى 32767 وتكتب على الشكل التالي:                                                                                                 int a;     a=100;                         
int value ;  value=2*3;
ب) المتغيرات العددية الحقيقية :Floating Point 
تتضمن جميع الأعداد الحقيقية وتكتب على الشكل التالي:
float x;        x=5.2;
float x= 5.2                                                                                    
وهنا يجب علينا الانتباه لجملة الإعلان والتخصيص السابقة float x= 5.2    , إلا أن الحاسب يعتبره من النوع double أي يحجز له مكان 64 بت 
وللتغلب على المشكلة السابقة يتم الإعلان والتخصيص كالتالي:
                                                                                   float x= 5.2 f                  
أي يتم وضع حرف (f ) بعد الرقم لكي يتم حجز مكان له في الذاكرة مقداره 32 بت وبذلك نكون قد وفرنا في الذاكرة المستخدمة.

ج) المتغيرات العددية الحقيقة الطويلة Double:
هي نفس المتغيرات العددية الحقيقة ولكن يمكن تمثيلها في خمسة عشرة خانة 
وتكتب على الشكل التالي:
double x;  





تطبيقات على قواعد تسمية المتغيرات
أنواع البيانات والمتغيرات في لغة الجافا أحجام البيانات في الذاكرة
  
 العمليات الحسابية والمنطقية في لغة الجافا
1. الجدول شكل(1-9) التالي يبين أهم العمليات الحسابية  في لغة الجافا :








وهذه المعاملات قد تمت دراستها باستفاضة في منهج الصف الثاني.   والجدول  التالي يبين العمليات المنطقية:











No comments

Monday, July 31, 2017

الشكل العام لبرنامج الجافا Generalform of Java program r


           الشكل العام  لبرنامج الجافا 

Generalform of Java program 

           الشكل العام  لبرنامج الجافا  Generalform of Java program r

 }     
شرح البرنامج            
1. السطر الأول    


وهذا هو السطر الأول في البرنامج وهو يتكون من:

Public  (  الفصيلة عامة ) ائما تسبق تعريف الفئة أو الفصيلة Class وهي تعني أن هذه الفئة أو أي يمكن لأي فئة أخرى في البرنامج استخدام عناصر هذه الفئة .لأن برنامج الجافا قد يتكون من أكثر من فئة class.
  class   وهنا يتم بداية الفصيلة

HelloEgypt             اسم الفصيلة ( البرنامج ) ولقد تم تسميته هنا بالاسم الذي نريده .
 ولابد هنا أن نشير إلى نقطة هامة جدًا وهي أنه عند حفظ ملف الجافا لابد أن يتم حفظه بنفس اسم الفصيلة وبنفس شكل الحروف والمسافات وفي مثالنا هذا سيكون الاسمHelloEgypt.java .
{         قوس بداية تعريف الفصيلة . 

2. السطر الثاني  

viod        أي أن الدالة بعد تنفيذ البرنامج لن تعود بأي قيم.

main     نقطة البداية لوظيفة الفصيلة main method .

( s  (String [ ]الجملة الموجودة داخل قوسي البداية للدالة main وهي String  s[ ] تعني مصفوفة من النوع الحرفي وتسمى s لتخزين جملة الطباعة في البرنامج .

وكما قلنا من قبل أن لغة الجافا هي لغة حساسة لحالة الأحرف لذلك يجب ملاحظة أن حرف S في كلمة String يجب أن يكون حرفاً كبيراً (capital letter) وإلا سيعطى البرنامج خطأ عند الترجمة .  

السطر الثالث                     

 وهذا هو أمر الطباعة في لغة الجافا وسوف نتناوله بالتفصيل في الأمثلة القادمة .

                          وهنا يجب أن نلاحظ أن حرف S يجب أن يكون كبير (Capital letter)
   النص المراد طباعته ويجب أن يوضع بين علامتي تنصيص ("  ")                               وقوسين 
    لابد وأن تنتهي كل جملة (سطر أو أمر) بعلامة (;) 
  بعد ذلك يتم إنهاء البرنامج بقوسي النهاية حيث يمثل القوس الأول نهاية الوظيفة method 

        للدالة main  والقوس الآخر يمثل نهاية الفصيلة class . والشكل الآتي يبين ذلك :



No comments

مميزات لغة البرمجة جافا advantage of Java programming language




مميزات  لغة البرمجة جافا advantage of Java programming language





مميزات لغة الجافا
1. لغة الجافا غير مرتبطة بأنظمة التشغيل المختلفة  Java Is Platform Independent .
    2- تعتمد على أسلوب برمجة الأهداف   Object Oriented Programming .
3-إنشاء برامج ذات واجهة مستخدم .
     4- تصميم برمجيات تستفيد من كل مميزات الإنترنت Java Applet  .

شرح لأهم مميزات لغة الجافا كما ذكرناها في النقاط السابقة :

1. لغة الجافا غير مرتبطة بأنظمة التشغيل المختلفة Java Is Platform Independent 
ومعنى ذلك إنه يمكن نقل البرامج (المكتوبة بلغة الجافا) بسهولة من نظام تشغيل إلى آخر.
وفي المقابل يمكن القول إنه لا يمكن تشغيل برنامج WORD مثلا والخاص بنظام تشغيل ويندوز(WINDOWS) على جهاز حاسب آخر يعمل بنظام تشغيل مختلف مثل  يونيكس (UNIX) أو نظام تشغيل لينكس (LINUX) أو أي نظام تشغيل آخر غير نظام  WINDOWS والمستخدم مع أجهزة الحاسبات المختلفة. ويرجع ذلك  لأن برنامج WORD بشكل عام مكتوب بلغة 

C++/C)) والتي تعطي ملف من نوع EXE خلال عملية تسمى عملية الترجمة COMPILATION وبذلك يكون الملف الناتج مرتبطاً ارتباطاً كلياً بنظام التشغيل.
أما بالنسبة للغة الجافا فالوضع مختلف حيث يوجد وسيط بين البرنامج وبين نظام التشغيل وهذا الوسيط يسمى (Byte Code Interpreter) أي الترجمة على مستوى البايت. وكذلك يمكن تسميته بالآلة التخيلية للجافا (Java Virtual Machine). ويوضح الشكل (1-2) خطوات تشغيل برنامج مكتوب بلغة ( cأو c++) .





2. تعتمد لغة الجافا على أسلوب برمجة الأهداف Object Oriented Programming
حيث وفرت كثيرا من الجهد الذي كان يبذل باستخدام البرمجة التقليدية . فقد كانت البرمجة التقليدية توفر للمبرمج مكتبة من الدوال إضافة إلى تركيب تقليدي للبرنامج وعلى المبرمج أن يستعمل الدوال مع تركيب البرنامج لإنشاء التطبيقات المختلفة مما يضطره لكتابة السطور الكثيرة أكثر من مرة؛ و لقد كانت وحدة بناء البرنامج هي الدالة function. في حين أتت البرمجة بواسطة الأهداف بفكرة جديدة هي إنشاء عناصر متكاملة تحتوي على بيانات ودوال هي أساس إنشاء البرنامج. وبالتالي أصبحت وحدة بناء البرنامج وحدة كبيرة هي الفصيلة أو الفئة Class أو العنصر Object مما سهل واختصر الكثير من الوقت والجهد.
وسوف نتحدث على هذه النقطة بالتفصيل في الباب الثاني .

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

4- تصميم برمجيات تستفيد من كل مميزات الإنترنت Java Applet  .
  وهي نوع من التطبيقات التي صممت خصيصا للإنترنت. حيث يقوم المطور ( Developer ) بإعداد   هذا البرنامج Applet   ثم يتم استدعاءه من خلال ملف HTML بشرط تحميل برنامج Applet   على الخادم (Server) الموجود عليه ملف HTML. فيتم عرض هذا التطبيق من خلال صفحة الانترنت عندما يستعدي المستخدم هذه الصفحة.





No comments

مقدمة عن لغة البرمجة جافا introduction to java language


مقدمة عن لغة البرمجة جافا introduction to java language







تعتبر لغة الجافا من اللغات القوية جداً في مجال إنشاء التطبيقات المختلفة سواء كانت هذه التطبيقات 
تعمل منفردة على أجهزة الكمبيوتر الشخصي أو تطبيقات الإنترنت أو التطبيقات المختلفة للأجهزة المحمولة , مثل الموبايل والمفكرات الإلكترونية  وهكذا.      
ولقد قامت شركة صن (Sun Microsystems) باختراع وتطوير هذه اللغة. وأصبحت شركة صن مملوكة لشركة أوراكل وبالتالي انتقلت ملكية الجافا لأوراكل . وكان الهدف عند اختراع لغة الجافا هو عمل لغة قادرة على برمجة نظم التشغيل لجميع الأجهزة من حاسبات عملاقة (mainframes) إلى الأجهزة الصغيرة مثل مشغلات MP3 ولقد اختارت الشركة صورة فنجان القهوة لتمثيل هذه اللغة .

قبل البدء في عملية البرمجة ( أي كتابة البرنامج المطلوب تنفيذه ) بلغة الجافا لابد من توافر العدة اللازمة (Tool Kit) . وهذه العدة عبارة عن البرامج اللازمة لعملية كتابة البرنامج نفسه ونقول أننا كتبنا برنامج بلغة الجافا . بعد ذلك تأتي عملية الترجمة لهذا البرنامج وهي ما نطلق عليها عملية الترجمة (compiling).
والحقيقة فأنه يوجد أكثر من طريقة لكتابة برامج الجافا وترجمتها نوجز منها :
1. استعمال المكتبة (JDK) وهي اختصار JAVA DEVELOPMENTE KIT من إنتاج شركة صن مع أي محرر نصوص وليكن برنامج Notepad الموجود في الويندوز.
2. استعمال برامج وسيطة تسهل عملية الكتابة والترجمة وتصحيح الأخطاء مثل برنامج   (Net Beans – Jcreator …).
   وسوف نتناول في الجزء الخاص بالمعمل كيفية تثبيت هذه البرامج على جهاز الحاسب وكيفية       التعامل معها. والشكل ( 1-1  ) يبين كيفية عمل لغة الجافا .


ويوجد عدة نسخ للغة الجافا هي :-
1. J2SE: هي اختصار ل Java 2 Standard Edition يتم من خلالها دراسة اللغة وإنشاء التطبيقات المختلفة لتشغيلها على جهاز الحاسب desktop Application)). وسوف تكون هي موضوع دراستنا في هذا الكتاب.
2. J2EE: هي اختصار ل Java 2 Enterprise Edition وهي تزودنا بالتطبيقات الكبيرة على مستوى الشركات الكبيرة.
3. J2ME: هي اختصار ل Java 2 Micro Edition فهي تخص الأجهزة اللاسلكية (wireless devices) بشكل عام يعني على أجهزة المحمول وغيرها.






No comments

Sunday, July 30, 2017

دراسة بعض الطرائق المهيكلة لتحليل وتصميم نظم المعلومات study for system analysis methods structural method


دراسة بعض الطرائق المهيكلة لتحليل وتصميم نظم المعلومات study for system analysis methods structural method



دراسة بعض الطرائق المهيكلة لتحليل وتصميم نظم المعلومات 

رغم الميزات التي تتمتع بها الطرائق غرضية التوجه، ورغم حداثتها وانتشارها الواسع إلا أننا لن نعتمد عليها في دراستنا العملية عند تحليل وتصميم نظام العمليات الإحصائية في المكتب المركزي للإحصاء وذلك للأسباب التالية: 
أ‌. نظراً لضعفها في التعبير عن سلوك النظام والمشاكل التي يعاني منها، حيث يجري التحليل على مستوى أعلى من التجريد فمخطط الأصناف Class Diagram مخطط جيد لكن الأصناف في حد ذاتها هي كيانات على مستوى منخفض ولا يمكن لها أن تصف ما يقوم به النظام ككل باستخدام الأصناف فقط فإن الأمر يشبه محاولة فهم كيفية عمل الحاسب من خلال فحص مكونات اللوحة الأم .
ب‌. لعل الاختلاف الأهم والجوهري بين الطرائق الغرضية التوجه والطرائق المهيكلة يكمن في مرحلة تنفيذ النظام نظراً لاعتمادها على مبدأ الأغراض والتي تتمتع باستقلاليتها، وتتميز بمبدأ الكبسلة وإخفاء المعلومات مما يجعل صيانة النظام باستخدام هذه المنهجية أكثر سهولة حيث يمكن إجراء التعديل في كل غرض على حده دون أن يؤثر ذلك على بقية الأغراض، كما يمكن أن تكون الأغراض في التصميم الغرضي التوجه قابلة لإعادة الاستخدام، وهذا ما يمكن أن نحصد نتائجه في توفير الوقت والجهد في تطوير مشاريع تحتوي نفس الأغراض حيث لا يمكن تحقيق ذلك في التصميم المهيكل إلا من خلال بناء وظائف متخصصة بذلك. إلا أنه من الجدير بالذكر أنه يمكن الانطلاق من التصميم المهيكل إلى الغرضي التوجه بسهولة حيث يمكن تحويل الكيانات Entities إلى أغراض Objects وتصبح العلاقات بين الكيانات هي العلاقات بين الأغراض .
ت‌. مازالت الطرائق غرضية التوجه باستخدام لغة النمذجة الموحدة UML قيد التطوير فقد كان أول إصدار لها في عام 1997  
نظراً لهذه الأسباب فقد تم دراسة أهم الطرائق المهيكلة  لاختيار الأفضل فيما بينها وتطبيقها على نظام العمليات الإحصائية في التحليل والتصميم. 
YOURDON
يعتبر Edward Yourdon واحداً من أهم رواد تطوير منهجية تحليل وتصميم نظم المعلومات باستخدام الطرائق المهيكلة، فقد كان لأفكاره عبر السنين تأثيرٌ واضحٌ في تطوير هذه المنهجية، حيث طورت أغلب الأساسيات التي تكرس الحاجة إلى بناء نموذج يحقق متطلبات النظام الحالي، ولهذا تشجع المطورون على استخدام نموذج YOURDON في تحليل النظام أو ما يسمى النموذج الرئيسي، وهو نموذج منطقي لمتطلبات ذلك النظام والذي يتألف من عنصرين:
أ‌. النموذج البيئي: وهو النموذج الذي يعرض حدود النظام المطلوب في مخطط Context Diagram ، وقائمة بالأحداث مع وصف مختصر للأسباب التي تستدعي اقتناء النظام.
ب‌. النموذج السلوكي: وهو النموذج الذي يوضح كيفية عمل النظام ضمن حدوده، باستخدام مخططات متعددة وهي: 
1. مخططات تدفق البيانات Data Flow Diagrams وتبين العمليات التي ينجزها النظام، وتدفق هذه البيانات بين هذه العمليات.
2. مخططات علاقة الكيان Entity Relationship Diagrams وتوضح الكيانات التي يستخدمها النظام والعلاقة بين هذه الكيانات.
3. مخططات انتقال الحالة State Transition Diagrams وهي المخططات التي تقوم بنمذجة الوقت وفقاً لسلوك النظام عارضةً الحالات التي يستطيع فيها هذا الأخير أن يحقق الاتصالات الفعالة بين مختلف الحالات.
يعبر هذان النموذجان عما يقوم به النظام بصورة متكاملة باستخدام الأدوات والتقنيات المناسبة لذلك، مع ضرورة الأخذ بعين الاعتبار ما يلي:   
1. الحدود الفاصلة بين النظام الحاسوبي والعمليات اليدوية. 
2. طبيعة ونوع واجهات الحاسوب المعدة للاستخدام.
3. اعتبارات تنفيذ عمليات النظام كزمن الاستجابة أو نظام الأمان.
1.1.9.2. ميزات وعيوب YOURDON 
أ‌. تشكل هذه الطريقة مصدراً جيداً لتحليل وتصميم نظم المعلومات.
ب‌. تعتمد على الخبرات العملية للقائمين بتنفيذ عملية تحليل وتصميم النظام.




ت‌. طريقة مناسبة لأغلب التطبيقات فهي مناسبة للتطبيقات التجارية كما هي مناسبة لأنظمة الزمن الحقيقي.  
ث‌. تستخدم أدوات وتقنيات متعددة كالمخططات والتمثيل البياني.
أما عيوب هذه الطريقة فتتمثل في أنها لا تعتمد طريقة توصيف واضحة للنظام كما في الطرائق المهيكلة الأخرى.
2.9.2. JACKSON 
يعتبر كل من Michael Jackson و John Cameron من مطوري نظام جاكسون المطورJackson System Development. :JSD، والذي تم استخدامه بشكل واسع في بريطانية وخاصة في المؤسسات التي وجدت في هذه المنهجية الطريقة لتطورها ونجاحها. 
يغطي JSD دورة حياة النظام من التحليل إلى الصيانة، وتتألف من ست خطوات متتالية وهي: 
أ‌. عمل الكيان: وفيها يقوم المطور بفحص العالم الحقيقي الذي سيتعامل معه نظام المعلومات، لتوصيف هذا الأخير بلغة الكيانات المتشابكة، وتحديد الأعمال التي سيقوم بإنجازها.  
ب‌. بناء الكيان: وتتضمن هذه الخطوة فحص عنصر الزمن في نظام المعلومات بحيث يتم ترتيب كياناته بحسب تسلسلها الزمني.  
ت‌. النموذج الأولي: ويتم في هذه الخطوة وصف العالم الحقيقي ليتم بعدها بناء نموذج العمليات ليحاكي نظام المعلومات كيانات وأحداث العالم الحقيقي. 
ث‌. الوظيفة وفيها يتم تحديد الوظائف التي ستنتج المخرجات المطلوبة من النظام.
ج‌. توقيت النظام: وتتضمن دراسة جدولة عمليات النظام بغية التأكد من أن الوظائف التي ستنتج المخرجات المطلوبة من النظام صحيحة.
ح‌. التنفيذ: وفيها يتم تحديد المكونات المادية (الصلبة والمرنة) المطلوبة لتنفيذ نظام المعلومات بغية تحويل النموذج إلى نموذج مناسب للعمل في بيئته.  
1.2.9.2. ميزات وعيوب JACKSON
أ‌. طريقة ملاءمة لتطوير أنظمة الزمن الحقيقي، التي تهتم بشكل فعال بعنصر الزمن في النظام، وبتعاقب الأحداث أكثر من اهتمامها بالبيانات.
ب‌. تعتمد طريقة JSD بشكل كبير على استخدام النماذج التي توصف النظام توصيفاً واضحاً من خلال تحديد كياناته والأعمال التي يقوم بها كل منها


ت‌. يتمتع النظام الذي تم تحليله وتصميمه باستخدام هذه الطريقة بمرونة عالية، فهو يقبل إدخال التعديلات المختلفة بغية مواكبته لمتطلبات النظام.  
إلا أن المشكلة الرئيسية في JSD هي الصعوبة الأولية في فهم بعض مبادئه.
INFORMATION ENGINEERING 3.9.2
تم تطوير هذه الطريقة من قبل I.R. Palmer ورفاقه في منتصف عام 1970، فهي فضلاً عن كونها طريقة تقنية لتحليل وتصميم نظم المعلومات فإنها فلسفة لإدارة هذه النظم، لكن في الحقيقة عند اعتماد هذه الطريقة في تحليل أي نظام لا بد من التركيز على مجموعة من الاعتبارات والتي تتمثل بما يلي:
أ‌. ستكون نظم المعلومات مركزاً لديمومة وبقاء ونمو الأعمال، ولذا لا بد من أن يكون التخطيط لإنجاز وتنفيذ هذه الأعمال تخطيطاً عالي المستوى.
ب‌. سينتج عن تحليل وتصميم النظام الذي ينظر إليه على أنه مجموعة من العناصر المستقلة عن بعضها أنظمة غير متكاملة، التحكم بإدارتها صعب، ذات تكاليف صيانة مرتفعة، لا تتمتع بالمرونة الكافية للاستجابة السريعة للمتغيرات في ظروف الأعمال.
ت‌. استخدام مفتاح المرونة والاستجابة لتطوير نماذج البيانات المشتركة، فهي تدعم المجالات السليمة لأنظمة المعلومات. 
ث‌. ينتج عند اعتماد هندسة التطبيق الصارمة في تحليل وتصميم الأنظمة نظاماً جيد التصميم، يتمتع ببنية قوية، ويلبي احتياجات المستخدمين بشكل أفضل.
ج‌. أدوات CASE: Computer Aided  Software Engineering هي أدوات حاسوبية منهجية لتكوين، وتطوير، وتشغيل، وتحديث، وصيانة البرمجيات المستخدمة في نظم المعلومات المحوسبة. 
ح‌. تستخدم هذه الطريقة العديد من المخططات التقنية وهي:
أ‌. مخططات تفكيك العمليات. 
ب‌. مخططات تدفق العمليات.
ت‌. مخططات علاقة الكيان.
ث‌. مخططات الأحداث ومواد الكيان.
2.3.9.2. ميزات وعيوب INFORMATION ENGINEERING
أ‌. تقدم إطاراً شاملاً للعمل في تطوير أنظمة المعلومات، مع التعريف بمجموعة الأدوات المتكاملة التي ستدعم تحليل وتصميم النظام وعمليات تطويره. 

ب‌. تستخدم هذه الطريقة عبر مكوناتها التحليلية والتصميمية للنظام العديد من تقنيات التمثيل البياني وتتضمن مخططات تمثيل بياني لعمليات التفكيك، مخططات بيانية لمصادر البيانات، مخططات تمثيل بياني للعلاقة الأولية، ومخططات تمثيل بياني لقوالب العمليات الأولية.   
ت‌. تنظر إلى جميع مخططاتها بشكل متساوي من حيث الأهمية، ومن حيث إجراء الفحوصات مما يتيح للمحلل الحرية في نمذجة الأنظمة بطرق وزوايا مختلفة.
ث‌.  يمكن الحصول على أكبر الفوائد من استخدام هذه الطريقة IE فقط إذا تم استخدامها بالكامل وفي حال تحقق الشروط التالية ذلك لأنها تعتمد على مبدأ إما أن يكون هناك تقييماً جيداً لكل مراحل النظام، وإما أن لا يكون: 
1. أن يلتزم باستخدامها شخص ذو كفاءة عالية ويمكن أن يكون خبيراً تنفيذياً رئيسياً CEO: Chief Executive Officer
2. استخدام أدوات CASE الداعمة لتحليل وتصميم النظام.
3. تحكم مركزي قوي لتطوير البنى التحتية متضمنة الأدوات والطرق وقاعدة البيانات المشتركة.
ج‌. إنتاج أنظمة تلبي احتياجات مستخدمي النظام شريطة حماية قاعدة البيانات المشتركة ومجموعة الأدوات المستخدمة التي نالت الاستحسان.
ح‌. صرامة التطبيق في تطوير النظام تمنح تصميماً جيداً، يلبي احتياجات مستخدميه، ويتمتع بمرونة عالية في قبوله التعديلات المختلفة، لذلك لا بد من صرامة تحليل وتصميم النظام، إذ يتم اشتقاق قاعدة البيانات وشيفرة البرنامج منطقياً من هذا التحليل، بالإضافة إلى ذلك يجب أن يكون النظام قابلاً للصيانة نظراً للتغير المستمر في متطلباته كنتيجة لتغيرات نماذج الأعمال. 
إلا أن المشكلة الرئيسية في التطبيق الأولي لـ IE التكلفة العالية جداً، والتي لا تجني عائدات مالية فورية، مما يترتب على CEO رئيس مجلس الإدارة للمؤسسة أن يكون حيوياً متفهماً لكل التقنيات المضمنة مع صعوبة تبرير ضرورات الاستثمار تجاه العائد الذي سيحتاج لعدة سنوات مستقبلية للحصول علي

2. SSADM 
تعتبر SSADM: Structured Systems Analysis and Design Method طريقة مهيكلة لتحليل وتصميم نظم المعلومات، والمستخدمة بشكل مفضل في مشاريع الحكومة البريطانية، ظهرت لأول مرة في بداية عام 1980، عندما بحث CCTA (الوكالة المركزية للاتصالات والحواسيب) عن طريقة ناجحة فعالة ومؤثرة كثيراً في مشاريع الحكومة IT: Information Technology.
ومن أجل CCTA تم تطوير هذه الطريقة بشكل أولي من قبل كل من  Learmonth          و Burchett لإدارة الأنظمة، ففي كل إصدار جديد يتم تقديم مفاهيم وتقنيات جديدة إلى أن تم الوصول للإصدار الحالي، هذا وتعتبر الحكومة البريطانية المستخدم الرئيسي لهذه الطريقة، حيث يتركز استخدامها لهذه الطريقة في مشاريع القطاع العام، كما تستخدمها أيضاً هيئة فحوصات أنظمة المعلومات ISEB: Information Systems Examinations Board. وهي شركة فرعية لجمعية الكمبيوتر البريطانية، تمنح شهادة تأهيل معترف بها في استخدام SSADM معتمدة المؤسسات التدريبية في تعلم هذه الطريقة.
لقد أصبحت هذه الطريقة نموذجية في الأسواق الكبيرة نظراً لكونها مثبتة، مبرهن على صحتها، ومفتوحة، ومهاراتها متاحة بشكل واسع، وهذا ما شجع على استخدامها خارج بريطانية، فلها مجموعة كبيرة من المستخدمين في العالم.    
تعتمد هذه الطريقة في بنائها لنظام المعلومات على النموذج ثلاثي الأبعاد، فهي تعرض البيانات في النظام، الأحداث التي يجب على النظام الاستجابة لها، الوظائف في النظام كما يدركها المستخدمون. حيث ترتبط هذه العروض بعلاقة واسعة تؤمن درجة عالية من الصرامة في عمليات التحليل والتصميم، وهذه الطريقة تستخدم مجموعة من التقنيات الرئيسية:
أ‌. تحليل المتطلبات .
ب‌. نمذجة تدفق البيانات.
ت‌. النمذجة المنطقية للبيانات.
ث‌. المستخدم ودوره في النمذجة .
ج‌. تعريف الوظيفة .
ح‌. الكيان، نمذجة الحدث.
خ‌. تحليل علاقة البيانات. 
د‌. تصميم عمليات قاعدة البيانات المنطقية .
ذ‌. تصميم الحوار المنطقي.

هذا وإن هذه الطريقة موثقة في مجموعة كتيبات توصف:
أ‌. بناء مشروع نظام المعلومات IS: Information System بهذه الطريقة من النماذج، المراحل، الخطوات، المهام التي تعمل بها.
ب‌. مجموعة تقنيات التحليل والتصميم والتي يمكن استخدامها في مختلف مراحل المشروع. 
ت‌. سلسلة من التعريفات بالمنتج، تتضمن معيار التحكم بالنوعية الواجب تطبيقه في كل مرحلة. 
ث‌. يمكن لهذه الطريقة أن تتزاوج أو ترتبط مع طرائق أخرى من الطرائق المهيكلة لإدارة المشروع خاصة طريقة "CCTA's PRINCE" ومع البرمجة بشكل أساسي البرمجة المهيكلة لـ Jackson أو JSP.
إن هذه الطريقة تحد من استخدام النموذج الأولي للنظام، فلا تقدمه إلى التصميم إلا بعد أن تتحقق من متطلباته بوضوح، وفي الإصدار الرابع من SSADM استخدم العديد من المخططات المهيكلة التي تشبه Jackson يعرض البعض منها قصص حياة الكيان، مخططات تدفق البيانات، بناء البيانات المنطقية، تحليل علاقة البيانات، ولذلك فهي تشكل جزءاً من عمليات التحليل إلا أن التحديث وعمليات الاستفسار للنماذج بشكل خاص يمكن تطبيقها مباشرة باستخدام لغات برمجية.
1.4.9.2. ميزات وعيوب SSADM
تتميز طريقة SSADM لتحليل وتصميم نظم المعلومات بمجموعة من المزايا أهمها:
أ‌. طريقة مدروسة، أجري عليها تطويرات مختلفة إلى أن وصلت للمرحلة الحالية (الإصدار الرابع)، ولهذا يمكن استخدامها بثقة، كخطة موثوقة ومتوازنة من أجل تطوير النظام، ويرجع ذلك إلى دعم الحكومة البريطانية لهذه الطريقة، ولكونها مفتوحة، لا تحتاج لشهادة التبني لاستخدامها.
ب‌. طريقة رائجة، شائعة بين عامة الناس، ومستخدمة في مجالات الأعمال والصناعات.
ت‌. الفرق المؤهلة لاستخدام هذه الطريقة ليست كثيرة، إلا أنها متوفرة بأعداد معقولة.
ث‌. نظراً لكون هذه الطريقة مفتوحة، فإن العديد من الشركات تقوم بتوفير الاستشارات، التدريب، أدوات CASE وهذا يؤمن موقعاً تنافسياً لهذه الطريقة بين الطرائق الأخرى لتحليل وتصميم نظم المعلومات.
ج‌. كلفة الاعتماد لبناء نظام معلومات باستخدام هذه الطريقة منخفضة نسبياً.
ح‌. يوجد العديد من الكتب المتوفرة التي تشرح هذه الطريقة من مختلف المناظير: الإدارة، الممارسة، الاستخدام.  

خ‌. مصدر جيد لتحليل وتصميم نظم المعلومات بطريقة مألوفة، فأغلب تقنيات SSADM تشكل تطويراً للطرق الشائعة الاستخدام في هذا المجال.  
د‌. إلزامية التشارك مع مستخدم النظام وبشكل واسع، فهناك قرارات هامة تقع على عاتق المستخدم وهي خيارات نظام الأعمال وخيارات النظام التقنية المدروسة. 
أما عيوب SSADM فإنها تتمثل بما يلي: 
أ‌. رغم أن بناء SSADM منطقي وأن أغلب تقنيات هذه الطريقة قد أسست جيداً، إلا أن تعلمها يتطلب وقتاً طويلاً فقد دلت التجربة على أن عدد ساعات الدورة يجب ألا يقل عن 80 ساعة، كما أنها تتطلب أكثر من ذلك لبعض الأشخاص حتى يتمكنوا من اكتساب أقل قدر من المعرفة الأساسية لـ .SSADM   
ب‌. ينتج عن استخدام هذه الطريقة في تحليل وتصميم أي نظام كمية هائلة من الوثائق، مما يجعل ترتيب هذه الوثائق أمراً في غاية الصعوبة.
ت‌. طريقة معقدة تضخم المراحل الأولية للمشروع بشكل كبير.
5.9.2. MERISE
نشأت هذه الطريقة في فرنسا في عام 1978 بعد أن قامت وزارة الصناعة في عام 1977 مؤتمراً وطنياً هدفت من خلاله اختيار خبراء في مجال الحواسيب بغية اختيار طريقة لتصميم أنظمة المعلومات. كان المركز التقني للحواسيب CTI: Center Technique Information بالتعاون مع مركز الدراسات التقنية للتجهيزات هو من قام بتصميم MERISE حيث استخدمت بشكل واسع في منشئها، وقد دلت إحصائية عام 1989 على أن أكثر من نصف سكان فرنسا ممن يستخدمون الطرائق المهيكلة كانوا يستخدمون MERISE، كما استخدمت في كل من بلجيكا، واسبانيا، وإيطاليا الخ... مما جعل واضعيها يعملون دائماً على إدخال التحسينات في منهجية عملها. 
كثرت استخدامات هذه الطريقة بشكل واسع في المشاريع التجارية، إلا أنه يوصى باستخدامها في العديد من مشاريع القطاع العام، حيث تركز على عمليات التطوير اللازمة لأنظمة المعلومات، وتتوجه إلى مستويات دورة حياة النظام من تحليل المتطلبات، المواصفات، التصميم، إنتاج الشيفرة، التطبيقات، الصيانة. 
إن نموذج عمليات التطوير في MERISE يغطي جميع هذه العمليات والتي تتمثل بما يلي:
أ‌. المخطط الرئيسي لكامل المنشأة أو لجزء رئيسي منها.
ب‌. دراسة تمهيدية لعمل واحد أو لعدة أعمال.
ت‌. دراسة مفصلة تنتج النموذج المنطقي لنظام واحد أو لعدة أنظمة. 

ث‌. دراسة تقنية مفصلة عن التصميم لنظام واحد أو لعدة أنظمة. 
ج‌. إنتاج الشيفرة من أجل النظام أو الأنظمة التي تم تصميمها
ح‌. التنفيذ للنظام أو الأنظمة المطورة.
خ‌. الصيانة للنظام أو الأنظمة التي تم تسليمها.
ينتج هذا النموذج من ثلاثة دورات:
أ‌. دورة الحياة: وتمتد من اللحظات الأولى لتطوير نظام المعلومات حتى يصبح قيد الاستثمار مروراً بخلق هذا النظام ومختلف المراحل المتعلقة بصيانته ومتابعته.
ب‌. دورة القرار: وتمثل مجموعة الخيارات والقرارات الواجب اتخاذها طيلة دورة حياة النظام. 
ت‌. دورة التجريد: ويتضمن هذا الدور مجموعة النماذج التي تسمح بخلق نظام المعلومات. 
هذه الدورات الثلاث تعمل معاً وتعتمد كل منها على الأخرى، محددة ملامح مشروع نظام المعلومات IS.
تنتج MERISE عدداً من النماذج لنظام المعلومات وتتضمن:
أ‌. نموذج البيانات التصوري A conceptual data model ويعرض كيانات البيانات والعلاقات بينها، مواصفاتها...
ب‌. نموذج العمليات التصوري A conceptual process model ويعرض تفاعل الأحداث داخلياًً أو خارجياً في النظام، وما هي العمليات التي ينجزها (يحققها) النظام في الاستجابة لهذه الأحداث، كما يتضمن هذا النموذج القواعد التي يجب على النظام إتباعها أثناء الاستجابة للأحداث.
ت‌. نموذج البيانات المنطقي  A logical data modelويمكن تقديمه إما بالنموذج CODASYL أو بنموذج العلاقة، هذا ويوجد قواعد لرسم الخرائط لنموذج البيانات التصورية في داخل نموذج البيانات المنطقية.
ث‌. نموذج عمليات التنظيم A organizational process model ويبنى من نموذج العمليات التصوري مع إضافة تفاصيل حول أين وكيف تحدث مختلف العمليات المتعددة.
ج‌. نموذج البيانات الفيزيائية A physical data model ويتم التعبير عنها في لغة توصيف البيانات المختارة DBMS .
ح‌. نموذج معالجة العمليات An operational process model  ويتألف من بناء المكونات المادية (الصلبة والمرنة) أو مخططات متسلسلة لازمة لإجرائيات العمل مع بعض من الشروحات وعلى سبيل المثال كيف يمكن إنجاز العمليات حسب المواصفات.
هذا ومن الجدير بالذكر أن تقنيات CASE تتيح توليد بعض النماذج آلياً.
1.5.9.2. ميزات وعيوب MERISE

أ‌. تعتبر MERISE من الطرائق الأكثر استخداماً في تحليل وتصميم نظم المعلومات.
ب‌. MERISE بالغة الصرامة في تعاريفها وأدواتها، لا تترك مجالاً للخطأ، فهي تعتمد منهج Entity Association، وهذا ما يساعدنا في الحصول على نموذج مقيّس تماماً من مرحلة التصميم.
ت‌. سهولة تعلمها من قبل الطلاب المبتدئين، إذ ينتج نموذج عمليات التطوير في MERISE من ثلاث دورات: دورة الحياة، دورة القرار، دورة التجريد، وبمجرد فهم هذه الدورات يصبح المتدرب قادراً على استخدامها، وإنتاج النماذج المتعددة لنظام المعلومات: نموذج البيانات التصوري، نموذج العمليات التصوري، نموذج البيانات المنطقي، نموذج عمليات التنظيم، نموذج البيانات الفيزيائي، نموذج معالجة العمليات.
ث‌. MERISE واسعة الهدف فهي تشمل عدداً من مواضيع تطوير الأنظمة التي لا تشملها طريقة أخرى مثل SSADM أو YOURDON، والتي تميل كل منهما إلى التركيز على مواضيع وظيفية وتقنية، لا تشمل الأعمال التجارية والأغراض التنظيمية.
ج‌. تستخدم MERISE عدداً من العمليات التي تأخذ بالحسبان كل من الحالات الثابتة، والحالات الديناميكية في نظام المعلومات، حيث تؤمن نماذج العمليات التصورية والتنظيمية وسيلة قوية لنمذجة السلوك الديناميكي للنظام.
ح‌. يمكن استخدام MERISE كنموذج للأنظمة التجارية التي تتمتع بطابع المنافسة.
خ‌. تتعامل MERISE مع كل دورة الحياة لتطوير الأنظمة والتي تتضمن: الإنجاز، التنفيذ، الصيانة، حيث يمكننا القول أن هذه الطريقة هي أكثر تصورية من كونها إجرائية (عملية) عندما تصل إلى المراحل النهائية من التطوير. 
د‌. طريقة MERISE أكثر سهولة في تعلمها من الطرائق الأخرى.
ذ‌. تزيد MERISE من مرونة عملية تحليل وتصميم نظام المعلومات، فهي تسمح بإدخال أدوات وتقنيات جديدة.  
هذا بالإضافة إلى أن تطبيقات معالجة البيانات باستخدام هذه الطريقة هي تطبيقات موثوقة بدرجة كبيرة، تعطي نتائج سليمة 100%. 
إلا أن المشكلة الأساسية في MERISE تكمن في قلة المراجع التي تشرح هذه الطريقة باللغة الإنكليزية. 
بعد هذا العرض المفصل لبعض الطرائق المهيكلة في تحليل وتصميم نظم المعلومات فإننا نقف متسائلين ما هي أوجه التشابه والاختلاف بين هذه الطرائق. للإجابة على هذا التساؤل فإن الجدول التالي يوضح ذلك 
جدول رقم 3 نقاط التشابه والاختلاف بين الطرائق المهيكلة لتحليل وتصميم نظم المعلومات


نقاط التشابه بين الطرائق المهيكلة التي تم دراستها نقاط الاختلاف بين الطرائق المهيكلة التي تم دراستها
تعتبر جميع الطرائق المهيكلة التي تمت دراستها متكافئة، مبرهن على صحتها، تعطي حلولاً لنقاط الضعف التي يعاني منها النظام. تختلف الطرائق المهيكلة التي تمت دراستها في المنهج الذي تعتمده عند تحليل نظام المعلومات، فجميع الطرائق التي تم دراستها تعتمد منهج Entity Relationship عدا طريقة MERISE فهي تعتمد منهج Entity Association والذي لا يترك مجالاً للخطأ، حيث يساعدنا في الحصول على نموذج مقيّس تماماً من مرحلة التصميم، في حين أن منهجEntity Relationship يسمح بحدوث احتمالات كبيرة للخطأ، وعادة يتم تلافي الأخطاء باستخدام قواعد لتقييس التصاميم الناتجة ففي SSADM نجد ثلاثة مستويات: First Normal Formal،Second Normal Formal, Formal Third Normal Formal   
تعتبر جميع الطرائق المهيكلة التي تمت دراستها مصدراً جيداً لتحليل وتصميم نظم المعلومات، فهي تقدم إطاراً شاملاً للعمل في تطوير أنظمة المعلومات. تختلف الطرائق المهيكلة التي تمت دراستها في مدى ملاءمتها لكل نظام فطريقة JACKSON تناسب أنظمة الزمن الحقيقي، أما طريقة YOURDON فهي مناسبة لأغلب التطبيقات كالتطبيقات التجارية، كما هي مناسبة في الوقت ذاته لأنظمة الزمن الحقيقي. 
تستخدم جميع الطرائق المهيكلة التي تمت دراستها أدوات CASE والتي تساعد في تنفيذ عملية تحليل وتصميم النظام مثل برنامج  ,Power Designer Rational Rose...   تختلف الطرائق المهيكلة التي تمت دراستها باختلاف درجة توصيفها للنظام والتي تؤثر بشكل أو بآخر على درجة فهمها وتطبيقها من قبل مستخدميها وعلى الأخص بالنسبة للمبتدئين، فطريقة YOURDON لا تعتمد طريقة توصيف واضحة للنظام كما في الطرائق المهيكلة الأخرى مما يجعلها صعبة الفهم والتطبيق وعلى الأخص بالنسبة للمبتدئين. 
تعتمد جميع الطرائق المهيكلة التي تمت دراستها عند تحليل أي نظام على دورة حياة النظام والتي تبدأ بدراسة واقع النظام ثم تحليله وتصميمه ليتم بعدها تنفيذ النظام الجديد. تختلف الطرائق المهيكلة التي تمت دراستها باختلاف درجة مرونتها وقبولها لإدخال التحسينات والتعديلات عليه لتتمكن من مواكبة متطلبات تغيرات الأعمال، فالنظام الناتج عن استخدام MERISE يكون أكثر مرونة في إدخال التحسينات من النظام الناتج عن استخدام JSD. 
ه. 


تعتمد جميع الطرائق المهيكلة التي تمت دراستها على التمثيل البياني والمخططات في توصيف النظام القائم بغية تحليله وتصميمه بالشكل الذي يحقق متطلباته. تختلف الطرائق المهيكلة التي تمت دراستها باختلاف درجة صرامة مبادئ وتعاريف كل طريقة، حيث نجد   MERISEبالغة الصرامة في تعاريفها وأدواتها، لا تترك مجالاً للخطأ، فهي تعتمد منهج Entity Association، وهذا ما يساعدنا في الحصول على نموذج مقيّس تماماً من مرحلة التصميم، في حين أن طرائق تحليل النظم الأخرى تعتمد منهج Entity Relationship الذي يسمح في حدوث احتمالات كبيرة للخطأ، ويتم عادة تلافي الأخطاء باستخدام  قواعد لتقييس التصاميم الناتجة كما سبق وذكرنا.  
تعتمد جميع الطرائق التي تمت دراستها على استخدام النماذج بدرجات متفاوتة التي تحدد كيانات النظام والأعمال التي سيقوم بتنفيذها. تختلف الطرائق المهيكلة التي تمت دراستها في درجة التكلفة التي يتطلبها كل نظام فالمحلل الذي يعتمد في تحليل نظامه طريقة هندسة المعلومات فإنه سيتعرض لمشكلة وهي التكلفة العالية جداً والتي لا تجني عائدات مالية فورية، في حين نرى في كل من  SSADM، MERISE طريقة ذات تكلفة منخفضة نسبياً عند القيام بتحليل أي نظام. 
تختلف الطرائق المهيكلة التي تمت دراستها عن بعضها البعض باختلاف حجم التدريب اللازم لتعلم كل طريقة من هذه الطرائق، فطريقة SSADM ورغم أن بناء SSADM منطقي، وأن أغلب تقنيات هذه الطريقة قد أسست جيداً إلا أن تعلمها يتطلب وقتاً طويلاً فقد دلت التجربة على أن عدد ساعات الدورة يجب ألا يقل عن 80 ساعة، كما أنها تتطلب أكثر من ذلك لبعض الأشخاص حتى يتمكنوا من اكتساب أقل قدر من المعرفة الأساسية لـ SSADM وهكذا بالنسبة لبقية الطرائق الأخرى، في حين نجد في MERISE طريقة سهلة لا تستلزم الوقت الكثير لتعلمها.   
المصدر: إعداد الباحثة
وبهذا الفصل نكون قد وقفنا على مفهوم النظام، خصائصه، آلية عمله، أنواعه، مفهوم تحليل النظم وأهميته، دواعي تعديل النظام أو تغييره في المؤسسات، دورة حياة النظام، طرائق تحليل النظم، دراسة بعض الطرائق المهيكلة لتحليل وتصميم نظم المعلومات. لنبدأ بعد ذلك بتطبيق هذه المفاهيم على نظام العمليات الإحصائية في المكتب المركزي للإحصاء


No comments

طرق تحليل الأنظمة طريقة غرضية او هدفية التوجه system analysis methods objected oriented method


طرق تحليل الأنظمة طريقة غرضية او هدفية التوجه system analysis  methods  objected oriented method 







الطرائق غرضية التوجه  
وبحسب هذه الطرائق (OOD) Object-Oriented Design تحول التفكير في الوظائف والتفكير في المعطيات إلى التفكير في الأغراض Objects والتي تتمثل في أشياء نظرية وفيزيائية موجودة في الكون المحيط بنا. يملك الغرض حالة State وتعني مجموعة الظروف الواصفة للغرض فمثلاً حالة الغرض الممثل لحساب مصرفي تتضمن الرصيد الحالي. 
تعتمد الطرائق غرضية التوجه والمتمثلة بلغة النمذجة الموحدة UML: Unified Modeling Language على المفاهيم التالية عند بناء نموذج: 
أ‌. مفهوم التجريد Abstraction
ب‌. مفهوم الكبسلة Encapsulation 
ت‌. مفهوم إخفاء المعلومات Information Hiding 
لقد ورد العديد من التعاريف لهذه المفاهيم، وقد اعتمدنا تعاريف Berard في ذلك حيث يقول: "إن التجريد، والكبسلة، وإخفاء المعلومات، هي مفاهيم مختلفة ولكنها مرتبطة  فيما بينها بشكل كبير فالتجريد هو التقنية Technique التي تساعدنا في تحديد أي المعلومات الموصفة يجب أن تكون مرئية وأي المعلومات يجب أن تكون مخفية. أما الكبسلة فهي التقنية Technique التي يُجرَى خلالها تحزيم المعلومات وذلك لكي نخفي ما يجب أن يُخفى ونظهر ما يجب أن يُرى". 
في الحقيقة إن هذه المفاهيم جعلت الطرائق غرضية التوجه OOD تتميز بما يلي : 
1. نظام تشارك البيانات بين الأغراض محدود حيث تتخاطب وتتصل الأغراض مع بعضها من خلال تبادل الرسائل Exchange Message عوضاً عن تشارك الملفات. 
2. الأغراض هي كيانات مستقلة يمكن أن تتغير بسهولة لأنها تحتجز معلوماتها وحالتها ولا يوجد وصول أو تداول لهذه المعلومات من قبل الأغراض الأخرى، والتعديلات على واصفات غرض تتم بدون أي تأثير على الأغراض الأخرى. 
3. إنجاز الأغراض يمكن أن يتم على التوالي أو على التوازي. 
4. إن إتباع المنهجية غرضية التوجه يجعل النظام قابلاً للصيانة بسهولة لأن النظام مكون من أغراض مستقلة ويمكن إجراء التعديل أو إضافة الخدمة على الغرض نفسه دون أن يؤثر ذلك على الأغراض الأخرى.
5. الأغراض تلائمها المركبات القابلة للاستخدام ثانية Reusable وبالتالي يمكننا تصميم نظام من أغراض منشأة سابقاً.
6. هناك بعض الأصناف المستنتجة أثناء تحليل وتصميم بعض النظم تحاكي الكيانات الحقيقية والأغراض المقابلة لها وهذا يحسن من قابلية الفهم للتصميم 
تعتمد UML على مجموعة من المخططات في بناء النموذج وهي: 
مخططات حالة الاستخدام Diagrams Use Case، مخططات الأصنافClass Diagrams ، مخططات التعاون Diagrams Collaboration ، مخططات التتابع Sequence Diagrams ، مخططات الحالة Diagrams State، مخططات التحزيم Package Diagrams، مخططات المكونات Diagrams Component، مخططات التجهيز Deployment Diagrams 



No comments

طرق تحليل النظم الطريقة الهيكلية systems analysis methods structural method


طرق تحليل النظم الطريقة الهيكلية systems analysis methods structural method





الطرائق المهيكلة 
لقد وافقت أغلب المنظمات على أن هناك حاجة لوجود طرائق أخرى لتحليل وتصميم نظم المعلومات لتنتج النظام الجديد الذي يتمتع بمواصفات الأنظمة المرنة، والمتينة، المحققة لاحتياجات مستخدميها. وقد كانت هذه الطرائق: الطرائق المهيكلة Structured Approaches التي اعتمدت على أساس النظر إلى المسألة ثم تصميم مجموعة من التوابع الوظيفية Functions التي يمكنها إنجاز المهام المطلوبة لحلها. إذا تضخمت هذه التوابع يتم تجزئتها حتى تصير صغيرة بالحد الذي يتيسر فيه مناولتها وفهمها. هذه العملية تدعى التفكيك الوظائفي. تحتاج معظم التوابع الوظيفية إلى بيانات لتعمل عليها، وعادة يتم الاحتفاظ بهذه البيانات في قاعدة بيانات من نوع ما أو قد يحتفظ بها في الذاكرة كمتغيرات شاملة.
تميزت هذه الطرائق بالمزايا التالية:
أ‌. التعبير عن متطلبات النظام الحالي بوضوح أكثر. 
ب‌. تحديد أهداف النظام تحديداً واضحاً لا غموض فيها، دون تكرار في كل منها.  
ت‌. التركيز الكبير على التعاريف المستخدمة في النظام ليتم توفير احتياجات ومتطلبات النظام الحالي بناءً على هذه التعاريف.   
ث‌. تأمين المزيد من النسخ الاستشفافية للنظام التي تمكن من متابعة متطلبات العمل ابتداءً من مرحلة التحليل الأولية، ومروراً بمواصفات مختلف مستويات العمل، وانتهاءً بمرحلة التصميم التقني. 
ج‌. تصاميم النظام الناتجة عن استخدام الطرائق المهيكلة تصاميم أكثر مرونة من التصاميم الناتجة باستخدام الطرائق التقليدية، فهي تقوم على فكرة التجريد بحيث تنطبق على الحالة العامة للنظام، دون أن تكون متقاطعة بشكل مفرط مع المواصفات الفنية لخطط وبرامج عمل المنظمة.
ح‌. إن مشاركة مستخدم النظام في كل مراحل تطوير النظام تسمح بالحصول على ما يبغيه هذا المستخدم بصورة كاملة، فهو الخبير في تطبيقات النظام، ولذلك يفترض على المحلل ـ وبعد أن ينجز قسماً من البحث أو التوصيف لهذا الأخير ـ الطلب إلى المستخدم معاينة النتائج والقبول بها قبل المباشرة بالمرحلة التي تليها، كما يتوجب على محلل النظم تقديم مجموعة من الحلول الممكنة للمشكلة بحيث تمكن المستخدم نفسه من اختيار أنسب الحلول لتحقيق الغاية التي يرجوها.
خ‌. زيادة وثائق تحليل وتصميم النظام، التي تجعل عملية تطويره أقرب إلى الطريقة العلمية والتوضيح الهندسي.
هذا وبالوقت نفسه فقد وجد ما يعيب هذه الطرائق ولعل أهم عيوبها تتمثل بما يلي: 
أ‌. يتركز أغلب الجهد المبذول في تنفيذ مراحل مشروع نظام المعلومات في مرحلة كتابة واختبار البرامج، كما يتم بذل المزيد من الجهود في المراحل الأولية في المشروع أثناء التحليل والتصميم. 
ب‌. إن استخدام هذه الطرائق في تطوير النظام لا تعطي مستخدميه نتائج فورية، بل عليهم الانتظار لفترة طويلة إلى أن تنتهي عملية تحليل وتصميم النظام المدروس. 
ت‌. يبقى تحليل وتصميم النظام باستخدام الطرائق المهيكلة ملكاً فكرياً بحوزة من قام بتصميمه وتطويره، ويمكن أن نلحظ ذلك عند إجراء تغييرات محتملة في متطلبات النظام، فلا أحد يعرف المنهجية المتبعة في تصميم هذا الأخير سوى من قام بعملية التصميم، هذا وتكمن الخطورة في ذلك عند قيام المصمم بالقفل على استخدام النظام من أجل إضافة أسعار 
No comments

طرائق تحليل النظم الطريقة التقليدية systems analysis methods traditional method


طرائق تحليل النظم الطريقة التقليدية systems analysis methods traditional  method




طرائق تحليل النظم
لقد مرَّ النظام بتطورات عديدة في منهجية تحليله وتصميمه، ففي البداية ظهرت الطرائق التقليدية التي اعتمدت على مهارات الممارسين والخبراء المكتسبة من تطبيقاتهم المتعددة في تحليل وتصميم الأنظمة المختلفة، ثم ظهرت الطرائق المهيكلة في أواخر عام 1970 التي ما زال بعضها مستخدماً حتى وقتنا الحاضر لما تحمله من فوائد وميزات متعددة، إلا أن مسيرة التطوير لنظم المعلومات لم تتوقف عند الطرائق المهيكلة بل بقيت مستمرة إلى أن ظهرت الطرائق غرضية التوجه والتي تختلف عن الطرائق التقليدية والطرائق المهيكلة.  
1.8.2. الطرائق التقليدية 
بغية اقتراح النظام الذي يفي بمتطلبات المستخدمين واحتياجاتهم له، كان محلل النظم يبدأ بتحليل متطلبات النظام، وتحديد خصائصها، معتمداً في ذلك على المناقشة مع مستخدمي هذا النظام حول آلية عمله، وميزاته، وعيوبه، ليحصل على وجهات نظرهم، وأفكارهم، مطلعاً على الوثائق المتعلقة بالنظام، متمكناً بذلك من معرفة متطلبات هذا الأخير، والتي غالباً ما تحتوي وصفاً للنظام من مكونات مادية، وبرامج، ومتطلبات أعمال المستخدم، مع رسم واجهات تخاطب، وأشكال التقارير المطبوعة.
عند الموافقة على متطلبات النظام الحالي يبدأ المصمم ببناء التصميم الجديد لهذا النظام والذي يطلق علية "التصميم ذو المستوى العالي"،High – level design ، ويتضمن بناء تصميم قاعدة البيانات، والهيكل العام للخيارات، والتقارير، والطلبات عبر الواجهات.
لقد تميزت هذه الطرائق في وقتها بمجموعة من المزايا، إلا أنه وجد ما يعيبها، ولعل أهم هذه العيوب هي:
أ‌. تعاني هذه الطرائق من النقص في التواصل ما بين مختلف مراحل التحليل، وبين التحليل والتصميم للنظام، مما يضيّع متطلبات هذا الأخير أثناء الدراسة والتنفيذ.
ب‌. لا تتوفر في هذه الطرائق طريقة منهجية للتأكد من أن تحليل وتصميم النظام قد أنجزا بالشكل المطلوب، نظراً لصعوبة الاختبار واكتشاف النتائج مع مراحل التحليل. 
ت‌. تفتقر الأنظمة التي تم تطويرها باستخدام هذه الطرائق إلى المرونة.
ث‌. الأنظمة التي تم تطويرها باستخدام الطرائق التقليدية مكلفة أثناء العمل، والصيانة، وعند التأقلم مع الظروف المتغيرة.


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


No comments

Saturday, July 29, 2017

تنفيذ النظام الجديد execution the new system



تنفيذ النظام الجديد  execution the new system





.الطور الرابع: تنفيذ النظام الجديد 
يتم تنفيذ النظام الجديد وفق ما يلي: 
1.4.7.2. إقامة النظام الجديد: تتجلى إقامة النظام الجديد بالخطوات التالية: 
أ‌. كتابة البرامج التطبيقية: لقد حددت كل من مرحلة تحليل وتصميم النظام الجديد أساس صياغة البرامج التطبيقية، وأسلوب هيكلتها، ومواصفات كل وحدة بنائية في كل برنامج ليقوم محلل النظم في هذه المرحلة بالإشراف على كتابة هذه البرامج ـ باللغة التي تم تحديدها ـ ومتابعة اختبارها.
ب‌. اقتناء المكونات المادية وتركيبها: ويتم عادة اقتناء هذه المكونات بحسب المواصفات التي تم الاتفاق عليها في مرحلة تصميم النظام الجديد ليتم بعد ذلك تركيبها في موقع محدد لها في  المنظمة، يفترض أن يكون على قرب من أقسامها الأخرى للتواصل معها، مزوَّداً باعتبارات الأمن والأمان مثل الحماية من الحريق، الفيضان، السرقة الخ...هذا ويتجلى دور محلل النظم هنا في مطابقة مواصفات المكونات المادية للمواصفات الفنية المحددة من حيث صلاحيتها، سلامتها من الناحية الفنية والبرمجية الخ... 
ت‌. تدريب العاملين: يعتبر العنصر البشري أساس نجاح تنفيذ النظام الجديد ولذلك يتوجب على محلل النظم تصميم برامج تدريبية بمستويات مختلفة حسب طبيعة كل فرد وقدراته التي يتمتع بها، مستخدماً مجموعة من الوسائل لتحقيق ذلك كعقد الحلقات الدراسية والمحاضرات التي تشرح برمجيات التدريب باستخدام وسائل المحاكاة، التدريب العملي لاستخدام النظام. 
2.4.7.2. التحول إلى النظام الجديد: لا بد وأن يخضع النظام الجديد وبرمجياته لتجارب مستفيضة تسمح باختبار قدرته في التغلب على مشكلات النظام الحالي، ولهذا يتوقف دخوله في التشغيل على ثقة الإدارة في هذا النظام لأن التجربة مهما تكن تبقى تجربة تختلف عن التشغيل الفعلي.
للتحول إلى النظام الجديد يوجد ثلاثة استراتيجيات، يتوقف اختيار الاستراتيجية المناسبة على طبيعة النظام، وحجمه، وعلاقته بالبيئة المحيطة به، وفيما يلي شرح مختصر عن كل من هذه الاستراتيجيات. 
أ‌. التحول المباشر: وتتلخص هذه الاستراتيجية في إنهاء العمل بالنظام القديم ليجري مباشرة تشغيل النظام الجديد.
إن تطبيق هذه الاستراتيجية تعني أن النظام الجديد يتمتع بقدر كبير من الثقة لدى إدارة المنظمة من حيث جودة تصميمه، وسلامة تنفيذه، واستعداد العاملين وحسن تدريبهم على آلية عمل هذا النظام، إلا أنه في الحقيقة لا تطبق عملياً هذه الاستراتيجية مهما بلغت درجة الثقة بالنظام الجديد لأنها تحمل بين طياتها مجموعة من المخاطر، فإذا فشل هذا النظام في تشغيله فإن خسارة كبيرة ستلحق بالمؤسسة عدا عن توقف العمل توقفاً كلياً، هذا وعندما يتعرض تشغيل النظام الجديد لمشكلة ما فإنها ستؤدي إلى إرباك العمل إرباكاً شديداً، كما قد يؤدي عدم تعود العاملين على آلية عمل النظام الجديد إلى التأخر في إنجاز الأعمال المطلوبة لذلك لا ينصح باستخدام هذه الاستراتيجية عند التحول من النظام القديم إلى النظام الجديد.
ب‌. التحول المتوازي: وتتلخص هذه الاستراتيجية في تشغيل كل من النظام القديم والجديد جنباً إلى جنب مدة من الزمن إلى أن يتم إثبات سلامة النظام الجديد، والتأكد من صلاحيته، وإمكانية الاستغناء عن النظام القديم.
يتم اللجوء إلى هذه الطريقة في الحالات التي لا تحتمل طبيعة بعض الأنظمة توقف النظام القديم، إلا أنه لا بد من القول أن تنفيذ هذه الاستراتيجية يتطلب إمكانات مادية وبشرية مرتفعة حيث يتم تشغيل نظامين في آن واحد. 
ت‌. التحول التدريجي: وفق هذه الاستراتيجية يدخل النظام الجديد إلى العمل تدريجياً بحيث يتم تطبيقه في دائرة ما، فإذا استقر العمل فيها ونجح التنفيذ يتم البدء بتطبيقه في دائرة أخرى وهكذا يتم الاستغناء عن النظام القديم واعتماد النظام الجديد.
رغم مزايا هذه الاستراتيجية إلا أن نجاحها يتطلب حسن التخطيط للحالات التي يتقابل فيها النظامان الجديد والقديم، فإذا تمت مثلاً حوسبة نظام المبيعات ولم تتم بعد حوسبة نظام الحسابات فإن هذا يتطلب وضع نظام يكفل حسن سير العمل بينهما لحين تطبيق الحوسبة في نظام الحسابات. 
3.4.7.2. تقييم النظام الجديد وصيانته: بعد تشغيل النظام الجديد مدة من الزمن يتم تقييم هذا النظام بفحص برمجياته وأداء المكونات المادية ومدى قيامها مجتمعة بالدور الموكل إليها، كما يتم تقييم النظام من الناحية المالية بإجراء تحليل لتكاليف النظام الجديد والمنافع المترتبة على تشغيله. 
إن الغرض من التقييم هو تقويم النظام في حالة انحرافه عن الأهداف الموضوعة، ليتمكن من الاستمرار في العمل ضمن حدود الأداء التي صممت من أجل إنجازها إلى أن ينتهي عمره الافتراضي على الأقل. في الحقيقة يتطلب ذلك رقابة مستمرة على أدائه طوال حياته العملية، مع الصيانة الدائمة لهذا النظام والتي تتجلى في أمرين:
أ‌. صيانة المعدات والأجهزة: وينبغي أن تكون صيانة دورية كمحاولة لمنع تعطل النظام وتوقفه عن العمل جزئياً أو كلياً، بالإضافة إلى الصيانة التي لا بد منها عند وقوع حدث مفاجئ. 
ب‌. صيانة البرمجيات: ويقصد بها تحسين برمجيات النظام لتعمل بكفاءة أكثر ولمواكبة أية تغييرات ترغب المؤسسة بها كتحديث للبيانات أو التقارير أو العمليات من إضافة وحذف وتعديل.
هذا ومن الجدير بالذكر أن مستوى صيانة النظام الجديد يتوقف على مجموعة من الأمور: 
1. مدى كفاءة النظام الجديد، فكلما كان النظام مصمماً بشكل جيد كلما اقتصرت الحاجة إلى التعديلات على الإجراءات التي تزيد من فاعلية أداء هذا النظام. 
2. مدى مرونة النظام الجديد، فكلما كان النظام مرناً كلما تمكنت المنظمة من إدخال تعديلات في النظام تواكب القرارات الصادرة عنها أو عن غيرها من الجهات الأخرى النافذة.
3. تقل عملية صيانة النظام وتكاليفها كلما تم اكتشاف وتصحيح أخطاء تصميم النظام مبكراً. 





No comments

detailed stage in system analysis and design المرحلة التفصيليةn



detailed stage in system analysis and design المرحلة التفصيلية 



المرحلة التفصيلية
بعد موافقة إدارة المنظمة على الخطوط العريضة لتصميم النظام الجديد يبدأ محلل النظم بوضع تفاصيله وفق المراحل التالية:


أ‌. تصميم مستودع البيانات
في هذه المرحلة يتم تصميم مستودع لتخزين البيانات بحسب ما تقرر في المرحلة التمهيدية لتصميم النظام الجديد فإما أن يصمم بناءً على نظم الملفات أو نظم قواعد البيانات وفيما يلي توضيح لكل من هذين الأسلوبين:
1. نظم الملفات: عندما ترغب إدارة المنظمة في عدم استخدام بيانات مشتركة بين التطبيقات يرى المصمم أن نظام الملفات هو الحل الأنسب لتحقيق هذه الرغبة، فهو عبارة عن مجموعة ملفات مستقلة عن بعضها، غالباً ما يختص ملف أو أكثر بتطبيق واحد فقط، فلا تستخدم بيانات أحد التطبيقات مع تطبيق آخر. 
يبدأ تصميم الملفات بتصميم سجلاتها حيث يتألف كل سجل من مجموعة حقول يحدد لكل منها اسم وطول ونوع البيان الخاص بها ليتم بعدها تحديد طرق التخزين والوصول لبيانات كل ملف، وعادة يتم اختيار الطريقة المناسبة بحسب نوع التطبيق. هذا ويجب على المصمم أيضاً أن يحدد المكونات المادية الخاصة بالتخزين الثانوي كاستخدام الأقراص الممغنطة أو الشرائط الممغنطة، آخذاً بعين الاعتبار عدد الملفات، وعدد السجلات في كل ملف، وطبيعة التخزين، وسرعة الوصول المطلوبة، والتطورات المستقبلية المحتملة.
يتميز نظام الملفات بمجموعة من المزايا:
A. بساطة بنية الملفات فلكل تطبيق ملف واحد أو أكثر.
B. عندما تُخزَن البيانات على وسيط تخزين فإنها تُخزَن بنفس هيئة تخزين الملف، ولذلك لا يوجد اختلاف بين شكل البيانات في الملف وبين شكلها على وحدة التخزين.
C. بساطة برامج التطبيق وعدم تعقيدها، فهي مخصصة لنظام ملفات واحد فقط.
إلا أنه وبالمقابل فإن هذا النظام يعاني من مجموعة عيوب تحد من انتشاره تتمثل بما يلي: 
A. تكرار البيانات نفسها في عدة ملفات، فكل تطبيق يحتفظ بمجموعة الملفات الخاصة به بمنأى عن التطبيقات الأخرى، مما يزيد في حجم الملفات.
B. لا يسمح نظام الملفات بالاستفادة من البيانات المحتفظ بها داخل كل تطبيق من قبل عدة مستخدمين.
C. عدم المرونة في تعديل بنية الملف، فإضافة معلومة جديدة، أو حذف معلومة موجودة، أو تعديل معلومة يتطلب كتابة برامج إضافية، وفي أحسن الأحوال تعديل برامج التطبيق، كما يتطلب إعادة كتابة برامج التطبيق عند استبدال وحدة التخزين الخاصة بأحد التطبيقات بوحدة أخرى أكثر سعة.
D. انعدام المشاركة في البيانات بين عدة تطبيقات نظراً لاستخدام كل منها للبيانات الخاصة به.
E. إن عدم تزامن تحديث سجلات الملف في أكثر من تطبيق يدل على انعدام التكامل وعدم الترابط بين هذه التطبيقات. 
2. نظم قواعد البيانات: عندما ترغب إدارة المنظمة في أن تشترك عدة تطبيقات في نفس البيانات، مع توفير إمكانيات المرونة، والقوة في التفاعل مع الحاسوب في الاستفسار، والبحث، وإنتاج التقارير، فإن الحل الأنسب لتحقيق هذه الرغبة هو تصميم قاعدة البيانات على شكل مجموعة من الملفات المترابطة منطقياً، بحيث تمنع تكرار بياناتها، ويمكن استخدامها في تطبيقات متعددة بطريقة مرنة تساعد في عملية صنع القرارات.
إن استخدام منهج قاعدة البيانات في تصميم النظام الجديد يحقق مجموعة من المزايا: 
A. إلغاء تكرار البيانات، فما إن يدخل بياناً إلى قاعدة البيانات حتى يصبح متاحاً لجميع التطبيقات.
B. تسمح لأي تطبيق أن يشارك الآخر في الاستفادة من معلومات قاعدة البيانات.
C. تسمح بقيام تفاعلات متبادلة بين التطبيقات المختلفة، تجعل هذه الأخيرة تعمل في منظومة واحدة متجانسة ومتكاملة.
D. المرونة في تحديث وتعديل البيانات وزيادة حجم الملف دون الحاجة إلى التعديل في برامج التطبيقات.

E. تأمين الارتباط الكامل بين البيانات من خلال نظام إدارة قواعد البيانات الذي يؤمن الوسائل اللازمة لتحقيق ذلك.
F. حماية البيانات من التلف والتسرب، فنظام إدارة قواعد البيانات يوفر نظم الأمن والحماية لبيانات القاعدة، كما لا يسمح لأي مستفيد من بيانات القاعدة بالدخول إلى بيانات غيره من المستفيدين، حتى أنه لا يستطيع أن يدخل إلى الجزء الخاص به من قاعدة البيانات دون إتباع إجراءات محددة. 
يتعامل مستخدم البيانات مع قاعدة بيانات النظام من خلال برمجيات نظام إدارة              قواعد البيانات DBMS: Data Base Management System والتي تقع كواجهة بينهما، فلا يتم التعامل مع البيانات إلا من خلال تلك البرمجيات، والشكل التالي يوضح ذلك:
ث‌. البرامج المساعدة: وهي مجموعة البرامج التي تستخدم في بناء قاعدة البيانات، وفي استنساخها، وإعادة تخزين بياناتها من أجل حماية النظام من التلف أو الفقدان المحتمل لقاعدة البيانات.
يمكن التمييز بين ثلاثة أنواع من نظم إدارة قواعد البيانات وهي: النظم الهرمية، النظم الشبكية، النظم العلائقية. ونظراً للارتباط الشديد بين قواعد البيانات ونظم إدارتها فإن البعض يرى أن هذه الأنواع ليست فقط أنواع نظم إدارة قواعد البيانات ولكنها أنواع قواعد البيانات ذاتها  وفيما يلي توضيح بسيط لكل نوع من هذه الأنواع: 
1. النظم الهرمية: وفيها يتم ترتيب سجلات قاعدة البيانات على شكل شجرة لها جذور وعدة فروع، ويمثل سجل الجذر المفتاح الرئيسي Primary Key ومن ثم يمكن الوصول إلى مسارات الفروع الأخرى، ولكل فرع أب واحد فقط ولكل أب عدد من الأبناء. ومثال على هذا النوع من النظم ملف العملاء بقاعدة البيانات، فالمفتاح الرئيسي للملف هو العميل والذي يتمثل بكود العميل أو اسمه، وهو بمثابة الجذر أو الأب لسجلات الفروع (الأبناء) والتي يمثلها سجلات الفواتير والتي تمثل بدورها جذراً أو أباً لحقول بيانات المنتجات.







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








شكل ر
قم 4 نظام إدارة قواعد البيانات يربط بين برامج المستخدمين وقاعدة البيانات

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





الصف الأول: الفرق الدراسية
الصف الثاني: الطلاب 




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

جدول رقم 2 مثال عن النظم العلائقية
سجل الشحن اليومي
تاريخ الطلبية رقم أمر الشحن تاريخ أمر الشحن الناقل الوزن/طن
17/7/1995 37596 17/7/1995 الجزائر 60
17/7/1995 37597 18/7/1995 سوريا 70
18/7/1995 37589 18/7/1995 لبنان 80
18/7/1995 37590 18/7/1995 العراق 90
المصدر 
تصمم عادة قاعدة البيانات وفق الخطوات التالية: 
1. تعريف متطلبات قاعدة البيانات من حيث التطبيقات التي ستستخدمها هذه القاعدة، والبيانات اللازمة لكل من هذه التطبيقات، وشكل هذه البيانات، ونوعها، حجم كل مفردة منها، ودورية تدفق هذه البيانات، وصيانتها.
2. تعريف نسق البيانات والأنساق الفرعية.
3. بناء علاقة بين الكيانات المختلفة.
4. اختيار نظام إدارة قواعد البيانات المناسب من بين عدة بدائل، مع الأخذ بعين الاعتبار اختيار وسط التخزين وأساليب الاسترجاع.
5. إعداد مخططات البيانات على وسائط التخزين المتاحة.
ب‌. تصميم عمليات المعالجة: وتشمل ما يلي: 
1. تصميم المكونات المادية: يتوجب على محلل النظم عند قيامه بتصميم المكونات المادية ـ المتعلقة بعمليات معالجة البيانات ـ أن يأخذ بعين الاعتبار جملة من العوامل: 
A. حجم العمل الذي سيقوم به المعالج.
B. متطلبات البرامج.
C. عدد المستخدمين.
D. حجم الذاكرة RAM.
E. نسبة التنفيذ بالدفعات إلى التنفيذ التفاعلي.
F. مسألة التوزيع والمركزية.
2. تصميم البرمجيات: يتوجب على محلل النظم أن يقوم بتصميم البرمجيات على أساس وحدات بنائية تقوم كل منها بغرض معين كمراجعة وتنقيح البيانات المدخلة إلى الحاسب، ترتيبها، تحديثها، حفظها، استخراج التقارير أو النتائج المطلوبة، ثم تُربَط هذه الوحدات البنائية بعلاقات متبادلة بين بعضها.
ت‌. تصميم مخرجات ومدخلات النظام الجديد ويشمل ما يلي: 
1. تصميم المكونات المادية: يعتمد محلل النظم في توصيف هذه المكونات على مجموعة القرارات المتعلقة بالخطوط العريضة لتصميم النظام الجديد آخذاً بعين الاعتبار اعتبارات تصميم المكونات المادية التي سبق توضيحها عند تصميم عمليات معالجة البيانات. 
2. تصميم شاشات المستخدم: عند تصميم شاشات المستخدم سواء أكانت شاشة إدخال أم شاشة إخراج يفترض الأخذ بعين الاعتبار ما يلي: 
A. تصميم شكل الشاشة بطريقة تفاعلية بين المستخدم والنظام، بحيث تكون بسيطة، ومترابطة، ومقدمة بطريقة منطقية، تمكن من إدخال البيانات ذات الصلة بالموضوع المطروح، ذلك لأن التصميم السيئ يؤدي إلى كثرة الأخطاء أثناء الإدخال، وإرهاق المستخدم وعدم تقبله للنظام.
تعرض الشاشات عادة بطرق مختلفة كملء النماذج، قوائم الأوامر، الأوامر            التبادلية الخ...
B. تصميم الشاشة بطريقة لا تقبل بعض البيانات الخاطئة.

C. تصميم الشاشة بحيث ترمز بيانات الإدخال، مما يقلل من تكلفة عملية إدخالها، وزيادة فعالية الرقابة على هذه العملية.
D. تصميم الشاشة بطريقة تزود المستخدم بدليل يسمح بتقديم الإرشادات العامة في أي وقت، واللازمة لكل من المستخدم من غير ذوي الخبرة والكفاءة، والمستخدم المحترف الذي تتملكه الحيرة في التعامل مع النظم الجديدة، مع ضرورة التركيز على أن المساعدة يجب أن تكون عامة وليست محددة فإن لم تكن كذلك فإن هذا سيشجع غير المختصين على اقتحام النظام وتخريبه، كما يمكن تقديم المساعدة أحياناً عن طريق الخيارات المبدئية default الأقرب لاقتراح يقدمه النظام وللمستخدم حرية التعديل في هذا الاقتراح إن رغب في ذلك كأن يحدد البرنامج تلقائياًَ تاريخ اليوم عند إدخال التاريخ والهيئة التي يجب أن يكون عليها إدخال التاريخ يوم/شهر/سنة أم شهر/يوم/سنة.
E. تصميم الشاشة بحيث تزوَّد برسائل الأخطاء التي تنبه المستخدم لخطأ قد يقع فيه.
F. تصميم الشاشة بحيث يكون زمن الاستجابة على استفسارات وتساؤلات المستخدم قصيراً، لأن طول فترة الانتظار تثير ملل المستخدم وتأففه، مما يجعله يرتكب الأخطاء في عمله، هذا وفي الوقت ذاته فإن زيادة سرعة الاستجابة أكثر من اللازم يؤدي إلى ارتكاب الأخطاء أيضاً، مع صعوبة تعلم المستخدم للنظام، وخاصة إذا كان مستخدماً من غير ذوي الخبرة.   
3. وثائق المدخلات وتقارير المخرجات: تصمم الوثائق الخاصة بإدخال البيانات والتقارير الممثلة بمخرجات النظام استناداً إلى اعتبارات تصميم شاشات المستخدمين التي سبق شرحها قبل قليل.




No comments