آزمایشگاه سیستمهای هوشمند 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
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
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
18
MaSEمرحله تحليل در
مرحله تعيين اهداف اعمال موارد كاربردها بازبيني نقش
هانيازتحليلهانقش
ي موجود در سيستم
آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab
19
تعيين اهداف
تشخيص اهداف تشخيص اهداف كلي سيستمهاي مشتري مندي با توجه به نياز
طبقه بندي اهدافشود. اهداف كلي به اهداف كوچك تر شكسته مي ساختار سلسله مراتبي اهداف، به كمك نمودار درختي نمايش داده
شود. مياي جزئي شوند كه امكان انجام آنها توسط اهداف بايد به اندازه
شود، وجود داشته هايي كه در مرحله طراحي مشخص مي عاملباشد.
آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab
21
به كارگيري موارد كاربرد
ايجاد موارد كاربردها و اهداف سيستم، مدل مورد كاربرد سيستم مندي با توجه به نياز
گردد. مشخص مي
( توليد نمودار ترتيبSequence Diagram)هاي ًالزم و همچنين ارتباط بين براي هريك از موارد كاربرد، نقش
شود. ها براي انجام مورد كاربرد مربوطه، مشخص مي نقش
آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab
22
ها بهبود نقش
هاي سيستم و هدف اين مرحله، تكميل نقشباشد. مي نمودن وظايف هر نقش مشخص
در اين مرحله بايد اطمينان حاصل نمود كه به هرGoal يك نقش اختصاص داده شده است.
ها، وظيفه انجام چندين توان با تركيب نقش ميGoal را به يك نقش اختصاص داد.
آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab
24
مشخص كردن وظايف
هاي عامل در مرحله طراحي، ها به كالس براي تبديل نقشبايد وظايف هر نقش مشخص گردد.
هاي سيستم را با نقش توان از نمودار براي اين منظور ميجزئيات كامل استفاده نمود.
هاي حالت توان با استفاده از نمودار همچنين وظايف را ميسازي نمود. مدل
آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab
27
مرحله طراحي
در اين مرحله مي خواهيم مدلي توليد كنيم كه در مراحلبعدي قابل پياده سازي باشد.
طراحي درMaSE : شامل مراحل زير است ايجاد كالس هاي عامل ساخت گفتگوها تركيب كالس هاي عامل طراحي سيستم
آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab
28
ايجاد كالسهاي عامل
در اين مرحله، براي هريك از نقش هاي موجود در سيستميك كالس عامل اختصاص داده مي شود.
مي توان بين نقش ها و كالس هاي عامل، نگاشت يك بهيك ايجاد نمود يا مجموعه اي از نقش ها را داخل يك كالس
عامل قرار داد. در نمودار كالس عامل، كالس ها ) به صورت مربع ( و
ارتباط بين كالس ها با خطوط مشخص مي شود.
آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab
30
ساخت گفتگوها
در اين مرحله، هدف مدل سازي وضعيت داخلي يك عاملدر هنگام دريافت يك پيام است.
براي اين منظور از نمودارهاي حالتUML استفاده شده و موارد زير بايد مدل شود :
"كه با دريافت آن گذر از يك حالت به حالت ديگر صورت " پياميگيرد. مي
"شود. كه در صورت دريافت پيام فعال مي"فعاليتي شرايطي كه براي گذر از يك حالت به حالت ديگر بايد برقرار
باشد.گردد. كه در حين گذر از يك حالت به حالت ديگر، ارسال مي پيامي
آزمایشگاه سیستمهای هوشمند 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 هاي مورد انتظار كاربر توسط در اين روش، برآورده شدن نياز
گردد. سيستم چند عامله تست مي