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

Slides:



Advertisements
Similar presentations
Artificial Intelligent Systems Laboratory 1 تيم‌هاي نرم افزاري فصل 21 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش تهيه كننده : پويا جافريان.
Advertisements

طراحي و ساخت سيستم‌هاي تجارت الکترونيک چارچوب و الگوي سازمان‌هاي تجاري.
1 آزمايشگاه سيستم های هوشمند ( Domain-specific Architecture.
برنامه‌ريزي استراتژيک پيشرفته چارچوب کلي تجزيه و تحليل راهبردي (استراتژيک) سيستم‌ها.
RoboCup Rescue Simulation قسمت سوم به نام خدا دانشکده مهندسی کامپيوتر و فن آوری اطلاعات ارائه درس رباتيکز ارائه دهندگان : اميرعلی صالحی ابری.
طراحي و مدل کردن مؤلفه ها فصل 7 معماري نرم افزار هاي بزرگ دانيال مؤذن استاد : دکتر عبدالله زاده.
آزمايشگاه سيستم‌هاي هوشمند1 برنامه ريزي و نظاره پروژه درس مهندسي نرم‌افزار 2 فصل 24 دكتر احمد عبداله زاده بارفروش تهيه كننده : پويا جافريان.
فاکتورهای مهم در ایجاد یک مقاله علمی
طراحي و ساخت سيستم ‌ هاي تجارت الکترونيک چارچوب و الگوي سازمان ‌ هاي تجاري.
برنامه‌ريزي استراتژيک پيشرفته مدل و فرآيند کلان برنامه‌ريزي راهبردي سيستم های تجارت الکترونيک.
ارائه روشي براي شناسايي کاراکترهاي دستنويس، برپايه شبکه LVQ.
طراحي و ساخت سيستم‌هاي تجارت الکترونيک
Artificial Intelligent Systems Laboratory 1 مديريت ريسك درس مهندسي نرم‌افزار 2 فصل 25 دكتر احمد عبداله زاده بارفروش تهيه كننده : پويا جافريان.
برنامه‌ريزي استراتژيک
ارائه درس روباتيکز Extended Kalman Filter فريد ملازم استاد مربوطه دکتر شيري دانشگاه امير کبير – دانشکده کامپيوتر و فناوري اطلاعات.
سيستمهاي اطلاعات مديريت ارائه كننده : محسن كاهاني.
نام و نام خانوادگي : فريد ملازم 1 آزمايشکاه سيستم هاي هوشمند ( موضوع ارائه ارتباط بين component ها.
طراحي و ساخت سيستم‌هاي تجارت الکترونيک ساخت سيستم‌هاي تجارت الکترونيک ECSE.
1 فصل 8 - طراحي زيرسيستم ها برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony فرنوش گلشن آزمايشگاه سيستم هاي هوشمند بهار.
نام و نام خانوادگي : فريد ملازم 1 آزمايشکاه سيستم هاي هوشمند ( موضوع ارائه Process and Deployment Design.
1 تدوين راهبرد برای يک برنامه جلب حمايت همه جانبه Mohsen Shams, MD. PhD Candidate in Health Education, School of Public Health, Tehran University of Medical.
مقدمه فصل 1 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي.
شاخص هاي فرايند و پروژه درس مهندسي نرم‌افزار 2
مهندسی نرم افزار مبتنی بر عامل
RUP فرآيند شيئ گراي توسعه نرم افزار Rational. RUP عناوين مورد بررسي n مقدمه n بهترين تجارب n نگاهي كلي به فرآيند n فرآيند مبتني بر موارد كاربرد n فرآيند.
1 فصل 9 - طراحي ساختار داده و تراکنش ها برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony فرنوش گلشن آزمايشگاه سيستم هاي.
1 آزمايشگاه سيستم های هوشمند ( ارزيابي معماري نرم افزار.
1 فصل 5 - مرور سريع UML برگرفته از کتاب Large-Scale Software Architecture – Jeff Garland, Richard Anthony افشين لامعی بهار 87.
Artificial Intelligent Systems Laboratory 1 مديريت پروژه فصل 21 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش تهيه كننده : پويا جافريان.
مديريت پروژه‌هاي فناوري اطلاعات فرآيند مديريت پروژه-مرحله برنامه‌ريزي تخصيص منابع.
تعميم در يادگيري مبتني بر نمونه ها
Artificial Intelligent Systems Laboratory 1 الگو‌هاي فرايند (Process Patterns) فصل 2 درس مهندسي نرم‌افزار 2 دكتر احمد عبداله زاده بارفروش تهيه كننده :
In the name of God Sharif University of Technology, International Branch, Kish Island Dr. Mohsen Sadighi Moshkenani Chapter 12.
BY: Ghasem Mohammadi دانشگاه كردستان دانشكدة فني و مهندسي گروه كامپيوتر مباني كامپيوتر و برنامه سازي Basics of Computer and Programming Session 1 Basic.
روش تحقیق جلسه چهارم دانشگاه صنعتی اصفهان دانشکده کشاورزی
ساختارهاي تقسيم كار پروژه
Solving problems by searching Chapter 3 Modified by Vali Derhami.
1 فصل دوم تبديلات. 2 فصل دوم سرفصل مطالب مقدمه ضرب بردارها دستگاه ‌ هاي مختصات دوران ‌ ها مختصات همگن دوران ‌ ها و انتقال ‌ ها تبديلات تركيبي همگن تبديل.
Information Retrieval
Frameworks And Patterns
مديريت پروژه هاي فناوري اطلاعات نويسنده : Jack T. Marchewka ترجمه پاورپوينت فصل سه مترجم : محمد صادق كسلخه ايميل :
نظریه رفتار برنامه ريزي شده Theory of Planned Behavior
تمرین هفتم بسم الله الرحمن الرحیم درس یادگیری ماشین محمدعلی کیوان راد
“Unified Modeling Languge“
ANOVA: Analysis Of Variance
ANOVA: Analysis Of Variance
سيستمهاي اطلاعات مديريت
آشنايي با برنامه نويسي به زبان C++
پردازنده هاي چند هسته اي
تکنیک دیماتل DEMATEL: decision making trial and evaluation laboratory.
دکتر حسين بلندي/ دکتر سید مجید اسماعیل زاده / دکتر بهمن قربانی واقعی
تبدیل فوریه (Fourier Transform)
نمايش اعداد در کامپيوتر چهار عمل اصلي
اولین همایش فناوری اطلاعات بیرجند
سيستمهاي اطلاعات مديريت
هیدرولیک جریان در کانالهای باز
مهندسی نرم افزار عامل گرا
فيلتر كالمن معرفي : فيلتر كالمن تخمين بهينه حالت‌ها است كه براي سيستم‌هاي ديناميكي با اختلال تصادفي در سال 1960 بزاي سيستم‌هاي گسسته و در سال 1961 براي.
عمليات آهنگري.
نظریه رفتار برنامه ريزي شده Theory of Planned Behavior
واسط كاربري هوشمند جلسه اول Intelligent User Interface
Test آزمون نرم افزار Mansooreh Jalalyazdi.
تحليل عملكرد يك سيستم تصويربرداري ديجيتال
تدريس يار: ميثم نظرياني
مقدمه اي بر مهندسي نيازمنديها
نرم افزار عملي دوره كارداني كامپيوتر دانشگاه کردستان دانشكده فني
مثال : فلوچارتي رسم كنيد كه دو عدد از ورودي دريافت كرده بزرگترين عدد
آزمايشگاه مهندسي نرم افزار
فصل 8 –Process and Deployment
Presentation transcript:

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

آزمایشگاه سیستمهای هوشمند رئوس مطالب مهندسي نرم‌افزار مبتني بر عامل فرايند‌هاي توسعه مبتني بر عامل روش‌هاي توسعه سيستم‌هاي مبتني بر عامل روش‌هاي مهندسي نياز‌ها چارچوب i* زبان GRL (زبان مدل سازي نياز‌ها) چارچوب NFR‌ روش‌هاي تحليل و طراحي سيستم‌هاي مبتني بر عامل راه‌حل‌هاي مبتنی بر روشهای شیء گرا آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند رئوس مطالب (ادامه) متدولوژي MaSe مرحله تحليل در MaSE مرحله تعيين اهداف اعمال موارد كاربرد بازبيني نقش‌ها مرحله طراحي ايجاد كلاس هاي عامل ساخت گفتگوها تركيب كلاس هاي عامل طراحي سيستم روش‌هاي پياده سازي روش‌هاي تست آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

مهندسي نرم‌افزار مبتني بر عامل نرم‌افزار‌هاي مبتني بر عامل داراي ويژگي‌هاي مشتركي نظير پيچيدگي، باز بودن و توزيع داده و كنترل هستند. نرم‌افزار‌هاي مبتني بر عامل معمولاً در دسته نرم‌افزار‌هاي Real-Time و حساس قرار مي‌گيرند. از عامل‌ها تشكيل شده بنابراين مهمترين Abstraction در اينگونه سيستم‌ها مفهومي به نام عامل است. بنابراين اين سيستم‌ها نيازمند روش‌هاي مهندسي نرم‌افزاري بوده كه به طور خاص براي اينگونه سيستم‌ها طراحي شده باشد. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

مهندسي نرم‌افزار مبتني بر عامل (ادامه) مهندسي نرم‌افزار مبتني بر عامل مهندسي نرم‌افزار سيستم‌هاي مبتني بر عامل است. مهندسي نرم‌افزار مبتني بر عامل، علاوه بر كاربرد در توسعه سيستم‌هاي مبتني بر عامل، براي توسعه سيستم‌هايي كه داراي ويژگي‌هايي نظير سيستم‌هاي مبتني بر عامل هستند، قابل كاربرد است. مهندسي نرم‌افزار مبتني بر عامل، يك تكنولوژي لايه‌اي محسوب مي‌شود. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

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

فرايند‌هاي توسعه مبتني بر عامل اين فرايند‌ها مشخص كننده مراحل لازم براي ساخت به موقع و با كيفيت يك سيستم مبتني بر عامل مي‌باشند. نمونه‌ها : MASSIVE ( مدل فرايند تكراري ) Tropos (مدل فرايند خطي) فرايند‌هاي همراه با چارچوب‌هاي توليد عامل (Zeus) گسترش مدل‌هاي فرايند موجود (XP for AO Systems) آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

روش‌هاي توسعه سيستم‌هاي مبتني بر عامل در كنار فرايند، روش‌هايي براي به كارگيري در مدل‌فرايند نيز ضروري مي‌باشد. روش‌ها عبارتند از : روش‌هاي مهندسي نياز‌ها روش‌هاي تحليل و طراحي روش‌هاي پياده سازي روش‌هاي تست آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

روش‌هاي مهندسي نياز‌ها اين روش‌ها، براي به دست آوردن و آناليز نياز‌هاي مشتري به كار مي‌روند. نمونه‌هايي از اين روش‌ها: چارچوب i* زبان GRL (زبان مدل سازي نياز‌ها) چارچوب NFR‌ آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

چارچوب i* براي مهندسي نياز‌ها چارچوبي براي مهندسي نياز‌ها بر اساس روش‌هاي مبتني بر عامل اين چارچوب براي مدل‌سازي نياز‌ها در يك سيستم كه داراي چندين عامل شركت كننده (نرم‌افزاري يا غير نرم‌افزاري) با خواست‌هاي متفاوت باشند، قابل استفاده است. در يافتن اهداف سيستم، اولويت بازيگران سيستم و ارتباط آنها با يكديگر، نحوه و امكان سنجي دستيابي به اهداف سيستم سودمند است. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

مدل Strategic Dependency در چارچوب i* چرا لازم است جلسات به موقع برنامه ريزي شوند؟ چرا لازم است برنامه ريز جلسات از شركت كنندگان زمان‌هاي مورد علاقه و زمان‌هايي را كه نمي‌توانند شركت كنند دريافت كند‌؟ .... آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

مدل Strategic Rationale در چارچوب i* آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند ويژگي‌هاي ديگر i* امكان ارزيابي هريك از عمليات و اهداف معرفي شده از چهارديدگاه ability، workability، viability و believability تاكيد بر مديريت نياز‌ها در مراحل اوليه توسعه (Early Phase Requirement Engineering) امكان به كارگيري در مديريت نياز‌هاي سيستم‌هاي گوناگون مخصوصاً سيستم‌هاي توزيع شده، سيستم‌هاي امن و ... آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

روش‌هاي تحليل و طراحي سيستم‌هاي مبتني بر عامل در این متدولوژی ها سعی شده که ویژگی های مربوط به عامل ها و روش های مرتبط با آن در متدولوژی های موجود اضافه گردد. به دو دسته تقسیم میشوند : متدولوژی هایی که توسعه روش های شیء گرا هستند. متدولوژی هایی که توسعه روش های مهندسی دانش هستند. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

راه‌حل‌هاي مبتنی بر روشهای شیء گرا مزایا : شباهت میان شی و عامل وجود دارد. روش های شی گرا بسیار متداول است. یادگیری و هزینه کمتری نسبت به سایر روش ها دارد. مواردی که باید مد نظر قرار گیرد : تجرد بالاتر عامل نسبت به شیء عدم توانایی روش های شیء گرا در مدل سازی ویژگی های خاص عامل تفاوت در نوع ارتباط بین اشیاء و عامل ها آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند متدولوژي MaSe متدولوژي تحليل و طراحي سيستم‌هاي مبتني بر عامل توسط ابزار agentTool پشتيباني مي‌شود. ويژگي‌هاي عامل نظير ”خود مختاري“، ”خلاقيت“، ”پيش فعال بودن“ در آن مورد توجه نمي‌باشد. عامل ها به صورت موجوديت‌هاي نرم‌افزاري فرض مي‌شوند كه براي رسيدن به يك هدف خاص با هم همكاري مي‌كنند. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

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

آزمایشگاه سیستمهای هوشمند مرحله تحليل در MaSE مرحله تعيين اهداف اعمال موارد كاربرد بازبيني نقش‌ها تحليل نقش‌هاي موجود در سيستم نياز‌ها آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند تعيين اهداف تشخيص اهداف تشخيص اهداف كلي سيستم با توجه به نياز‌مندي‌هاي مشتري طبقه بندي اهداف اهداف كلي به اهداف كوچك تر شكسته مي‌شود. ساختار سلسله مراتبي اهداف، به كمك نمودار درختي نمايش داده مي‌شود. اهداف بايد به اندازه‌اي جزئي شوند كه امكان انجام آنها توسط عامل‌هايي كه در مرحله طراحي مشخص مي‌شود، وجود داشته باشد. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

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

به كارگيري موارد كاربرد ايجاد موارد كاربرد با توجه به نياز‌مندي‌ها و اهداف سيستم، مدل مورد كاربرد سيستم مشخص مي‌گردد. توليد نمودار ترتيب (Sequence Diagram) براي هريك از موارد كاربرد، نقش‌هاي لازم و همچنين ارتباط بين نقش‌ها براي انجام مورد كاربرد مربوطه، مشخص مي‌شود. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند بهبود نقش‌ها هدف اين مرحله، تكميل نقش‌هاي سيستم و مشخص‌نمودن وظايف هر نقش‌مي‌باشد. در اين مرحله بايد اطمينان حاصل نمود كه به هر Goal يك نقش اختصاص داده شده است. مي‌توان با تركيب نقش‌ها، وظيفه انجام چندين Goal را به يك نقش اختصاص داد. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

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

آزمایشگاه سیستمهای هوشمند مشخص كردن وظايف براي تبديل نقش‌ها به كلاس‌هاي عامل در مرحله طراحي، بايد وظايف هر نقش مشخص گردد. براي اين منظور مي‌توان از نمودار‌ نقش‌هاي سيستم را با جزئيات كامل استفاده نمود. همچنين وظايف را مي‌توان با استفاده از نمودار‌هاي حالت مدل‌سازي نمود. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

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

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

آزمایشگاه سیستمهای هوشمند مرحله طراحي در اين مرحله مي خواهيم مدلي توليد كنيم كه در مراحل بعدي قابل پياده سازي باشد. طراحي در MaSE شامل مراحل زير است : ايجاد كلاس هاي عامل ساخت گفتگوها تركيب كلاس هاي عامل طراحي سيستم آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند ايجاد كلاسهاي عامل در اين مرحله، براي هريك از نقش هاي موجود در سيستم يك كلاس عامل اختصاص داده مي شود. مي توان بين نقش ها و كلاس هاي عامل، نگاشت يك به يك ايجاد نمود يا مجموعه اي از نقش ها را داخل يك كلاس عامل قرار داد. در نمودار كلاس عامل، كلاس ها ( به صورت مربع ) و ارتباط بين كلاس ها با خطوط مشخص مي شود. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

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

آزمایشگاه سیستمهای هوشمند ساخت گفتگوها در اين مرحله، هدف مدل سازي وضعيت داخلي يك عامل در هنگام دريافت يك پيام است. براي اين منظور از نمودارهاي حالت UML استفاده شده و موارد زير بايد مدل شود : "پيامي" ‌كه با دريافت آن گذر از يك حالت به حالت ديگر صورت مي‌گيرد. "فعاليتي" كه در صورت دريافت پيام فعال مي‌شود. شرايطي كه براي گذر از يك حالت به حالت ديگر بايد برقرار باشد. پيامي‌ كه در حين گذر از يك حالت به حالت ديگر، ارسال مي‌گردد. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

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

آزمایشگاه سیستمهای هوشمند طراحي داخلي عامل در اين مرحله معماري داخلي عامل مشخص مي شود. براي اين منظور مي توان از زبان هاي توصيف معماري استفاده نمود. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند استقرار سيستم در اين مرحله ساختار كلي عامل ها در سيستم مشخص مي شود. براي نمايش نحوه استقرار عامل ها از نمودارهاي استقرار (Deployment Diagram) در UML استفاده مي شود. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند روش‌هاي پياده سازي در اين بخش‌ زبان‌هايي براي توسعه عامل‌ها ارائه شده است. زبان‌هاي عامل، زبان‌هايي هستند كه در توسعه سيستم امكان استفاده از مفاهيم اصلي موجود در عامل‌ها (نظير باور‌ها، اهداف، و ديگر ويژگي‌هاي ذهني) را به طور مستقيم فراهم مي‌كنند. نمونه‌هايي از اين زبان‌ها عبارتند از : Agent 0 PLACA 3APL آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند روش‌هاي تست تست ويژگي‌هاي عامل تست Unit‌ در سيستم‌هاي مبتني بر عامل، كوچكترين واحد قابل تست عامل است. در اين روش، عامل از لحاظ ويژگي‌هايي كه بايد از ديد ديگر عامل‌ها برآورده سازد، تست مي‌شود. محيط‌هايي براي تست خودكار عامل‌ها ( با زبان Java ) ارائه شده است. در اين محيط‌ها امكان ايجاد Test Case هايي مشتق شده از Junit و تست خودكار عامل بر اساس Test Case وجود دارد. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند روش‌هاي تست تست جامعه در اين روش كل سيستم چند عامله تست مي‌گردد. تست پروتكل ‌هاي ارتباطي تست كاركرد عامل‌ها در هنگام دريافت پيغام از ديگر عامل‌ها تست Validation در اين روش، برآورده شدن نياز‌هاي مورد انتظار كاربر توسط سيستم چند عامله تست مي‌گردد. آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab

آزمایشگاه سیستمهای هوشمند معماری سیستم در معماری سیستم دو مورد باید مشخص گردد : معماری عامل معماری سیستم چند عامله در این زمینه در منابع مختلف، الگوهای معماری گوناگون (نظیر Blackboard، Agency، ... ) معرفی شده است. زبان های توصیف معماری مخصوص عامل ها آزمایشگاه سیستمهای هوشمند www.ceit.aut.ac.ir/islab