تتمثل الوسائل الثلاث الفعالة لتقليل
مخاطر التكنولوجيا في التحقق من النظام واختباره وصيانته. ينبغي إخضاع كل جانب من
جوانب نظام الحاسوب: الأجهزة والبرمجيات والاتصالات، للتحقق والاختبار الوافي قبل استخدامها
في الحدث الانتخابي. بعد اجتياز التجارب، ستحتاج الأنظمة إلى الصيانة الدورية للتأكد
من أنها ستعمل على نحو فعال عندما تكون هناك حاجة إليها.
الأرجح أن أهمية تطبيق التكنولوجيا هي
التي تحدد درجة الدقة التي تُتبع في التحقق من التكنولوجيا واختبارها وصيانتها . ففي
حالة الوظائف الانتخابية الحاسمة، على سبيل المثال، كالتصويت، ينبغي إخضاع جميع
مكونات نظام التصويت: الأجهزة والبرمجيات والاتصالات بشكل منتظم للصيانة ومن ثم
التحقق منها واختبارها قبل استخدام النظام في الانتخابات.
التحقق من النظام
بالنسبة للأنظمة الحساسة مثل نظام التصويت الإلكتروني، فإنه من
المستحسن الاستعانة بمكتب أو هيئة اختبار مستقلة لإجراء اختبارات التحقق من
النظام، أما في حالة الأنظمة الأخرى، فمن الممكن تطوير وإجراء خطوات
التحقق والاختبار الملائمة داخل المؤسسة.
قد تشمل اختبارات التحقق من النظام أو اختبارات التأهل:
- التحقق من أن جميع مكونات النظام وهي
المعدات والبرمجيات والاتصالات، قادرة على العمل في ظل الظروف العادية
المتوقعة وكذلك في ظل ظروف غير الطبيعية المحتملة، بما في ذلك، عند الاقتضاء،
بيئات التخزين والنقل والتشغيل والصيانة
- التحقق من أن الأجهزة تتوافق مع
متطلبات البيئة المحلية، بما في ذلك الموقع
الآمن والحيز والأثاث والتركيبات، وإمدادات الطاقة الكهربائية والمعدلات
العالية للحرارة والرطوبة والتلوث
- اختبار الأجهزة والبرمجيات
والاتصالات لضمان اتباع المعايير الملائمة والتأكد من أنها تؤدي وظائفها
المنشودة
- القيام بتدقيق الشفرة
- تدقيق وثائق النظام لضمان كونها
وافية وكاملة
- اختبار إجراءات أمن النظام لضمان تطبيقها،
وكفايتها، ومطابقتها للمعايير المناسبة
- التحقق من تطبيق تدابير ضمان الجودة
المناسبة
بالإضافة إلى
ذلك، تشمل إجراءات تدقيق البرمجيات:
- التحقق من أن الشفرة سليمة منطقياً
- التحقق من اتباع البرامج لتصميم
نمطي، بمعنى أن الشفرة تتألف من وحدات البرمجة السرية التي يمكن اختبارها
وتقييمها بشكل منفصل
- التحقق من عدم وجود شفرة "خفية"
تهدف إلى أداء وظائف غير مصرح بها
- التأكد من أن البرمجة واضحة
ومباشرة، وأن فهمها سهل نسبياً، وأنها تحتوي على تعليقات على الشفرة لتسهيل قيام
موظفين مختلفين بأعمال الصيانة
- التحقق من أن البرمجة مصممة لتسهيل الاختبار
بمعنى أنها تتضمن شفرة تسمح باختبار تدفق البيانات داخل وبين الوحدات
- التحقق من أن الشفرة قوية بما في
ذلك إجراءات معالجة الخطأ التي تمنع فقدان البيانات أثناء تحديد وتسجيل
والإبلاغ عن الأخطاء وذلك للسماح بإجراء الكشف السريع وتصحيح الأخطاء
- التحقق من أن الشفرة تضم السمات
الأمنية التي من شأنها منع الوصول غير المصرح به و/أو تكشف وتتحكم في أية
محاولات للوصول غير المصرح به
- التحقق من أن النظام سهل الاستخدام
ولا يتطلب إجراءات معقدة أو غامضة يصعب اتباعها
- التحقق من أن البرنامج يمكن تثبيته بسهولة
في البيئة الحية
- التحقق من أن البرنامج تسهل صيانته،
وأن الأخطاء أو العيوب يمكن التعرف عليها بسهولة، وتصحيحها والتحقق منها بعد التثبيت
- فحص ما إذا كان البرنامج يمكن
تعديله بسهولة لإضافة ميزات جديدة
بمجرد التحقق من
كل مكونات النظام، يصدر تقرير ويتعين اتخاذ التدابير الضرورية لتصحيح المشكلات
التي وجدت أثناء عملية التحقق. بمجرد الانتهاء من عملية التصحيح، يجب إجراء جولة أخرى
من التحقق.
اختبار
النظام
بعد أن يتم
التحقق من النظام، لا بد من اختباره بدقة لضمان أن كل عنصر من عناصر النظام يؤدي
دوره وفقاً للشروط المحددة، وأنه يعمل كما
ينبغي بما في ذلك عند طلب الوظائف الخاطئة أو عند إدخال البيانات الخاطئة .
تنطوي إجراءات
الاختبار على وضع مجموعة من معايير الاختبار إما للنظام بأكمله أو لعناصر معينة من
الأجهزة والبرمجيات والاتصالات. بالنسبة لنظام هام وحساس كنظام التصويت
الإلكتروني، يمكن وضع برنامج منظم لاختبار النظام لضمان أن جميع جوانب النظام قد
تم اختبارها.
تشمل إجراءات الاختبار
التي يمكن اتباعها:
- إجراء الاختبارات الوظيفية لتحديد
ما إذا كانت معايير الاختبار قد تم الوفاء بها
- إجراء عمليات التقييم النوعي
لتحديد ما إذا كانت معايير الاختبار قد تم الوفاء بها
- إجراء الاختبارات في ظروف "المختبر"
وإجراء الاختبارات في مجموعة متنوعة من ظروف "الحياة الواقعية"
- إجراء الاختبارات على مدى فترة زمنية
ممتدة لضمان اتساق أداء الأنظمة
- إجراء "اختبارات التحميل"،
مع محاكاة الظروف المحتملة – أقرب
ما يكون – عند استخدام أو تجاوز كميات
البيانات التي يُتوقع التعامل معها في المواقف الفعلية
يمكن أن تشمل
إجراءات اختبار الأجهزة:
- إجراءات الاختبارات
"غير التشغيلية" لضمان أن المعدات عند المستويات المتوقعة لها من حيث
التعامل المادي
- إجراء اختبار شفرة البرامج الثابتة
لضمان صحتها المنطقية واتباع المعايير المناسبة
وتشمل اختبارات مكونات البرمجيات :
- اختبار جميع البرامج
لضمان صحتها المنطقية واتباع المعايير الملائمة من حيث التصميم والتطوير والتنفيذ
- إجراء "اختبارات
التحميل"، مع محاكاة مجموعة متنوعة من ظروف "الحياة الواقعية" – بأقرب
صورة ممكنة – عند استخدام أو تجاوز كميات البيانات التي يمكن توقعها في المواقف
الفعلية
- التحقق من الحفاظ على سلامة
البيانات طوال عمليات التعامل معها
صيانة النظام
بعد أن يتم التحقق من الأنظمة
واختبارها وتنفيذها، لا بد من الاستمرار في صيانتها لضمان أنها لا تزال تعمل على
النحو الصحيح وأنها تستطيع التكيف مع المتطلبات الجديدة، إذا لزم الأمر.
قد تكون هناك حاجة إلى تنظيم عمليات المراقبة
و الاختبار المستمرة للنظام لضمان أن يتم تحديد احتياجات الصيانة وتلبيتها عند
الضرورة. في حالة الاستخدام الممتد للأنظمة، يمكن وضع آلية لرصد آراء المستخدمين وهي
وسيلة أخرى لتحديد مدى الحاجة إلى الصيانة والتعديل.
تختلف إجراءات الصيانة المنتظمة تبعاً
لنوع ودرجة تعقيد التكنولوجيا. تأتي العديد من المنتجات مصحوبة بجدول زمني أو
برنامج للصيانة توصي به الشركة المصنعة أو الموردة. بالنسبة لبعض الأجهزة
والبرمجيات، تتولى أعمال الصيانة الشركة المصنعة أو المورد كجزء من اتفاقية الشراء.
حيثما يتم إجراء التعديلات على الأجهزة والبرمجيات و/أو
الاتصالات نتيجةً للصيانة أو التحديثات، قد يكون من الضروري إجراء جولات أخرى من
التحقق من النظام واختباره للتأكد من أن الشروط تنطبق على نفس المواصفات أو على
المواصفات الأحدث.