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

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

من ويكيبيديا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث
N write.svg
هذه مقالة غير مراجعة. ينبغي أن يزال هذا القالب بعد أن يراجعها محرر عدا الذي أنشأها؛ إذا لزم الأمر فيجب أن توسم المقالة بقوالب الصيانة المناسبة. (يونيو 2015)

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

هو نسخة موسعة من الكومبيوترات كأداوات مساعدة لهندسة البرمجيات ,يهدف (I-CASE) إلى تشغيل أنشطة عملية تطوير البرمجيات اوتوماتيكيا بشكل كامل بدلاً من العملية التي تقوم بها ال (CASE-Tools).

عملية تطوير البرمجيات اوتوماتيكيا بواسطة أدوات الكومبيوترالذكي تشمل الأنشطة التي تتطلب مهارات بشرية مثل: الاعتراف، والتحليل، والإبداع، والتنبؤ.

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

اول من قام بتعريف الكومبيوتر الذكي كأداة مساعدة لهندسة البرمجيات[عدل]

د.اياد الزبيدي , د.أيمن النسور , د.عايش الحروب ,من جامعة الإسراء,عمان-الأردن .[1]

خلفية[عدل]

استخدام أدوات البرمجيات(CASE) أدت إلى تقدم كبير في مجال صناعة البرمجيات؛ مما ساعد في الحصول على منتجات ذات جودة عالية، بحد أدنى من الأخطاء، وباختصارالوقت والتكلفة . حتى الآن ليس كل من أنشطة عملية تطوير البرمجيات مدعمة بتكنولوجيا( (CASE-software. وهذا يرجع إلى أن بعض أنشطة البرامج العملية في هندسة البرمجيات بحاجة إلى التفكير الإبداعي لتحقيقها (هارمان، 2012). لحل هذه المشكلة، اقترح الباحث المذكور أعلاه، باستخدام نهج "الذكاء الاصطناعي" [2][3] لتطوير أدوات البرمجيات التي تشبه المهارات الفكرية البشرية مثل الإبداع، ومعالجة اللغة الأم (NLP)، والاستدلال. أعطوا هذه التكنولوجيا المقترحة اسماً، وهو "الكمبيوترالذكي بمساعدة هندسة البرمجيات" (I-CASE).

تصنيف من (I-CASE)[عدل]

يستند تصنيف أدوات (I-CASE) على اعتبار نظام تطوير البرمجيات كمصنف رئيسي , هذا يعني بأنه علينا ان نعتمد أربع مجموعات من (I-CASE):

  1. متطلبات الأدوات ذات الصلة.
  2. اختبار البرمجيات.
  3. تصميم و ترميز توليد الأدوات ذات الصلة.
  4. توثيق الأدوات ذات الصلة.

هناك انشطة أخرى قد تشكل مجموعة مستقلة تضم أنشطة التدريب والصيانة وتخطيط المشاريع من الواضح ان هذا التنصيف ليس بحاجة إلى أي تصنيف إضافي على النحو المحدد الآن. أيضا، كل نموذج تطوير البرامج (مثل سقوط المياه) يحدد أدوات البرمجيات التي تشبه خطوات هذا النموذج, وهذا التصنيف يسهل التخطيط لتطوير مشروع البرمجيات، ويمكن استخدامها كإطار لتطوير بيئة تطوير (I-CASE) متكاملة. التحلل من كل نشاط رئيسي يسهل حوسبة المهام الفرعية، وبالتالي يحقق التشغيل الياً لهذا النشاط الرئيسي.

المراجع[عدل]

4. Filieri, A., Ghezzi, C., & Tamburrelli, G. (2012). A formal approach to adaptive software: continuous assurance of non-functional requirements. Formal Aspects of Computing , 24 (2), 163–186.

5. Gebhardt, M., & Kaske, A. (2011, August). Tools and Methods for Validation and Verification as requested by ISO26262. Softwaretechnik-Trends , 31 (3) , Online. Germany: Gesellschaft für Informatik-GI (German Informatics Society).

6. Harman, M. (2012). The Role of Artificial Intelligence in Software Engineering . First International Workshop on Realizing Artificial Intelligence Synergies in Software Engineering (RAISE), 2012 (pp. 1–6). Zurich: IEEE.

7. Linderman, M. D., Collins, J. D., Wang, H., & Meng, T. H. (2008). Merge: a programming model for heterogeneous multi-core systems. 13th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) (pp. 287–296). Seattle, WA, USA: ACM.

8. Staunton, J., & Clark, J. A. (2011). Finding short counter examples in Promela models using estimation of distribution algorithms. In N. K. Lanzi (Ed.), 13th Annual Genetic and Evolutionary Computation Conference (GECCO 2011), (pp. 1923–1930). Dublin- Ireland: ACM.

9. Umber, A., Bajwa, I. S., & Naeem, M. A. (2011). NL-Based Automated Software Requirements Elicitation and Specification (Vol. 191). (A. Abraham, J. L. Mauri, J. F. Buford, J. Suzuki, & S. M. Thampi, Eds.) Kochi, Kerala, India: Springer Berlin Heidelberg.

10. V.S.Bagad. (2009). Electronics Product Design. Technical Publications.

11. W.B., L., & Harman, M. (2010). Evolving a CUDA kernel from an nVidia template. IEEE Congress on Evolutionary Computation, (pp. 1–8). Barcelona-Espan.

12. Weimer, W., Nguyen, T. V., Goues, C. L., & Forre, S. (2009). Automatically finding patches using genetic programming. International Conference on Software Engineering (ICSE 2009), (pp. 364–374). Vancouver, Canada.

13. Yoo, S., Harman, M., & Ur, S. (2011). Highly scalable multi-objective test suite minimisation using graphics cards. 3rd International Symposium on Search based Software Engineering (SSBSE 2011). 6956, pp. 219–236. Szeged, Hungary: Springer.

روابط خارجية[عدل]

مصادر[عدل]

  1. ^ 1. Ayad T. Imam, Ayman J. Al-Nsour, Aysh Hroob. “The Definition of Intelligent Computer Aided Software Engineering (I-CASE) Tools”. Journal of Information Engineering and Applications. Vol. 5, No. 1. International Institute for Science, Technology and Education (IISTE), New York-USA, 2015
  2. ^ Danilchenko, Y., & Fox, R. (2012). Automated Code Generation Using Case-Based Reasoning, Routine Design and Template-Based Programming. In S. Visa, A. Inoue, & A. Ralescu (Ed.), The 23rd Midwest Artificial Intelligence and Cognitive Science Conference (pp. 119-125). Cincinnati, Ohio, USA: Omnipress.
  3. ^ 2. Brown, D. C. (2005). Artificial intelligence for design process improvement. In J. Clarkson, & C. Eckert, Design process improvement: A review of current practice (pp. 158-173). Springer.