در بحث توسعه سیستم ها برای اطلاعات جغرافیایی به منظور اطمینان از سازگاری و یکپارچگی، وجود مدل های مفهومی که دارای جزئیات بیشتری هستند ضروری می شود. کاملاً واضح است که داده های جغرافیایی ویژگی های خاصی دارند و لازم است برای توسعه آن به زبان ها و تکنیک های مدل سازی استاندارد روی آوریم.
افزایش استفاده از داده های جغرافیایی و سیستم های اطلاعات جغرافیایی مستلزم تحقیق و بررسی در حوزه مدل سازی داده جغرافیایی و پایگاه های داده است. به دلیل رشد استفاده از داده های جغرافیایی لازم می شود داده های ناهمگن که همگی به یک پدیده اشاره دارند را بین سیستم ها و منابع مختلف ترکیب یا تبادل کنیم. معمولاً چنین داده هایی بر اساس مدل های داده غیراستاندارد جمع آوری و سازماندهی شده اند و این امر تبادل داده ها را با چالش روبرو خواهد کرد. به منظور موفقیت کامل در امر تبادل داده ها لازم است اسناد طبقه بندی و مدل های استاندارد و صحیحی در اختیار داشته باشیم. توسعه گسترده مدل های داده استاندارد اساس تبادل داده به شکلی قابل قبول را پایه ریزی می کند. پیش از توسعه زبانها و مدل های استاندارد، روش های استانداردی برای مدل سازی داده های جغرافیایی وجود نداشته است و مدلهایی که پدیده های یکسان را شرح می داده اند به شکل های گوناگون طراحی و تفسیر می شدند. در ادامه ضمن تعریف زیان مدل سازی و انواع آن به توضیح مفاهیم اساسی پیرامون زبان مدل سازی یکپارچه UML و هدف از استفاده آن در مبحث مدلسازی پدیده های جغرافیایی می پردازیم.
زبان مدل سازی
به هر زبان غیرحقیقی که می تواند برای تبیین اطلاعات یا دانش یا سیستم ها مورد استفاده قرار گیرد زبان مدلسازی می گویند. این بیان در قالب ساختاری که به وسیله یک مجموعه از قوانین سازگار تعریف می شوند، صورت می پذیرد. قوانین برای تفسیر معنی اجزای سازنده ساختار به کار می روند. یک زبان مدل سازی می تواند گرافیکی یا متنی باشد. زبانهای مدلسازی گرافیکی از تکنیک نمودار با علائم مشخص که مفاهیم و خطوط را نشان میدهند استفاده میکند که این خطوط علائم را به یکدیگر متصل می کند و رابطه را نشان می دهد. علائم گرافیکی دیگری نیز وجود دارند که برای بیان قیود به کار می روند. در طرف دیگر زبانهای مدل سازی متنی از یک سری لغات کلیدی استاندارد همراه با پارامترهای مشخص برای ایجاد عبارات قابل تفسیر برای کامپیوتر استفاده می کنند. زبان های گرافیکی نسبت به زبان های متنی به عملیات اجرایی کمتری نیاز دارند و از این جهت سریع شناخته می شوند.
زبان مدلسازی یکپارچه/Unified Modeling Language
UML یا زبان مدل سازی یکپارچه، یک زبان مدل سازی است که توسط Grady Booch, James Rumbaugh, Ivar Jacobsen ایجاد و بعدها توسط گروه مدیریت شئ OMG در سال ۱۹۹۷ استاندارد شد. از چندین مفهوم و نظریه تشکیل شده است که در سطوح مختلف انتزاعی در توسعه و حفظ و نگهداری سیستم استفاده می شود. می تواند برای اهداف گوناگون مورد استفاده قرار گیرد، از جمله: الف) بصریسازی و مستندسازی فرآیندها، جریان های کاری، پایگاههای داده و سیستمهای اطلاعاتی در یک سازمان، ب) خصوصی سازی نیازهای سیستم، پ) طراحی و توسعه سیستم های اطلاعاتی، یعنی؛ تحلیل های کاربری، تحلیل های سیستمی، طراحی و پیاده سازی سیستم. چون در تمامی فازهای توسعه و عملکرد سیستم از یک زبان یکسان استفاده میشود، به کاربران، مشتریان، توسعه دهندگان و اعضای پروژه ها این امکان را می دهد که به شکلی موثر و کارآمد با سیستم ارتباط برقرار کنند.
این زبان مدلسازی گرافیکی از چندین نوع دیاگرام یا نمودار از پیش تعریف شده که ساختار یا رفتار یک سیستم را مشخص میکنند تشکیل شده است و در مدلسازی از این نمودارها استفاده میشود. بسته به مسائل و کیفیتهای مورد نظر برای سیستمهای اطلاعاتیای که قرار است پایه ریزی شوند، ما میتوانیم این نمودارها را به مناسب ترین روش سازمان دهی کنیم. هدف استفاده از نمودارهای مختلف در UML، ارائه منظرهای گوناگون از سیستم است. همانطور که مهندسین عمران جهت ساختن یک ساختمان، پلانهای مختلفی از ساختمان تهیه می کنند، ما با استفاده از نمودارهای UML نماهای مختلفی از نرم افزار یا سیستم مورد نظر را تهیه میکنیم. با توجه به رشد نرم افزارهای پشتیبانی کننده UML، امروزه با استفاده از نرم افزارهایی مانند Microsoft Visio ،Enterprise Architecture و Rational Rose میتوان بعد از رسم نمودارهای UML، مستقیما این نمودارها را به پایگاه داده و کد تبدیل کرد. این نرم افزارها همچنین قادرند کدهای برنامه را گرفته و نمودارهای UML را تولید کنند.
طرح واره و نشان تجاری زبان مدل سازی یکپارچه
نمودارهای UML
- نمودار use-case [1] : نمودار use-case رابطه بین use-case ها در یک سیستم یا دیگر موجودیت های معنایی و عامل[۲]های آن را نشان می دهد. این نمودار یک هدف اولیه از چگونگی استفاده کاربران و عاملان از سیستم است. گاهی اوقات به نام نمایش خارجی سیستم نیز عنوان شده و تعامل بین سیستم و محیط بیرونی را شرح می دهد. مطابق شکل میبینیم که دیاگرام use-case از سه المان اصلی تشکیل شده است: عامل ها، use-case ها، و مرز سیستم. سیستم را از طریق رسم مرز مستطیلی که use-case ها در داخل آن قرار گرفته اند می توان ایجاد کرد و عامل ها یا کاربران در بیرون از مرز سیستم رسم میشوند. use-case ها بیضی شکل هستند و نوع عملکردی که درون سیستم دارند داخل بیضی نوشته می شود. عامل ها در واقع استفاده کنندگان از سیستم هستند و رابطه بین عامل ها و use-case ها از طریق خطوط ساده رسم و مشخص می شود.
نمودار use-case
- نمودار فعالیت[۳] : نمودار فعالیت برای بررسی و شرح فعالیت ها یا جریان های کاری موجود در سازمان ها و سیستم ها استفاده می شود. اساساً فلوچارت هایی هستند که برای نمایش جریان کاری سیستم ها به کار می روند. در واقع یک روش گرافیکی برای مستندسازی یک جریان کاری در شکل و شمایلی ساده و شهودی است. با نگاه به چنین نموداری می توان دریافت که: چه چیزی در جریان کار اتفاق می افتد و چه فعالیت هایی می تواند به صورت موازی انجام گیرد. نمودار فعالیت همچنین نقشها و حوزه های مسئولیت تجاری را شرح می دهد؛ به عبارت دیگر این که چی کسی مسئول انجام چه چیزی در کار است. نقشها و مسئولیت ها به شکل ستون هایی در نمودار فعالیت مستندسازی می شوند.
مثالی از نمودار فعالیت برای جریان کار خرید کتاب
- نمودار کلاس[۴] : یک کلاس شرحی است از یک مجموعه از اشیاء که همگی دارای ویژگی، صفت، عملیات، رابطه و معنای یکسانی هستند. ساختارهای ایستا از کلاس ها و رابطه ها ساخته می شوند. کلاس ها می توانند اطلاعات، تولیدات، اسناد یا نهادها را بیان کنند و سامان بدهند. هدف نمودار کلاس مستندسازی رابطههای بین کارکنان و موجودیت ها است. یک روش بصری است تا نشان دهد چه کسی با چه کسی تعامل دارد و چه کسی مسئول چه چیزی است. نمودارهای کلاس برای ۲ هدف اصلی به کار می روند: – برای نمایش چگونگی همکاری کارمندان و موجودیتها در به انجام رساندن یک فرآیند – برای نمایش ساختار ایستا و رابطه های میان موجودیت ها. میتوان گفت که نمودارهای کلاس تقریباً استخوانبندی تمام متدهای شئگرا مثل UML است. بیشترین نوع دیاگرامی که در مدل سازی پدیده های جغرافیایی به کار میروند دیاگرام ایستای کلاس است. برای نمایش این نمودار از مستطیلی که دارای سه بخش است استفاده میشود: بخش اول نام کلاس، بخش دوم صفات و بخش سوم شامل عملیات است.
نمایش بخشهای نمودار کلاس (بالا)، مثالی از چگونگی ارتباط کلاسها و زیرکلاسها (پایین)
- نمودار شئ[۵] : این نمودار واقعیت هایی را که به توصیف موجودیت های معین می پردازد ، مدل می کند، در حالیکه نمودار کلاس قوانین برای انواع موجودیت ها را مدل میکند. اشیاء چیزهای واقعی هستند مثل قطعه زمین و اشخاص. نمودار شئ حقیقتی را نمایش خواهد داد؛ به عنوان مثال شخصی که صاحب قطعه زمین است. درحالیکه نمودار کلاس قانونی را که شخص می تواند صاحب زمین باشد را مشخص میکند. نمودارهای شئ رابطهی نزدیکی با نمودارکلاس دارد، چرا که شئ نمونه ای از کلاس است، یک نمودار شئ را میتوان نمونهای از نمودار کلاس در نظر گرفت. نمودارهای شئ ساختارهای ایستا یک سیستم را در یک زمان خاص بیان می کنند و برای بررسی دقت نمودارهای کلاس مورد استفاده قرار میگیرند.
- نمودار تعامل[۶] : نمودار تعامل مدلی است بیانگر اینکه چگونه گروههای اشیاء در بعضی از رفتارها همکاری می کنند. یک نمودار تعامل، رفتارهای یک تک use-case را شامل میشود. نمودار تعدادی اشیاء و پیامهایی که بین اشیاء در use-case انتقال یافتهاند را نشان می دهد. نمودار تعامل ضمن در بر داشتن اطلاعات یکسان به دو شکل ساخته می شود : نمودار توالی[۷] و نمودار همکاری[۸].
- نمودار حالت[۹] : این نمودار رفتارهای پویای یک شئای که در حال تغییر به حالتهای مختلف است را شامل می شود. نمودار حالت رفتارهای ممکن کلاسها را در پاسخ به تحریک های بیرونی بیان می کند. این نمودار برای سیستم های آنی پرکاربرد است.
دو نمودار دیگر که عمدتاً در پیاده سازی سیستم به کار می روند عبارتند از نمودار اجزا[۱۰] که اجزای سازنده یک سیستم را توصیف می کند و نمودار استقرار [۱۱] که سخت افزارهای سیستم را شرح می دهد.
[۱] use-case diagram
[۲] actor
[۳] activity diagram
[۴] class diagram
[۵] object diagram
[۶] interaction diagram
[۷] sequence diagram
[۸] collaboration diagram
[۹] state diagram
[۱۰] component diagram
[۱۱] deployment diagram