معرفي روشي مبتني بر نيازمنديها جهت آزمون معماري نرمافزار
محورهای موضوعی : مهندسی برق و کامپیوتر
1 - دانشگاه آزاد اسلامي واحد نجف آباد
کلید واژه: معماري نرمافزار مشكل نقص معماري ارزيابي مبتني بر سناريو,
چکیده مقاله :
در اين مقاله ضمن معرفي روشهاي متداول مبتني بر سناريو در ارزيابي معماري نرمافزار و بيان نقاط ضعف و قوت آنها، رويكرد متفاوتي براي شناسايي نقايص معماري ارائه ميشود. در روش پيشنهادي مشكلات تهديدكننده سيستم توسط سهامداران فهرست ميشوند و با تحليل نقصهاي احتمالي كه ميتوانند مسبب بروز آن مشكلات باشند، خطاهاي موجود در سطوح مختلف به ويژه در سطح معماري نرمافزار كشف ميگردند. نتايج به كارگيري عملي روش پيشنهادي نشان ميدهد كه اين روش ميتواند در آشكارنمودن نقصهايي كه ممكن است از حوزه تأثير روشهاي ديگر مصون مانده باشند، مؤثر باشد. لذا از اين روش میتوان هم برای آزمون معماری و هم به عنوان یک رویه تکمیلی در كنار روشهاي ارزيابي معماري نرمافزار جهت شناسایی نقایص و اصلاح معماری استفاده نمود. روش پيشنهادي و اجزاي آن در يك قالب سيستماتيك معرفي شده و نتايج به كارگيري آن بر روي يك سيستم واقعي ارائه ميگردد.
In this paper, after a review on well-known scenario-based methods of SA evaluation, a different approach is introduced to find architectural defects. The proposed method at first, elicits the problems threatening the system's success. Then based on the analysis of the problems and probable defects which could cause the problems, tests are designed and applied to the system in order to find the real defects specially the architectural ones. Results show that the proposed method could be use to find those architectural defects which may be remained covered after applying the other methods. Therefore, it could be used as a mean to SA testing and also as a complementary mechanism along with well-known SA evaluation methods. The proposed method and its components are presented in a systematic form. An illustration of its application on the architecture of a real system is presented and the results are compared with the results of applying ATAM on the same architecture.
[1] L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice, 2nd Edition, Addison-Wesley, 2003.
[2] S. T. Albin, The Art of Software Architecture: Design Methods and Techniques, John Wiley & Sons, 2003.
[3] P. Kruchten, The Rational Unified Process: An Introduction, 2nd Edition, Addison-Wesley, 2000.
[4] R. Kazman, M. Klein, and P. Clements, ATAM: Method for Architecture Evaluation, Technical Report, CMU/SEI-2000-TR-004, ESC-TR-2000-004, 2000.
[5] P. Clements, R. Kazman, and M. Klein, Evaluating Software Architectures: Methods and Case Studies, Addison-Wesley, 2002.
[6] "CBAM: Cost Benefit Analysi Method", http://www.sei.cmu.edu/ata/products_services/cbam.
[7] J. J. Li and J. R. Horgan, "Applying formal description techniques to software architectural design," J. of Computer Communications, vol. 23, no. 12, pp. 1169-1178, Jul. 2000.
[8] X. He, H. Yu, T. Shi, J. Ding, and Y. Deng, "Formally analyzing software architectural specifications using SAM," The J. of Systems and Software, vol. 71, no. 12, pp. 11-29, 2004.
[9] J. Xu, "Evaluating and balancing reliability and performance properties of software architecture using formal modeling techniques," in Proc. 30th Annual IEEE/NASA Software Engineering Workshop, pp. 212-222, Apr. 2006.
[10] J. J. P. Tsai and K. Xu, "A comparative study of formal verification techniques for software architecture specifications," Annals of Software Engineering, vol. 10, no. 1-4, pp. 207-223, 2000.
[11] L. Dai, Formal Design Analysis Framework: An Aspect-Oriented Architectural Framework, Ph.D. Dissertation, the University of Texas at Dallas, 2005.
[12] K. Cooper, L. Dai, and Y. Deng, "Performance modeling and analysis of software architectures: an aspect-oriented UML based approach," Science of Computer Programming, vol. 57, no. 1, pp. 89-108, Jul. 2005.
[13] L. Dai and K. Cooper, "Using FDAF to bridge the gap between enterprise and software architectures for security," Science of Computer Programming, vol. 66, no. 1, pp. 87-102, Apr. 2007.
[14] T. J. Dolan, Architecture Assessment of Information-System Families, Ph.D. Thesis, Department of Technology Management, Eindhoven-University of Technology, Feb. 2002.
[15] B. Tekinerdogan, H. Sozer, and M. Aksit, "Software architecture reliability analysis using failure scenarios," J. of Systems and Software, vol. 81, no. 4, pp. 558-575, Apr. 2008.
[16] J. B. Dugan, "Software system analysis using fault trees," in Lyu, M. R. (Ed.), Handbook of Software Reliability Engineering, McGraw-Hill, New York, pp. 615-659, Chapter 15, 1996.
[17] N. E. Fenton and M. Neil, "A critique of software defect prediction models," IEEE Trans. on Software Engineering, vol. 25, no. 5, pp. 675-689, Sep. 1999.
[18] IEEE Std. 1044-2009, IEEE Standard Classification for Software Anomalies, pp. C1-15, 2010.
[19] J. Yen and R. Langari, Fuzzy Logic: Intelligence, Control, and Information, Prentice-Hall, Upper Saddle River, NJ, 1999.