جمعه, ۷ اردیبهشت, ۱۴۰۳ / 26 April, 2024
مجله ویستا


طراحی و پیاده سازی یک نشریه علمی الکترونیکی با استفاده از معماری سرویس‌گرا


طراحی و پیاده سازی یک نشریه علمی الکترونیکی با استفاده از معماری سرویس‌گرا
در اینجا مدلی برای ایجاد، مدیریت و نگهداری یک نشریه علمی الکترونیکی ارائه شده است که مبتنی بر معماری سرویس گرا می باشد این برای تهیه این چارچوب از مفاهیم و اصول توسعه شی گرا و مبتنی بر مولفه استفاده می شود. در سیستم تهیه شده، از معماری سه لایه ای استفاده شده است که عبارتند از لایه ارائه، لایه میانی و لایه منابع. در لایه ارائه، از برنامه های کاربردی تحت وب و سرویسهای وب، در لایه میانی، از زبان C#.Net و در لایه منابع از سیستم مدیریت بانک اطلاعاتی SQL Server۲۰۰۰ استفاده شده است. این سیستم وب با استفاده از تکنولوژی .NET در محیط ویندوز پیاده سازی شده است. و برای تبادل امن اطلاعات از تکنولوژی Soap Extension استفاده شده است.
رویه های مورد استفاده برای ساخت سرویسهای وب و فرمهای وب با استفاده از محیط توسعه مجتمع[۱] Microsoft Visual Studio .NET را نشان می دهد. این برنامه کاربردی به مولفان اجازه می دهد تا به طور آنلاین اطلاعات خود را ثبت کنند، و مراحل داوری مقاله خود را به طور آنلاین مشاهده کنند، همچنین داور می تواند به طور آنلاین، عمل داوری را انجام می دهد و مدیر نیز به طور آنلاین مراحل داوری را تحت کنترل خود، دنبال کند. اطلاعات مولفان، داوران، و مقالات را در بانک اطلاعاتی SQL ذخیره می کند و از ADO.NET برای کار روی داده ها از طریق رویه های ذخیره شده[۲] استفاده می کند.
این برنامه کاربردی همچنین چهار سرویس وب به نامهای PersonalInformation، ArticleInformation، FormInformationو RefereeingInformation، را توسعه داده است. این برنامه کاربردی از این سرویسهای وب به عنوان منطق کاری خود استفاده می کند.
۱) مقدمه
از آنجاییکه تکنولوژی اینترنت به سرعت در حال پیشرفت می باشد، افراد بسیاری از اینترنت برای توسعه تجارت و کاهش هزینه برای رسیدن به اهداف تجاری خود استفاده می کنند. مصرف کنندگان می خواهند هر چه راحتتر و آسانتر به برنامه های کاربردی تحت وب دسترسی داشته باشند. تکنولوژیهای زیادی وجود دارد که می توانند برای ساختن سرویسهای وب و برنامه های کاربردی وب استفاده شوند. این تکنولوژیها شامل CORBA، Java RMI[۳] مربوط به SUNو DCOM مربوط به مایکروسافت می باشند. تمام اینها موفقیت کمی کسب کرده اند زیرا از طریق محییطها نمی توانند به درستی بایکدیگر تعامل داشته باشند.
محیط Microsoft .NET دو انتخاب برای توسعه سرویسهای توزیع شده را در اختیار ما قرار می دهد. یکی از آنها سرویس وب ASP .NET می باشد و دیگری .NET Remoting می باشد. در طرف client توسعه دهندگان می توانند از اسکریپت VB[۴] ، اسکریپت جاوا یا برنامه های کاربردی ASP .NET استفاده کنند. این پروژه از ASP .NET برای پیاده سازی برنامه کاربردی نشریه الکترونیکی استفاده کرده است زیرا این یک تکنولوژی جدید می باشد.
۲) نشریه الکترونیکی
نشریه های الکترونیکی به دلایل زیادی نظر خوانندگان، مولفان، ناشران و کتابداران را به خود جلب می کند. از نقطه نظر یک خواننده، حضور اینترنت در همه جا باعث می شود که دسترسی به مقاله های پیرامون جهان آسانتر شود و خوانندگان بتوانند در زمان نیاز، این مقاله ها را بگیرند و چاپ کنند. ناشران می توانند هر وقت که بخواهند مطلب ویژه ای از نشریه الکترونیکی را تهیه کنند و اطلاعاتی به خوانندگان بدهند. خوانندگان می توانند با قیمت کمتر از یک نشریه کاغذی، آنرا تهیه کنند. سرانجام از آنجاییکه قیمت نشریه های کاغذی در حال افزایش است و علاقه خوانندگان نیز زیادتر می شود و بودجه ی کتابخانه نیزخیلی کم است، انگیزه ای برای ایجاد نشریه های الکترونیکی در محیطهای آموزشی به وجود می آید.
با وجود فوائد قابل ملاحظه ناشی از انتشار نشریه ی الکترونیکی در بین هواداران، تمایل به پذیرش نشریه های الکترونیکی نسبتاً کم است. چند عامل، بازدارنده تکثیر نشریه الکترونیکی می باشد که عبارتنداز : دسترسی به کامپیوتر، فرمت مستندات، طرفداری از نسخه ها ی کاغذی مقالات به خاطر آسانی خواندن و تفسیر آنها، امکان بیشتر جا زدن اثر دیگران به نام خود، و کیفیت گرافیکی غیر کافی . نشریه های علمی، نقشهای متنوعی در جامعه ایفا می کنند: ساختن پایگاه داده اشتراکی، انتقال اطلاعات، محافظت از ارزش پژوهش و غیره.
مدیریت نشریه الکترونیکی ، نیاز به مبادله اطلاعات بین خیلی از شرکت کننده ها در فرایند انتشار از جمله نویسنده ها، داوران، سردبیران، و خوانندگان دارد. هر شرکت کننده در این فرایند نقش مختلفی بازی می کند و با دیگر شرکت کنندگان همکاری دارد.
۳) معماری سرویس گرا
تعاریف گوناگونی از معماری سرویس گرا ارائه شده است كه از جمله آن می توان به تعریف زیر اشاره كرد:
مجموعه قوانین ، سیاستها و چهارچوبهایی كه نرم افزارها را قادر می سازد تا عملكرد خود را از طریق مجموعه سرویسهای مجزا و در عین حال مربوط به هم در اختیار سایر درخواست كنندگان قرار دهند تا بتوانند بدون اطلاع از نحوه پیاده سازی و تنها از طریق رابطهای استاندارد و تعریف شده ، این سرویسها را پیدا كرده و فراخوانی نمایند.
در حال حاضر، تکنولوژی سرویسهای وب و پیاده سازی نمونه های موفق از آن، نشان داده است که SOA می تواند به عنوان راه حلی عملی و دست یافتنی در طراحی سیستمهای جدید و یکپارچه سازی سیستمهای بزرگ موجود، مطرح گردد. البته ذکر تفاوت سرویسهای وب و SOA در اینجا لازم به نظر می رسد.
در این معماری، همه توابع به عنوان سرویس تعریف می گردند. این توابع شامل توابع تجاری[۵] و تراكنشهای تجاری[۶] می باشند كه تراكنشهای تجاری خود شامل توابع سطح پایین[۷] و توابع سیستمی سرویسها[۸] هستند. سرویسها بصورت مستقل طراحی و پیاده سازی شده و به عنوان جعبه سیاه عمل می نمایند. قطعات دیگر در خارج از این قطعه نیازی به دانستن نحوه انجام کار در این سرویس را ندارند و تنها به نتیجه آن نیازمندند.
قطعات، سرویسهای خود را از طریق رابطها[۹] در اختیار قطعات دیگر قرار میدهند که این رابطها قابل دستیابی و فراخوانی هستند، بدون اینکه محل قرار گیری آنها اهمیت داشته باشد (رابطهای محلی یا دور ). در ضمن، این رابطها می توانند به همان نرم افزار كاربردی یا به آدرسی در محل دیگری از شبکه مرتبط باشند. رابطها به عنوان کلیدی در برقراری این ارتباطها هستند و از طریق آنها نوع پارامترهای ورودی و نتایج (خروجی) مشخص می گردد.
۴) توسعه شیءگـرا،توسعه مبتنی برمؤلفه ومعماری سرویس گرا
از خیلی جهات، معماری سرویس گرا، تکامل اصول بنیادی حاکم بر توسعه مبتنی بر مولفه[۱۰] می باشد. باوجود آنکه سرویسها توسط مصرف کنندگان سرویس قابل مشاهده می باشند، اما مولفه ها ، شفاف هستند. جهان اشیا با معرفی زبانهای برنامه نویسی شی گرا شروع شد و بعداً با روی کار آمدن تکنولوژیهایی برای طراحی، توسعه یافت و سپس به متدهای تحلیل و طراحی شی گرا[۱۱] رشد پیدا کرد. سرویسهایی مربوط به زیر ساختار، محیطهای توسعه، الگوها و معماریهایی نیز در این زمینه تهیه شدند.
به دنبالOO، توسعه مبتنی بر مولفه پدیدار شد، که روش جدیدی برای طراحی، ساخت، پیاده سازی و تکامل برنامه های کاربردی نرم افزاری را ارائه داد. برنامه های کاربردی با ترکیب مولفه ها به دست می آیند، که عبارتند از منابع و مولفه های متنوعی که به زبانهای برنامه نویسی مختلف و در محیطهای توسعه مختلف نوشته شده اند و در محیهای مختلف اجرا می شود. همانند توسعه شی گرا، سرویسهای مربوط به زیر ساختار ، ابزارها، محیطهای توسعه و الگوهایی برای تحقق بخیشیدن CBD روی کار آمدند. CBD فرصت بیشتری برای استفاده مجدد نسبت به توسعه OO فراهم می کند. SOA با استفاده از هر دوی آنها، امکان استفاده مجدد بیشتری نسبت به آندو را فراهم می کند.
۵) تئوری سرویسهای وب و برنامه های کاربردی وب
سرویسهای وب تکنولوژیهایی می باشند که به کاربران امکان ایجاد فراخوانیهای مشابه RPC به هر سرور در اینترنت را می دهند تا پاسخی در جواب دریافت کنند. اگر سرویسهای وب به درستی مستقل از محیط (در هر کدام از محیطهای ویندوز، یونیکس و لینوکس) و مستقل از زبان ( هر کدام از زبانهای جاوا، C++، C# یا هر زبان دیگری) باشند، توسعه دهندگان می توانند با استفاده از سرویسهای عمومی فراهم شده توسط طرف سوم[۱۲]، بر برنامه های کاربردی خود تمرکز کنند. همچنین به طور بالفعلی عرضه سرویسهای وب را توسعه می دهد. این مزیت اولیه سرویسهای وب باعث می شود برنامه ها در محیطهای مختلف با یکدیگر به روشی استاندارد ارتباط برقرار کنند. مزیت دوم، استفاده مجدد از کد می باشد. سرویس وب برای کاربر نهایی[۱۳] نمی باشد. یک برنامه کاربردی ممکن است سرویسهای وب کوچک تهیه شده زیادی را بایکدیگر ترکیب کند.
سرویسهای وب اغلب به طور مشابهی از SOAP برای فرمت پیام استفاده می کنند و به سرویسهای نرم افزاری ای نیاز دارد که از طریق دیگر عملیات اینترنتی برای انتقال پیام HTTP مثل IIS، Tomcat، یا Apache و غیره، از ایجاد ، پیکربندی، و مدیریت سایت وب پشتیبانی کند. که باعث می شود سرویسهای وب برای ارتباطات از طریق اینترنت و ارتباطات بین سیستمهای غیر ویندوزی مناسب باشد. سرویسهای وب می توانند محدوده وسیعی از محیطهای client را با بار بالفعل زیادی پشتیبانی کنند و می توانند به زبانهای مختلفی پیاده سازی شوند. Microsoft .Net دو انتخاب برای پیاده سازی سرویسهای وب می دهد: .NET Remoting و ASP .Net. .NET Remoting یا از SOAPیا از پروتکل باینری اختصاصی مایکروسافت برای ارتباطات استفاده می کند. پروتکل باینری بهتر کار می کند، و برای .NET برای ارتباطات .NET کار می کند، اما نمی تواند با محیطهای غیر ویندوزی استفاده شود. .NET Remoting به سرور وب IIS احتیاجی ندارد، " نمی تواند قابلیت مقیاس پذیری و کارائی IIS را برای پشتیبانی ارتباطات یا درخواستهای زیاد در یک ثانیه پشتیانی کند" چون ممکن است نتواند از firewall استفاده کند،برای اینترانت ایده آل می باشد. اما از آنجاییکه این پروژه، برنامه کاربردی اینترنتی را طراحی می کند، ASP .NET نسبت به .NET Remoting انتخاب بهتری می باشد.
۵-۱) استانداردهای سرویسهای وب
این پروژه تمام استانداردهای مورد استفاده در سرویسهای وب را می پذیرد: سند مبتنی بر XML، پروتکل SOAP برای سازماندهی کردن[۱۴] و از سازماندهی خارج کردن[۱۵] فراخوانی متد راه دور[۱۶] ، WSDL برای توصیف سرویسهای موجود و پارامترهای موردنیاز برای ارسال، و UDDI برای ثبت و کشف سرویس وب .
۶) تحلیل و طراحی مجله علوم و تکنولوژی ایران
۶-۱) فرایند ارزیابی مقاله
۶-۲) توصیف فرایند
۱) مولف فرمهای مخصوصی که توسط سازمان به عنوان ضمیمه هایی برای تمام مقاله ها مورد نیاز می باشد را پر می کنند، یعنی عنوان مقاله، مشخصات مولف و غیره.
۲) مولف اقدام به ارسال مقاله از طریق فرمی که کامل کرده است، می کند.
۳) مقاله توسط سازمان دریافت می شود.
۴) سازمان یا به طور فیزیکی یا دیجیتالی مقاله را ذخیره می کند.
۵) در این مرحله، هیئت تحریریه تصمیم می گیرد که آیا باید با پذیرفتن مقاله مخالفت کرد، یا باید به مرحله داوری فرستاده شود، یعنی مقاله در زمینه هایی باید تجدیدنظرشود.
الف) اگر پذیرفته نشود، به مولف اعلام می شود.
ب) درغیر اینصورت، به مقالات تحت داوری اولیه می پیوندد.
۶) وقتیکه مقاله دریافت شد سازمان به مولف یک فرم رسید و یک فرم تعهد نامه ارسال می کند.
۷) مولف تعهد نامه امضا شده را برمی گرداند. مولف متعهد می شود که تا کنون مقاله را برای نشریه دیگری نفرستاده است در این مرحله همچنین از مولف خواسته می شود که حداقل هشت داور را که در موضوع مربوط به مقاله تخصص دارند را معرفی کند.
۸) داوران برای داوری مقاله انتخاب می شوند. این عمل به سه روش امکانپذیر است:
استفاده از داورانی که قبلاً مقاله یا مقالاتی را داوری کرده اند و لیست آنها در فایل داوران موجود است.داورانی که خود مولف معرفی کرده است.
داورانی که توسط اعضای هیئت تحریریه و یا اشخاص مورد تایید نشریه برای داوری انتخاب شده اند.
۹) فرم درخواست داوری به همراه کپی مقاله و فرم داوری به داوران برگزیده ارسال می شود. در اینجا ممکن است یکی از حالات زیر اتفاق بیفتد:
در صورت عدم تمایل به این کار سازمان را مطلع می کند در این صورت نیاز است داور دیگری برای مقاله انتخاب شود.
در صورت جواب ندادن یک داور در مدت مشخصی به وی یاد آور[۱۷] ارسال می شود.
اگر داور درخواست داوری را پذیرفت، ایرادات مقاله را در فرم داوری ویژه ای، موارد لازم را توضیح می دهد و گزارشی را بر می گرداند.۱۰) وقتیکه مقاله داوری شد آنگاه به مقالات داوری اولیه شده می پیوندد، بدین گونه نشان داده می شود که در این مرحله مقاله داوری اولیه شده است. به طور معمول، مقاله و انتقادهای نوشته شده در مورد آنها با هم ذخیره می شوند.
۱۱) با توجه به داخلی یا خارجی بودن داور نامه های خاصی به منظور تشکر و قدردانی به داوران فرستاده می شود.
۱۲) سپس هیئت تحریریه می تواند تجدیدنظرها را بخواند و آنگاه تصمیم خود راراجع به مرحله بعد اعلام کند. نوعاً ویرایشگرها از یکی از چهار گزینه استفاده می کنند:
الف) درخواست از مولف برای درست کردن قسمتهای خاصی از مقاله و ارائه مقاله تصحیح شده بر طبق آن.
ب) نپذیرفتن مقاله .
ج) پذیرفتن مقاله به همان صورت که بوده است.
۱۳) داور نهایی برای بازبینی مقاله از بین داوران انتخاب می شودوفرم داور نهایی، مقاله اولیه، مقاله تصحیح شده، و نظرات داوران برای وی ارسال می شود.
اگر داور درخواست داوری نهایی را پذیرفت، نظرات خود را در فرم داوری نهایی ذکر می کند.
اگر داور این درخواست را نپذیرفت، داور جدیدی انتخاب می شود.
در صورت جواب ندادن یک داور در مدت مشخصی به وی یاد آور ارسال می شود.
۱۴) هیئت تحریریه با توجه به نظر داور نهایی تصمیمی می گیرد.
اگر مقاله پذیرفته نشود از محل ذخیره سازی حذف می شود و به کاربر نیز اعلام می شود.
در غیر اینصورت به مولف از پیش قبولی مقاله اطلاع داده می شود .
۱۵) فرم پیش قبولی مقاله به انضمام فرم copyright و موارد کسری مقاله به مولف اعلام می شود.
۱۶) مولف مقاله را اصلاح می کند و مقاله تصحیح شده را دوباره ارسال می کند.
الف) اگر مقاله از نظر نگارشی و املایی درست باشد، در صف چاپ قرار می گیرد.
ب) در غیر اینصورت، دوباره به مولف ارسال می شود تا زمانیکه کاملاً تصحیح شود.
۱۷) در مرحله نهایی مقاله یا به صورت Regular یا research note منتشر می شود.
۶-۳- حالتهای ذخیره سازی
۶-۳-۱) طراحی ساختار داده
پایگاه داده شامل اطلاعاتی می باشد که سیستم هم برای تعریف فرایند داوری که یک نشریه متعهد می شود، و هم برای مدیریت و نگهداری جریان کار مقاله ها و گزارشها/داوریها و ارتباطات بین کاربران سیستم استفاده می کند. همچنین خود مقالات نیز در پایگاه داده وجود دارد. چهار جدول مختلف برای ذخیره اطلاعات در سیستم استفاده می شود. درادامه، ساختار جدولها و اطلاعاتی راجع به داده های ذخیره شده در آنها توصیف داده شده است.
۶-۳-۲) نمودارهای use case
نمودارهای مورد کاربردUML ، کاربران سیستم را تعریف می کند که توسط نرم افزار Rational Rose رسم شده اند. سه کاربر مختلف در سیستم وجود دارد ازجمله مدیر، مولف، و داور که هر کدام یک ساختار کاربری را تعریف می کنند.
۶-۳-۲-۱) نمودار use case مربوط به مولف
۶-۳-۲-۲) نمودار use case مربوط به داور
۶-۳-۲-۲) نمودار use case مربوط به سردبیر/ ویرایشگر
۶-۷-۴) توصیف سرویسها
۶-۷-۵) مدل طراحی سرویسهای وب
شکلهای زیر چگونگی مدلسازی سرویسها را با استفاده از توصیف UML برای طراحی سرویسهای وب رانشان می دهد. با استفاده ازقوانین معنایی واسطها که از قبل در UML وجود داشته است، می توان جوانب یک سرویس را همانگونه که در WSDL تعریف می شود، تجسم کرد.
جدول زیر رابطه عناصر استفاده شده در شکلهای بعد با اجزاء عناصر WSDL برای سرویسها را بیان می کند.
▪ جدول ۶-۱- رابطه بین عناصر UML و اجزاءWSDL ]۲[
این روش طراحی سرویسهای وب استفاده مجدد از مستندات مباده داده و واسطهای مورد حمایت سرویسهای وب را ممکن می سازد.
۶-۷-۵-۱) مدل سرویس وب مدیریت کاربر
۶-۷-۵-۲) مدل سرویس وب مدیریت پیشرفت مقالات
۶-۷-۵-۳) مدل سرویس وب مدیریت فرم
۶-۷-۵-۴) مدل سرویس وب داوری
۷) پیاده سازی
۷-۱) روشها و تکنولوژیهای مورد نیاز
اولین مرحله، جمع آوری اطلاعاتی می باشد که به سرویسهای وب و برنامه های کاربردی وب مربوط می باشد.
با داشتن اطلاعات پیش زمینه ای می توان آنگاه:
یک معماری برای برنامه کاربردی طراحی کرد
پایگاه داده را طراحی کرد
سرویسهای وب را پیاده سازی کرد
برنامه کاربردی وب را پیاده سازی کرد
این پروژه همچنین نیاز به کامپیوتری دارد که Microsoft Visual Studio .NET، ASP .NET، ASP .NET(IIS) و Microsoft SQL Server روی آن نصب شده باشد.
۷-۲) سرویس وب ASP.NET
سرویسهای وب برای فعل و انفعالات متقابل در اینترنت طراحی شده است. می توانند به طور داخلی یا خارجی توسط برنامه کاربردی از طریق اینترنت استفاده شوند.
۷-۲-۱) پروتکل سرویس وب ASP .NET
تمام سرویسهای وب شامل سرویس وب ASP .NET از SOAP به عنوان پروتکل ارتباطی استفاده می کنند. SOAP یک سند خوش ساخت [۱۸] می باشد. که متد درخواست و فرمت پارامترهای ارسالی را مشخص می کند. پیامهای SOAP می توانند بالای HTTP، SMTP یا TCP ساخته شوند. اما سرویس وب از پروتکل HTTP به عنوان پروتکل حمل استفاده می کند زیرا " پروتکل HTTP که بر جزئیات وضعیت یک فعالیت نظارت ندارد[۱۹]، مقیاس پذیری عظیمی را فراهم کی کند، همچنین می تواند از firewall موجود عبور کند"]۱[ همچنین مستقل از محیط می باشد.
پیام SOAP سه نوع می باشد: فراخوانی متد(پیام درخواست)، پیام پاسخ، و پیام شکست. پیام درخواست باید شامل نام متدسرویس وب با پارامترهای مناسب باشد. پیام پاسخ شامل نتایج از فراخوانی متد راه دور می باشد.
پیامهای شکست در مواردی استفاده می شود که فراخوانی راه دور به یک استثناء برخورد کنند. فرمت پیام SOAP باید شامل عنصر Envelop، عنصر Header و عنصر Body باشد. آنها باید در جاهای مورد نیاز تودرتو باشند. عنصر Header در فراهوانی راه دور مورد نیاز نمی باشد، اما ممکن است شامل اطلاعات تراکنش[۲۰]، هویت فراخوان[۲۱] باشد، داده های دیگر خارج از باند باشد. اطلاعات فراخوانی متد، مثل نام متد، پارامترها، یا داده برگشتی در عنصر body وجود دارد. اگر فراهوانی متد با شکست مواجه شود، پیام SOAP فقط شامل عنصر FAULT در تگ bodyخواهد شد. عنصر FAULT ممکن است شامل چهار زیر عنصر باشد: کد خطا، رشته خطا، عامل خطا، و جزئیات. اطلاعات جزئی تر می توان در کتاب سرویسهای وب C# یافت.]۱[
SOAP یک سند خام[۲۲] XML می باشد. که تمام اطلاعات راجع به فراخوانی متد را دارد. بنابراین امکان عملی شدن سرویس وب در محیط را فراهم می کند. ASP .NET که در بالای محیط .NET
قرار دارد امکاناتی برای کار با پیامهای SOAP دارد.
۷-۲-۲ ) ساختار سرویس وب ASP .NET
سرویس وب ASP .NET شامل چهار قسمت می باشد: توصیف سرویس، پیاده سازی سرویس، انتشار/ کشف سرویس، و درخواست سرویس.
توصیف سرویس از WSDL استفاده می کند. WSDL یک سرویس وب و تمام متدهایی که فراهم می کند را توصیف می کند. همچنین نوع پارامترهای مورد نیاز برای ارسال، نوع نتایج برگشتی، و محل سرویس را توصیف می کند. در محیط .NET توسعه دهندگان می توانند از فایل WSDL برای ایجاد شی proxy استفاده کنند. این باعث می شود که فراخوانی راه دور سرویس وب به عنوان فراخوانی محلی همان برنامه کاربردی به نظر برسد.
پیاده سازی سرویس وظیفع توسعه دهنده می باشد. سرویسی که فراهم می کندباید پیاده سازی شود.
۷-۲-۳) استفاده از سرویس وب ASP .NET
همانطور که منبع ]۱[ می گوید:
ویژوال استودیو .NET یک شی proxyسمت client را برای مدیریت تمام ارتباطات با سرویس وب خارجی ایجاد می کند. این شی client برپایه فایل WSDL سرویس وب راه دور می باشد. از زبان مشابه پروژه استفاده می کند. اکنون می تواند به عنوان یک شی محلی استفاده شود. فراخوانیهایی که به آن صورت می گیرد به پیامهای SOAP ترجمه می شود و توسط HTTP به سرویس وب راه دور فرستاده می شود.
با استفاده از IDE ویژوال استودیو .NET، توسعه دهندگان فقط نیازدارند یک ارجاع وبی[۲۳] به برنامه کاربردی اضافه کنند، که به طور شفافی[۲۴] کلاس proxy سمت client ای را ایجاد می کند.
۷-۲-۴) انتشار و سرویس وب کشف
وقتیکه یک سرویس وب پیاده سازی شد، توسعه دهنده می تواند از طریق UDDI سرویس خود را ثبت کند. UDDI، "صفحات زرد[۲۵]" سرویسهای وب می شود. که مخزن و دایرکتوری برای سرویسهای وب منتشر شده می باشد. Clientهای بالفعل می توانند سرویس را از طریق این صفحات جستجو کنند. اطلاعات دقیق در این زمینه در منبع]۱[ آمده است: چگونگی انتشار یک سرویس وب، فرمت مورد استفاده و چگونگی یافتن یک سرویس وب خاص.
سرویس وب عمداً برای کاربران نهایی توسعه داده نشده است. سرویس وب نیاز به واسطی دارد که کاربرپسند باشد تا آن را به کاربر نهایی عرضه کند. سرویس وب می تواند تمام clientهای مختلف مثل clientهای ویندوزیا clientهای مبتنی بر وب را داشته باشد. سرویس وب دیگر می تواند client باشد. برای کاربران نهایی، یک برنامه کاربردی تحت وب دارای فایده های زیادی نسبت به دیگر انواع client می باشد، اولاً، از تکنولوژی مرورگر می توان استفاده کرد. ثانیاً، توزیع تجدید نظرها "سریعتر، آسانتر، و ارزانتر"]۴[ می باشد.
این پروژه یک برنامه کاربردی با استفاده از فرمهای وب توسعه داده است. برنامه های کاربردی وب یک برنامه کاربردی مبتنی بر وب می باشند که به کاربر امکان دسترسی به آن از طریق مرورگرهای استاندارد را می دهد. در سرور وب اجرا می شود.
۷-۳) برنامه کاربردی وب ASP .NET
برنامه کاربردی وب Asp .NET شامل فرمهای وب و تگهای HTML استاندارد می باشد. توسعه دهندگان می توانند از ابزار کنترلی کشیدن و رها کردن[۲۶] برای طراحی صفحات وب اسافاده کنند. این برنامه کاربردی در سرور وب به کار گرفته می شود. کاربر از طریق مرورگر استاندارد به آن دسترسی دارد.
۷-۳-۱) معماری برنامه کاربردی وب ASP .NET
جداکردن واسط کاربر (دید طراحی) از کد (منطق کاری)، مخصوصاً با برنامه های کاربردی پیچیده مفید می باشد. زمانیکه از ویژوال استودیو .NET برای توسعه یک فرم وب استفاده می شود، کد همواره به صورت یک فایل متفاوت ذخیره می شود. کلاس موجود در فایل کد از کنترل واسط کاربر که یک فایل aspx می باشد، ارث می برد.
۷-۴) ADO .NET
محیط .NET مجموعه ای از اشیائی که می توانند با پایگاه داده ارتباط برقرار کنند، را فراهم می کند. به ترکیب این کلاسها، ADO .NET گفته می شود]۳[.ADO .NET یک معماری داده می باشد، که به XML متصل شده است و دارای تسهیلاتی برای کار با پایگاه داده می باشد.
ADO .NET دسترسی سازگار با منابع داده ای چون Microsoft SQL Server، به همراه منابع داده ای عرضه شده از طریق OLE DB و داده مبتنی بر XML را فراهم می کند. برنامه های کاربردی می توانند از ADO .NET برای اتصال به این منابع داده ای استفاده کنند و داده را بازیابی، دستکاری، و بهنگام کنند]۵[.
● نتیجه گیری
این مدلسازی علمی فرایند، به نشریه ها در کشف تواناییهای پیاده سازی عمل انتشار یک نشریه علمی کمک می کند. مطالب ارائه شده در این مقاله به عنوان بنیادی به کار می رود که از طریق آن با اتحاد تکنولوژی و انتشار علمی، ارتباطات و انتشار دانش افزایش می یابد. همچنین امید است که نشریه ها با به کار گیری سیستمی که در طول این پروژه توسعه یافته سازمان ومدیریت فرایند انتشار را بهبود دهند، هدف این است که فرایندهای انتشار را کاراتر کند و هزینه های انتشار آنها را کاهش دهند.
سراج الدین کاتبی
Email: katebi@shirazu.ac.ir
استاد گروه مهندسی کامپیوتر
راضیه طاهری
Email: taheri_r۸۰@yahoo.com
دانشجوی کارشناسی ارشد دانشکده فنی مهندسی دانشگاه شیرازدانشگاه آزاد اسلامی واحد نجف آباد
پانوشتها
[۱] Integrated Development Environment (IDE)
[۲] Stored Procedures
[۳] Remote Method Implementation
[۴] Visual Basic
[۵] Business functions
[۶] Business transactions
[۷] Low-level functions
[۸] System service functions
[۹] interface
[۱۰] Component-based development(CBD)
[۱۱] Object Oriented Analysis and Design(OOAD)
[۱۲] third party
[۱۳] end user
[۱۴] marshaling
[۱۵] un-marshaling
[۱۶] remote method call
[۱۷] Reminder
[۱۸] well defined
[۱۹] stateless
[۲۰] transaction
[۲۱] caller
[۲۲] plain text
[۲۳] web reference
[۲۴] transparently
[۲۵] Yellow Pages
[۲۶] drag and drop
فهرست منابع :
[۱] Banerjee, Ashish, et al ۲۰۰۱, C# Web Services, Building Web Services with .NET Remoting and ASP.NET, Chicago:Wrox Press
[۲] Brown, Alan, Johnston, Simon, Kelly, Kevin, ۲۰۰۲, Using Service-Oriented Architecture and Component-Based Development to Build Web Service Applications, Rational Software Corporation
[۳] Cazzulino, Daniel, ۲۰۰۲, Beginning C# Web Applications with Visual Studio .NET, Wrox Press
[۴] Liberty, Jess, ۲۰۰۲, Programming C#, Building .NET Applications, Sebastopol: O’Reilly & Associates
[۵] Microsoft Article, “NET Framework Developer’s Guide: Design Goals for ADO .NET,” Available HTTP:
http://msdn.microsoft.com/library/default.asp?url=/library/en- us/cpguide/html/cpconwhyadonet.asp
منبع : نما مجله الکترونیکی پژوهشگاه اطلاعات و مدارک علمی ایران


همچنین مشاهده کنید