فهرست و منابع پایان نامه یک روش برای طراحی معماری نرم افزار مبتنی بر سبک    
                                        فهرست:
چکیده ......................................................................................................................................................................۱  فصل اول – مقدمه
۱-۱-  مقدمه .......................................................................................................................................................۴
۱-۲-  تعریف مساله ...........................................................................................................................................۵
۱-۳-  سابقه تحقیق ...........................................................................................................................................۷
۱-۴-  دامنه مساله .............................................................................................................................................۸
۱-۵-  معماری نرم افزار و طراحی معماری نرم افزار مبتنی بر سبک....................................................۹
۱-۶-  ساختار پایان نامه ...................................................................................................................................۱۱ فصل دوم – آشنایی با ادبیات موضوع
۲-۱-  علل نیاز به معماری نرم افزار................................................................................................................۱۳
۲-۲-  نیازهای سیستم نرم افزاری ..................................................................................................................۱۴
۲-۳-  سبک های معماری نرم افزار................................................................................................................۱۶
۲-۴-  معماری , طراحی معماری و سبک معماری ......................................................................................۱۶
۲-۵-  معماری نرم افزار.....................................................................................................................................۱۷
۲-۵-۱- تعاریف معماری نرم افزار ..............................................................................................................۱۸
۲-۶-  اهمیت معماری نرم افزار.......................................................................................................................۱۹
۲-۷-  اجزا معماری نرم افزار............................................................................................................................۱۹
۲-۷-۱- مولفه ها...........................................................................................................................................۲۰
۲-۷-۲- رابطها...............................................................................................................................................۲۰
۲-۷-۳- واسطها ............................................................................................................................................۲۰
۲-۷-۴- پیکربندی ها..................................................................................................................................۲۱
۲-۸-  تصمیم های معماری .............................................................................................................................۲۱
۲-۹-  وظیفه مندی و ویژگی های کیفی و ارتباط آنها با معماری ..........................................................۲۲
۲-۹-۱- معماری و وظیفه مندی ..............................................................................................................۲۲
۲-۹-۲- معماری و ویژگی های کیفی .....................................................................................................۲۳
۲-۹-۳- سناریوهای ویژگی کیفی .............................................................................................................۲۵
 
الف
۲-۱۰-  تاکتیک....................................................................................................................................................۲۷
۲-۱۱- پیشرانهای معماری ................................................................................................................................۲۹
 
 
۲-۱۲- سبکهای معماری ...................................................................................................................................۳۰
۲-۱۲-۱-  ساختار سبک..........................................................................................................................۳۰
۲-۱۲-۲-  طبقه بندی سبکهای معماری ..............................................................................................۳۱
۲-۱۲-۳-  ابعاد تشکیل دهنده سبک....................................................................................................۳۲
۲-۱۳- طراحی معماری نرم افزار......................................................................................................................۳۳
۲-۱۴- ارتباط بین مفاهیم در روش طراحی معماری نرم افزار مبتنی بر  سبک................................۳۴
۲-۱۵- خلاصه .......................................................................................................................................................۳۵
 
فصل سوم –بررسی روشهای طراحی معماری نرم افزار
۳-۱-  مقدمه ........................................................................................................................................................۳۷
۳-۲-  روش طراحی ویژگی گرا........................................................................................................................۳۸
۳-۲-۱-    ورودی های روش طراحی ویژگی گرا................................................................................۳۹
۳-۲-۲-    خروجی های روش طراحی ویژگی گرا..............................................................................۴۰
۳-۲-۳-    اطمینان از اینکه اطلاعات نیازها کافی است ....................................................................۴۱
۳-۲-۴-    انتخاب یک عنصر از سیستم برای تجزیه ..........................................................................۴۱
۳-۲-۵-    تعیین پیشرانهای معماری کاندید.......................................................................................۴۱
۳-۲-۶-    انتخاب یک مفهوم طراحی برای تضمین  پیشرانهای معماری .....................................۴۲
۳-۲-۷-    نمونه سازی عناصر معماری و تخصیص مسئولیت ..........................................................۴۲
۳-۲-۸-    تعریف واسطهایی برای عناصر نمونه سازی شده .............................................................۴۳
۳-۲-۹-    بازبینی نیازها و اعمال آنها به عنوان محدودیتهایی برای عناصر معماری نمونه سازی
شده ...........................................................................................................................................۴۳
۳-۲-۱۰-  تکرار مراحل ۲ تا ۷ برای عنصر بعدی سیستم ................................................................۴۳
۳-۳-  طراحی مبتنی بر وظیفه مندی ...........................................................................................................۴۴
۳-۳-۱-    مرحله ۱ : طراحی معماری مبتنی بر وظیفه مندی ........................................................۴۵
۳-۳-۲-    مرحله ۲ :  ارزیابی معماری ..................................................................................................۴۶
۳-۳-۳-    مرحله ۳ :  تغییر معماری .....................................................................................................۴۷
ب
 
۳-۴-  معیارهای موردانتظار از یک راه حل ...................................................................................................۴۸
 
 
۳-۵-  بررسی روشهای طراحی معماری نرم افزار........................................................................................۵۰
۳-۵-۱-    قابلیت یکپارچگی ...................................................................................................................۵۰
۳-۵-۲-    رعایت تجرید مناسب در طراحی معماری .........................................................................۵۱
۳-۵-۳-    هزینه پایین اعمال تغییرات .................................................................................................۵۱
۳-۵-۴-    قابلیت فهم و درک آسان معماری ......................................................................................۵۲
۳-۶-  علل نیاز به به یک روش طراحی جدید ..........................................................................................۵۳
۳-۷-  خلاصه .....................................................................................................................................................۵۴
 
فصل چهارم – طراحی معماری نرم افزار مبتنی بر سبک
۴-۱-  مقدمه ........................................................................................................................................................۵۶
۴-۲-  دامنه روش طراحی معماری نرم افزار مبتنی بر سبک.................................................................۵۷
۴-۲-۱-    چارچوب تصمیم های معماری در SBSAD  ..............................................................۵۸
۴-۲-۱-۱-       تصمیم های فرامعماری SBSAD ..........................................................۵۹
۴-۲-۱-۲-       تصمیم های معماری SBSAD ...............................................................۶۰
۴-۲-۱-۳-       سیاست ها و راهنماییها...............................................................................۶۱
۴-۲-۲-    ساختار سلسله مراتبی .........................................................................................................۶۱
۴-۳-  اصطلاحات و مفاهیم ..............................................................................................................................۶۲
۴-۳-۱       سبک معماری ........................................................................................................................۶۲
۴-۳-۲       نیازهای تجریدی و عینی ....................................................................................................۶۳
۴-۳-۳       پیشرانهای  معماری .............................................................................................................۶۴
۴-۳-۴       نوع مولفه ها در SBSAD ................................................................................................۶۶
۴-۳-۵       نوع رابطها در SBSAD ....................................................................................................۶۷
۴-۳-۶       رفتار بازگشتی در تجزیه سیستم با روش SBSAD ..................................................۶۹
ج
۴-۴  فرآیند طراحی معماری نرم افزار مبتنی بر سبک.........................................................................۷۰
۴-۴-۱-    ورودی های روش SBSAD ............................................................................................۷۲
 
 
۴-۴-۱-۱-       نیازهای وظیفه مندی تجریدی و عینی ...................................................۷۲
۴-۴-۱-۲-       نیازهای ویژگی های کیفی تجرید و عینی ..............................................۷۴
۴-۴-۱-۳-       نیازهای حرفه .................................................................................................۷۵
۴-۴-۱-۴-       محدودیتهای معماری ...................................................................................۷۵
۴-۴-۱-۵-       محدودیتهای طراحی ....................................................................................۷۵
۴-۴-۱-۶-       انتخاب های معماری ....................................................................................۷۶
۴-۴-۲-    خروجی های روش SBSAD ..........................................................................................۷۷
۴-۴-۳-    مراحل فرآیند SBSAD   ................................................................................................۷۸
۴-۴-۳-۱-       انتخاب یک عنصر از سیستم برای تجزیه ...............................................۷۹
روش پیمایش درخت تجزیه .....................................................۷۹
نیازها و مسئولیتها  ....................................................................۸۱
۴-۴-۳-۲-       انتخاب پیشرانهای معماری .........................................................................۸۳
۴-۴-۳-۳-       اجرای تجزیه براساس پیشرانهای معماری ...............................................۸۲
 تجزیه مبتنی بر سبک.................................................................۸۹
 بازبینی محدودیت ها..................................................................۹۶
 تغییر سبکهای انتخاب شده ......................................................۹۶
۴-۴-۳-۴-       تجزیه وظیفه مندی ......................................................................................۹۸
۴-۴-۳-۵-       تخصیص وظیفه مندی به سبک معماری .............................................۱۰۰
ارزیابی وظیفه مندی .................................................................................۱۰۰
مستندسازی طراحی معماری .................................................................۱۰۱
تکرارهای بعدی ........................................................................................۱۰۱
۴-۵  خلاصه ....................................................................................................................................................۱۰۲ فصل پنجم – مطالعه موردی
۵-۱    مقدمه .....................................................................................................................................................۱۰۴
۵-۲   مطالعه موردی ۱: سیستم آلبوم عکس در اینترنت ........................................................................۱۰۴
۵-۲-۱-وظیفه مندی کلیدی سیستم .......................................................................................................۱۰۴
د
۵-۲-۲- ویژگی های  کیفی کلیدی سیستم ..........................................................................................۱۰۵
۵-۲-۳-نیازهای وظیفه مندی تجرید........................................................................................................۱۰۶
۵-۲-۴-نیازهای ویژگی کیفی تجرید........................................................................................................۱۰۷
۵-۲-۵-محدودیت های معماری ................................................................................................................۱۰۸
۵-۲-۶- محدودیت های طراحی .................................................................................................................۱۰۸
۵-۲-۷-انتخاب های معماری .....................................................................................................................۱۰۹
۵-۲-۸-پیشران های معماری ...................................................................................................................۱۱۰
۵-۲-۹-تبدیل نیازها به مسئولیت ها......................................................................................................۱۱۲
۵-۲-۱۰-    اولویت بندی نیازهای ویژگی کیفی .................................................................................۱۱۳
۵-۲-۱۱-    تجزیه سیستم .......................................................................................................................۱۱۴
۵-۲-۱۲-    ارزیابی شاخص ها.................................................................................................................۱۲۵
۵-۲-۱۲-۱- هزینه اعمال تغییرات ..........................................................................................۱۲۵
۵-۲-۱۲-۲- طراحی معماری به اندازه کافی دقیق ............................................................۱۲۷
۵-۲-۱۲-۳- یکپارچگی عناصر معماری ................................................................................۱۲۸
۵-۲-۱۲-۴- پیچیدگی ...............................................................................................................۱۲۹
۵-۳-  مطالعه موردی ۲: خانه الکترونیکی ....................................................................................................۱۳۰
۵-۳-۱- اعمال روش SBSAD................................................................................................................۱۳۰
۵-۳-۲-  ارزیابی شاخص ها......................................................................................................................۱۴۲
۵-۳-۲-۱-   هزینه اعمال تغییرات .....................................................................................۱۴۲
۵-۳-۲-۲-   طراحی معماری به اندازه کافی دقیق .........................................................۱۴۳
۵-۳-۲-۳-   یکپارچگی عناصر معماری ............................................................................۱۴۳
۵-۳-۲-۴-   پیچیدگی ...........................................................................................................۱۴۳
۵-۴-  خلاصه ...................................................................................................................................................۱۴۴
 
فصل ششم – نتیجه گیری
۶-۱-  مقدمه ......................................................................................................................................................۱۴۶
۶-۲-  مروری بر پایان نامه .............................................................................................................................۱۴۶
۶-۳-  دستاورد تحقیق ....................................................................................................................................۱۴۷
۶-۴-  ارزیابی راه حل ......................................................................................................................................۱۴۷
۶-۵-  رتبه روش پیشنهادی در بین سایر روشها......................................................................................۱۴۹
۶-۶-  فرصتهای آتی ........................................................................................................................................۱۵۱
۶-۷-  خلاصه ...................................................... .............................................................................................۱۵۲
مراجع و منابع .......................................................................................................................................................۱۵۳
منبع:
[1] Albin, Stephen T., The Art of Software Architecture: Design Methods and
 Techniques, John Wiley & Sons, 2003.
 
١٤٥                            
 
 
[2] Bachmann, Felix, Bass, Len, Chastek, Gary, Donohoe, Patrick, Peruzzi, Fabio,
 The Architecture Based Design Method, Technical Report, CMU.SEI-2000-
 TR-001ESC-TR-2000-001, 2000.
 
[3] Bachmann, Felix, Bass, Len, Klein, Mark, Preliminary Design of ArchE: A
 Software Architecture Design Assistant, Technical Report, CMU.SEI-2003-TR-
 021ESC-TR-2003-021, 2003.
 [4] Bass, Len, Bergey, John, Clements, Paul, Merson, Paulo, Ozkaya, Ipek, Sangwan,
 Taghvinder, A Comparison of Requirements Specification Methods from a
 Software Architecture Perspective, Technical Report,CMU.SEI-2006-TR-013
 ESC-TR-2006-013, 2006.
 
nd
[5] Bass, Len, Clements, Paul, Kazman, Rick, Software Architecture in Practice, 2
 Edition, SEI Series in Software Architecture, Addison-Wesley Professional, 2004.
 
[6] Booch, Grady, Maksimchuk, Robert A., Engle, Michael W., Young, Bobbi J.,
 Conallen, Jim, Houston, Kelli A.,Object Oriented Analysis and Design with
 Applications, 3nd Edition, The Benjamin.Cummings Publishing Company, 2007.
 
[7] Bosch, Jan, Design and Use of Industrial Software Architectures,
 University of Karlskrona.Ronneby, 1999.
 
[8] Bosch, Jan, Molin, Peter, Software Architecture Design: Evaluation and
 Transformation, Research Report, Department of Computer Science and Business
 Administration University of Karlskrona.Ronneby, Sweden, 1997.
 
[9] Chastek, Gary, Ferguson, Robert, Toward Measures for Software Architectures,
 Technical Note, CMU.SEI-2006-TN-013, 2006.
 
 [10] Clements, Paul, et al., Documenting Software Architectures: Views and
 Beyond, SEI Series in Software Architecture, Addison-Wesley Professional,
 2003.
 
[11] Crnkovic, Ivica, Larsson , Magnus, BuildingReliableComponent-
 BasedSoftwareSystems, Artech House, 2002.
 
[12] Fielding, Roy Thomas, Architectural Styles and the Design of Network-based
 Software Architectures, 2000.
 
 [13] Garlan, David, Shaw, Mary, An Introduction to Software Architecture, Advances in
 Software Engineering and Knowledge Engineering, Series on Software Engineering
 and Knowledge Engineering, Vol. 2, World Scientific Publishing Company.
 
 [14] Garlan, David, Shaw, Mary, Software Architecture: Perspectives on an
 Emerging Discipline, Prentice Hall, 1996.
١٤٦                            
 
[15] Garlan, David, Kim, Jung Soo, Analyzing Architectural Styles, Carnegie
 Mellon University, USA, 2006.
 
 
[16]  Hawthorne, Matthew J., Perry, Dewayne E., Architectural Styles for
 Adaptable Self-Healing Dependable Systems, 2005.
 
 [17] IEEE Standard Classification for Software Anomalies. Technical Report IEEE
 P1044-1993 R2002, IEEE Standards Department, Software Engineering
 Standards Committee, September 2002.
 
[18] Institute of Electrical and Electronics Engineers Standards board, Recommended
 Practice for Architectural Description of Software-Intensive Systems, IEEE- Std-1471-
 2000, September 2000.
 
[19] Kaisler ,Stephen H., Software Paradigms, John Wiley & Sons, 2005.
 
[20] Kruchten, Philippe, The 4+1 View Model of Architecture, IEEE Software
 12,6 , 42-50, 1995.
[21] Malan, Ruth, Bredemeyer, Dana, Software Architecture:Central Concerns,Key
 Decisions , http:..www.bredemeyer.com.
[22] McGovern, James, Ambler, Scott W., Stevens, Michael E., Linn, James,
 Sharan, Vikas,  Jo, Elias K., A Practical Guide to Enterprise Architecture,
 Prentice Hall  PTR , October 28, 2003.
 
[23] Mehta, Nikunj R., Composing Style-based Software Architectures from
Architectural Primitives, 2004.
 
[24] Mehta Nikunj R., Medvidovic, Nenad, Phadke, Sandeep, Towards a Taxonomy
 of Software Connectors, http:..www.usc.edu .
 
[25] Monroe, Robert T., Kompanek, Drew, Melton, Ralph, Garlan, David, Stylized
Architecture, Design Patterns, andObjects, 1996.
 
[26] Morisawa, Yoshitomai, Inoue, Katsoru, Torii, Koji, Architectural Styles for
Distributed Processing Systems and Practical Selection Method, 2002.
 
 [27] Mustapic, Goran, Architecting software for complex Embedded Systems,
2004.
 
[28] Nord, Robert L., Wood, William G., Clements,  Paul, Integrating the Quality
 Attribute Workshop (QAW) and the Attribute-Driven Design (ADD)
١٤٧                            
 
 
 Method, Technical Note CMU.SEI-2004-TN-017, Carnegie Mellon University,
 2004.
 
[29] Perry Dewayne E., Wolf, Alexander L.,Foundations for the study of software
 architecture, ACM SIGSOFT Software Engineering Notes, 1992.
 
 [30] Pressman, Roger S., Software Engineering A Practitioners Approach, Fifth Edition,
 Mc Graw Hill, 2001.
 
 [31] Recommended Practice for Architectural Description of Software Intensive
 Systems. Technical Report IEEE P1471-2000, IEEE Standards Department, The
 Architecture Working Group of the Software Engineering Committee,
 2000.
 [32] Shaw, Mary, Clements, Paul, Toward Boxology: Preliminary Classification of
 Architectural Styles, Carnegie Mellon University, Pittsburgh, PA 15213, 1996.
 [33] Schmidt, Douglas, Stal, Michael,  Rohnert, Hans, Buschmann, Frank, Pattern-
 Oriented Software Architecture: Patterns for Concurrent and Network
 objects, Volume 2, John Wiley & Sons, 2000.
 [34]  Software Engineering Institute (SEI), Carnegie Mellon University, How Do You
 Define Software Architecture, from
 www.sei.cmu.edu.architecture.definitions.html
[35] Wojcik, Rob, Bachmann, Felix, Bass, Len, Clements, Paul, Merson, Paulo, Nord, Robert,
 Wood, Bill, Attribute-Driven Design(ADD) ,Version  2.0 ,Technical Report ,
 CMU.SEI-2006-TR-023 ,ESC-TR-2006-         023 , SEI , November, 2006.
 [36] Wood, William G., A Practical Example of Applying Attribute-Driven
 Design (ADD), Version 2.0, Technical Report, CMU.SEI-2007-TR-005ESC-
 TR-2007-005, February 2007.