1 / 20

واسط برای وب مدیرت واسط کاربر مکانیسم های دسترسی به داده های خارجی سرویس های مدیریت داده

دانشگاه پيام نور مركز تهران دانشكده فني و مهندسي گروه مهندسي كامپيوتر گرايش نرم افزار درس : مباحث ويژه در مهندسي نرم افزار موضوع ارائه شده : فصل سوم: معماری ها و فناوری ها ی پورتال ها به استاد : دكتر احمد فراهي توسط: اکبر خاطری ابری نيمسال اول تحصيلي : 91-1390.

kalkin
Download Presentation

واسط برای وب مدیرت واسط کاربر مکانیسم های دسترسی به داده های خارجی سرویس های مدیریت داده

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. دانشگاه پيام نور مركز تهراندانشكده فني و مهندسي گروه مهندسي كامپيوترگرايش نرم افزاردرس : مباحث ويژه در مهندسي نرم افزارموضوع ارائه شده :فصل سوم: معماری ها و فناوری ها ی پورتال هابه استاد :دكتر احمد فراهي توسط:اکبر خاطری ابرینيمسال اول تحصيلي : 91-1390

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

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

  4. سرویس دهنده های پورتال ،برای تسهیل توسعه یک پورتال و همچنین رقابت با سایر سرویس دهنده های پورتال یک سری ویژگی ها و مفاهیم مفید ، جدید و نوآورانه ای را معرفی کرده اند که عبارتند از :Portlet ،داشبورد دیجیتالی با استفاده از Web Part ، Skin ، IViews و ..... . ازمیان این مفاهیم مفهوم Portlet از همه فراگیر تر است و بهوسیله اکثر سرویس دهنده های پورتال پشتیبانی می شود .Portlet ها مولفه های قابل مشاهده فعالی هستند که کاربران نهایی در صفحات پورتال آنها مشاهده می کنند .

  5. سرویس های مدیریت داده • وظایف سرویس های مدیریت داده عبارتند از : • 1- مدیریت محتوا ( Content management ) • 2- جستجو (search ) • 3- Collaboration • 4- مدیریت جریان کار ( WorkFlow Management ) • در ادامه هریک از این وظایف را توضیح می دهیم.

  6. مدیریت محتوا : شامل موارد زیر می باشد : • انتشار محتوا ( Content Publishing ): نشاندن داده در شکل ها و فرم های مختلف به صورت خودکار یا دستی به منظور دسترسی از طریق کاربران مجاز • ساختار دهی محتوا ( Content Structuring ) : مانند مکانیسم های Portlet ویا قالبها ( templates ) • Content Syndication : قابلیت تقبل کردن داده های خارجی از طریق استاندارد های دسترسی محتوای مشهور مثل RSS وOCS وPRISM و NITF و XMLNEWS • تجمیع داده ( Content Aggregation ) :ادغام و ترکیب داده از منابع مختلف در قوانین شخصی سازی برای یک کاربر خاص و ارائه این داده به صورت نمای از پورتال.

  7. تحویل محتوا ( Content Delivery ) • دایرکتوری محتوا ( Content Directory ) : یک شاخص ( Index ) جامع که تمام سرویس ها و داده ها و کاربرد هایی که از طریق پورتال قابل دسترسی است را شناسایی کرده و به آنها نگاشت می شود. • دسته بندی محتوا ( Content Classification ):طبقه بندی پیوسته و خودکار محتویات پورتال در دسته های مربوطه • Search و Collaboration در فصل های قبل توضیح داده شده است. • مدیریت جریان کار : کاربران را قادر به کنترل و پیگیری روند اجرای تراکنش های چند مرحله ای که ممکن است چندین زیر سیستم سازمان ر ا درگیر کند می کند . این تراکنش ها برای انجام کامل یک فرایند کسب و کار مورد نیاز است.

  8. قوانین نقش مهمی در مدیریت و عملکرد پورتال های سازمانی ایفا می کنند . یکی از کاربردهای قوانین شخصی سازی مبتنی بر قوانین است که در فصل 2 توضیح داده شده است .اما این مورد تنها مورد استفاده قوانین در پورتال ها نمی باشد.فهرستی از قوانین با موتورهای اعمال قانون مناسب در حوزه تحویل محتوا (Content Delivery ) و مدیریت اشتراک (subscription management ) و دسته بندی محتوا ( Content categorization ) و مدیریت جریان کار ( Workflow Management ) مورد استفاده قرار می گیرد . • مولفه مکانیسم های دسترسی به داده خارجی به فراهم کردن آداپتور های مختلف برای پوشش انواع منابع داده خارجی تمرکز دارد . به عنوان مثال صد در صد آداپتوری برای دسترسی به پایگاه داده و فایل فراهم می کند .

  9. تکنیک هایی که برای تسهیل توسعه پورتال استفاده می شود • Portlet : Portlet ها معروف ترین و عمومی ترین ویژگی ( feature ) است که تما م سرویس دهنده پورتال معروف از آن پشتیبانی می کنند. یک پورتال کاربرد های مختلفی دارد که برای هر یک از این کاربرد ها یک Portlet طراحی می شود و به ان نسبت داده می شود. هر یک از کاربردهای پورتال و Portlet متناظر آن به طور مستقل توسعه و برزو رسانی می شود .بنابر این هر Portlet یک موجودیت مستقل و جامع می باشد .از این رو e- mail inboxیک Portlet خواهد بود ، کاربرد تقویم نیز یک Portlet خواهد بود .عامل دیگری که باعث جذابیت Portlet ها می شود این است که Portlet های از پیش ساخته شده وجود دارند و می توان از انها استفاده کرد.چون اکثر سرویس دهنده های پورتالجاوا محور هستند این سرویس دهنده های پورتال از JavaServerPages(JSP) Portlet برای توسعه یک پورتال پشتیبانی می کنند .انواع دیگری از Portlet های خیلی سودمند ومعمول وجود دارد که در صفحه 80 کتاب امده است.

  10. Digital Dashboards, Web parts • Portlet ها همتای دیگری دارند که محصول شرکت مایکروسافت می باشد و سرویس دهنده پورتال SharePoint Portal serverاین شرکت از آن استفاده می کند .مایکروسافت مفهوم دشبوردهای دیجیتالی را معرفی کرده است . یک داشبورد دیجیتالی نمایی از پورتال است که از مولفه های وب که Web Part نامیده می شود تشکیل می شود .در واقع یک داشبورد دیجیتالی یک صفحه وب مستقل است که شامل یک یا چند Web Part می باشد .یک Web Part یک شی قابل استفاده مجدد می باشد که شامل داده ( تگ های Html و XMl ) یا اسکریپت هایی می باشد که اطلاعات را به کاربر ارائه می دهد . بنابراین در زمینهداشبوردهای دیجیتالی مفهوم Web Part معادل مفهوم Portlet می باشد.

  11. iViews , Skins • iviews : در معماریarchitectureThe SAP portal در شکل 3.6 کتاب یک Iviews Server وجود دارد که شامل Java and .Net Runtime می باشد که چندین iViews را نشان می دهد . Iview اجازه می دهد که کاربردها و محتویاتش با یک SAP Portal مجتمع شوند. SAP یک Iview را که یک المان جامع و مبتنی بر XML می باشد را تعریف می کند . تفاوت Iview ها با Portlet و Web Part این است که در Iview ها همه چیز مبتنی بر XML است . • Skins : Skin معادل Portlet ، Web Part و iView نمی باشد . Skin معادل Theme در برنامه های ویندوز می باشد .یک Skin در واقع ظاهر یک Portlet و یا Web Part را تعریف می کند . فونت ها ، رنگ ها و ایکون ها را برای یک Portlet تعریف می کند .

  12. دامنه ها و نقش ها وgadgets, breadcrumbs • دامنه ها و نقش ها در اصل به شخصی سازی پورتال مربوط می شود .مفهوم دامنه برای داشتن یک شبکه جامع و بی نیاز از برون برای مدت طولانی استفاده می شود . در وب دامنه متناظر است با یک آدرس وب منحصر به فرد که نام دامنه ( Domain name ) نامیده می شود .اهمیت استفاده از دامنه در پورتال ها این است که دامنه ها کاربران پورتال را از هم تفکیک و آنها را تعریف می کند در مواقعی که می خواهید چندین پورتال را در کنار هم در یک سرویس دهنده پورتال به اجرا درآورید . • شخصی سازی در سرویس دهنده های پورتال همواره از طریق یک مکانیسم مبتنی بر نقش پیاده سازی می شود .هر کاربری که احراز هویت شده است به یک نقش منحصر به فرد نسبت داده می شود در حالی که کاربران ناشناس به نقش های پیش فرض نسبت داده می شوند . در واقع نقش ها انچه را که کاربرمی تواند در پورتال م بیند و آنرا چگونه ببیند را تعریف می کنند .نقش ها همچنین دسترسی به کاربردها ، سرویس ها و محتویات پورتال را کنترل می کند .

  13. Gadgets: • Gadget ها در بسیاری از موارد می توانند یک Portlet و یا یک Web part باشند با یک تفاوت خیلی مهم و ان اینکه از ابتدا Gadget ، یک مولفه از پورتال است که در یک کامپیوتر جدا عمل می کند . Gadgetsبرای مجتمع کردن منابع کاربردی در پورتال و وصل کردن محتویات موردنیاز خارجی مثل اخبار ، بورس و... به پورتال استفاده می شود . در واقع نام کامل Gadgetsبه صورت gadget Web services می باشد . در واقع Gadget ها وب سرویس های گرافیکی هستند که کاربران پورتال از آن استفاده می کنند . کاربران پورتال از طریق یک واسط کاربر مخصوص با Gadget مستقیما ارتباط برقرار می کنند . مانند Webpart ها و Portlet ها بر اساس قوانین شخصی سازی برای کاربران چندین Gadget در یک نما از پورتال قرار گیرند . • Breadcrumbs ، به یک لیست ناوبری ( Navigational ) دسته به دسته و سلسله مراتبی که در بالای پنجره پورتال قرار دارد اطلاق می شود که شما می توانید برای جستجوی یک آیتم خاص از لیست پیوند هایی که این مولفه ارائه می دهد استفاده کنید .یک سرویس دهنده پورتا ل می تواند آن را به صورت خودکار ایجاد کند

  14. پورتال سازمانی نسبت به فناوری اطلاعات • یک پورتال سازمانی جایگزینی برای برنامه های کاربردی و سیستم های IT موجود نمی باشد . بلکه هدف اصلی یک پورتال سازمانی این است که در واقع یک نقطه کانونی مبتنی بر وب برای سیستم های IT موجود و آینده باشد.پورتال اطلاعات و سرویس های موجود از سیستم های IT داخل سازمانی و عملیات های خارج از سازمان و موجودیت های خارجی را تجمیع،ترکیب،ساختاردهی وشخصی سازی می کند. یک پورتال چیزی بیشتر یا کمتر از یک برنامه کاربردی نرم افزاری دیگر نمی باشد . پورتال واسط های استانداردی را برای منابع داده مختلف و برنامه های کاربردی دیگر فراهم می کند و قادر به تجمیع پیچیده داده از میان چندین منبع داده می باشد .پورتال ها قابلیت هایی مثل Search و Collaboration دارند که اکثر سرویس دهنده های پورتال برای ارائه این قابلیت ها به برنامه های کاربردی دیگر ( Microsoft outlook و Lotus Notes و...) متکی هستند تااینکه این قابلیت ها را کاملا پیاده سازی کنند . پورتال یک سرویس دهنده کاربرد نیست و همچنین جایگزینی برای سرویس دهنده وب نیز نمی باشد .

  15. تجمیع منابع داده ای مرکزداده ( Data Center Resources ) • اگر شرکت شما به Mainframe های IBM ، IBM AS/400s ، minicomputer های دیگر یا سرویس دهنده های یونیکس برای برخی از نیاز های IT اش متکی است الزامی است که پورتال به برنامه های کاربردی و داده های موجود دراین کامپوتر ها دسترسی داشته باشد . این کامپیوتر ها مرکز داده ( Data Center ) نامیده می شود .روشهای دسترسی پورتال به مراکز داده به سه دسته اصلی تقسیم می شوند : • Thin-Client • Host Publishing • Host Integration • در ادامه هریک از این تکنیک ها را شرح می دهیم .

  16. Thin-Client : • در این تکنیک لازم است که یک نرم افزار برای دسترسی به یک میزبان خاص ( Data center ) در سیستم Client وجود داشته باشد .که این نرم افزار از طریق مرورگر وب (بوسیله یک دکمه یا لینک در صفحه وب) فراخوانی می شود .این نرم افزار می تواند به صورت خودکاراز سرویس دهنده وب دریافت شود و در حافظه نهان مرورگر وب نگهداری شود که با این کار نیاز به انجام عمل دانلود نرم افزار وقتی که نسخه جدیدی از نرم افزار در سرور نصب می شود رفع می شود .اما عیب بزرگی که این روش دارد این است که نیاز به فقط یک مرورگر وب استاندارد و خاص است که بتواند با پورتال ارتباط برقرار کند که برای سناریو های بادسترسی عمومی از طریق اینتر نت مناسب نیست . عیب دیگر این روش این است که دریافت این نرم افزار از سرور و نصب آن در سیستم Client می تواند زمانگیر باشد .عیب دیگر این روش این است که ، با وجود ویروس های کامپیوتری که این روزها وجود دارند بعضی از کاربران با این ایده در یافت و نصب نرم افزار در سیستم خودشان احساس راحتی نکنند . بنابراین این روش برای پورتال های از نوعB2C مناسب نمی باشد . استفاده از این تکنیک محدود می شود به پورتال های B2E .

  17. Host Publishing : • دلیل نامیدن این روش به این نام این است که این روش داده های میزبان را در یک صفحه وب توزیع (Publish ) می کند . در واقع داده های میزبان را به صورت پویا می تواند به HTML و XML و WML تبدیل می کند . خروجی که این روش می دهد به فرم HTML یا XML می باشد بنابراین این روش می تواند به آسانی در فناوری های ASP و JSP استفاده شود . عیبی که این روش دارد این است که این روش صفحه گرا( Screen-oriented ) و terminal-emulation ( جریان های داده ای را کهClient می تواند ان را بفهمد را باید به Client ارسال کند ) می باشد که البته امروزه با وجود XML و اینکه خروجی این تکنیک می تواند XML باشد مشکل دوم کمتر شده است.

  18. Host Integration : • این روش اجازه نمی دهد که کد برنامه کاربردی مبدا ( در مرکزداده ) را در یک برنامه کاربردی جدید جا دهیم . این مورد ، دلایل زیادی می تواند داشته باشد که اصلی ترین دلیل ان این است که زبان های برنامه نویسی برنامه کاربردی مبدا و برنامه کاربردی جدید ممکن است با هم ناسازگار باشند .در عوض این روش به برنامه کاربردی جدید اجازه می دهد که در زمان اجرا ( run time ) برنامه کاربردی مبدا را بااستفاده از واسط های نرم افزاری مثل اشیا Com و JavaBeans ( EGBs) و گاهی اوقات CORBA فراخوانی کند.

  19. قرار دادن پورتال ها در یکPlatform • سکویی که برای پورتال انتخاب می شود ، ویژگیهای عملیاتی محتملی را ازجمله کارایی ، مقیاس پذیری، افزایش امکانات ( Upgradability ) برای پورتال تعیین می کند . اگر بخواهیم از یک سرویس دهنده پورتال استفاده کنیم آنگاه انتخاب برای سکو محدود می شود . عامل اصلی که این محدودیت را به وجود می آورد سیستم عاملی است که سرویس دهنده پورتال از ان پشتیبانی می کند . چون اکثر این سرویس دهنده های پورتال مبتنی بر جاوا هستند بنابراین به صورت تئوریکی مستقل از سکو هستند . ویندوز NT و لینوکس ویونیکس مهمترین سیستم عامل هایی هستند که اغلب به عنوان سیستم عامل انتخاب می شوند.با اینکه سیستم عامل های Mainframe قدیمی هستند و سازگار با Platform های جاوا هستند اما کمتر سراغ این Platform می روند که علت ان فنی نیست بلکه مربوط به پشتیبانی و استقرار و آزمایش سیستم است . درحالی که اگر بخواهیم یک پورتال سازمانی با حجم بالیی داشته باشیم Mainframe ها به عنوان سکو برای پورتال ایده آل می باشند .

  20. ویندوز NT یا یونیکس؟ • ویندوز NT و یونیکس دو سیستم عاملی هستند که به عنوان سکوی پورتال انتخاب می شوند . امنیت و مقیاس پذیری ( Scalability ) دو مسئله مهمی هستند که باید مورد توجه قرار گیرند . حملات امنیتی مثل هکر ها و ویروس ها به خانواده ویندوز NT ،اعتبار این سیستم عامل را از نظر امنیتی به خطر انداخته است . به همین خاطر مشاوران و تحلیگران استفاده از سرور های ویندوز NT را اگر ازطریق اینترنت مورد دسترسی قرارمی گیرند را توسعه نمی کنند . مقیاس پذیری زمانی مطرح می شود که ما بخواهیم یک پورتال حجیم که به طور همزمان به چند هزار کاربر سرویس دهد داشته باشیم . اگر پورتال قراراست که به 4000 کاربر یا بیشتر به طور همزمان سرویس دهد آزمایشات و مطالعه در مورد سرویس دهنده های ویندوزNT قبل از تصمیم با استفاده از انها انجام شود . افراد زیادی هستند که توسعه می کنند برای داشتن مقیاس پذیری بهتر از سرویس دهنده های یونیکس استفاده شود

More Related