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

37
ل م ر عا ب ی ن ت ب م ار ز ف رم ا ب ی س د ب ه م

Upload: gzifa

Post on 05-Jan-2016

206 views

Category:

Documents


32 download

DESCRIPTION

مهندسی نرم افزار مبتنی بر عامل. رئوس مطالب. مهندسي نرم ‌ افزار مبتني بر عامل فرايند ‌ هاي توسعه مبتني بر عامل روش ‌ هاي توسعه سيستم ‌ هاي مبتني بر عامل روش ‌ هاي مهندسي نياز ‌ ها چارچوب i* زبان GRL (زبان مدل سازي نياز ‌ ها) چارچوب NFR ‌ - PowerPoint PPT Presentation

TRANSCRIPT

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

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

2

رئوس مطالب

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

چارچوبi* زبانGRLها( )زبان مدل سازي نياز چارچوبNFR

هاي مبتني بر عامل هاي تحليل و طراحي سيستم روشهاي مبتنی بر روشهای شیء گرا حل راه

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

3

رئوس مطالب )ادامه(

متدولوژيMaSe مرحله تحليل درMaSE

مرحله تعيين اهداف اعمال موارد كاربردها بازبيني نقش

مرحله طراحي ايجاد كالس هاي عامل ساخت گفتگوها تركيب كالس هاي عامل طراحي سيستم

هاي پياده سازي روشهاي تست روش

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

4

افزار مبتني بر عامل مهندسي نرم

ويژگي افزار نرم داراي بOر عامOل مبتOني هOاي مشOتركي هOاي نظير پيچيدگي، باز بودن و توزيع داده و كنترل هستند.

ته نرم افزار نرمOدر دس U هOاي افزار هOاي مبتOني بOر عامOل معمOوًالReal-Timeگيرند. و حساس قرار مي

ترين از عاملOابراين مهمOده بنOكيل شOا تشOهAbstraction در ها مفهومي به نام عامل است. اينگونه سيستم

تمOOسيس اين روش بنOOابراين نيازمنOOد مهندسOOي ها هOOاي ها افOزاري بOوده كOه بOه طOور خOاص بOراي اينگونOه سيسOتم نرم

طراحي شده باشد.

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

5

افزار مبتني بر عامل مهندسي نرم)ادامه(

نرم نرم مهندسOي مهندسOي عامOل بOر مبتOني افOزار افOزار هاي مبتني بر عامل است. سيستم

نرم در مهندسOي كOاربرد بOر عالوه عامOل، بOر مبتOني افOزار سيسOOتم توسOOعه توسOOعه بOOراي عامOOل، بOOر مبتOOني هاي

هاي مبتOني هOايي نظOير سيسOتم هايي كOه داراي ويژگي سيسOتمبر عامل هستند، قابل كاربرد است.

نرم تكنولOوژي ًاليه مهندسOي يOك بOر عامOل، مبتOني اي افOزار شود. محسوب مي

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

6

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

7

هاي توسعه مبتني بر عامل فرايند

ها مشخص كننده مراحل ًالزم براي ساخت به اين فرايندباشند. موقع و با كيفيت يك سيستم مبتني بر عامل مي

ها : نمونهMASSIVE) مدل فرايند تكراري ( Tropos)مدل فرايند خطي( هاي همراه با چارچوب فرايند ( هاي توليد عاملZeus)گسترش مدل ( هاي فرايند موجودXP for AO Systems)

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

8

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

فرايند هايي براي به كارگيري در مدل در كنار فرايند، روشباشد. نيز ضروري مي

ها عبارتند از : روشها هاي مهندسي نياز روشهاي تحليل و طراحي روشهاي پياده سازي روشهاي تست روش

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

9

ها هاي مهندسي نياز روش

هاي مشتري ها، براي به دست آوردن و آناليز نياز اين روشروند. به كار مي

ها: هايي از اين روش نمونه چارچوبi* زبانGRLها( )زبان مدل سازي نياز چارچوبNFR

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

10

ها براي مهندسي نياز*iچارچوب

ي نيازOراي مهندسOاس روش چارچوبي بOر اسOا بOني هOاي مبتOهبر عامل

مدل بOراي چOارچوب نياز اين كOه سOازي يOك سيسOتم در هOا )نرم كننOده شOركت عامOل چنOدين غOير داراي يOا افOزاري

هاي متفOاوت باشOند، قابOل اسOتفاده افOزاري( بOا خواسOت نرماست.

و سيسOتم بOازيگران اولOويت سيسOتم، اهOداف يOافتن در بOه بOا يكOديگر، نحOوه و امكOان سOنجي دسOتيابي آنهOا ارتبOاط

اهداف سيستم سودمند است.

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

11

*i در چارچوب Strategic Dependencyمدل بOه موقOع • اسOت جلسOات چOرا ًالزم برنامه ريزي شوند؟

چOرا ًالزم اسOت برنامOه ريOز جلسOات •زمان كننOدگان شOركت مOورد ‌از هOاي

زمان و نمي‌عالقOه كOه را تواننOد ‌هOايي ؟ ‌شركت كنند دريافت كند

•....

بOه موقOع • اسOت جلسOات چOرا ًالزم برنامه ريزي شوند؟

چOرا ًالزم اسOت برنامOه ريOز جلسOات •زمان كننOدگان شOركت مOورد ‌از هOاي

زمان و نمي‌عالقOه كOه را تواننOد ‌هOايي ؟ ‌شركت كنند دريافت كند

•....

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

12

*i در چارچوب Strategic Rationaleمدل

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

13

*iهاي ديگر ويژگي

امكان ارزيابي هريك از عمليات و اهداف معرفي شده از believability و ability، workability، viabilityچهارديدگاه

ها در مراحل اوليه توسعه ) تاكيد بر مديريت نيازEarly Phase Requirement Engineering)

هاي هاي سيستم امكان به كارگيري در مديريت نيازU سيستم هاي هاي توزيع شده، سيستم گوناگون مخصوصا

امن و ...

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

14

هاي هاي تحليل و طراحي سيستم روشمبتني بر عامل

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

موجود اضافه گردد. : به دو دسته تقسیم میشوند

.متدولوژی هایی که توسعه روش های شیء گرا هستند .متدولوژی هایی که توسعه روش های مهندسی دانش هستند

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

15

هاي مبتنی بر روشهای شیء حل راهگرا

: مزایا .شباهت میان شی و عامل وجود دارد .روش های شی گرا بسیار متداول است .یادگیری و هزینه کمتری نسبت به سایر روش ها دارد

: مواردی که باید مد نظر قرار گیرد تجرد باًالتر عامل نسبت به شیء عدم توانایی روش های شیء گرا در مدل سازی ویژگی های خاص

عامل تفاوت در نوع ارتباط بین اشیاء و عامل ها

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

16

MaSeمتدولوژي

هاي مبتني بر عامل متدولوژي تحليل و طراحي سيستم توسط ابزارagentToolشود. پشتيباني ميهاي عامل نظير ”خود مختاري“، ”خالقيت“، ”پيش ويژگي

باشد. فعال بودن“ در آن مورد توجه نميافزاري فرض هاي نرم عامل ها به صورت موجوديت

شوند كه براي رسيدن به يك هدف خاص با هم همكاري ميكنند. مي

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

17

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

18

MaSEمرحله تحليل در

مرحله تعيين اهداف اعمال موارد كاربردها بازبيني نقش

ها‌نيازتحليلها‌نقش

ي موجود در سيستم

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

19

تعيين اهداف

تشخيص اهداف تشخيص اهداف كلي سيستمهاي مشتري مندي با توجه به نياز

طبقه بندي اهدافشود. اهداف كلي به اهداف كوچك تر شكسته مي ساختار سلسله مراتبي اهداف، به كمك نمودار درختي نمايش داده

شود. مياي جزئي شوند كه امكان انجام آنها توسط اهداف بايد به اندازه

شود، وجود داشته هايي كه در مرحله طراحي مشخص مي عاملباشد.

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

20

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

21

به كارگيري موارد كاربرد

ايجاد موارد كاربردها و اهداف سيستم، مدل مورد كاربرد سيستم مندي با توجه به نياز

گردد. مشخص مي

( توليد نمودار ترتيبSequence Diagram)هاي ًالزم و همچنين ارتباط بين براي هريك از موارد كاربرد، نقش

شود. ها براي انجام مورد كاربرد مربوطه، مشخص مي نقش

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

22

ها بهبود نقش

هاي سيستم و هدف اين مرحله، تكميل نقشباشد. مي نمودن وظايف هر نقش مشخص

در اين مرحله بايد اطمينان حاصل نمود كه به هرGoal يك نقش اختصاص داده شده است.

ها، وظيفه انجام چندين توان با تركيب نقش ميGoal را به يك نقش اختصاص داد.

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

23

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

24

مشخص كردن وظايف

هاي عامل در مرحله طراحي، ها به كالس براي تبديل نقشبايد وظايف هر نقش مشخص گردد.

هاي سيستم را با نقش توان از نمودار براي اين منظور ميجزئيات كامل استفاده نمود.

هاي حالت توان با استفاده از نمودار همچنين وظايف را ميسازي نمود. مدل

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

25

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

26

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

27

مرحله طراحي

در اين مرحله مي خواهيم مدلي توليد كنيم كه در مراحلبعدي قابل پياده سازي باشد.

طراحي درMaSE : شامل مراحل زير است ايجاد كالس هاي عامل ساخت گفتگوها تركيب كالس هاي عامل طراحي سيستم

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

28

ايجاد كالسهاي عامل

در اين مرحله، براي هريك از نقش هاي موجود در سيستميك كالس عامل اختصاص داده مي شود.

مي توان بين نقش ها و كالس هاي عامل، نگاشت يك بهيك ايجاد نمود يا مجموعه اي از نقش ها را داخل يك كالس

عامل قرار داد. در نمودار كالس عامل، كالس ها ) به صورت مربع ( و

ارتباط بين كالس ها با خطوط مشخص مي شود.

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

29

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

30

ساخت گفتگوها

در اين مرحله، هدف مدل سازي وضعيت داخلي يك عاملدر هنگام دريافت يك پيام است.

براي اين منظور از نمودارهاي حالتUML استفاده شده و موارد زير بايد مدل شود :

"كه با دريافت آن گذر از يك حالت به حالت ديگر صورت " پياميگيرد. مي

"شود. كه در صورت دريافت پيام فعال مي"فعاليتي شرايطي كه براي گذر از يك حالت به حالت ديگر بايد برقرار

باشد.گردد. كه در حين گذر از يك حالت به حالت ديگر، ارسال مي پيامي

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

31

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

32

طراحي داخلي عامل

.در اين مرحله معماري داخلي عامل مشخص مي شود براي اين منظور مي توان از زبان هاي توصيف معماري

استفاده نمود.

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

33

استقرار سيستم

در اين مرحله ساختار كلي عامل ها در سيستم مشخصمي شود.

براي نمايش نحوه استقرار عامل ها از نمودارهاي استقرار(Deployment Diagram در )UML .استفاده مي شود

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

34

هاي پياده سازي روش

ها ارائه شده هايي براي توسعه عامل زبان در اين بخشاست.

هايي هستند كه در توسعه سيستم هاي عامل، زبان زبانها )نظير امكان استفاده از مفاهيم اصلي موجود در عامل

هاي ذهني( را به طور ها، اهداف، و ديگر ويژگي باوركنند. مستقيم فراهم مي

ها عبارتند از : هايي از اين زبان نمونهAgent 0 PLACA 3APL

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

35

هاي تست روش

هاي عامل تست ويژگي تستUnit

هاي مبتني بر عامل، كوچكترين واحد قابل تست عامل در سيستماست.

هايي كه بايد از ديد ديگر در اين روش، عامل از لحاظ ويژگيشود. ها برآورده سازد، تست مي عامل

با زبان هايي براي تست خودكار عامل محيط ( هاJava ارائه شده ) هايي مشتق شده از Test Caseها امكان ايجاد است. در اين محيط

Junit و تست خودكار عامل بر اساس Test Case .وجود دارد

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

36

هاي تست روش

تست جامعهگردد. در اين روش كل سيستم چند عامله تست مي هاي ارتباطي تست پروتكلها ها در هنگام دريافت پيغام از ديگر عامل تست كاركرد عامل

تستValidation هاي مورد انتظار كاربر توسط در اين روش، برآورده شدن نياز

گردد. سيستم چند عامله تست مي

آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

37

معماری سیستم

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

در این زمینه در منابع مختلف، الگوهای معماری گوناگون، ... ( معرفی شده است. Blackboard، Agency)نظیر

زبان های توصیف معماری مخصوص عامل ها