مقدمه
پیرو بررسیهای انجام شده در فاز صفر طرح جامع در مورد انتخاب بستر سخت افزار و نرم افزار پروژه ، نتایج حاصل از مطالعات طی جلساتی در کمیته برنامه ریزی و کنترل سازمان مورد بحث و بررسی قرار گرفت. نهایتا بستر مبتنی بر ماشینهای اینتل ، سیستم عامل ویندوز 2000 ، بانک اطلاعاتی SQL Server و محیط تولید نرم افزارهای کاربردی VB انتخاب و به شهرداری پیشنهاد گردید. در تنظیم توافقنامه بین سازمان و شهرداری این پیشنهاد عینا بعنوان چارچوب کار تعیین گردید. ذیلا خلاصه ای از زمینه های انتخاب فوق و پارامترهای عمده مربوط به هریک و همچنین جایگاه فعلی این بستر در دنیا ارائه می گردد.
الف – انتخاب سیستم مدیریت بانک اطلاعاتی (DBMS)
پارامترهایی که معمولا در انتخاب یک سیستم مدیریت بانک اطلاعاتی مورد بررسی قرار می گیرند شامل موارد زیر می باشند که به تفکیک به آنها اشاره می کنیم :
Performance
برای سنجش کارآیی سیستمهای مدیریت بانک اطلاعاتی با توجه به نتایج حاصل از TPC می بینیم که SQL Server روی ماشینهای اینتل و سیستم عامل ویندوز 2000 از جایگاه بسیار خوبی در مقایسه با سایر محصولات برخوردار است. برای آشنایی با TPC به ضمیمه 1 مراجعه شود. همچنین نتایج 10 ردیف اول TPC در ضمیمه 2 و نتایج متناسب با نیاز شهرداری در ضمیمه 3 و مشخصات نمونه محیط تست در ضمیمه 4 آمده است.
Capabilities
مجموعه کامل امکانات OLTP و OLAP توسط این نرم افزار ارائه می شود. سایر عرضه کنندگان برای امکانات OLAP هزینه جداگانه دریافت می نمایند.
Usability
سهولت بکارگیری SQL Server و Oracle و DB2 تقریبا یکسان به نظر می رسد. کلیه سیستمها از SQL استاندارد نیز پشتیبانی می کنند و در اکثر محیطهای کاربردی به روشهای مختلف قابل استفاده میباشند.
Interoperability
ارتباط SQL Server با سایر محیطها با پشتیبانی از XML به عمومی ترین و امروزی ترین شکل خود امکان پذیر می باشد.
Managability
مدیریت SQL Server هم با استفاده از ابزارهای اصلی خود بانک اطلاعاتی و هم با استفاده از ابزارهای جدید Web based امکان پذیر است. مدیریت امنیت و دسترسی کاربران نیز د رترکیب با سیستم عامل ویندوز و ساختار Active Directory امکان پذیر می باشد.
Price
همانگونه که ذکر شد ، در مورد SQL Serverهزینه دریافتی برای مجموعه کامل امکانات OLTP و OLAP است. سایر عرضه کنندگان برای امکانات OLAP هزینه جداگانه دریافت می نمایند. حتی با امکانات معمول نیز بهای لیسانس SQL Server نسبت به Oracle تا 50 درصد و نسبت به DB2 تا 60 درصد پایین تر می باشد. برای اطلاع بیشتر به ضمیمه شماره 6 مراجعه شود.
Availability
نسخه های مختلف SQL Server و همچنین مراجع و کتابهای مربوطه عموما در بازار ایران در دسترس می باشند در صورتی که Oracle از این نظر در مقام دوم و DB2 و سایر محصولات در مقامهای بعدی می باشند.
با توجه به جمیع پارامترهای فوق انتخاب SQL Server چه از نظر اعتبار بین المللی و روند بازار و چه از نظر مباحث داخل ایران انتخاب مناسبی می باشد. همچنین لیست بعضی از شرکتها و موسسات بزرگی که از محیطهای دیگر مانند Oracle تحت یونیکس به SQL Server سویچ کرده اند در ضمیمه 7 آمده است.
ب - انتخاب سیستم عامل
در صورت انتخاب SQL Server به عنوان DBMS ، تنها انتخاب برای سیستم عامل ویندوز 2000 می باشد. با این وجود به کلیات مزایای این سیستم عامل اشاره می کنیم. سیستم عامل ویندوز 2000 نسبت به نسل قبلی خود Windows NT 4 که در سطح وسیع در دنیا مورد استفاده قرار دارد، پیشرفتهای قابل ملاحظه ای داشته و برای سطوح مختلف کاربرد، میکروسافت نسخه های زیر را عرضه کرده یا در دست عرضه دارد :
نسخه Professional برای ایستگاههای کاری که در حال حاضر از ویندوز XP نیز استفاده میشود
نسخه Server برای سرورهای شبکه
نسخه Advanced Server با قابلیتهای بیشتر از نسخه Server نظیر Clustering
نسخه Data Center برای کاربردهای Enterprise و مدیریت سرورهای دارای 1 تا 32 پردازنده
با توجه به این که بانک اطلاعاتی MS SQL Server فعلا فقط روی سیستم عامل ویندوز در دسترس است و همچنین با نگاهی به امکانات وسیع این سیستم عامل از جمله :
- سیستم امنیت Active Directory
یک سیستم مدیریت کاربران و منابع در کلاس enterprise که مقیاس پذیر ((scalable بوده و از اساس با به کارگیری فن آوریهای استاندارد اینترنت ساخته شده است. این ابزار، مدیریت متمرکز شبکه را آسان و مطمئن میسازد.
- خوشه بندی (Clustering)
تشکیل خوشه هایی از سرورها با ویندوز 2000 نسخه Advanced Server میزان در دسترس بودن، مقیاس پذیری و مدیریت پذیری منابع و کاربردها را افزایش میدهد. اگر یک سرور در خوشه به علت خرابی یا تعمیر از کار بیفتد، سرور دیگر فوراً به جای آن وارد عمل خواهد شد (فرآیندی که تحت عنوان Failover شناخته می شود). این اتفاق از دیدگاه کاربر کاملاً پوشیده است.
- پروتکل اعتبار سنجی Kerberos V5
یک سیستم تکامل یافته تایید صحت اعتبار کاربران و تخصیص منابع شبکه به آنها (Authentication) که به کمک آن کاربر با یک Logon به کاربران تمام آنچه را نیاز دارند و مجاز به استفاده از آن هستند تخصیص میدهد.
- امکانات Message Queuing
به برنامه نویسان کمک می کند تا کاربردهای تحت شبکه خود را برای محیطهایی مثل اینترنت به طور قابل اطمینان تری پیاده سازی کنند. این کاربردها می توانند به سایر محیطها نظیر یونیکس و MainFrame نیز ارتباط داشته باشند.
- امکانات Network Address Translation-NAT
ابزاری است که امکان پنهان کردن آدرسهای IP داخلی شبکه را از ناظران خارجی فراهم ساخته و هزینه های ثبت آدرس را کاهش می دهد. همچنین ریسک دسترسی غیر مجاز به ساختار داخلی شبکه را کمتر می سازد.
- بالانس بار در شبکه Network Load Balancing
در NT4 تحت نام WLBS شناخته می شد. این ابزار ترافیک ورودی TCP/IP را در سطح شبکه بین چندین سرور توزیع می کند. کاربردهای خوشه ای شما، مخصوصاً کاربردهای وب با راندمان بسیار خوب و زمان پاسخگویی مناسب انجام میشود.
- امکانات ترمینالی
به ماشینهایی که سخت افزار آنها امکان اجرای مستقیم ویندوز را ندارد، کمک می کند تا چیزی شبیه محیط کار Windows 2000 Professional را بدون نیاز به سخت افزار خاص اجرا کند و یک راه حل شیک و کم هزینه برای دسترسی به نرم افزارهای تحت ویندوز با حداقل امکانات را فراهم می سازد.
بنا بر این با ملاحظه امکانات فوق ، سایر پارامترهای مهم از جمله پشتیبانی عملی زبان فارسی در خود سیستم عامل و بسیاری از بسته های نرم افزاری جنبی مانند Office XP و همچنین با توجه به :
آشنایی نسبی کارشناسان سازمان با این سیستم عامل
وجود دانش فنی آن نزد متخصصین در سطح شهر
تحقق پروژه های مختلف روی این بستر
این سیستم عامل انتخاب گردید.
ج – انتخاب زبان و محیط تولید برنامه های کاربردی
با توجه به سیستم عامل و DBMS انتخاب شده و پارامترهای مثبت مشابه انتخاب سیستم عامل از نظر وجود متخصصین و عمومی بودن در دنیا و ایران و سهولت تولید و مانند آن ، استفاده از Visual Basic یا در حالت کلی تر مجموعه Visual Studio معقولترین انتخاب به نظر می رسد. امروز نیز با عرضه معماری dotNet از طرف میکروسافت ، Visual Basic جزو زبانهایی است که جایگاه خود را حفظ نموده است و پیشرفتهای محسوسی از جمله در زمینه پشتیبانی از شی گرایی و یا برخورد ساخت یافته با خطاهای زمان اجرا در آن حاصل شده است که تولید برنامه های کاربردی قابل اطمینان را امکان پذیر می سازد.
علاوه بر آن موارد زیر نیز مورد نظر بوده است:
مدل برنامه نویسی انتخاب شده (FAT Server) باعث می شود که حجم کار مورد نیاز در برنامه ها کاهش یابد. بنابر این زبان برنامه نویسی ساده ای نظیر VB به خوبی جوابگوی نیازهای این محیط میباشد.