فهرست و منابع پایان نامه ارائه روشی برای تلفیق جنبه گرایی و سرویس گرایی با هدف بهبود کیفیت نرم افزار
فهرست:
فصل اول ........................................................................................................................... ١
تعریف مسأله ......................................................................................................................1-1- مقدمه ................................................................................................................... ٢
محدودیتهای مدل فعلی SOA ................................................................................ ٢
مزیت و چالشهای پیوند دو مفهوم ............................................................................. ٤
اهداف تحقیق ........................................................................................................ ٥
مسیر تحقیق ......................................................................................................... ٦
ساختار پایاننامه .................................................................................................... ٧ فصل دوم ........................................................................................................................... ٩
ادبیات تحقیق .................................................................................................................... ٩ 2-1- مقدمه ................................................................................................................ ١٠
2-2- مروری بر معماری سرویسگرا ................................................................................. ١٠
2-2-1- تعاریف .......................................................................................................... ١١
2-2-2- مفاهیم و اصول طراحی سرویسگرا ..................................................................... ١٥
2-2-3- مزایای معماری سرویس گرا ............................................................................... ١٨
2-3- معرفی مفهوم جنبهگرایی و نقش آن در توسعه نرمافزار .............................................. ٢١
2-3-1- دغدغه های متداخل در یک سیستم .................................................................... ٢٢
2-3-2- مسائل مربوط به دغدغه های متداخل .................................................................. ٢٤
2-3-3- نیازهای غیروظیفه مندی .................................................................................. ٢٥
2-3-4- مبانی برنامهسازی جنبهگرا ............................................................................... ٢٧
2-3-5- جنبهگرایی در فازهای تحلیل نیازها و طراحی ...................................................... ٢٨
فصل سوم ........................................................................................................................ ٣٣ کارهای مرتبط و چالشهای پیش رو ...................................................................................... ٣٣ 3-1- مقدمه ................................................................................................................ ٣٤
3-2- کارهای مرتبط ..................................................................................................... ٣٤
3-2-1- استفاده از یک لایه جنبهگرا در SOA به منظور مجتمعسازی برنامههای سازمانی ......... ٣٤
3-2-2- فراخوانی پویای سرویسهای وب با استفاده از برنامهسازی جنبهگرا ........................... ٣٦
3-2-3- معماری برای توسعه سرویسهای وب جنبهگرا ...................................................... ٣٩
3-2-4- ترکیب سرویس وب جنبهگرا ............................................................................. ٤٢
3-3- چالشهای پیش روی تلفیق سرویسگرایی و جنبهگرایی ............................................. ٤٣
3-4- جمعبندی ........................................................................................................... ٤٦ فصل چهارم ..................................................................................................................... ٤٧
هشت
پیشنهاد چارچوب و ابزار مدیریت تزریق جنبهها در سرویسها .................................................. ٤٧ 4-1- مقدمه ................................................................................................................ ٤٧
4-2- نیازهای غیروظیفهمندی با قابلیت جنبهشدن ............................................................ ٤٨
4-2-1- قابلیت تغییر و آزمون پذیری .............................................................................. ٤٨
4-2-2- کارایی .......................................................................................................... ٤٩
4-2-3- قابلیت استفاده .............................................................................................. ٥٠
4-2-4- امنیت ........................................................................................................... ٥١
4-2-5- دسترسپذیری ............................................................................................... ٥١
4-3- راهکار پیشنهادی: ارائه چارچوبی برای مدیریت تزریق جنبهها در سرویسها .................. ٥٢
4-3-1- ساختار چارچوب مدیریت تزریق جنبهها در سرویسها ........................................... ٥٢
4-4- معرفی ابزار مدیریت تزریق جنبهها در سرویسها ...................................................... ٥٤
4-4-1- ساختار ابزار ................................................................................................... ٥٥
4-5- جمعبندی ........................................................................................................... ٦١ فصل پنجم ....................................................................................................................... ٦٢
مطالعه موردی .................................................................................................................. ٦٢ 5 -1- مقدمه ............................................................................................................... ٦٣
5 -2- شاخصهای ارزیابی ............................................................................................... ٦٣
5 -3- معرفی محیط و سیستم ........................................................................................ ٦٤
5 -4- مراحل استفاده از چارچوب و ابزار .......................................................................... ٦٦
5 -5- تحلیل نتایج مطالعه و مقایسه با سایر روشها ............................................................ ٦٩
5 -5-1- مقایسه با روش اول .......................................................................................... ٦٩
5 -5-2- مقایسه با روش دوم ......................................................................................... ٧٠
5 -5-3- مقایسه با روش سوم ........................................................................................ ٧١
5 -5-4- مقایسه با روش چهارم ...................................................................................... ٧٢
5 -6- جمعبندی ........................................................................................................... ٧٢ فصل ششم ...................................................................................................................... ٧٤
نتیجهگیری و جمعبندی ..................................................................................................... ٧٤ 6-1- مقدمه................................................................................................................. ٧٥
6-2 - خلاصه تحقیق ..................................................................................................... ٧٥
6-3- بازگشت به اهداف تحقیق ...................................................................................... ٧٦
6-4- نتایج تحقیق ....................................................................................................... ٧٦
6-5- اقدامات آتی ........................................................................................................ ٧٨ پیوست 1: چگونگی تعریف و استفاده از پند در Spring.NET ................................................. ٧٩
فهرست مقالات ارائهشده مستخرج از پایاننامه .......................................................................
منابع و مراجع ..................................................................................................................
منبع:
.1 Babak Mirmobin, Fereidoon Shams, “An Aspect Management Tool to Enhance Introducing AOP to SOA”, in Proc. Of 5th CENTRAL AND EASTERN EUROPEAN SOFTWARE ENGINEERING CONFERENCE (CEE-SECR 2009),
Moscow, 2009.
Erl, T., Service-Oriented Architecture: Concepts, Technology, and Design, Prentice
Hall, 2005.
Erl, T., Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services, Prentice Hall, 2004.
Zangenberg, H. and Forsberg, C., The SOA Tutorial, Gartner, Inc, 2005.
Weerawarana, S., Curbera, F., Leymann, F. and Storey, T., Web Services Platform Architecture: SOAP, WSDL, WS-Policy, WS-Addressing, WS-BPEL, WS-Reliable Messaging, and More, Prentice Hall, 2005.
Manes, A.T., Web Services: Manager's Guide, Addison-Wesley, 2003.
Knipple, R., “Service Oriented Enterprise Architecture”, MS Thesis, IT-University of Copenhagen, 2005.
Wilkes, L., The Essential Guide to Service Orientation, CBDI Forum, 2004.
Schmelzer, R., The ROI of SOA, 2005, Available:
http://www.zapthink.com/report.html?id=ZAPFLASH-20050127
Sprott, D., SOA: An Introduction for Managers, CBDI Forum, 2004.
Wood, L., The Costs and Benefits of SOA, 2004, Available:
http://www.managingautomation.com/maonline/magazine/read.jspx?id=1245185
Sun Microsystems, Assessing Your SOA Readiness, 2001.
Keen, M., Acharya, A., Bishop, S., Hopkins, A. and Milinski, S., Patterns:
Implementing an SOA Using an Enterprise Service Bus, IBM Publisher, 2004.
Natis, Y.V., Service-Oriented Architecture Scenario, 2003, Available:
http://www.gartner.com/resources/114300/114358/114358.pdf
Bass, L., Clements, P. and Kazman, R., Software Architecture in Practice,
Addison-Wesley, 2nd edition, 2003.
Parnas, D.L., “On the criteria to be used in decomposing systems into modules”, Communications of the ACM, vol. 15(12), pp. 1053–1058, 1972.
Stein, D., “An Aspect-Oriented Design Model Based on AspectJ and UML”, MS Thesis, University of Essen, Germany, 2002.
Kaewkasi, C. and Rivepiboon, W., “Aspect-Oriented Extension for Capturing Requirements in Use-Case Model”, The 15th Conference on Advanced Information Systems Engineering, CAiSE' 03, Austria, pp. 84-92, June 2003.
Clarke, S. and Baniassad, E., Aspect-Oriented Analysis and Design: The Theme Approach, Addison Wesley, 2005.
Kiczales Gregor, Lamping John, Mendhekar Anurag, Maeda Chris, Videira Lopes Cristina, Loingtier Jean-Marc and Irwin John, “Aspect-Oriented Programming”, Springer-Verlag LNCS 1241, pp. 220-242, 1997.
Foote, B. and Yoder, J., Evolution, architecture and metamorphosis: Pattern Language of Program Design 2, Addison-Wesley, 1996.
Chitchyan Ruzanna et al, Survey of Aspect-Oriented Analysis and Design Approaches, 2005, Available: http://www.aosdeurope.net
Stein, D., Hanenberg, St. and Unland, R., “Designing Aspect-Oriented Crosscutting in UML”, AOSD-UML Workshop at AOSD' 02 Enschede, the Netherlands, pp. 65-73,
2002.
Robillard, M. and Murphy, G., “Concern graphs: Finding and describing concerns using structural program dependencies”, International Conference on Software Engineering, pp. 406-416, 2002.
Tellander David, “Aspect Detector: A tool for automatic aspect detection in Java code”, MS Thesis, Vaxjo University, Sweden, 2005.
Baniassad, E., Clements, P., Araújo, J., Moreira, A., Rashid, A. and Tekinerdogan, B., “Discovering Early Aspects”, IEEE Software, Special Issue on Aspect-Oriented Programming, pp. 61-70, January/February 2006.
Jacobson Ivar and Pan-Wei Ng, Aspect-Oriented Software Development with Use Cases, Addison Wesley, 2004.
Araújo, J. and Moreira, A., “An Aspectual Use Case Driven Approach”, VIII Jornadas de Ingeniería de Software y Bases de Datos (JISBD), Alicante, Spain, pp. 94102, November 2003.
Araújo, J., Moreira, A., I. Brito and Rashid, A., “Aspect-Oriented Requirements with UML”, Workshop on Aspect oriented Modeling with UML, UML 2002, Dresden, Germany, pp. 55-64, October 2002.
Sousa, G., Soares, S., Borba, P. and Castro, J., “Separation of crosscutting concerns from requirements to design: Adapting the use case driven approach”, Early Aspects Workshop at AOSD 2004, pp. 96-106, March 2004.
Van den Berg Klaas et al, “Identification of Crosscutting in Software Design”, 8th
International Workshop on Aspect-Oriented Modeling at AOSD'06, Bonn, Germany, pp. 70-76, March 2006.
Induruwana, C.D., “Using an Aspect Oriented Layer in SOA for Enterprise Application Integration”, The Proceeding of the IBM Sponsored Doctorial Symposium at the 3rd International Conference on Service-Oriented Computing (ICSOC 2005), Amsterdam, the Netherlands, pp. 19-24, Dec. 2005.
Laroia, A. and Sayavedra, L., “EAI Business Drivers”, EAI Journal, Vol 2, pp. 2729, 2003.
Resendiz, M.P. and Aguirre, J.O.O, “Dynamic invocation of Web services by using aspect-oriented programming”, 2nd International Conference on Electrical and Electronics Engineering ICEEE-CIE, Mexico City, Mexico, pp. 48-51, 2005.
Bonér, J. and Vasseu, A., AspectWerkz – Plain Java AOP, Available: http://aspectwerkz.codehaus.org/
W3C, Simple Object Access Protocol (SOAP), Available:
http://www.w3.org/TR/SOAP/
Duftler, M.J., Mukhi, N.K., Slominski, A. and Weerawarana, S., ‘Web Services Invocation Framework (WSIF)’, IBM T.J. Watson Research Center, Tech. Rep., August
2001.
Singh, S., Grundy, J., Hosking, J. and Sun, J., “An Architecture for Developing Aspect-Oriented Web Services”, Proc. of the 3rd IEEE European Conference on Web Services (ECOWS\'05), Vaxjo, Sweden, pp. 58-68, 2005.
Grundy, J.C. and Hosking, J.G., “In Engineering plugin software components to support collaborative work”, SP&E, vol. 32, pp. 983-1013, 2002.
Singh, S., Grundy, J. and Hosking, J.,. “Developing .NET Web Service-based Applications with Aspect-Oriented Component Engineering”, AWSA’04, Australia, pp. 89-95, 2004.
Hanenberg, S., Hirschfeld, R. and Unland, R., “Morphing Aspects: Incompletely Woven Aspects and Continuous Weaving”, AOSD 04, Lancaster, UK, pp. 62-69, 2004.
Latchem, S., “Patterns for Internet development. Providing a component based technical architecture for Internet solutions”, SIGS 2000, Newdigate, UK, pp. 94-100, 2000.
Charfi, A. and Mezini, M., “Aspect-Oriented Web Service Composition with AO4BPEL”, Proc. of the 2nd European Conference on Web Services (ECOWS 2004), Erfurt, Germany, pp. 168-182, 2004.
D'Hondt, M. and Jonckers, V., “Hybrid Aspects for Weaving Object-Oriented Functionality and Rule-Based Knowledge”, Proceedings of the 3rd AOSD conference, Lancaster, UK, pp. 73-79, 2004.
Spring.NET application framework, Available:
http://www.springframework.net/
Pressman, R.S., Software Engineering: A Practitioner's Approach, Fifth Edition,
McGraw-Hill, 2001.
Hannemann, J. and Kiczales, G., “Design pattern implementation in Java and aspectJ”, APSEC, 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (OOPSLA 2002), pp. 161-173, 2002.
Williams, L.G. and Smith, C.U., “PASASM: A Method for the Performance Assessment of Software Architectures”, Workshop on Software and Performance, pp. 179-188, 2002.
Banerjee, S., Mattmann, Ch. A., Medvidovic, N. and Golubchik, L., “Leveraging architectural models to inject trust into software systems”, Proc. of SESS'05, pp. 1-7, 2005.
AspectXML open source community project, Available:
http://www.aspectxml.org/