آزمايشگاه سيستمهاي هوشمند
DESCRIPTION
بسم الله الرحمن الرحيم. استفاده از رويكرد جنبهگرايي در مدلسازي و ارزيابي نيازمنديهاي غيروظيفهمندي در طراحي سيستمهاي مبتني بر وب پاياننامه كارشناسيارشد رشته مهندسي نرمافزار الهام مؤذن. آزمايشگاه سيستمهاي هوشمند. اسفند ماه 1388. بيان مسأله. اهداف تحقيق . - PowerPoint PPT PresentationTRANSCRIPT
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهاي
غيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
پاياننامهكارشناسيارشدرشتهمهندسينرمافزار
الهاممؤذن
اسفندماهآزمايشگاهسيستمهايهوشمند1388
بسماللهالرحمنالرحيم
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
بيانمسأله
الهامموذن/پاياننامهكارشناسيارشد
2
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
اهدافتحقيق
الهامموذن/پاياننامهكارشناسيارشد
3
پيبردنبهم7اهيتنيازمنديهايغيروظيفهمندياستخراجالگويتحققنيازمنديهاي
غيروظيفهمندياستفادهازمفهومجنبهتزريقجنبهگراينيازم7نديهايغيروظيفهمنديدر
فرآيندتوسعهوم7عماريكاربردهايوبارزيابيراهحلپيشنهاديبركيفيتازديد
توسعهدهنده
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
الهامموذن/پاياننامهكارشناسيارشد
41بررسيادبياتموضوع.
طبقهبندينيازمنديهايكاربردهايوبدرختنيازمنديهايكيفيكاربردهايوبمهندسيوبكاربردهايسازمانيمبتنيبروبتعريفكانسرنضعفشئگرايي
2.ريشهيابيخألتأميننيازمندي7هايغيروظيفهمنديدرمهندسيكاربردهايوبمعرفيموردمطالعاتيتوسعهشئگرايموردمطالعاتيباجديدترينتكنيكهايمهندسيوباستخراجالگ7ويتحققنيازمنديهايغيروظيفهمنديراهكارهايارائهشدهبرايرفعضعفموجوددرشئگرايي
3زريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربردهاي7وب.ت4.بهبودفرآيندتوسعهموردمطالعاتيباتزريقجنبهگراينيازمنديهايغيروظيفهمندي5.ارزيابيراهحلپيشنهادي6نتيجهگيري.
چارچوبتحقيق
63
كاربردهايوب5
الهامموذن/پاياننامهادبياتموضوع)مفر7وضات(كارشناسيارشد
طبقهبندينيازمنديهايكاربردهايوبنيازمنديهايوظيفهمندي
نيازمنديهايمحتوانيازمنديهايواسطكاربرينيازمنديهايپيمايشينيازمنديهايشخصيسازينيازمنديهايتراكنشي
نيازمنديهايغيروظيفهمندي
63
ليستنيازمنديهايكيفيكاربردهايوب
الهامموذن/پاياننامهادبياتموضوع)مفر7وضات(كارشناسيارشد
6
1997درسالدركپذيريعموميسايت،قابليتكمكآنالين،قابليتهايواسطوزيبايي،...()قابليت7استف7ادهتواناييجستجووبازيابي،قابليتهايپيمايشومرور،...(قابليت7وظيفهمندي(پردازشصحيحلينك،ترميمخطا،اعتبارسنجيوروديكاربر،...(قابليت7اطمينان(كاراييزمانپاسخ،سرعتتوليدصفحات،...(بهرهوري(آسانيتصحيحات،وفقپذيري،توسعهپذيري،...(نگهداشت7پذيري(
2002درسال(جلوگيريكردن7ازدسترسيغيرمجازوخنثيكردنحمالتخرابكارانهخارجي)امنيتدرصدياززمان(دسترس7پذيري(كاربر(100000يا100،1000،10000)استفادههمزماِنمقياسپذيريزمانرسيدنبهبازار
63
مهندس7يوب
الهامموذن/پاياننامهادبياتموضوع)مفر7وضات(كارشناسيارشد
7
تعريفمهندسيوبطراحيكاربردهايوبهرمطراحيكاربردهايوب
طراحيواسط
طراحيزيبايي
طراحيمحتوا
طراحيپيمايش
طراحيمعماري
طراحيمؤلفه
63
كاربردهايسازمانيمبتنيبروب
الهامموذن/پاياننامهادبياتموضوع)مفر7وضات(كارشناسيارشد
8
دادههايپيچيدهدرحجمزيادتعدادزيادكاربرانتعدادزيادصفحاتواسطكاربرييكپارچگيمنطقتجاريپيچيدهانواعنيازمنديهايخاصسيستمهايمبتنيبروب
639
معماريكاربردهايسازمانيمبتنيبروب
الهامموذن/پاياننامهادبياتموضوع)مفر7وضات(كارشناسيارشد
پيرويازسبكمعمارياليهاياستفادهازالگويمدلدامنهنگاشتبرپايگاهدادههايرابطهاينمايشوب
View Controller
Model
63
تعريفكانِسرن
الهامموذن/پاياننامهادبياتموضوع)مفر7وضات(كارشناسيارشد
10
استكهجنبهايازيكمسألهيككانسرنبرايذينفعياذينفعاني،بحر<انييادرغير
ميباشد.اينصورتمهماغلب،نيازمنديهاجنبههاييازيكم7سألهتوسعه
نرمافزاررابيانميكنندامانههمهآنهارا.برخيازجنبههايمسألهدرطولچرخهعمر
نرمافزارمطرحميشوند.كانسرنهايعينيوغيرعيني
63
11
ضعفرويكردشئگرايي
الهامموذن/پاياننامهادبياتموضوع)مفر7وضات(كارشناسيارشد
متداولترينرويكردتوسعهسيستمهاينرمافزاريناتوانيدرپيمانهبنديكانسرنهايمتقاطعتأثي7رآ7نبرنحوهتأمي7نكانسرنهايغيروظيفهمندي
دركاربردهايوب
63
12
موردمطالعاتي
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
سيستمجامعبرنامهريزيمنابعسازمانيكامالًمبتنيبروب
هالژومایرفمع
یهالژوماهشنق
Cyb
er E
RP
کنترلکیفیت
مديريتتولید
نگهداریوتعمیرات
مديريتانبار
مدیریت
مدیریتمالی
مديريتفروش
مدیریتپروژه
طراحیآزمایشاتکنترلکیفیت
کیفیتمواداولیهومحصول
بازرسی
مدیریتHoldin
g
داشبورامورد
قراردادها
کنترلپروژه
حسابداریپروژه
برنامهریزیپروژه
مدیریتریسک
مدیریتClaim
برنامهریزیمواد
کنترلتولید
مهندسیمحصول
توسعهمحصول
برنامهریزیعملیات
ظرفیتسنجی
تعمیراتاضطراری
اقداماتپیشگیرانه
مشخصاتفنی
تجهیزات
کنترلموجودی
حسابداریانبار
انبارمقداری
مدیریتتوزیع
بازاریابی
حسابداری
فروش
فروشوسفارشات
صادرات
خدماتپسازفروش
مدیریتمالی
حسابداری
صنعتی
بودجه
خزانهداری
سهام
اموالحسابداری
تشکیالتعمومی
کارگزینی
حضوروغیاب
حقوقودستمزد
ارزشیابی
پرسنلی
آموزشرفاه
دبیرخانه
کارتابلمکانیزه
پیامهایداخلی
حسابداریخرید
اطالعاتتامینکنندگانومشتریان
خرید
واردات
مدیریتمنابعانسانی
اتوماسیوناداری
مدیریتخرید
63
13
CyberERPمعماري
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
Layering DomainModel DataMapper MVC
PresentationLayer JSP TagLib
ModelController
ServiceFactory&ServiceWrapper
Struts
SpringServiceLayer
ServiceInterfaceServiceImplementation
WorkflowService
DataAccessLayer
DAOInterface
DAOImplementation
Hibernate
ApplicationDB WorkflowDB
WorkflowManagement
System DomainOb
ject
e-form
63
توس7عهمدلگرابااستفادهازتوليدكنندههايكد
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
14
)MDD)ModelDrivenDevelopmentحرکتبهسمت•
PresentationLayer JSP TagLi
b
ModelController
Struts
SpringServiceLayer
ServiceInterfaceServiceImplementatio
nDataAccessLayer
DAOInterfaceDAOImplementationHibernate
ApplicationDB
Domain
Object
UI
Gene
rato
r
Dom
ain
Gene
rato
r
63
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
جمعآورينيازمنديهايهرزي<رسيستمازطريقمحكسيستمهايموجود،دانش
متخصص<يندامنهومصاحبهبامشتري
فايلهايHTML
توليدنمونهاوليهواسطكاربري
تدوينسناريويكانسرنوظيفهمندي
فايلهايXMLطراحيمتامدلواسطكاربري
طراحيمتامدلدامنه
توليدخودكاراليههايفوقانيمعماري
توليدخودكاراليههايزيرينمعماري
پيادهسازيمنطق
وظيفهمنديدرهراليه
پيادهسازيمنطقغيروظيفهمنديدرهرپيمانهدر
هراليه
نمودارهاUMLي
2.0فايلهاينگاشتبرHibernate(.hbm)
تستسناريويوظيفهمندي
متادادهواسطکاربربه:xmlصورت
الگویصفحه•مولفههایموجوددر•
هرصفحهبههمراهکلیدعنوانآنها(مستقلاز
زبان)اطالعاتمربوطبهپکیج•
هاونامگذاری
بهJSPواسطکاربر•همراهاسکرپیتJSهایکنترلی
ایجادتنظیماتو• MVCساختکدهای
(Struts Action/Form)رجیسترکردن•
صفحهدرپرتالcyberERP
متادادهیموجودیت O/Rهابهصورت
Mapping XML
کالسهایموجودیت•)Java Bean(جداولمرتبطدرپایگاه•
دادهکالسهایسرویسو•
DAOوتزریقوابستگیایندوبههم
تنظیماتوپیکرهبندی•Springهای
پراكندگيكانسرنهايغيروظيفهمنديدرمعماريكاربردوبودرهمپيچيدگيآنهاباكانسرنهايوظيفهمندي
63
16
معماريزيرسيستممديريتمنابع(HRM)انساني
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
63
17
بخشيازكدسناريويمحاسبهحقوقدراليهModelController
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
63
18
بخشيازكدسناريويمحاسبهحقوقدراليهSpringServiceLayer
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
63
19
بخشيازكدسناريويمحاسبهحقوقدراليهDataAccessLayer
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
63
20
طبقهبنديكانسرنهايعينيدرتوسعهكاربردهايوب
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
كانسرنوظيفهمنديهسته7:محاسبهحقوقCoreFunctionalConcern
:كانسرنغيروظيفهمنديقابلعملياتيشدنمجازشناسي
OperationalizableNon-functionalConcernكانسرنغيروظيفهمندينظارتپذير:كاراييزمان
پاسخCheckableNon-functionalConcern
63
21
استخراجالگويتحققكانسرنهايغيروظيفهمندي
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
تحققنظارتامنيت
كاراييزمانپاسخ
63
22
استخراجالگويتحققكانسرنهايغيروظيفهمندي
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
پراكندگيودرهمپيچيدگيكانسرنهاTangling&Scattering
كانسرنمتقاطعCrosscuttingConcern
نيازمنديهايغيروظيفهمنديكانسر<نهايمتقاطعدرتوسعهكاربردهاي
وبميباشند.
63
23
تأثيرناكاراييرويكردشئگراييبرنيازمنديهايغيروظيفهمنديدرتوسعهكاربردهايوب
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
توزيعمسئوليتپيادهسازينيازمنديهايغيروظيفهمندي
ناكاراييدراستفادهمجددازپيادهسازينيازمنديهايوظيفهمنديوغيروظيفهمندي
عدمبازنمايينيازمنديهايغيروظيفهم7نديدرمعماريكاربردودشوارياستداللپيرامونآنها
دشواريدرآزموننيازمنديهايغيروظيفهمنديدشواريدرنگهداريكاربردباتوجهبههزينه
اصالحاتبرايتوسعهدهنده
63
24
راهحلپيشرو:جداسازيپيشرفتهكانسرنها
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
نيازبهيكنوعمكانيزمپيمانهبنديجديدتكنيكجداسازيكانسرنهاتكنيكتركيبكانسرنها
راهحلهايارائهشدهبرايبرطرفنمودننقطهضعفشئگرايي:
برنامهنويسيجنبهگرا1.
فيلترهايتركيبي2.
جداسازيچندبعديكانسرنها3.
برنامهنويسيقابلتطبيق4.
Aspect-Oriented
Programming)AOP(
63
25
برنامهنويسيجنبهگرا
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
Aspect-Oriented Programming. Kiczales,Gregor,etal.ProceedingsoftheEuropeanConferenceonObject-OrientedProgramming)ECOOP(,1997.
بهبودپيمانهبنديسيستمباتمركزبرپيادهسازيپيمانهايكانسرنهايمتقاطع
ميباشد.هركانسرنمتقاطعرادريكپيمانهجداگانهتماممنطقكاريكانسرنهايمتقاطعازسازو
كاراصليبرنامهمجزاميشوند.
63
26
AspectJ
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
An Overview of AspectJ. Kiczales,Gregor,etal.ProceedingsoftheEuropeanConferenceonObject-OrientedProgramming)ECOOP(,2001.
Joinpoint Pointcut Advice Inter-typedeclaration)introduction( Aspect
63
27
پيادهسازيكانسرنهايمتقاطعدركاربردهايجاوا
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
ميخواهيماشياءScreenتغييراتاشياءPointرامالحظهكنند.
راهحلبرنامهنويسيجنبهگرا:جنبهPointObserving
63
28
پيادهسازيكانسرنهايمتقاطعدركاربردهايجاوا
الهامموذن/پاياننامهريشهيابيخألتأميننيازمنديهايغيروظيفهمنديدرمهندسيكاربردهايوبكارشناسيارشد
aspect PointObserving { private Vector Point.observers = new Vector(); public static void addObserver(Point p, Screen s) { p.observers.add(s); } public static void removeObserver(Point p, Screen s) { p.observers.remove(s); }
pointcut changes(Point p): target(p) && call(void Point.set*(int));
after(Point p): changes(p) { Iterator iter = p.observers.iterator(); while ( iter.hasNext() ) { updateObserver(p, (Screen)iter.next()); } }
static void updateObserver(Point p, Screen s) { s.display(p); }}
introduction
pointcut
advice
aspect
63
29
نيازمنديغيروظيفهمنديباقابليتجنبهشدن
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
"يکنيازمنديغيروظيفهمنديباقابليتجنبهشدن،يکويژگيکيفياستکهپسازپااليشدر
چارچوبنيازمنديهايغيروظيفهمنديکانسرنهايزيرشاخههاييازنوع
وياغير<وظيفهمنديقابلعملياتيشدنکانسر<نهايغيروظيفهمندينظارتپذير
داشتهباشد.”امنيتكارايي
63
30
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
نيازمنديهايغيروظيفهمنديباقابليتجنبهشدن
63
31
الهامموذن/پاياننامهكارشناسيارشد
بهبودفرآيندتوسعهموردمطالعاتيباتزريقجنبهگراينيازمنديهايغيروظيفهمندي
جمعآورينيازمنديهايهرزيرسيستمازطريقمحكسيستمهايموجود،دانش
متخصصيندامنهومص<احبهبامشتري
استخراجنيازمنديهايغيروظيفهمنديباقابليتجنبهشدن
فايلهايHTML
توليدنمونهاوليهواسطكاربري
تدوينسناريويكانسرنوظيفهمنديهسته
فايلهايXMLطراحيمتامدلواسطكاربري
طراحيمتامدلدامنه
توليدخودكاراليههايفوقانيمعماري
توليدخودكاراليههايزي<رينمعماري
پيادهسازيمنطق
وظيفهمنديدرهراليه
تستسناريويكانسرنوظيفهمندي
نمودارهاUMLي
2.0فايلهاينگاشتبرHibernate(.hbm)
تدوينسناريويكانسرن
غيروظيفهمنديقابل
تدوينعملياتيشدنسناريويكانسرن
غيروظيفهمندينظارتپذير
تعريفمتامدلمؤلفهزي<رساختيجنبهگرا
برنامهنويسيجنبهگرا
تعريفمتامدلمؤلفهنظارتگرجنبهگرا
برنامهنويسيجنبهگرا
نمودارهايگسترشيافته
UMLجنبهگراي2.0
نمودارهايگسترشيافته
UMLجنبهگراي2.0 تست
سناريويكانسرنغيروظيفهمنديقا<بلعملياتيشدنتستسناريويكانسرنغيروظيفهمندي
نظارتپذير
تالقيكانسرنهاي
وظيفهمنديو
غيروظيفهتستمندييكپارچگي
63
32
بررس7يزبان7هايتوصيفجنبهگرايمعمارينرمافزار
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
AOADLs ƶƀƿŚƤƯƽŚƷŹŚǀƘƯ
PRISMA AOADL
AspectualACME
AspectLEDAAO-ADLABC/ADL
ƽŻŚſřŶūŚƸƳźƀƳŚƧ
šŚƏŚŞţŹřŻřšŚŞſŚŰƯƽŻŚſřŶūƖƏŚƤŤƯƽŚƸƳźƀƳŚƧƽŶƴŞƸƳŚưǀě
ƽŹŚưƘƯƽŚƷŶƿŵ~ ~ ~ ~~
ƭŚƸŝřƭŶƗšŚƠǀƇƺţƾưſŹƶƿŚěŢƿŚưůƽŹřżŝř
ƽŹřżŝřƶģŹŚĜƨƿƎǀŰƯƾƬųřŵƾŬƴƀŤŰƇŹřżŝř~ ƾūŹŚųƾŬƴſŹŚŞŤƗřŹřżŝř
řźūřƪŝŚƣšŚƠǀƇƺţƮŤƀǀſ ƶƘſƺţƪůřźƯźƿŚſŻřŢƿŚưů
ƵŵŚƯŎƄǀěŻřƽŹŚŬţƽŚƸƸƠƫŒƯƭŚưƌƳřŻřŢƿŚưů ŻřŢƿŚưůUML ~ ~ ŚŝơŚŞƐƳřAspectJ
ƹƽŹřŶƸĮƳƪƯŚƨţ
ƞǀƇƺţƱŚƯŻƪƯŚƨţ~~~řźūřƱŚƯŻƪƯŚƨţ~
ƵźŤƀĭŵźŝŹŚƧƶƴƯřŵ
ƵŹƺƔƴưƸưƷ�ƶŞƴūƽŹŚưƘƯ-
řźĭ
ƵŹƺƔƴưƸưƷ�)źǀƛ(ƽŹŚưƘƯ
řźĮƸŞƴū
ƵŹƺƔƴưƸưƷ�)źǀƛ(ƽŹŚưƘƯ
řźĮƸŞƴū
ƵŹƺƔƴưƸưƷ�)źǀƛ(ƽŹŚưƘƯ
řźĮƸŞƴū
ƵŹƺƔƴưƸưƷ�)źǀƛ(ƽŹŚưƘƯ
řźĮƸŞƴū
ƽźƿŸĜƸƘſƺţ~~~~~:فقدان<):قابلقبول<،~:ضعيف،مقايسهزبانهايتوصيفجنبهگراينرمافزار(
63
33
تعريفمتامدلجنبهبرايمدلسازيكانسرنهايUML2.0غيروظيفهمنديباگسترشجنبهگراي
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
<<NFR>> <<ONFC>> <<CNFC>>
<<Aspect>> <<pointcut>> <<advice>>
63
34
بهعنوانيكAuthorizationمدلسازيكانسرنكانسرنغيروظيفهمنديباقابليتعملياتيشدندر
Securityمؤلفهجنبهگراي
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
63
35
،توصيفAuthorizationدرجنبهadvice1نحوهتحققنظيرآنCollaborationشدهدر
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
63
36
ResponseTimeMonitoringمدلسازيكانسرنبهعنوانيككانسرنغيروظيفهمندينظارتپذير
Performanceدرمؤلفهجنبهگراي
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
63
37
ResponseTimeدرجنبهadvice1نحوهتحققMonitoringتوصيفشدهدرCollaborationنظيرآن
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
63
38
بخشيازكدموردكاربردمحاسبهحقوقدرپسازاعمالفرآيندModelControllerالي7ه
توسعهجنبهگرايپيشنهادي
الهامموذن/پاياننامهزريقنيازمنديهايغيروظيفهمنديدرفرآيندتوسعهكاربر7دهايوبتكارشناسيارشد
63
39
الهامموذن/پاياننامهكارشناسيارشد
كانسرن پيمانهبندي Authorizationمتقاطع
جنبه يك در
63
40
الهامموذن/پاياننامهكارشناسيارشد
متقاطع كانسرن پيمانهبنديTimeMonitoringResponse در
جنبه يك
63
41
ارزيابيراهحلپيشنهادي
الهامموذن/پاياننامهارزيابيراهحلپيشنهاديكارشناسيارشد
Architecture Ok?
Architecture(Re)definition
Go!Implement Architecture
yes
no
Review GuidelinesQuality Criteria
63
42
ارزيابيمبتنيبرسناريو
الهامموذن/پاياننامهكارشناسيارشد
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبر7وب
روشارزيابيSAAMتوصيفمعماريهايكانديد1.توسعهسناريوها2.طبقهبنديواولويتدهيسناريوها3.ارزيابيسناريوها4.بدستآوردنارتباطاتبينسناريوها5.تهيهارزيابيكلي6.
63
43
SAAMمشكلروش
الهامموذن/پاياننامهارزيابيراهحلپيشنهاديكارشناسيارشد
Architecture Ok?
Go!Implement Architecture
yes
Indirect Scenario
Refactor
نميتوانممعماريخوبيبدستآورم،مشكلچيست؟
no
63
44
ASAAMروشارزيابي
الهامموذن/پاياننامهكارشناسيارشد
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبر7وب
7گسترشجنبهگرايSAAMتوسعهمعماريكانديد1.توسعهواولويتدهيسناريوها2.ارزيابيتكتكسناريوهاوتشخيصجنبهها3.
سناريوهايمستقيم،سناريوهايغيرمستقيم،سناريوهايجنبهگونه،جنبههايمعماري
ارزيابيتعاملسناريوهاوطبقهبنديمؤلفهها4.مؤلفهچسبناك،مؤلفهدرهمپيچيده،مولفهمركب،مؤلفه
بدتعريفطراحيمجددمعماري5.
)...،تك7نيكهايمتداول)الگوهايطراحيشئگراتك7نيكهايجنبهگرايي
63
45
ارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيASAAMبااستفادهاز
الهامموذن/پاياننامهارزيابيراهحلپيشنهاديكارشناسيارشد
ارزيابيقابليتنگهداشتسناريوهاينگهداشتاصالحيسناريوهاينگهداشتتكميليسناريوهاينگهداشتتطبيقيسناريوهاينگهداشتپيشگيرنده
63
46
توصيفمعماري)معماريپايه(
الهامموذن/پاياننامهارزيابيراهحلپيشنهاديكارشناسيارشد
تحققنظارتامنيت
كاراييزمانپاسخ
63
47
توصيفمعماري)معماريپيشنهادي(
الهامموذن/پاياننامهارزيابيراهحلپيشنهاديكارشناسيارشد
63
48
توسعهسناريوها
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
سناريو شماره سناريو نوع
S100-165 هسته وظيفهمندي كانسرنهاي سناريوهايS200 عملياتي قابل غيروظيفهمندي كانسرن سناريوهاي
شدنS201 نظارتپذير غيروظيفهمندي كانسرن سناريوهاي
S300-301 كانسرنهاي اصالحي نگهداشت سناريوهايغيروظيفهمندي
S302-303 كانسرنهاي تكميلي نگهداشت سناريوهايغيروظيفهمندي
S304-305 كانسرنهاي تطبيقي نگهداشت سناريوهايغيروظيفهمندي
S306 كانسرنهاي پيشگيرنده نگهداشت سناريويغيروظيفهمندي
63
49
ارزيابيسناريوهاوتشخيصجنبههادرمعماريپايه
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
شمارهسناريو
مؤلفههايمتأثر اليههايمعماريمتأثر
نوعسناريو(مستقيم،غيرمستقيم،جنبهگونه)
S100-115 EnterpriseInfo PresentationLayerModelControllerSpringService
LayerDataAccessLayer
مستقيم
S116-122 SalaryCalculation
مانندباال مستقيم
S123-130 EmployeeManagement
مانندباال مستقيم
S131-140 Recruitment مانندباال مستقيمS141-150 SelfService مانندباال مستقيمS151-165 General
Accountingمانندباال مستقيم
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
50
ارزيابيسناريوهاوتشخيصجنبههادرمعماريپايه
الهامموذن/پاياننامهكارشناسيارشد
شمارهسناريو
مؤلفههايمتأثر اليههايمعماريمتأثر
نوعسناريو(مستقيم،غيرمستقيم،جنبهگونه)
S200 EnterpriseInfoSalary
CalculationEmployee
ManagementRecruitmentSelfServiceGeneral
Accounting
PresentationLayerModelControllerSpringService
LayerDataAccessLayer
جنبهگونهمستقيم
S201 EnterpriseInfoSalary
CalculationEmployee
ManagementRecruitmentSelfServiceGeneral
Accounting
PresentationLayerModelControllerSpringService
LayerDataAccessLayer
جنبهگونهمستقيم
63
51
ارزيابيسناريوهاوتشخيصجنبههادرمعماريپايه
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
شمارهسناريو مؤلفههايمتأثر اليههايمعماريمتأثر نوعسناريو(مستقيم،غيرمستقيم،جنبهگونه)
S300 EnterpriseInfoSalaryCalculation
EmployeeManagementRecruitmentSelfService
GeneralAccounting
PresentationLayerModelController
SpringServiceLayerDataAccessLayer
غيرمستقيمجنبهگونه
S301 EnterpriseInfoSalaryCalculation
EmployeeManagementRecruitmentSelfService
GeneralAccounting
ModelControllerSpringServiceLayerDataAccessLayer
غيرمستقيمجنبهگونه
S302 SalaryCalculationSelfService
DataAccessLayer غيرمستقيمجنبهگونه
S303 EnterpriseInfoSalaryCalculation
EmployeeManagementRecruitmentSelfService
GeneralAccounting
ModelControllerSpringServiceLayerDataAccessLayer
غيرمستقيمجنبهگونه
S304 EnterpriseInfoSalaryCalculation
EmployeeManagementRecruitmentSelfService
GeneralAccounting
ModelControllerSpringServiceLayerDataAccessLayer
غيرمستقيمجنبهگونه
S305 EnterpriseInfoSalaryCalculation
EmployeeManagementRecruitmentSelfService
GeneralAccounting
PresentationLayerModelController
SpringServiceLayerDataAccessLayer
غيرمستقيمجنبهگونه
S306 EnterpriseInfoSalaryCalculation
EmployeeManagementRecruitmentSelfService
GeneralAccounting
ModelController غيرمستقيمجنبهگونه
63
52
ارزيابيسناريوهاوتشخيصجنبههادرمعماريجنبهگرايپيشنهادي
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
شمارهسناريو
مؤلفههايمتأثر اليههايمعماريمتأثر
نوعسناريو(مستقيم،غيرمستقيم،جنبهگونه)
S100-115 EnterpriseInfo PresentationLayerModelControllerSpringService
LayerDataAccessLayer
مستقيم
S116-122 SalaryCalculation
مانندباال مستقيم
S123-130 EmployeeManagement
مانندباال مستقيم
S131-140 Recruitment مانندباال مستقيمS141-150 SelfService مانندباال مستقيمS151-165 General
Accountingمانندباال مستقيم
63
53
ارزيابيسناريوهاوتشخيصجنبههادرمعماريجنبهگرايپيشنهادي
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
شمارهسناريو
مؤلفههايمتأثر اليههايمعماريمتأثر
نوعسناريو(مستقيم،غيرمستقيم،جنبهگونه)
S200 Security PresentationLayerModelControllerSpringService
LayerDataAccessLayer
مستقيم
S201 Performance PresentationLayerModelControllerSpringService
LayerDataAccessLayer
مستقيم
63
54
ارزيابيسناريوهاوتشخيصجنبههادرمعماريپايه
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
شمارهسناريو
مؤلفههايمتأثر اليههايمعماريمتأثر
نوعسناريو(مستقيم،غيرمستقيم،جنبهگونه)
S300 Security PresentationLayerModelController
SpringServiceLayerDataAccessLayer
غيرمستقيم
S301 Performance ModelControllerSpringServiceLayerDataAccessLayer
غيرمستقيم
S302 Security DataAccessLayer غيرمستقيم
S303 Performance ModelControllerSpringServiceLayerDataAccessLayer
غيرمستقيم
S304 Performance ModelControllerSpringServiceLayerDataAccessLayer
غيرمستقيم
S305 Security PresentationLayerModelController
SpringServiceLayerDataAccessLayer
غيرمستقيم
S306 Security ModelController غيرمستقيم
63
55
مح7اسبههزينهسناريوهاينگهداشت7د7رهردومعماري
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
Cost=[(L*M*C)/T]*100
Cost:هزينهمتوسطنگهداريL:تعداداليههايمتأثرمعماريM:متوسطتعدادپيمانههايمتأثرهرمؤلفهدرهر
اليهCتعدادمؤلفههايمتأثر:T:کلتعدادپيمانههايزيرسيستمبررسيشده
63
56
مح7اسبههزينهسناريوهاينگهداشت7د7رهردومعماري
الهامموذن/پاياننامهASAAMارزيابيمعماريپايهومعماريپيشنهاديموردمطالعاتيبااستفادهازكارشناسيارشد
شمارهسناريو
هزينهمتوسطنگهداريهر
پيمانهدرمعماريپايه
هزينهمتوسطنگهداريهر
پيمانهدرمعماريجنبهگرا
S300 100[*96(/6*4*4])
100[*108(/1*1.5*4])
S301 100[*96(/6*4*3])
100[*108(/1*1.5*3])
S302 100[*96(/2*4*1])
100[*108(/1*1.5*1])
S303 100[*96(/6*4*3])
100[*108(/1*1.5*3])
S304 100[*96(/6*4*3])
100[*108(/1*1.5*3])
S305 100[*96(/6*4*4])
100[*108(/1*1.5*4])
S306 100[*96(/6*4*1])
100[*108(/1*1.5*1])
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
57
مح7اسبههزينهسناريوهاينگهداشت7د7رهردومعماري
الهامموذن/پاياننامهكارشناسيارشد
فعاليتنگهداري
متوسطهزينهدرمعماريپايهدر
100مقياس
متوسطهزينهدرمعماريجنبهگرادر
100مقياسنگهداشت
اصالحي87.5 4.85
نگهداشتتكميلي
41.65 2.8
نگهداشتتطبيقي
87.5 4.85
نگهداشتپيشگ7يرنده
25 1.4
63
58
دستاوردهاياصلي
الهامموذن/پاياننامهنتيجهگيريكارشناسيارشد
روشيبرايتزريقنيازمنديهايغيروظيفهمنديدرطراحيمعماريكاربردهايوب
ارائهچارچوبيبرايبررسيزبانهايتوصيفجنبهگرايم7عمارينرمافزار
گسترشUML2.0بهمنظورمدلسازينيازمنديهايغيروظيفهمنديبهصورتجنبههاي
معمارياتكابرموردمطالعاتيصنعتيوواقعيتأثيربسيارقابلتوجهرويكردجنبهگراييبرقابليت
نگهداشتكاربردهايسازمانيمبتنيبروب
63
پيشنهادات
الهامموذن/پاياننامهنتيجهگيريكارشناسيارشد
59
بررسيقابليتجنبهشدنسايرنيازمنديهايغيروظيفهمندي
بررسيابعادديگرتأثيراستفادهازرويكردجنبهگراييدرم7هندسيوب
يكپارچهسازيانواعزبانهايارائهشدهبرايتوصيفمعماريهايجنبهگراوبهبودضعفهايآنها
بسطراهحلپيشنهاديبهنيازمنديهايوظيفهمنديباقابليتجنبهشدن
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
60
مراجع
الهامموذن/پاياننامهكارشناسيارشد
- Pressman, Roger S. Software Engineering: A Practioner's Approach, Seventh Edition. s.l. : McGraw-Hill.- Chung, Lawrence, et al. Non-Functional Requirements in Software Engineering. s.l. : Kluwer Academic Publishers, 2000.- Requirements Engineering for Web Applications – A Comparative Study. ESCALONA, M JOSÉ and KOCH, NORA. s.l. : Journal of Web Engineering, 2004, Vol. 2, pp. 193-212.- Quality Attributes of Web Software Applications. Offutt, Jeff. s.l. : IEEE Software, 2002.- Chitchyan, Ruzanna, et al. Survey of Analysis and Design Approaches. s.l. : AOSD-Europe, 2005. Deliverable D11.- Fowler, Martin, et al. Patterns of Enterprise Application Architecture. s.l. : Addison Wesley, 2002.- KANDÉ, Mohamed Mancona. A Concern-Oriented Approach to Software Architecture. s.l. : PhD Thesis, Swiss Federal Institute of Technology (EPFL), Lausanne, Switzerland, 2003.- Jacobson, Ivar and Ng, Pan-Wei. Aspect-Oriented Software Development with Use Cases. s.l. : Addison Wesley Professional, 2005.- Aspect-Oriented Programming. Kiczales, Gregor, et al. s.l. : Proceedings of the European Conference on Object-Oriented Programming (ECOOP), 1997.- An Overview of AspectJ. Kiczales, Gregor, et al. s.l. : Proceedings of the European Conference on Object-Oriented Programming (ECOOP), 2001.- AspectJ. [Online] http://eclipse.org/aspectj/.- Aspect-Oriented Software Development Community & Conference. [Online] http://aosd.net/.- Pérez, Jenifer. PRISMA: Aspect-Oriented Software Architectures. s.l. : PhD Thesis. Department of Information Systems and Computation, Polytechnic University of Valencia, 2006.
63
61
الهامموذن/پاياننامهكارشناسيارشد
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبر7وب
مراجع
-On the Modular Representation of Architectural Aspects. Garcia, Alessandro, et al. s.l. : Proceedings of the 3rd. European Workshop on Software Architecture (EWSA'06), 2006.- An ADL dealing with aspects at software architecture stage. Navasa, Amparo, Pérez-Toledano, Miguel A and Murillo, Juan M. s.l. : Information and Software Technology, 2009, Vol. 51, pp. 306-324.- AO-ADL: An ADL for Describing Aspect-Oriented Architectures. Pinto, Mónica and Fuentes, Lidia. s.l. : Lecture Notes in Computer Science, Springer, 2007.- Supporting crosscutting concern modelling in software architecture design. Donggang, Cao, Hong, Mei and Minghui, Zhou. s.l. : Frontiers of Computer Science in China, 2007, Vol. 1, pp. 50-57.- Clements, Paul, Kazman, Rick and Klein, Mark. Evaluating software architectures: methods and case studies. s.l. : Addison-Wesley, 2006.- Garland, Jeff and Anthony, Richard. Large-Scale Software Architecture, A Practical Guide using UML. s.l. : John Wiley & Sons ltd, 2003.- ASAAM: Aspectual Software Architecture Analysis Method. Tekinerdogan, Bedir. s.l. : Proceedings of the Fourth Working IEEE/IFIP Conference on Software Architecture (WICSA), 2004. pp. 5-14.- Rashid, Awais. Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design. [Online] http://www.early-aspects.net/.- Aspect Oriented Software Architecture: a Structural Perspective.
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
سپاسگزاريجنابآقايدكتراحمدعبداللهزادهبارفروشجنابآقايدكترسيدمجيدنورحسينيجنابآقايدكتررامتينخسرويشركتمهندسيرايدانا
62
الهامموذن/پاياننامهكارشناسيارشد
63
استفادهازرويكردجنبهگراييدرمدلسازيوارزيابينيازمنديهايغيروظيفهمنديدرطراحيسيستمهايمبتنيبروب
الهامموذن/پاياننامهكارشناسيارشد
63
باسپاسوآرزويموفقيت