بخشی از مقاله
قابليت تعامل ميان نرم افزارهاي Internet GIS بر مبناي فن آوري هاي سرويسهاي وب
چکيده
امروزه در حوزه سيستم هاي اطلاعات مکاني ١، همانند ساير علوم مرتبط با فن آوري اطلاعات، استفاده از اينترنـت و وب بعنـوان يک زير ساخت توزيع يافته و نامتمرکز به منظور تبادل دادهها، اطلاعات و سرويسهاي مختلف ، موثرتر و آسانتر از هميشه شده است . بـه دليل پتانسيل بالاي اين زير ساخت در حوزه علوم ژئوماتيک، تعداد زيادي بسته هاي نرمافزاري مختلف توسط توليدکنندگان نرمافـزار بـه بازار داده مکاني عرضه شده است . با وجود اينکه اين نرمافزارهاي تجاري دسترسي به دادههاي مکـاني و توابـع مختلـف GIS را بـسيار بهبود بخشيدهاند، اما بصورت کلي داراي دو مشکل مي باشند. مشکل اول اکثر اين نرمافزارها، خروجي گرافيکي نامناسب آنها مي باشد و مشکل دوم آنها که از اهميت بالاتري برخوردار است ، مشکل قابليت تعامل ٢ اين نرمافزارها مي باشد. بصورت کلي قابليت تعامل به معناي وجود مفاهيم وقوانين مشترک براي تبادل، تلفيق و استفاده از اطلاعات و سرويسهاي مرتبط با اطلاعات مـي باشـد. يکـي از جنبـه هـاي مشکل دوم نرم افزارهاي Internet GIS مشکل قابليت تعامل در سطح دسترسي ٣ مي باشد. دليل اصلي اين مشکل ، استفاده از روشهاي خاص به منظور ارتباط بين اجزاي مختلف نرمافزار است که امکان تعامل با ساير نرمافزارها را امکان پذير نمي سازد.
با توجه به مطالب عنوان شده، تبادل درخواست ها و پاسخ ها ميان سرويس دهندگان و استفاده کنندگان از سرويس ها مي بايست بصورت استاندارد، انعطاف پذير و مستقل از هر نرمافزاري باشد. در اين صورت مشکل قابليت تعامل ميان نرمافزارهاي Internet GIS از ميان برداشته شده و مي توان از ترکيبي از سرويسهاي مختلف بصورت موثري اسـتفاده کـرد. هـدف از ايـن مقالـه معرفـي مـشکلات نرمافزارهاي موجود Internet GIS و روش حل اين مشکلات بر مبناي فن آوري سرويسهاي وب ١مي باشد. بدين منظور در اين مقالـه چارچوبي به منظور تبادل درخواستها و پاسخهاي سرويسهاي GIS تحت وب، با تکيه بر استانداردها و فن آوريهاي نوين ارائه مي گردد.
کلمات کليدي: سرويسهاي وب، تعامل پذيري، Internet GIS، مکانيسم تبادل درخواست و پاسخ
مقدمه :
امروزه بسياري از دانشگاهها، ارگانهاي دولتي و شرکتهاي خصوصي در سراسر دنيا، اطلاعات و سرويس هـاي مکـاني خود را بر روي شبکه جهاني وب انتشار مي دهند. به علت پتانسيل بسيار بالاي وب به منظور دسترسي بـه دادههـاي مکـاني و انتشار اطلاعات مکاني تعداد زيادي نرمافـزار Internet GIS (ماننـد: ESRI ArcIMS،GeoMedia Web Map Server و MapInfo MapXtreme) به بازار داده مکاني عرضـه شـدهانـد. اگرچـه ايـن نـرمافزارهـا دسترسـي بـه دادههـاي مکـاني و سرويس هاي مختلف GIS را بر روي وب بسيار بهبود دادهاند، لکن دو مشکل اساسي در اين نـرمافزارهـا مـشترک مـي باشـد
(٢٠٠٤ ,Peng). مشکل اول اکثر اين نرمافزارها، خروجي گرافيکي نامناسب آنها مي باشد، بعبارت ديگـر خروجـي اکثـر ايـن نرمافزارها بصورت رستر است که داراي کيفيت بالايي نبوده و تعامل بين کاربر و داده مکاني را بسيار محدود مي کند. مـشکل دوم نرمافزارهاي Internet GIS که از اهميت بالاتري برخوردار است ، مـشکل قابليـت تعامـل ايـن نـرمافزارهـا مـي باشـد.
بصورت کلي قابليت تعامل به معناي وجود مفاهيم وقوانين مشترک براي تبادل، تلفيـق و اسـتفاده از اطلاعـات و سرويـسهاي مرتبط با اطلاعات مي باشد. مشکل قابليت تعامل نرمافزارهاي Internet GIS را از دو جنبه مي توان بررسي کـرد. جنبـه اول، قابليت تعامل در سطح داده٢؛ به اين معني که دادههايي که در يک نرمافزار توليد شدهاند، بـدون اسـتفاده از تکنيکهـاي تبـديل دادهها، قابليت استفاده و به اشتراک گزاري در ساير نرمافزارها را ندارند. اين مشکل باعث بوجود آمـدن مـشکلات زيـادي در دسترسي آني به دادههاي مکاني مي گردد. جنبه دوم از مشکل قابليت تعامـل نـرمافزارهـاي Internet GIS، مـشکل قابليـت تعامل در سطح دسترسي مي باشد. بعبارت ديگر دسترسي به دادهها و سرويس هاي يک سرويس دهنده، بر روي اينترنت ، فقط محدود به استفاده کنندگان خاص آن سرويس دهنده است و استفاده کنندگان از سرويس هاي ساير سرويس دهندگان، قادر بـه استفاده از آن سرويس نمي باشند. اين مشکل به علت استفاده از روشها خاص دسترسي به سرويس دهنـدگان اسـت . بـه بيـان ديگر، از آنجاييکه نرمافزارهاي Internet GIS مختلف از روشهاي اختصاصي براي تبادل درخواسـت و پاسـخ بـين سـرويس دهنده و استفاده کننده از سرويس بهره مي برند، نمي توانند با ساير نرمافزارهاي Internet GIS تعامل کرده و يا ارتباط برقرار کنند.
البته اين مشکل خاص نرمافزارهاي Internet GIS نبوده و در تمام کاربردهايي که بر روي شبکه جهاني وب در حال انجام است ، ديده مي شود. امروزه مدل اصلي که بر مبناي آن وب، دسترسي به اطلاعات و سرويس هاي مختلف را فراهم مـي کند مدل Human-Centric است . به اين معنا که اطلاعات و سرويسهايي که از طريق وب فراهم مـي شـود بـه بهتـرين نحـو ممکن براي درک و استفاده کاربران طراحي و پيادهسازي شـده اسـت . ولـي دسترسـي ، اسـتخراج و اسـتفاده از حجـم عظـيم اطلاعات موجود بر روي وب براي نرمافزارهاي مختلف بصورت اتوماتيک و بدون دخالت انسان، بسيار دشـوار، غيـر دقيـق و مستعد خطا مي باشد. بعبارت ديگر نياز امروزه شبکه جهاني وب و کليه سيستم هاي نرمافزاريـي کـه بـر روي آن فعاليـت مـي کنند، تعامل مستقيم بين نرمافزارهاي مختلف بصورت استاندارد مي باشد. تعامل مستقيم بين سيستم هاي نـرمافـزاري مختلـف ايده اصلي مدل Application-Centric براي وب، بعنوان نسل آينده وب مي باشـد. سرويـسهاي وب فـن آوري نـوين روز براي پيادهسازي برنامه هاي کاربردي تحت وب با مدل Application-Centric مي باشند.
فن آوريهاي سرويس هاي وب
همانطوريکه در بخش قبل عنوان شد، نسل آينده نرمافزارهاي تحـت وب از جملـه نـرمافزارهـاي Internet GIS بـر مبناي مدل Application-Centric پياده سازي خواهند شـد. توسـعه گـران نـرمافـزار در چنـدين سـال اخيـر بـا اسـتفاده از فن آوريهاي مختلف و بر مبناي نسل هاي مختلف CGI١ سيستم هاي تحت وب بسياري را پياده سازي نمودهاند (فـن آوريهـايي مانند ASP٢، JSP٣،Cold Fusion و Java Servlet ) (٢٠٠٣ ,Peng and Tsou). اما مشکل اساسي اين فن آوريها اين بـود که مي بايست بعنوان يک جز خاص از يک سيستم کاملا وابسته ( Tightly Coupled) مورد استفاده قـرار مـي گرفتنـد و بـه همين دليل نمي توانستند بطور همزمان به چندين سيستم مختلف سرويس بدهند و جزئي از چند سيستم باشـند Volter et) (٢٠٠٥ al . اين مشکل توسط فن آوريهايي که با عنوان فن آوريهاي سرويسهاي وب معرفي شدهاند، قابل حل است .
به صورت ساده سرويسهاي وب منابعي بر روي اينترنت هستند که قابل برنامه نويسي مي باشند. بعبـارت ديگـر ايـن سرويسها اشياء برنامه نويسي ، اشيا پايگاه داده و اجزاء نرمافزاري هستند که به برنامه هاي کاربردي استانداردي تبديل شدهانـد و به علت استاندارد بودن براي تمامي اجزاء ديگر بر روي وب قابل دسترسي و فراخواني هستند (٢٠٠٢ Newcomer). مزيـت بسيار ارزشمند اين فن آوريها اين است که سرويـسهاي وب را مـي تـوان بـا اسـتفاده از هـر مـدل داده، زبـان برنامـه نويـسي ، سيستم عامل و سکوي سخت افزاري و نرم افزاري پياده سازي کرد (٢٠٠٢ Cerami). اين فن آوريها بـر مبنـاي اسـتانداردها و پروتکل هايي طراحي شدهاند که قادرند به بهترين شکل ممکـن قابليـت تعامـل در سـطح دسترسـي را بـراي نـرمافـزار هـاي Internet GIS فراهم کنند. لذا رويکرد نسل آينده نرمافزارهاي Internet GIS بـر اسـتفاده از سرويـسهاي وب خواهـد بـود.
علاوه بر فراهم آوردن قابليت تعامل در سطح دسترسـي ، فـن آوريهـاي سرويـسهاي وب بهتـرين گزينـه ممکـن بـراي تلفيـق سرويس هاي مختلف ارائه شده از منابع گوناگون و ايجاد برنامه هاي کـاربردي قدرتمنـد تحـت وب مـي باشـند. ايـن توانـايي فن آوريهاي سرويسهاي وب را مي توان براي تلفيق پوياي دادههاي مکاني که از سوي منابع مختلف فراهم مي شوند، بصورت موثري بکار برد (٢٠٠٦ Amirian and Mansurian).
معماري سرويسهاي وب
سرويسهاي وب داراي معماري بسيار جديدي مي باشند. اين معماري شامل تعدادي استاندارد و پروتکل بـراي انتقـال دادهها، ارتباط سرويسها، انتشار سرويسها و جستجوي سرويسها در سطح شبکه مي باشد. معماري سرويسهاي وب را مي توان از دو جنبه اجزاي سطح بالا و اجزاي سطح پايين مورد بررسي قرار داد (٢٠٠٢ Cerami). اجزاي سـطح بـالاي فـن آوريهـاي سرويسهاي وب شامل سه جز سرويس دهنده٤، استفاده کننده از سرويس ٥ و منبع ثبت سرويسها٦ مـي باشـد. همانطوريکـه در شکل شماره ١ نمايش داده شده است ، سرويس دهندگان سرويسهاي خود را در پايگاه داده منبع ثبت سرويسها ثبت مي کننـد.
پس از آن، استفاده کنندگان از سرويس اين پايگاه داده را جهت يافتن سرويسهاي مورد نظرشان، جستجو مي کنند. منبـع ثبـت سرويسها در پاسخ به اين جستجوها ليست کاملي از اسامي سرويسهاي مرتبط به همراه اطلاعات کاملي از چگونگي فراخـواني سرويسهاي مختلف را باز مي گرداند. پس از مشخص شدن سرويسهاي مورد نياز، استفاده کننده به سرويس دهنده متصل شده و سرويس يا سرويسهاي فراهم شده را مورد استفاده قرار مي دهد.
از جهت اجزاي سطح پايين ، فن آوريهاي سرويسهاي وب شامل تعدادي پروتکل مي باشـند. ايـن پروتکـل هـا، انتقـال اطلاعات و ارتباط بين اجزاي سطح بالا، توصيف قابليتهاي سرويسها، چگونگي فراخواني سرويسها و نحوه يافتن سرويـسها را فراهم مي کنند. در شکل شماره ٢ اين پروتکلها به ترتيب آورده شدهاند(٢٠٠٣ Mark and Werrell ).
مکانيزم استاندارد به منظور انتشار و يافتن سرويسهاي وب، استاندارد UDDI١ مي باشد. ايـن اسـتاندارد بـه سـرويس دهندگان اين امکان را مي دهد که سرويسهاي مختلف را به روشي يکسان در پايگاه دادهاي که بدين منظور فراهم شده اسـت ، ثبت کنند. از طرف ديگر، استفاده کننـدگان از سرويـسهاي وب مـي تواننـد سرويـسهاي مدنظرشـان را بـا اسـتفاده از قابليـت جستجويي که UDDI فراهم مي کند، پيدا کنند. اطلاعات مورد نياز جهت اتصال بـه سـرويس دهنـده و چگـونگي فراخـواني سرويسها توسط زبان توصيف سرويسهاي وب WSDL٢ فراهم مي شود. بر مبناي اطلاعات مشخص شده بعنـوان توصـيفات سرويس وب و به کمک پروتکل SOAP١ ، استفاده کننده از سرويس ، با سرويس مورد نظر تعامل مي کند. تعامل ميان اجزاي سطح بالاي فن آوريهاي سرويسهاي وب در بستري انجام مي شود که در آن مي توان از پروتکلهاي انتقـال اطلاعـات مختلفـي همچون HTTP٢، SMTP٣، BEEP٤ و ... استفاده کرد.
بسياري از استانداردها و پروتکلهاي معماري سرويسهاي وب جديد و در حال تکامل مي باشـند. بـا ايـن وجـود ايـن استانداردها و پروتکلها به هيچ شرکت يا سکوي نرمافزاري خاصي وابسته نيستند و به همين دليل بهترين معماري و مدل براي ايجاد سرويسهاي GIS تحت وب که از آنها بعنوان نسل آينده نرمافزارهاي Internet GIS ياد مي شود، مي باشند.
فرايند تبادل درخواست و پاسخ در سرويسهاي وب
فرايند تبادل درخواست و پاسخ در سرويسهاي وب و يا بعبارتي ديگر، مکانيسم ارتباطي بين اجزاي سرويـسهاي وب،
ايده اصلي اين فن آوريها را تشکيل مي دهد. از جنبه مکانيسم ارتباطي مي توان سرويسهاي وب را بصورت زير تعريـف کـرد: سرويس قابل دسترس بر روي اينترنت که از مکانيسم استاندارد تبادل درخواست و پاسخ استفاده مي کنـد. در حقيقـت تبـادل درخواست و پاسخ به صورت استاندارد باعث بوجود آمدن امکان ارتباط مستقيم و بدون واسطه برنامه هاي کـاربردي مختلـف مي شود.