نرم افزار رای گیری آنلاین UML بخش پانزدهم
طراحي معماري ، واسط و سطح مولّفه سیستم رای گیری آنلاین
طراحي معماري و ساختار پيمانه اي
طراحي معماري
نشاندهنده ساختارداده ها و مولفه هاي برنامه اي که براي ايجاد سيستم کامپيوتري مورد نياز است مي باشد .
معماري نهائي سيستم
ساختار و خصوصيات مولفه هاي سيستم
و روابط بين مولفه هاي معماري سيستم
در طراحي معماري نشان داده مي شوند .
مراحل انجام طراحي معماري
1) نگاشت تبديلها و تراکنشها
بر اساس آنچه در قسمت نحليل نيازها انجام شده و با توجه به DFD هاي موجود نگاشت تبديلي و تراکنشي را مرحله به مرحله انجام مي دهيم .
2) گزارش پيمانه ها
در اين مرحله براي هر يک از پيمانه هايي که در مرحله قبل معرفي شده اند ، گزارشي مختصر در مورد آنچه در آنها انجام مي شود ، چگونگي ارتباط آنها و طريقه ارسال داده ها توضيح مختصري داده مي شود .
3) تعريف و توضيح واسط هر پيمانه
در اين مرحله براي هر يک از پيمانه ها يک واسط طراحي مي شود ، که سرويسهاي ارائه شده توسط هر پيمانه را مشخص مي نمايد .
4) ساختارهاي داده محلي و سراسري
قالب داده ها و فرمت استاندارد ساختارهاي داده اي محلي ، سراسري و پيامهاي ارسال شده در اين قسمت تعيين مي شود .
5) محدوديتهاي طراحي معماري
در اين قسمت همه محدوديتها (limitations or constraints ) يي که اثر مهمي بر طراحي سيستم دارند ذکر مي گردند .
اين محدوديتها مي توانند بوسيله هريک از عناصري که در ادامه مي آيد ، بوجود آيند :
محيط سخت افزاري و نرم افزاري
محيط کاربر نهايي (end-user )
در دسترس بودن و اعتبار منابع
مطلوبيتها (compliance) استاندارد
نيازهاي Interoperablity
نيازهاي واسط/پروتکل
نيازهاي توزيع و تجميع داده اي (Data repository and distribution)
نيازهاي امنيتي
محدوديتهاي حافظه يا گنجايش ديگر تجهيزات
محدوديتهاي کارايي
ارتباطات شبکه
نيازهاي تست نرم افزار (Verification & Validation)
ديگر وسايل کيفيت آدرس دهي
ديگر نيازهايي که در مشخصه نيازها توصيف شده اند .
مجموعه بازنگريها و اصلاح
فرآيند طراحي ، يک فرآيند تکراري است ، که در آن هر بار اصلاحات در طراحي قبلي انجام مي گيرد . بنابراين شايسته است براي اگاهي از مراحل مختلف ان نمودارها و طراحيها در step هاي مختلف اورده شوند تا روند تکامل طراحي مشخص گشته از بروز خطاها در مراحل بعدي توليد جلوگيري گردد و اشکالات به صورت واضحتري ديده شوند . همچنين باز نگري نهايي براي همخواني کليه قسمتهي طراحي امري لازم به نظر مي رسد .
معماري در ســــاده ترين شكل خود عبارت است از ساختار سلسله مراتبي اجزاء برنامه(پيمانه ها)، شيوة ارتباط اين اجزاء و ساختار داد ه هايي كه توسط اجزاء مورد استفاده قرار مي گيرند.در ايجاد اين معماري بايد ابتدا معماريهاي نرم افزار سمت سرور و مشتري را از هم تفکيک نمود و براين اساس معماري کلي دو نرم افزار را به تفکيک از هم نشان داد . براي اين منظور ابتدا بايد DFD هاي مجددي تنظيم نمود که در آنها جريان داده در نرم افزار هاي سمت سرور و مشتري به شکل جداگانه و منفک نشان داده شده باشند و سپس از روي آن طبق مراحل هفت گانه نگاشت تبديل و تراکنش را انجام داد .
گزارش پيمانه ها
در اين مرحله به گزارش آنچه در هر يک از پيمانه ها انجام مي شود مي پردازيم :
نرم افزار کارگزار راي گيري الکترونيکي
تنظيم ليست نامزدها و تنظيمات اوليه
در اين پيمانه ليست نامزدها توسط admin سرور ، از طريق واسط پانل کنترل تنظيم و در پايگاه داده ذخيره مي گردد . مواردي از قبيل الگوريتم رمز نگاري و احراز هويت نيز در اين مرحله توسط Admin تعيين مي شود . تا زمانيکه اين مرحله انجام نشود سرور براي ارائه خدمات به کاربران آماده نيست.
احراز هويت کاربر
در اين مرحله به احراز هويت کاربر پرداخته مي شود . و نتيجه براي کاربر فرستاده مي شود . چنانچه کاربر از عهده اين مرحله برنيايد و هويتش تاييد نشود ، سرور ارتباط را به صورت يکطرفه قطع خواهد نمود . سه پيمانه جداگانه مسئول انجام اين اعمال هستند ،که پيمانه فوق با احضار آنها کار خود را انجام مي دهد .
تمهيدات احراز هويت کاربر
در اين مرحله کليه اعمالي که لازم است براي احراز هويت انجام شود ، از قبيل ارسال رشته تصادفي ، رمز کردن با استفاده از کليد عمومي کاربر و ... انجام مي پذيرد . توصيف کامل اين مرحله در بخش طراحي مولفه مي آيد .
ارسال نتيجه احراز هويت کاربر
پس از آنکه احراز هويت انجام شد نتيجه در قالب پيامي که نشاندهنده تاييد يا عدم تاييد هويت کاربر است به او ارسال مي گردد . با استفاده از نتيجه اي که اين مرحله به پيمانه احراز هويت کاربر مي فرستد ، تصميم گيري در مورد انتقال کنترل انجام مي شود ، که در صورت تاييد انتقال کنترل به مرحله اثبات هويت سرور ( با برگرداندن نتيجه درست به پيمانه اصلي ) و در صورت عدم تاييد به مرحله عدم تاييد هويت کاربر منتقل مي شود . نکته مهم اين است که پيام ارسال شده در اين مرحله قالب استانداردي داشته باشد ، تا نسخه هاي مختلف مشتري بتوانند از اين سرور استفاده کنند . ( يعن نرم افزار مشتري بتوند توسط هر کسي توليد گردد . )
عدم تاييد هويت کاربر
چنانچه در مرحله قبل هويت کاربر تاييد نگردد ، کنترل به اين مرحله منتقل مي شود ، که در آن تنها کاري که انجام مي شود اين است که ارتباط به صورت يکطرفه قطع مي گردد و کنترل به واسطه خروجي ارسا از اين مرحله به مرحله انتظار براي ارتباط کاربر باز مي گردد . اين مرحله که در معماري اوليه لحاظ نشده در قسمت اصلاح اضافه مي گردد .