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

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

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

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

خلفية

استخدام أدوات البرمجيات(CASE) أدت إلى تقدم كبير في مجال صناعة البرمجيات؛ مما ساعد في  الحصول على منتجات ذات جودة عالية، بحد أدنى من الأخطاء، وباختصارالوقت والتكلفة . حتى الآن ليس كل من أنشطة عملية تطوير البرمجيات مدعمة بتكنولوجيا( (CASE-software. وهذا يرجع إلى أن بعض أنشطة البرامج العملية في هندسة البرمجيات بحاجة إلى التفكير الإبداعي لتحقيقها (هارمان، 2012).
لحل هذه المشكلة، اقترح الباحث المذكور أعلاه، باستخدام نهج "الذكاء الاصطناعي"  لتطوير أدوات البرمجيات التي تشبه المهارات الفكرية البشرية مثل الإبداع، ومعالجة اللغة الأم (NLP)، والاستدلال. أعطوا هذه التكنولوجيا المقترحة اسماً، وهو "الكمبيوترالذكي بمساعدة هندسة البرمجيات" (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.