دوشنبه, ۱۵ بهمن, ۱۴۰۳ / 3 February, 2025
طراحی و پیاده سازی یک نشریه علمی الکترونیکی با استفاده از معماری سرویس گرا
در اینجا مدلی برای ایجاد، مدیریت و نگهداری یک نشریه علمی الکترونیکی ارائه شده است که مبتنی بر معماری سرویس گرا می باشد این برای تهیه این چارچوب از مفاهیم و اصول توسعه شی گرا و مبتنی بر مولفه استفاده می شود. در سیستم تهیه شده، از معماری سه لایه ای استفاده شده است که عبارتند از لایه ارائه، لایه میانی و لایه منابع. در لایه ارائه، از برنامه های کاربردی تحت وب و سرویسهای وب، در لایه میانی، از زبان 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 برای ثبت و کشف سرویس وب .
۶) تحلیل و طراحی مجله علوم و تکنولوژی ایران
۶-۱) فرایند ارزیابی مقاله
۶-۲) توصیف فرایند
۱) مولف فرمهای مخصوصی که توسط سازمان به عنوان ضمیمه هایی برای تمام مقاله ها مورد نیاز می باشد را پر می کنند، یعنی عنوان مقاله، مشخصات مولف و غیره.
۲) مولف اقدام به ارسال مقاله از طریق فرمی که کامل کرده است، می کند.
۳) مقاله توسط سازمان دریافت می شود.
۴) سازمان یا به طور فیزیکی یا دیجیتالی مقاله را ذخیره می کند.
۵) در این مرحله، هیئت تحریریه تصمیم می گیرد که آیا باید با پذیرفتن مقاله مخالفت کرد، یا باید به مرحله داوری فرستاده شود، یعنی مقاله در زمینه هایی باید تجدیدنظرشود.
الف) اگر پذیرفته نشود، به مولف اعلام می شود.
ب) درغیر اینصورت، به مقالات تحت داوری اولیه می پیوندد.
۶) وقتیکه مقاله دریافت شد سازمان به مولف یک فرم رسید و یک فرم تعهد نامه ارسال می کند.
۷) مولف تعهد نامه امضا شده را برمی گرداند. مولف متعهد می شود که تا کنون مقاله را برای نشریه دیگری نفرستاده است در این مرحله همچنین از مولف خواسته می شود که حداقل هشت داور را که در موضوع مربوط به مقاله تخصص دارند را معرفی کند.
۸) داوران برای داوری مقاله انتخاب می شوند. این عمل به سه روش امکانپذیر است:
استفاده از داورانی که قبلاً مقاله یا مقالاتی را داوری کرده اند و لیست آنها در فایل داوران موجود است.داورانی که خود مولف معرفی کرده است.
داورانی که توسط اعضای هیئت تحریریه و یا اشخاص مورد تایید نشریه برای داوری انتخاب شده اند.
۹) فرم درخواست داوری به همراه کپی مقاله و فرم داوری به داوران برگزیده ارسال می شود. در اینجا ممکن است یکی از حالات زیر اتفاق بیفتد:
در صورت عدم تمایل به این کار سازمان را مطلع می کند در این صورت نیاز است داور دیگری برای مقاله انتخاب شود.
در صورت جواب ندادن یک داور در مدت مشخصی به وی یاد آور[۱۷] ارسال می شود.
اگر داور درخواست داوری را پذیرفت، ایرادات مقاله را در فرم داوری ویژه ای، موارد لازم را توضیح می دهد و گزارشی را بر می گرداند.
سراج الدین کاتبی
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
ایران مسعود پزشکیان دولت چهاردهم پزشکیان مجلس شورای اسلامی محمدرضا عارف دولت مجلس کابینه دولت چهاردهم اسماعیل هنیه کابینه پزشکیان محمدجواد ظریف
پیاده روی اربعین تهران عراق پلیس تصادف هواشناسی شهرداری تهران سرقت بازنشستگان قتل آموزش و پرورش دستگیری
ایران خودرو خودرو وام قیمت طلا قیمت دلار قیمت خودرو بانک مرکزی برق بازار خودرو بورس بازار سرمایه قیمت سکه
میراث فرهنگی میدان آزادی سینما رهبر انقلاب بیتا فرهی وزارت فرهنگ و ارشاد اسلامی سینمای ایران تلویزیون کتاب تئاتر موسیقی
وزارت علوم تحقیقات و فناوری آزمون
رژیم صهیونیستی غزه روسیه حماس آمریکا فلسطین جنگ غزه اوکراین حزب الله لبنان دونالد ترامپ طوفان الاقصی ترکیه
پرسپولیس فوتبال ذوب آهن لیگ برتر استقلال لیگ برتر ایران المپیک المپیک 2024 پاریس رئال مادرید لیگ برتر فوتبال ایران مهدی تاج باشگاه پرسپولیس
هوش مصنوعی فناوری سامسونگ ایلان ماسک گوگل تلگرام گوشی ستار هاشمی مریخ روزنامه
فشار خون آلزایمر رژیم غذایی مغز دیابت چاقی افسردگی سلامت پوست