ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از...

133

Upload: arash-bande-khoda

Post on 07-Jan-2017

415 views

Category:

Education


13 download

TRANSCRIPT

Page 1: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
Page 2: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

بهبود روش ارزیابی معماری نرم افزار از دید برون مدیریت سپاریدانشجو: آرش رضوانی

استاد راهنما: دکتر سید رئوف خیامیاستاد مشاور: دکتر امید بوشهریان

41 از 942بهمن

Page 3: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

پیشگفتار

تحقیقات پیشین

روش پیشنهادی

نتایج

41 از 3

Page 4: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

پیشگفتار

Page 5: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

معماری نرم افزار

نتیجه عدم معماریvasa ناو جنگی 1620سال•نرم افزار به سرعت پیچیده و پیچیده تر شده• Dijkstra، Parnas، 68سال• Brooks 70دهه • Dargan & Denning، 94سال•Show & Garlan، 96سال•

41 از 5

Page 6: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

معماری در چرخه حیات

41 از 6

Page 7: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

معماری یک سیستم نرم افزاری، blue print سیستم

در باالترین سطح انتزاع استکه مولفه های اصلی و مهم ترین محاورات بین آن ها

را توصیف می کند.

41 از 7

Page 8: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 8

Page 9: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

دیدگاه ها و ساختارهای معماریViewدیدگاه

نمایشی از یک مجموعه ای منسجم از عناصر معماری است که به وسیله ذینفعان سیستم )معماری( ایجاد شده و خوانده می شود.

Structureساختار مجموعه ای از عناصر و ارتباط بین آن هاست.

در یک نوع ساختار فقط عناصر متعلق به آن نوع ساختار لحاظ می شود.

41 از 9

Page 10: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

1+4معماری

41 از 10

Page 11: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

جدول ارزش دهی یانگ

مقادیر کیفی مقادیر کمیمطلق 7

خیلی زیاد 6زیاد 5

متوسط 4کم 3

خیلی کم 2ناچیز 1

41 از 11

Page 12: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

برون سپاری

دستیابی به سود از طریق منابع خارجی •توسعه، طراحی و برنامه ریزی، مدیریت، آموزش، نگهداری و یا اجرای •هر فعالیتی غیر از فعالیت های اصلی سازمان را می توان برون سپاری •

کرد

41 از 12

Page 13: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

تحقیقات پیشین

Page 14: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

کیفیت نرم افزارهاي مدلصفات كيفيتي مناسب در يك سيستم

افزاري را نرمنمايد بهتر مشخص مي

هدف اصلی مدل های کیفیت نرم افزار

41 از 14

Page 15: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

McCallمدل

41 از 15

Page 16: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 16

Page 17: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 17

Page 18: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ارزیابی معماری نرم افزارتکنیک های پرسشیمبتنی بر پرسشنامه

مبتنی بر لیست های مرجعمبتنی بر سناریو

ATAMروش ALMAروش

تکنیک های اندازه گیریمبتنی بر متریک

مبتنی بر شبیه سازی

41 از 18

Page 19: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

هدف اصلی ارزیابی معماری نرم افزار

درک میزان پتانسیل معماری انتخاب شده جهت دستیابی به نیازهای کیفی و شناخت

ریسک های بالقوه می باشد.

41 از 19

Page 20: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAM

41 از 20

Page 21: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ALMAسيستمهاي اطالعاتي كاري

قابليت اصالح پذيري و نگهداریسه هدف

پیش بینی هزینه برای اعمال تغییراتمیزان انعطاف پذیری

مقایسه دو معماری مرحله5دارای

41 از 21

Page 22: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ALMA ATAMاصالح پذيري تمامي ويژگيها ويژگيهاي

كيفيتي 2 فعاليت در 9 فعاليت5

فازتعداد

مراحل فرآيند

سيستمهاي كسب و كار

همه سيستمها محدوده كاربردي

مشخص نشده 2 روز، تيم 2نفره ارزيابي و

گروه ذينفعانمنابع زماني/

انسانيپيش بيني اثرات

تغييراتنقاط حساس و

مصالحهاهداف ريز

ارزيابي

41 از 22

Page 23: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

23

روش پشنهادی

Page 24: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ارائه چهارچوب و ساختار معماری نرم افزار•چرخه حیات سیستم•استاندارد، الگو، اهداف و محدودیت های حرفه و سیستم• )معماری آقای کورچن( 1+4معماری •ارزیابی معماری نرم افزار•

ISO 9126مدل ارزیابی •معرفی جدول یانگ•ATAMروش ارزیابی معماری نرم •

41 از 24

Page 25: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

PLC )product lifeچرخه حیات محصول cycle(

تقسیم به دو بخش•مخاطبین چرخه حیات محصول • ساختار کلی چرخه حیات محصول•ارائه این قسمت در معماری باعث شناخت صالحیت معمار •تعادل بین زمان و هزینه•

41 از 25

Page 26: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مخاطبین چرخه حیات محصول

درج مخاطبین چرخه حیات محصولیک مدیران عامل و معاونین

مدیران تولید و معاونینرئیس گروه های کاری

دو گروه ها و شرکتهای همکار )ارائه دهندگان و فروشندگان سیستم ها(

مشتری های خاص )یا کنترل دقیق(اشخاصی که ارزش افزوده برای محصول خواهند آورد

اشراف کلی به نرم افزار

41 از 26

Page 27: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ساختار کلی چرخه حیات محصول

تولد

بلوغ

مرگ

41 از 27

Page 28: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

استاندارد، الگو، اهداف و محدودیت های حرفه و سیستم

اهداف•محدودیت ها•الگو•استاندارد•عملکردهای بسیار مهم سیستم•پیشران های معماری•

41 از 28

Page 29: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ارزیابی معماری نرم افزار

ISO 9126مدل کیفی •مورد جدول ارزش دهی یانگ•ATAMروش ارزیابی معماری نرم افزار •

41 از 29

Page 30: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 30

Page 31: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMمشارکت کنندگان در •ATAM:به مشارکت و همکاری سه گروه نیازمند است که عبارتند از تیم ارزیابی •تصمیم گیرندگان پروژه •ذینفعان معماری•

41 از 31

Page 32: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

فاز مشارکت کنندگان زمان معمول فعالیت مراحل پیشنهادات تکمیلیصفر رهبر تیم ارزیابی و

تصمیم گیرندگان کلیدی پروژه

در صورت نیاز اجرا می شود به صورت

غیر رسمی

مشارکت و آماده سازی

آماده سازی و فراهم نمودن مقدمات

 

یک تیم ارزیاب و تصمیم گیرندگان پروژه

یک روز ارزیابی ATAMنمایش  نمایش پیشران های

حرفهدر ساختار مع£ماری ایجاد

شدهنمایش معماری معماری که از برون  

سپاری بدست آمدهتعیین روشهای معماری  ایجاد درخت سودمندی با استفاده از جدول ارائه

شده در معماری ISO9126مشخص شده

تحلیل روش های مع£مارانه

 

دو تیم ارزیابی، تصمیم گیرندگان پروژه و

ذینفعان

دو روز ارزیابی )ادامه(

طوفان ذهنی و اولویت بندی سناریوها

با استفاده از جدول ارزش دهی یانگ صفات مقدار کمی پیدا میکنند.

تحلیل روش های مع£مارانه

 

نمایش نتایج  سه تیم ارزیابی و

مشتریان ارزیابییک هفته پیگیری تهیه گزارش نهایی  

41 از 32

Page 33: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله پنجم: ایجاد درخت سودمندی خصوصیات کیفی

ایجاد درخت سودمندی•ISO9126استفاده از جداول پیشنهادی •استفاده از جدول ارزش دهی یانگ•

41 از 33

Page 34: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

iso9126صفات        ویژگی اصلی زیر ویژگی سواالت امتیاز جدول یانگ

نمره7 تا 1امتیاز بین سخ£تی پیاده سازی

سخ£ت و متوسط ،ساده

عملیاتی مناسب بودن

آیا می توان وظیفه های مورد نیاز را اجرا کرد؟

   

صحیح بودن

آیا نتایج صح£یح£ هستند؟    

قابلیت تعامل

آیا سیستم می تواند با دیگر سیستم ها تعامل داشته باشد؟

   

امنیت آیا سیستم از دسترسی غیرمجاز جلوگیری می کند؟

   

قابلیت£ اطمینان

تکمیل شدن

آیا با گذشت زمان خطاها حذف شده اند؟

   

تولرانس خطا

آیا نرم افزار قادر به مدیریت خطاها است؟

   

قابلیت بازیابی

آیا نرم افزار بعد از این که مشکلی بر£ای آن به وجود آمد،

اطالعات ذخیره نشده را نگهداری می کند و امکان ادامه

کار با نرم افزار وجود دارد؟

   

کاربری قابلیت فهم آیا کاربر می فهمد که چگونه از سیستم به راحتی استفاده کند؟

   

قابلیت یادگیری

آیا کاربر می تواند کار کردن با سیستم را یاد بگیرد؟

   

قابلیت عملیاتی

آیا کاربر می تواند بدون تالش زیاد از سیستم استفاده کند؟

   

قابلیت جذب کردن

آیا ظاهر برنامه زیبا و جذاب است؟

   

کارآمدی رفتار زمان آیا سیستم به سرعت به درخواست پاسخ می دهد؟

   

کاربرد منبع آیا سیستم از منابع به صورت کاربردی استفاده می کند؟

   

قابلیت نگهداری

قابلیت تحلیل

آیا خطاها به راحتی شناخته شده و رفع می شوند؟

   

قابلیت تغییر

آیا نرم افزار به راحتی تغییر می یابد؟

   

قابلیت پایداری

در صورت ایجاد تغییر، آیا نرم افز£ار به کارش ادامه

می دهد؟

   

قابلیت آزمايش

آیا به راحتی قابل آزمايش است؟

   

قابلیت حمل

قابلیت سازگاری

آیا می توان نرم افزار را به محیط های دیگر انتقال داد؟

   

قابلیت نصب

آیا نرم افزار به آساني نصب می شود؟

   

قابلیت تطبیق

آیا نرم افزار با استانداردهای حمل سازگار است؟

   

قابلیت جایگزینی

آیا می توان به آساني نرم افزار را به جای

نرم افزارهای دیگر جایگزین کرد؟

   

41 از 34

Page 35: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

فاز مشارکت کنندگان زمان معمول فعالیت مراحل پیشنهادات تکمیلیصفر رهبر تیم ارزیابی و

تصمیم گیرندگان کلیدی پروژه

در صورت نیاز اجرا می شود به صورت

غیر رسمی

مشارکت و آماده سازی

آماده سازی و فراهم نمودن مقدمات

 

یک تیم ارزیاب و تصمیم گیرندگان پروژه

یک روز ارزیابی ATAMنمایش  نمایش پیشران های

حرفهدر ساختار مع£ماری ایجاد

شدهنمایش معماری معماری که از برون  

سپاری بدست آمدهتعیین روشهای معماری  ایجاد درخت سودمندی با استفاده از جدول ارائه

شده در معماری ISO9126مشخص شده

تحلیل روش های مع£مارانه

 

دو تیم ارزیابی، تصمیم گیرندگان پروژه و

ذینفعان

دو روز ارزیابی )ادامه(

طوفان ذهنی و اولویت بندی سناریوها

با استفاده از جدول ارزش دهی یانگ صفات مقدار کمی پیدا میکنند.

تحلیل روش های مع£مارانه

 

نمایش نتایج  سه تیم ارزیابی و

مشتریان ارزیابییک هفته پیگیری تهیه گزارش نهایی  

41 از 35

Page 36: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مجموعه ای از نقاط مصالحه و حساس شناسایی شده

تصمیمات معماری تاثیرات مشخصی روی خصوصیات کیفی •پایگاه داده پشتیبان یک تصمیم معماری •قابلیت اطمینان مثبت •کارایی بصورت منفی •نقطه مصالحه بین کارآیی و قابلیت اطمینان •تصمیم خطر است یا نه •هزینه کارایی چقدر است•

41 از 36

Page 37: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMخروجی نمایش مختصر از معماری•بیان اهداف حرفه•نیازهای کیفی برحسب مجموعه ای از سناریوها•نگاشت تصمیمات معماری به نیاز کیفی•مجموعه ای از نقاط مصالحه و حساس شناسایی شده•مجموعه ای از خطرات و غیر خطرات•مجموعه ای از موضوعات خطرات•

41 از 37

Page 38: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

38

نتایج

Page 39: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

شرکت عصر اندیشهاین تحقیقات و روش پیشنهادی به متخصصین شرکت عصر اندیشه •

ارائه شد و مورد تایید افراد خبره در نرم افزار رسید.

41 از 39

Page 40: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

پیشنهادات•AHPارزیابی معماری محصول•

41 از 40

Page 41: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سپاسگزاری از

توجه تان

41 از 41

Page 42: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

قسمتی از مراجع پایان نامه• B. Biel, T. Grill, and V. Gruhn, “Exploring the benefits of the

combination of a software architecture analysis and a usability evaluation of a mobile application,” J. Syst. Softw., vol. 83, no. 11, pp. 2031–2044, Nov. 2010.

• M. Anvaari and S. Jansen, “Evaluating architectural openness in mobile software platforms,” in Proceedings of the Fourth European Conference on Software Architecture: Companion Volume, 2010, pp. 85–92.

• N. Mead and T. Christian, “An Evaluation of Cost-Benefit Using Security Requirements Prioritization.” Software Engineering Institute Carnegie Mellon University.

• B. Costa, P. F. Pires, F. C. Delicato, and P. Merson, “Evaluating REST architectures—Approach, tooling and guidelines,” J. Syst. Softw., vol. 112, pp. 156–180, Feb. 2016.

• A. Zalewski and S. Kijas, “Beyond ATAM: Early architecture evaluation method for large-scale distributed systems,” J. Syst. Softw., vol. 86, no. 3, pp. 683–697, Mar. 2013.

41 از 42

Page 43: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

قسمتی از مراجع پایان نامه.1388س. ر. خیامی, “ارزيابي و تحليل معماري سازماني,” تز دکترا, دانشگاه شیراز, شیراز, •م. پورکمالی انارکی, “روش های ارزیابی معماری نرم افزار,” کارشناسی ارشد, دانشگاه آزاد •

.84/2/24تهران واحد علوم تحقیقات, تهران, و. منتقمی, “روشی برای مقایسه معماری های نرم افزار,” پایان نامه کارشناسی ارشد, •

1387دانشگاه صنعتی شریف, تهران, انتشارات وزارت مسکن و راه و ن. پورمعلم, “مهندسی برو نسپاری در حمل ونقل,” •

1390, تهران, شهرسازی. تهران: گنج نفیس, متریک های نرم افزار ع. علی محمدمالیری, andن. مدیری, ف. دوامی, •

1389.. تهران: معماری نرم افزار در عمل )ویراست دوم( ز. زمانی نژاد, andا. عالیی, م. معراجی, •

.1392طالیی پویندگان دانشگاه, , مهندسی معماری امن نرم افزار in ر. شیروانی, “معماری نرم افزار,” andن. مدیری •

1390تهران: مهرگان قلم, ا. عبدالعلی زاده, “شاخص های ارزیابی کیفیت andا. شریف, ح. گایینی, م. جعفری, •

1390, 22. صفحه p, 54 پیاپی 37فصلنامه شماره نرم افزارهای پژوهشي,” 41 از 43

Page 44: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 44

Page 45: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 45

Page 46: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ساختارهای معماری نرم افزار

41 از 46

Page 47: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 47

ساختار های نرم افزارساختارهای ماژول

ModuleDecompositionتجزیه

Usesاستفاده Layeredالیه ای

Classکالس یا تعمیم

Componentساختارهای مولفه و اتصال and connector

Processفرآیندهای ارتباطی فرآیند یا Concurrencyهم زمانی

Shared Dataمخزن یا داده های مشترک -Clientدهنده سرویس گیرنده-سرویس

Server

Allocationساختارهای تخصیص Deploymentاستقرار

Implementationپیاده سازی Work Assignmentانتساب کار

Page 48: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 48

Moduleساختارهای ماژول

:decompositionساختار تجزیه واحدها، ماژول های هستند" یک زیر ماژول است از " بزرگی در سیستم به وسیله قابلیت اصالح ساختار تجزیه

تضمین این است که احتماال تغییرات در داخل یک تعداد ماژول خواهد بود، ایجاد می کند

پایه ای برای ایجاد سازماندهی از پروژه شامل ساختارمستندسازی، یکپارچگی و طرح های آزمایش استفاده

می شوند.

Page 49: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Moduleساختارهای ماژول

:usesساختار استفاده واحدهای این ساختار ماژول ها، رویه ها و منابع

رابط های ماژول ها هستند. " استفاده می کند از " این ساختار به مهندس سیستم اجازه می دهد که به

راحتی قابلیت جدید را به سیستم اضافه کند که این را امکان پذیر می کند.توسعه تدریجی امر یک

Page 50: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Moduleساختارهای ماژول

:layeredساختار الیه ای یک الیه مجموعه منسجم از وظیفه مندی های یکسان

را نشان می دهد. در واقع اگر رابطه استفادهUses را بتوان در یک

روش مناسب مورد استفاده قرار داد به یک الیه بندی دست پیدا خواهیم کرد.

الیه ها بصورت انتزاعی )ماشین مجازی( طراحیمی شوند که این امر باعث می شود مشخصات الیه

پایین از دید الیه باالتر پنهان باشد

Page 51: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Moduleساختارهای ماژول class orساختار کالس یا تعمیم

generalization: واحدهای این ساختار کالس ها هستند توسط رابطه " ارث بری می کند از " یا " یک

نمونه ای است از" با یکدیگر ارتباط برقرار می کنند. این نوع ساختار از استدالل درباره رفتارهای مشترک

و مشخص کردن تفاوت ها بین کالس های مختلف حمایت می کند.

همچنین ساختار کالس اجازه می دهد که درباره تصمیم گیری استفاده مجدد و افزایش تدریجی

شود.

Page 52: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Component andساختارهای مولفه و اتصال connector

:Processساختار فرآیند یا فرآیندهای ارتباطی واحدها، فرآیندها یا نخ ها هستند به وسیله ارتباط، هم زمانی و یا عملیات انحصاری به

واحدهای دیگر متصل می شوند این نوع ساختار با جنبه های اجرایی سیستم در ارتباط

می باشد. ارتباط در این نوع ساختار "الحاق"است زمینه بررسی )اجرا( کارآیی و ساختار فرآیند در

یک سیستم مورد استفاده قرار قابلیت دسترسی می گیرد.

Page 53: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Component andساختارهای مولفه و اتصال connector

:Concurrencyساختار هم زمانی واحدهای این ساختار مولفه ها می باشد و اتصال ها از نوع

رشته های منطقی هستند. ساختار هم زمانی به تشخیص فرصت های موازی سازی و به

اشتراک گذاری منابع کمک می کند. نیازمندی های ساختار هم زمانی باعث می شود که

شناسایی شوند.اجرای هم زمانی

Page 54: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Component andساختارهای مولفه و اتصال connector

Sharedساختار مخزن یا داده های مشترک Data:

هایی است که این ساختار دربرگیرنده مولفه ها و اتصالبرای ایجاد، ذخیره و دسترسی به داده های مانا مورد

استفاده قرار می گیرند این ساختار نشان می دهند که داده ها چگونه تولید و

مصرف می شوند تضمین کارآیی و یکپارچگی داده ها این ساختار به

کمک می کند.

Page 55: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

-Clientساختار سرویس گیرنده-سرویس دهنده Server:

سرویس گیرنده-سرویس دهنده برای سیستم هایمناسب است.

ها و سرویس دهنده ها واحدها در این ساختار سرویس گیرندههستند

اتصال ها قراردادهایی هستند که این واحدها از آن برایبرقراری ارتباط و انجام کار سیستم استفاده می کنند.

کاربرد این ساختار در جداسازی دغدغه ها برای توزیع پذیریفیزیکی و تنظیم بار کاری سیستم است.

Component andساختارهای مولفه و اتصال connector

Page 56: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Allocationساختارهای تخصیص :Deploymentساختار استقرار

عناصر ساختار استقرار موجودیت های نرم افزاری، سخت افزاری ومسیرهای ارتباطی هستند که نشان می دهند چگونه نرم افزار به

عناصر ارتباطی و پردازنده ها انتساب شده است. "رابطه "تخصیص داده شده به "و رابطه "منتقل شده به ،این نوع ساختار به مهندس سیستم کمک می کند که پیرامون کارآیی

یکپارچگی داده ها، قابلیت دسترس پذیری و امنیت سیستم استدالل های الزم انجام دهد.

سیستم های ساختار استقرار یکی از ساختارهای جالب در مورداست.توزیع شده و موازی

Page 57: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Allocationساختارهای تخصیص

:Implementationساختار پیاده سازی این ساختار نشان می دهد چگونه عناصر نرم افزاری به

ساختارهای فایل در طی فرآیند توسعه، به منظور یا محیط کنترل پیکربندی فراهم آوردن یکپارچگی

سیستم نگاشت شده اند این ساختار برای مدیریت فعالیت های توسعه و ساخت

فرآیندها، حیاتی است.

Page 58: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Allocationساختارهای تخصیص Workساختار انتساب کار

Assignment: فعالیت های این ساختار برای تخصیص

به تیم های توسعه پیاده سازی و یکپارچگی مناسب است.

ساختار انتساب کار به عملکرد افراد کمک می کند وحتی مشخص می کند که تجارب مورد نیاز هر تیم

چه چیزی باید باشد تا بتواند کار را خوب تحویل دهد.

که پروژه های بزرگ توزیع شده هم چنین برایکار به تیم های مختلف واگذار می شود این ساختار

کاربرد مناسبی دارد.

Page 59: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ساختارهای مرتبط با یکدیگر- هر کدام از ساختارهای دیدهای مختلفی از سیستم

ارائه می کنند- ساختارهای در اصل مستقل نیستند زیرا عناصر هر

یک به عناصر دیگری وابسته است.در تمام سیستم ها نیاز نیست که از کلیه -

ساختارهای استفاده شودساختار های می توانند در بردارند ساختارهای دیگر -

نیز باشند.انتخاب نوع و تعداد ساختارهای موجود در یک -

معماری رابطه مستقیم با ماهیت سیستم نرم افزاری و حجم و گستردگی آن دارد.

Page 60: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 60

Page 61: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

معماری 4+1

41 از 61

Page 62: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

1+4معماری بیان کرد هیچ کدام از Kruchten آقای کروچن 95در سال

ساختار با یکدیگر تناقضی ندارند و همه آن ها در جهت برطرف کردن نیازمندی های سیستم هستند ولی بهتر است موارد

کاربردی مهم به منظور انتخاب ساختارها استفاده شود.Logicalدیدگاه منطقی

Processدیدگاه فرآیند Developmentدیدگاه توسعه

Physicalدیدگاه فیزیکی +

Scenariosدیدگاه سناریو

Page 63: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

1+4معماری Logicalدیدگاه منطقی

شامل کالس ها و اشیا است که در شئ گرایی جهت دستیابی به حداکثر تجریداستفاده می شود

است.ساختار ماژول در واقع همان

Processدیدگاه فرآیند نحوه هم زمانی و توزیع وظیفه مندی ها را نشان می دهد

مولفه ها و اتصال ها ساختار

Page 64: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

1+4معماری Developmentدیدگاه توسعه

سازماندهی ماژول ها، کتابخانه ها، زیرسیستم ها و واحدهای توسعه را نمایش می دهد

را نمایش می دهد.تخصیص ساختاردر واقع  

Physicalدیدگاه فیزیکی نحوه نگاشت اجزا را به پردازنده ها و گره های ارتباطی مشخص می کند

استقرار جنبهاست اما بیشتر ساختار تخصیص این ساختار مشابه مدنظر آن است.

 Scenariosدیدگاه سناریو

به خودی خود یک دید نیست در واقع همان موارد کاربردی است.

Page 65: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

65 of 51

Page 66: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

66 of 51

Page 67: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

67 of 51

Page 68: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

دیدگاه موارد کاربردی یا دیدگاه سناریو£

کل ذینفعان• usecaseتوسطنمای کلی سیستم را ترسیم می کند، •

دیاگرام•use case توصیفگر توالی ارتباطات بین اشیا و که ها

پروسه هاعملیات اصلی سیستم، نقد•سند موارد کاربرد•

68 of 51

Page 69: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

دیدگاه منطقی طراحان سیستم •نمودار های کالس••Class diagram Sequenceنمودار •قابلیت های سیستم برای کابران نهایی•در واقع همان ساختار ماژول است. •ماژول هایی که تجزیه عملکردی سیستم •همراه با اشیاء، رویه ها، توابع و ارتباطات بین آن ها•

69 of 51

Page 70: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

دیدگاه فرآیندتوزیع•کارایی •مقیاس پذیری• Activity نمودار های•هم زمانی و توزیع وظیفه مندی ها. •وجهه پویای •نیازمندی غیرعملکردی همروندی و همزمانی پردازش ها•دید مولفه و اتصال•

70 of 51

Page 71: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

دیدگاه پیاده سازی

برنامه نویسان• Package یاComponent رانمود•توصیف معماری•طراحی داخلی•کامپوننت های نرم افزاری •الیه ها، زیرالیه ها، زیرسیستم ها و نحوه ارتباط بین آن ها •مدل پیاده سازی•

71 of 51

Page 72: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

دیدگاه فیزیکی یا دیدگاه توسعهمهندس سیستم • مدیریت نرم افزار ،دید یک برنامه نویس• Deployment نمودار های•توپولوژی کمپوننت های نرم افزاری در الیه فیزیکی •ارتباطات فیزیکی بین این کمپوننت ها. •ساختار تخصیص، اما بیشتر جنبه استقرار •توپولوژی استقرار •نحوه نگاشت نرم افزار در محیط فیزیکی •

و سخت افزار می پردازد سند استقرار•

72 of 51

Page 73: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 73

Page 74: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 74

سبکهای و الگوها

Page 75: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 75

الگوی معماری نرم افزارالگو•

یک مجموعه از انواع عنصر•یک الیه توپولوژیکی عناصر که ارتباطات و مناسبات مشترک •

آن ها را آشکار می سازد.یک مجموعه محدودیت های معنایی•یک مجموعه از مکانیزم های فعل و انفعالی که تعیین می کند •

عناصر چونه از طریق توپولوژی های مجاز هماهنگ شوندالگو یک راه حل تکرار شونده است•

زمانی به یک راه حل الگو می گوییم که گونه ای انتزاعی از آن •در چندین سیستم مختلف یافت شود

الگو یک راه حل موفق است•

Page 76: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 76

سبک های معماریزبان الگو: به مجموعه ای از الگوها و قوانینی برای ساخت و •

سازماندهی الگوهای جدید از روی الگوهای اولیه گفته می شودسبک ها بیشتر به زبان الگوها شباهت دارن تا به الگوها•بیشتر مواقع یک روش طراحی را که می باید سبک یا الگو نامیده •

شود توافق نداردالگو جزئی و دقیق تر یک راه حل را برای مسئله طراحی پیشنهاد •

میکندسبک ها در حقیقت راه حل نیستند، بلکه چارچوبی برای راه حل ها •

مشخص می کنند

سبک معماری نرم افزار، مجموعه واژگانی متشکل از اجزای •نرم افزار و نوع اتصاالت میان این اجزا را به همراه مجموعه قوانینی

برای ترکیب اجزا و اتصاالت با یکدیگر تعریف می کند

Page 77: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 77

Page 78: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سبکهای مشهور معماری نرم افزار

Page 79: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

طبقه بندی شاو و گارالن از سبک های 94معماری نرم افزار

Page 80: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

•2003سبک معماری کمنتس Module View Type Decomposition Uses Generalization Layered

• Component and Connector )C&C( View Type Pipe-and-Filter Shared-Data Publish-Subscribe )Blackboard( Client-Server Peer-to-Peer Communicating-Processes

• Allocation View Type Deployment Implementation Work Assignment

Page 81: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سبک متمرکز بر روی داده

Page 82: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سبک جریان داده

Batch/Sequential

Pipe&Filter

Page 83: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سبک ماشین مجازی

Page 84: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سبک برنامه اصلی و زیر روال

Page 85: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سبک سیستم های شیءگرا

Page 86: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

سبک سیستم های الیه ای

Page 87: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 87

Page 88: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

معماری مرجع41 از 88

Page 89: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

معرفی چند معماری مطرح

Main Frameمعماری •File Serverمعماری •Client/Serverمعماری •

Two-Tierمعماری •Three-Tierمعماری •)Service Oriented Architecture )SOAمعماری سرویس گرا •Enterprise Resource Planning ERPبرنامه ریزی منابع انسانی •معماری نرم افزار شیءگرا•

Page 90: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Client Server : Three Tierمعماری  ويژگی •

عرضه شده است .1990-  مدل فوق در سال

ميانی ديگر بين سرويس گيرنده Tier- در اين مدل از يک ) رابط کاربر( و سرويس دهنده بانک اطالعاتی استفاده می

شود.

- اليه ميانی شامل مجموعه ای از ابزارها برای دستيابی به منابع سيستم ، صرفنظر از نوع پالت فورم  است .

- اليه ميانی مسئوليت مديريت پردازش ها را برعهده خواهد گرفت .

Page 91: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Client Server : Three Tierمعماری اليه ميانی مسئوليت تجزيه و يا ترکيب نتايج حاصله از -

ی نظير بانک های اطالعاتی را برعهده دارد. منابع داده

بخش های رابط کاربر ، مديريت پردازش ها و مديريت -بانک های اطالعاتی بخش های سه گانه مدل فوق می

باشند.

اليه ميانی خود می تواند به دو و يا بيش از دو بخش با -(Multi-Tierعملکردهای متمايز تقسيم گردد )

پياده سازی نرم - مدل فوق گزينه ای مناسب برای است .افزار بر روی اينترنت

Page 92: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Client Server : Three Tierمعماری  :مزايا •

- افزايش کارآئی ، انعطاف پذيری ، قابليت استفاده مجدد و توان پشتيبانی

- ارتقاء کارآئی همزمان با افزايش تعداد کاربران- مخفی نمودن پيچيدگی ها ی موجود با توجه به

ماهيت پردازش های توزيع شده از ديد کاربران- ارائه امکانات الزم به برنامه نويسان بمنظور طراحی

و پياده سازی نرم افزار ها با يک رويکرد مشابه - ارائه  امکانات الزم به برنامه نويسان بمنظور تبعيت

از روش های يکسان برای دستيابی به داده ها

Page 93: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Client Server : Three Tierمعماری

Page 94: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری
Page 95: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 95

بهبود روش ارزیابی معماری نرم£ افزار

و روش پیشنهادیروش ارزیابی معماری نرم افزار

ATAM ISO 9126و مدل کیفیتی

Page 96: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMروش ارزیابی معماری نرم افزار

Page 97: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMروش ارزیابی معماری نرم افزار

مبتني بر سناريو •تحليل معماري مبتني بر مصالحه •كامالً جدا از روشهاي قبلي توسعه يافت •تحليل صفات كيفيتي خاص براساس معماري ، هدف•جنبه های کیفی را با جزئیات بررسی می کند•1998 به عنوان يك مدل مارپيچي ازريابي در سال •

Page 98: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMروش ارزیابی معماری نرم افزار

قابليت اصالح پذيري، قابليت حمل، قابليت توسعه و •قابليت تجمع

فرآيند تكرار پذير ارزيابي •توانایی معماری نرم افزار با در نظر گرفتن چندین •

صفات کیفیتی رقابتیارزیابی صفات کیفیتی•وابستگی صفات کیفیتی•

Page 99: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMمشارکت کنندگان در

•ATAM:به مشارکت و همکاری سه گروه نیازمند است که عبارتند از تیم ارزیابی •تصمیم گیرندگان پروژه •ذینفعان معماری•

99 of 51

Page 100: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

تیم ارزیابی سه یا پنج نفر•هر عضو دارای نقش های از تیم •معماران سیستم، انتخاب شوند.•تیم توسعه ی •مشاور از خارج سازمان•

100 of 51

Page 101: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

تصمیم گیرندگان پروژه

توسعه و تکمیل پروژه •اجازه اعمال تغییرات در معماری•مدیریت پروژه•نمایندگانی از مشتری•معمار نقش خاصی در ارزیابی معماری •

101 of 51

Page 102: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ذینفعان معماری

تبلیغ کار •توانایی در ترویج قابلیت تغییرپذیری، امنیت، قابلیت •

دسترسی باالتوسعه دهندگان، آزمایش کنندگان، یکپارچه سازها، •

نگهدارندها، مهندسی کارایی، کاربران، سازندگان سیستم

نقش ذینفعان،اهداف خصوصیات کیفی خاص در •معماری برای موفقیت سیستم را بیان کنند.

102 of 51

Page 103: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

فاز مشارکت کنندگان زمان معمول فعالیت مراحل پیشنهادات تکمیلیصفر رهبر تیم ارزیابی و

تصمیم گیرندگان کلیدی پروژه

در صورت نیاز اجرا می شود به صورت

غیر رسمی

مشارکت و آماده سازی

آماده سازی و فراهم نمودن مقدمات

 

یک تیم ارزیاب و تصمیم گیرندگان

پروژه

یک روز ارزیابی ATAMنمایش  نمایش پیشران های

حرفهدر ساختار معماری

ایجاد شدهنمایش معماری معماری که از برون  

سپاری بدست آمدهتعیین روشهای

معماری 

ایجاد درخت سودمندی با استفاده از جدول ارائه شده در معماری

ISO9126 مشخص شده

تحلیل روش های معمارانه

 

دو تیم ارزیابی، تصمیم گیرندگان پروژه و

ذینفعان

دو روز ارزیابی )ادامه(

طوفان ذهنی و اولویت بندی سناریوها

با استفاده از جدول ارزش دهی یانگ صفات مقدار کمی پیدا میکنند.

تحلیل روش های معمارانه

 

نمایش نتایج  سه تیم ارزیابی و

مشتریان ارزیابییک هفته پیگیری تهیه گزارش نهایی  

103 of 51

Page 104: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMروش ارزیابی معماری نرم افزار

چهار فاز•فاز اول هماهنگی تیم ارزیاب با تصمیم گیرندگان پروژه•فاز دوم بررسی معماری در شش مرحله•فاز سوم ادامه بررسی و ارزیابی معماری•فاز چهارم نتیجه گیری•

104 of 51

Page 105: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMمرحله اول: نمایش

ATAMرهبر ارزیابی ارائه •تشریح فرایند و مر£احل •پاسخ به سواالت مطرح شده•ارائه خروجی•

105 of 51

Page 106: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله دوم: نمایش پیشران های )محرک( حرفه

عملکردهای بسیار مهم سیستم•محدودیت های سیاسی، اجتماعی، مدیریتی و تکنیکی •

مربوط به سیستماهداف حرفه و زمینه های مرتبط به سیستم•ذینفعان اصلی•پیشران های معماری•

106 of 51

Page 107: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله سو£م: نمایش معماری

ارائه ي معماري •در حد لزوم وارد جزئيات•محدوديت هاي فنّي احتمالی•اهداف مرتبط با نرم افزار•

107 of 51

Page 108: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله چهارم: تعیین روش های معماری

تحلیل معماری از طریق درک روش های معماری •الگوهای معماری، بسیار کارآمد هستند.•الگوی الیه بندی قابلیت حمل را از طریق تحت تاثیر قرار •

دادن کارایی به ارمغان می آورد الگوی مخزن داده، قابلیت گستردگی برای •

مصرف کنندگان و تولیدکنندگاه داده به ارمغان می آورد.مطالعه و بررسی معماری•فهرست برداری الگوها و استانداردهایی•

108 of 51

Page 109: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله پنجم: ایجاد درخت سودمندی خصوصیات کیفی

ایجاد درخت سودمندی•ISO9126استفاده از جداول پیشنهادی •استفاده از جدول ارزش دهی یانگ•

109 of 51

Page 110: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

iso9126صفات        ویژگی اصلی زیر ویژگی سواالت امتیاز جدول یانگ

نمره7 تا 1امتیاز بین سختی پیاده سازی

سخ£ت و متوسط ،ساده

عملیاتی مناسب بودن

آیا می توان وظیفه های مورد نیاز را اجرا کرد؟

   

صحیح بودن

آیا نتایج صحیح£ هستند؟    

قابلیت تعامل

آیا سیستم می تواند با دیگر سیستم ها تعامل داشته باشد؟

   

امنیت آیا سیستم از دسترسی غیرمجاز جلوگیری می کند؟

   

قابلیت اطمینان

تکمیل شدن

آیا با گذشت£ زمان خطاها حذف شده اند؟

   

تولرانس خطا

آیا نرم افزار قادر به مدیریت خطاها است؟

   

قابلیت بازیابی

آیا نرم افزار بعد از این که مشکلی بر£ای آن به وجود آمد،

اطالعات ذخیره نشده را نگهداری می کند و امکان ادامه

کار با نرم افزار وجود دارد؟

   

کاربری قابلیت£ فهم آیا کاربر می فهمد که چگونه از سیستم به راحتی استفاده کند؟

   

قابلیت یادگیری

آیا کاربر می تواند کار کردن با سیستم را یاد بگیرد؟

   

قابلیت عملیاتی

آیا کاربر می تواند بدون تالش زیاد از سیستم استفاده کند؟

   

قابلیت جذب کردن

آیا ظاهر برنامه زیبا و جذاب است؟

   

کارآمدی رفتار زمان آیا سیستم به سرعت به درخواست پاسخ می دهد؟

   

کاربرد منبع آیا سیستم از منابع به صورت کاربردی استفاده می کند؟

   

قابلیت نگهداری

قابلیت تحلیل

آیا خطاها به راحتی شناخته شده و رفع می شوند؟

   

قابلیت تغییر

آیا نرم افزار به راحتی تغییر می یابد؟

   

قابلیت پایداری

در صورت ایجاد تغییر، آیا نرم افزار به کارش ادامه

می دهد؟

   

قابلیت آزمايش

آیا به راحتی قابل آزمايش است؟

   

قابلیت حمل

قابلیت سازگاری

آیا می توان نرم افزار را به محیط های دیگر انتقال داد؟

   

قابلیت نصب

آیا نرم افزار به آساني نصب می شود؟

   

قابلیت تطبیق

آیا نرم افزار با استانداردهای حمل سازگار است؟

   

قابلیت جایگزینی

آیا می توان به آساني نرم افزار را به جای

نرم افز£ارهای دیگر جایگز£ین کرد؟

   

قابلیت کلی پذیرش آیا نرم افزار با قوانین و مقررات سازگار است؟

   

110 of 51

Page 111: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Functionality عملیاتی بودنعملیاتی مناسب بودن معماری نرم افزار میزان دامنه جستجوی مفهومی

ضبط و نگهداری فرآیندهای پژوهشی کاربرارائه گزارش های مختلف همچون چاپ کاغذی یا چاپ

دیجیتالیخروجی گرفتن از داده های متنوع نرم افزار عالوه بر داده های اصلی )مثل: پاورقی ها، تصاویر، فهرست ها(

امکانات فنی برخورداری از یک موتور جستجوی قوی و سریع دارای امکانات رتبه بندی جواب ها، نمایش های مختلف جواب،

، Stop Wordsجستجو در تمام محتواها، ساماندهي امکان جستجوي کلمات با اِعراب، امکان جستجو بر

اساس ريشه کلمات و يا ريشه و کلمه خاصمتفرقه درصد مقبولیت نزد کاربران

قابلیت همکاری

معماری نرم افزار ارتباط یک نرم افزار با نرم افزارهای مرتبط پژوهشی و دفتری

امکانات فنی به اشتراک گذاري اطالعات کاربران و محققانصحیح بودن -

صحتمعماری نرم افزار توان و دقت عمليات جستجو

امنیت امنیت درصد امنیت اطالعات برنامه و استفاده از الگوریتم های رمزگذاری داده ها

امنیت برنامه و جلوگیری از دسترسی غیر مجازدارا بودن سیستم مدیریت کاربران

111 of 51

Page 112: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Reliabilityقابلیت اطمینان

قابلیت اطمینان

تکمیل شدن-

قابلیت بلوغ

امكانات فني

رفع اشكاالت سيستم به مرور زمان

معماری نرم افزار

امکان رفع باگ ها و نواقص و اضافه کردن قابليت به آن از طريق

patch ها وdllهاي الحاقي

تولرانس

خطا-رواداري

خطا

امکانات فنی

توانايي در مديريت خطا و تضمين عملكرد صحيح نرم افزار

بررسی کیفیت

حداقلی باگ های برنامه

قابلیت بازیابی

معماری نرم افزار

بازگشت به وضعیت امن در هنگام بروز اشکال

112 of 51

Page 113: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Usability

کاربری قابلیت فهم رابط کاربران ارائه پیام ها یا رفتار مناسب بر اساس کارکرد کاربرگروه بندی درست منوهای برنامه

اطالع رسانی به کاربر هنگام انجام پردازش خاص همچون جستجواطالع رسانی نسبت به وضعیت جاری در طول زمان اجرای برنامه

آموزش ها و...hintاطالع رساني مناسب راجع به امكانات سيستم با استفاده از منوها، معماری نرم افزار

میزان تبعیت برنامه از عرف سایر نرم افزارها )راهبري كاربر در صفحات برنامه، كليدهاي ميانبر و...(

قابلیت یادگیری

آموزش دارا بودن راهنمای موضوعیوجود کتابچه راهنما برای برنامه ها

وجود راهنمای برخط یا داخل برنامه برای کاربران و درصد راهنمایی آن نسبت به صورتک ها و فهرست ها و وجود دمو آموزشی و تبلیغاتی و آزمایشی، امکان جستجو در راهنمای کاربر، وجود پیوند به راهنما در هر صفحه

قابلیت عملیاتی-

قابلیت استفاده

امکانات فنی پشتیبانی برنامه از زبان فارسیفراهم آوردن محيط هاي پ ژوهشي متعدد جهت آسان كردن تحقيق كاربران

معماری نرم افزار

امکانات اصلی برنامه در معرض دید کاربر

رابط کاربران میزان تسهیالت ویژه برای افراد ناتوانایجاد تمایز بین محتوای مهم و غیر مهم

ناوبری: عدم لزوم به مهارت کاربران برای ناوبری، قابلیت بازگشت به صفحه قبل و مرحله قبل،  وجود پیوند برای رفتن به یک سطح باالتر در هر می باشد، مشخص بودن مکان کاربر در هر 3صفحه، وجود پیوندي براي بازگشت به صفحه اصلی برنامه از تمامی صفحات، حداکثر عمق برنامه

صفحهامکان ناوبری بدون ماوس

وجود ابزار ناوبری یکسان در تمام صفحاتسهولت دسترسی کاربر به پاسخهای مورد نظر

تعداد کلیک مورد نیاز تا رفع نیازهای اطالعاتی مخاطبTABمناسب بودن چگونگي عملکرد

سهولت دسترسی کاربر به پاسخهای مورد نظرتعداد زبان های پشتیبانی شده در برنامه

معماری نرم افزار

حفظ آخرین وضعیت برنامه جهت بارگذاری در اجرای بعدیOfficeعدم وابستگی به ابزارهای جانبی مثل

امکان دسترسیهای متنوع به متون با توجه به نیاز کاربروجود رابطه بین حوزه های اطالعاتی مختلف با یکدیگر

سفارشی کردن عملکرد برنامهامکانات اصلی برنامه در معرض دید کاربر

قابلیت جذب کردن- قابلیت

جذب کاربر

رابط کاربران تنوع و استفاده درست و مناسب از کنترل ها )لیست، چک لیست، رادیوباتن و...(تعداد فونت و رنگ )پیش فرض( و تنظیمات متداول و سفارشی کردن قابلیت هایی مثل: فونت، رنگ، سایز و انتخاب قلم های خوانا و با اندازه

مناسب برای متن ها و عنوان ها و عدم ایجاد مشکل توسط رنگ ها در خوانایی متنمیزان استفاده از اِلمان های بومی و مذهبی در رابط های کاربری

زیبایی رابط کاربر با استفاده از اصول هنري و زيبايي شناختيتناسب وضعیت چیدمان صورتک ها و آیتم ها در صفحات )پیچیدگی و کیفیت جداول، استفاده مؤثر از الیه ها، استفاده از فضا، استفاده از تقسیم

کننده ها و جداکننده ها(هماهنگی رابط کاربر در کل برنامه و وجود یک قالب ثابت در تمام برنامه

Page 114: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Efficiencyکارآمدیکارآمدی رفتار

زمانمعماری نرم افزار

پاسخ گويي سريع به جستجوي كاربر

کاربرد منبع

رابط کاربران میزان پیکربندی رابط کاربری از خارج برنامه

به صورت منبع (Resource)

امنیت میزان استفاده صحیح و مناسب از...

(Buffering & cashing)

قابلیت استفاده در شبکه

امکانات فنی ممانعت از توقف اجرا به دلیل پردازش خاص

معماری نرم افزار

استفاده بهينه از تمام محيط ميز كار

Page 115: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Maintainability قابلیت نگهداریقابلیت نگهداری قابلیت

تحلیلامكانات فني شناسايي صحيح خطاهاي احتمالي

و اطالع£ رساني مناسب به كاربرقابلیت تغییر مع£ماری

نرم افزارمیزان توسعه پذیری برنامه )مانند

(Add-Insامکان اضافه شدن فراهم بودن امکان نصب

مجموعه اي از کتب و منابع مختص يک موضوع توسط کاربر

امكانات فني ارائه راهكارهاي مناسب و متنوع جهت به روزرساني نرم افزار

قابلیت گ£رفتن اطالعات کاربران و تأثیرپذیری برنامه از نظرات

کاربرانقابلیت پایداری

مع£ماری نرم افزار

نسخه پذیری و پشتیبانی از نسخه های مختلف

كاركرد صحيح نرم افزار بع£د از به روزرساني برنامه اجرايي و يا

اطالعاتقابلیت

آزمايش- آزمون پذیری

امكانات فني دارا بودن امکان آزمايش برنامه

115 of 51

Page 116: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Portabilityقابلیت حمل قابلیت

حملقابلیت

سازگاریمعماری نرم افزار

قابلیت انعطاف برنامه ها با انواع محيط ها

قابلیت نصب

معماری نرم افزار

سهولت  مراحل نصب و فعال سازی نرم افزارها و استفاده )عدم وابستگی

به نوع سیستم عامل ها و نرم افزارهای جانبی یا مدیریت آن در

صورت وابستگی(قابلیت تطبیق

معماری نرم افزار

میزان استعداد تبدیل به قالب های XMLاستاندارد مانند

امکانات فنی تنوع در حامل برنامه به منظور استفاده از استانداردها و مزیت های

حامل) گویایی - استاندارد (قابلیت

جایگزینیامکانات فنی امکان جایگزینی برنامه های دیگر با

این برنامه

116 of 51

Page 117: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله ششم: روش های تحلیل معماری

تحليل رويكردهاي معماري •بررسی سناریو•سناريو از مقدار و چگونگي پشتيباني •نقاط خطرات و غير خطرات•نقاط حساسيت و مصالحه ی •انتهای فاز اول•

117 of 51

Page 118: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله هفتم: طوفان ذهنی )جرقه زنی( و اولویت بندی سناریوها

سناریوهای اولیت بندی درخت سومندی•سناریوها اولیت بندی •ترکیب سناریو مشابه و رای دادن به آنها•رای هر ذینفع سی درصد به سناریو•آزادی در انتخاب رای•

118 of 51

Page 119: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله هشتم: تحلیل روش های معماری

سناریوهای مهم •معمار •تصمیمات معماری •

119 of 51

Page 120: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مرحله نهم: نمایش نتایج

روش های معماری مستند شده•مجموعه ای از سناریوها و اولویت بندی•درخت سودمندی•خطرات کشف شده•غیر خطرات مستند شده •نقاط حساس و نقاط مصالحه یافت شده•

120 of 51

Page 121: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMخروجی

نمایش مختصر از معماری•بیان اهداف حرفه•نیازهای کیفی برحسب مجموعه ای از سناریوها•نگاشت تصمیمات معماری به نیاز کیفی•مجموعه ای از نقاط مصالحه و حساس شناسایی شده•مجموعه ای از خطرات و غیر خطرات•مجموعه ای از موضوعات خطرات•

121 of 51

Page 122: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مجموعه ای از نقاط مصالحه و حساس شناسایی شده

تصمیمات معماری تاثیرات مشخصی روی خصوصیات کیفی •پایگاه داده پشتیبان یک تصمیم معماری •قابلیت اطمینان مثبت •کارایی بصورت منفی •نقطه مصالحه بین کارآیی و قابلیت اطمینان •تصمیم خطر است یا نه •هزینه کارایی چقدر است•

122 of 51

Page 123: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

مجموعه ای از خطرات و غیر خطرات

تصمیم معماری منجر به نتایج نامطلوب •غیر خطر تصمیم معماری امن •خطرات شناسایی شده •مبنایی کاهش خطر معماری •اگر با این خطرات برخورد نشود• تهدید اهداف حرفه پروژه•

123 of 51

Page 124: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ATAMمحاسن روش

از معماریسهامدارانفهم واضح •ارتباط بين سهامدارانافزایش •بهبود و تکمیل مستندات معماری•نتایج برگرفته از سناریو•ارضای صفات کیفی و وظیفه غیرعملکردی سیستم•

124 of 51

Page 125: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 125

Page 126: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

پیوست برای معماری نرم افزار

41 از 126

Page 127: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

ذینفعان سیستممعمار

Page 128: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

عوامل تاثیرگذار بر معماری نرم افزار

ذینفعان

سازمان توسعه دهنده

تجربیات و پیش زمینه معماری

محیط فنی

Page 129: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

Keyboard

interface

control

CashDisperns

er

Cardinterfa

ce

Page 130: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

معماری نرم افزار یک برنامه یا سیستم محاسباتی،ساختار یا ساختارهای آن سیستم محاسباتی است

که خصوصیات قابل رویت از بیرون عناصر و ارتباطات بین آن ها را نشان می دهد

Page 131: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

تعاریف دیگری از معماریمعماری طراحی سطح باال است•

معماری ساختار کلی سیستم است•

معماری مولفه ها و اتصال ها است•

Page 132: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

41 از 132

Page 133: ارائه پایان نامه:بهبود روش ارزیابی معماری نرم افزار از دید مدیریت برون سپاری

متشکرم به امید ترویج بیشتر آگاهی و علم

استفاده از این مستندات مفید و رایگان است

خرجش فقط یک صلوات بر محمد و آل محمد

اللهم صلی علی محمد و آل محمد و عجل فرجهم

برای سالمتی آقا امام زمان از سمت اهل بیت پیامبر مهربانی ها

ذکات علم ترویج آن است

بنده محتاج رحمت خدا

41 از 133