Προμήθειες COTS (Commercial-Off-The-Self)

Με τον όρο «COTS» εννοούμε αντικείμενα εμπορικά (απο το ράφι, όπως λέγεται) τα οποία δέν έχουν σχεδιαστεί και αναπτυχθεί ειδικά για τις δικές μας ανάγκες αλλά για μιά ευρύτερη κατηγορία. Πςριλαμβάνουν από απλά «εργαλεία» έως σύνθετες και ολοκληρωμένες λύσεις. Σε κάθε περίπτωση διαπιστώνεται η παρουσία τριών κοινών χαρακτηριστικών δηλ. της δυναμικής του προϊόντος στην αγορά, των  κανόνων που εφαρμόσθηκαν στη σχεδίασή του και της μεθοδολογίας του «μαύρου κουτιού» (black box) που ακολουθείται και που πρέπει να υιοθετηθεί από τον χρήστη. Ένα προϊόν COTS παρουσιάζει, από την ανάπτυξή του, προκαθορισμένες δυνατότητες. Αποκτάται μέσω της διαδικασίας υπογραφής συμβάσεως και χρησιμοποιείται «ως έχει» χωρίς π.χ να παρέχεται ο πηγαίος κώδικας (source code) ή τεχνογνωσία κατασκευής και με ανάληψη της ευθύνης για τη συντήρησή του από τον προμηθευτή. Οι δυνάμεις της αγοράς καθορίζουν την ανάπτυξη, τις δυνατότητες και σε τελευταία ανάλυση την χρήση των πακέτων COTS. Η μεγάλη ποικιλία τέτοιων προϊόντων μπορεί να καλύψει ευρύ φάσμα απαιτήσεων εφαρμογών ενώ έχει τη δυνατότητα χρησιμοποιήσεως της σε μεγάλο αριθμό από διαφορετικές βάσεις υλικού (hardware).
Πρέπει να ληφθεί υπόψη ότι η χρήση COTS ίσως δεν είναι πάντοτε η περισσότερο αποτελεσματική λύση σε σχέση με το κόστος. Κάθε περίπτωση πρέπει να εξετάζεται ξεχωριστά και να εντοπίζονται τα πιθανά πλεονεκτήματα-μειονεκτήματα σε σχέση με τις επιχειρησιακές απαιτήσεις του στρατιωτικού χρήστη.

Πλεονεκτήματα:

  1. Διαθεσιμότητα και ωριμότητα προϊόντος.
  2. Χρήση τελευταίας τεχνολογίας (state-of-the-art)
  3. Ενσωμάτωση υπάρχουσας εμπειρίας και παροχή εξωτερικής υποστήριξης.
  4. Μείωση απαιτουμένων μέσων και χρόνου που αναλύεται σε:
  • Συνολική μείωση κόστους για την εξασφάλιση συγκεκριμένων δυνατοτήτων.
  • Μείωση χρόνου μέχρι τη φάση λειτουργίας ενός συστήματος (χρονική μείωση του κύκλου ανάπτυξης).
  1. Εξάρτηση από τον προμηθευτή/αγορά
  2. Πιθανή ανάγκη μετατροπών και συμβιβασμών στις απαιτήσεις του χρήστη προκειμένου να υιοθετηθεί συγκεκριμένο πακέτο COTS.
  3. Αδυναμία ή μη πλήρης δυνατότητα ενσωμάτωσης νέων πακέτων λογισμικού σε ήδη υπάρχον σύστημα.

Τα παραπάνω συναντώνται σε κάθε περίπτωση προμήθειας προϊόντων COTS και είναι απαραίτητο να εξετάζονται με ιδιαίτερη προσοχή γιατί οι παρεχόμενες τελικά δυνατότητες είναι κυρίως αποτέλεσμα των δυνάμεων της αγοράς και όχι των πραγματικών απαιτήσεων όπως καθορίζονται από τους χρήστες.

ΠΡΟΜΗΘΕΙΑ ΣΥΣΤΗΜΑΤΩΝ COTS

Στρατηγική Προμήθειας:

  • Έλεγχος για την ανεύρεση της χρυσής τομής ανάμεσα σε προκαθορισμένες απαιτήσεις και προσφερόμενες δυνατότητες COTS. Ένα γενικώς αποδεκτό αποτέλεσμα οδηγεί στη γνωστή σαν «80% λύση».
  • Έλεγχος της εγκυρότητας του διατιθέμενου προϊόντος με την ύπαρξη συγκεκριμένης ταυτότητας, πλήρους περιγραφής χαρακτηριστικών/ δυνατοτήτων και θέσης στους καταλόγους της αγοράς.
  • Εκτίμηση δυνατοτήτων προϊόντος και φερεγγυότητας προμηθευτή μέσω προεπιλεγμένων κριτηρίων.
  • Προσδιορισμός τυχόν νομικών επιπλοκών, κυρίως σε θέματα τιμής, δικαιώματα ιδιοκτησίας και υποστήριξης, ώστε να εξασφαλισθεί το μέγιστο όφελος για την υπηρεσία.
  • Καθορισμός συγκεκριμένης διαδικασίας για την επιλογή και τον ποιοτικό έλεγχο των COTS προϊόντων ώστε να εξασφαλίζονται μέγιστη ποιότητα και ανταπόκριση στις απαιτήσεις.
  • Καθορισμός μηχανισμών και σχεδίου ενσωματώσεως και ελέγχου (test) ώστε να εξασφαλισθεί η πλήρης συνεργασία με το ήδη υπάρχον λογισμικό στο σύστημα.
  • Καθορισμός μέτρων και μέσων για την υποστήριξη των προϊόντων κατά τη διάρκεια του κύκλου ζωής τους.

Έρευνα Αγοράς:

Η σωστή έρευνα αγοράς αποτελεί σημαντική προϋπόθεση για επιτυχία στην προμήθεια προϊόντων COTS. Χρήσιμη θεωρείται η δημιουργία Τράπεζας Πληροφοριών που θα περιλαμβάνει κάθε χρήσιμο στοιχείο για τη διευκόλυνση της διαδικασίας έρευνας και επιλογής. Επιπλέον ένα καλά δομημένο και σαφές ερωτηματολόγιο που να βασίζεται σε συγκεκριμένα κριτήρια αξιολόγησης για υποψήφια, προς αγορά προϊόντα αποτελεί χρήσιμο βοήθημα.

Κριτήρια Εκτίμησης, Επιλογής, Αξιολόγησης:

  • Καθορισμός κριτηρίων σύμφωνα με τις ανάγκες του προγράμματος και μετά από σαφή ορισμό των, προς ικανοποίηση, απαιτήσεων.
  • Συλλογή στοιχείων, για κάθε περιοχή ενδιαφέροντος, με έρευνα αγοράς μέσα από σύνταξη ερωτηματολογίων ή άλλων πρόσφορων μεθοδεύσεων.
  • Χρήση μοντέλων κόστους/αποτελεσματικότητας, έτοιμων ή μετά από ανάπτυξη, για την αξιολόγηση της λειτουργικότητας και αποδόσεως του προϊόντος σε συνάρτηση με το κόστος του.
  • Καθορισμός πρωτευουσών (βασικών) και δευτερευουσών απαιτήσεων, με σύνταξη καταλόγου προτεραιότητας για τις δεύτερες, ώστε ν’ αντιμετωπισθεί το ενδεχόμενο κάποιου συμβιβασμού. Τα προϊόντα συγκρίνονται, έτσι, ως προς τις κύριες απαιτήσεις και επακολουθεί διάλογος (trade-off) για τις λοιπές.
  • Ανάληψη διαδικασιών για έλεγχο της «ωριμότητας» των προϊόντων με προτίμηση εκείνων, που είναι γενικώς αποδεκτά και χρησιμοποιούνται από ικανό αριθμό πελατών. Πρέπει ν’ αποφεύγονται νέα προϊόντα, μη πλήρως αξιολογημένα ως προς την απόδοσή τους.
  • Συμβατότητα των προϊόντων με τα πρότυπα που έχουν τεθεί στο μέγιστο δυνατό, χωρίς υπερβολές που μπορεί να οδηγήσουν σε περιορισμένες επιλογές εις βάρος του κόστους/αποτελεσματικότητας.
  • Έλεγχος συμβατότητας προϊόντων με τα τεθέντα πρότυπα από τον ίδιο τον αγοραστή, από τρίτο μέρος ή με απαίτηση παροχής επισήμων πιστοποιητικών από τον προμηθευτή, κατά περίπτωση και ανάλογα με τις υπάρχουσες δυνατότητες.
  • Έλεγχος αξιοπιστίας προϊόντων μέσω στοιχείων που υπάρχουν (στατιστικών κλπ) από προηγούμενες χρήσεις τους. Εξετάζονται ο τρόπος λειτουργίας (π.χ μέσω ειδικών μόνο εντολών), οι απαιτήσεις μνήμης, τυχόν περιορισμοί στην ανταλλαγή πληροφοριών με άλλα προϊόντα, η επίδραση στη συνολική απόδοση του συστήματος και τέλος οι απαιτήσεις σε μέσα.
  • Έλεγχος αποδόσεως με αξιολόγηση κρισίμων παραμέτρων όπως οι χρόνοι απόκρισης και οι απαιτήσεις για την επίτευξη μέγιστων αποδόσεων, π.χ περιορισμοί μνήμης.
  • Αξιολόγηση της προσφερόμενης με το προϊόν τεκμηρίωσης. Παρέχει το προϊόν εύκολη και γρήγορη βοήθεια «on-line» στους χρήστες ; Υπάρχουν πινακίδια/περιγράμματα ή προκαθορισμένα σύνολα εντολών ώστε ο χρήστης να υποστηρίξει συγκεκριμένες ανάγκες του ;
  • Σύγκριση τιμών, από διαφορετικούς προμηθευτές, στις οποίες θα λαμβάνεται υπόψη και το κόστος για ενσωμάτωση, υποστήριξη και συντήρηση του νέου προϊόντος σαν συνολικά προσφερόμενο πακέτο.
  • Υπογραφή συμβολαίων με σαφείς όρους που να καθορίζουν το δυνατόν ελαστικότερες ρυθμίσεις προς όφελος της υπηρεσίας. Επιπλέον να υπάρχει κάθε δυνατή πρόβλεψη για την αντιμετώπιση πιθανών μελλοντικών προβλημάτων και αξιόπιστης συντήρησης.

Ασφάλεια:

  • Προτεραιότητα στην επιλογή προϊόντων που έχουν αποδειχθεί ασφαλή σε παρόμοια περιβάλλοντα. Προϊόντα, ακόμα και πλήρως ελεγμένα, θα πρέπει να χρησιμοποιούνται με αυστηρά ελεγχόμενο τρόπο.
  • Επιδίωξη εξασφάλισης πλήρους πληροφόρησης των χαρακτηριστικών του προϊόντος, από τον προμηθευτή, που να επιτρέπει εντοπισμό όλων των λειτουργιών του και ελέγχους ακεραιότητας ώστε να διαπιστωθούν τυχόν παράνομες παρεμβάσεις (π.χ προσθήκη ιών διαφόρων μορφών).
  • Eλεγχος συμβατότητας προϊόντων με βάση τα καθορισμένα πρότυπα ασφαλείας.

Ενσωμάτωση -Ολοκλήρωση Συστήματος και Έλεγχος:

  • Καθορισμός πλαισίου ενεργειών και ελέγχων για ενσωμάτωση COTS και μη COTS προϊόντων σε ενιαίο σύστημα με απαιτήσεις συνεργασίας μεταξύ τους .
  • Προσπάθεια περιορισμού της χρήσης διαφορετικών τύπων πακέτων λογισμικού στο ίδιο σύστημα.
  • Η επιλογή του φορέα που θα επιχειρήσει την ενσωμάτωση και ολοκλήρωση του συστήματος, του βαθμού της ολοκλήρωσης (απλή συνεγκατάσταση πακέτων Λογισμικού, συνεργασία μεταξύ διαφορετικών λογισμικών, πλήρης ολοκλήρωση) και του χώρου που θα υλοποιηθεί, εξαρτώνται από τον αριθμό των υποσυστημάτων, τη συνθετότητά τους και τον αριθμό των διαφορετικών τύπων λογισμικού που χρησιμοποιείται.

Υποστήριξη Κύκλου Ζωής:

  • Αυστηρός καθορισμός ευθυνών και συμμετοχής για τα συμβαλλόμενα μέρη. Εξασφάλιση πλήρους υποστήριξης από τον προμηθευτή για την επιδιόρθωση βλαβών μετά από κλήση ή με «on-line» σύνδεση κλπ, εντός συγκεκριμένου χρόνου.
  • Να μην επιχειρείται επέμβαση σε λογισμικό COTS χωρίς προηγούμενη άδεια του προμηθευτή ή πλήρη γνώση των πιθανών επιπτώσεων τόσο από λειτουργικής όσο και νομικής πλευράς.
  • Αναζήτηση επαρκών στοιχείων για την κατάσταση του προμηθευτή και κυρίως αν διαθέτει πλήρη και σταθερή υποδομή για ανάληψη έργων υποστήριξης και συντήρησης.
  • Σε περίπτωση εμπλοκής και τρίτου μέρους στη διαδικασία προμήθειας, να εξετάζονται οι σχέσεις των εμπλεκομένων μεταξύ τους κυρίως εάν κάποιος διαθέτει/υποστηρίζει προϊόντα που παράγει κάποιος άλλος.
  • Σε περιπτώσεις νέων εκδόσεων (αναβαθμισμένων) του ίδιου προϊόντος, να εξετάζονται οι λειτουργικές επιπτώσεις στο σύστημα που υλοποιήθηκε καθώς και οι αντίστοιχες στο κόστος σε συνάρτηση πάντα με κόστος/αποτελεσματικότητα.
  • Πλήρης έλεγχος των μηχανισμών που προτείνονται από τον προμηθευτή για παροχή υποστήριξης στο προϊόν του. Πρέπει να εξασφαλίζεται ότι κάθε περιοχή υπηρεσιών θα ικανοποιεί τις απαιτήσεις του τελικού χρήστη.
  • Δημιουργία κατάλληλων μηχανισμών ελέγχου της συμβατότητας νέων προϊόντων, κατά τη διαδικασία ενσωμάτωσής τους, με ήδη υπάρχοντα. Διαπίστωση τυχόν επιπτώσεων στη διάρθρωση, απόδοση και κόστος του συστήματος.
  • Ανάλογα με τη συνθετότητα πρέπει να εξασφαλισθεί εκπαίδευση αρχική και προχωρημένη, με ευθύνη του προμηθευτή, για το προσωπικό ανάπτυξης και τους χρήστες του συστήματος.
  • Οι απαιτήσεις για εκπαίδευση θεωρούνται απαραίτητη προϋπόθεση για την προμήθεια κάποιου COTS προϊόντος και μάλιστα καθ’ όλη τη διάρκεια ζωής του, εφόσον απαιτηθεί, λόγω των νέων αναβαθμισμένων εκδόσεων του.
  • Η συνεχής εξέλιξη των προϊόντων COTS επιβάλλει προσεκτικό έλεγχο διάρθρωσης του συστήματος όταν απαιτείται. Σε κάθε νέα αναβάθμιση των προϊόντων συνιστάται να γίνεται ‘»εκτίμηση κινδύνου χρησιμοποίησής τους» (risk assessment). Ασυμβατότητες που εμφανίζονται αρκετά νωρίς είναι επιθυμητές γιατί προφυλάσσουν από μεγαλύτερους κινδύνους στο μέλλον.

Διάφορα:

  • Η απόκτηση έτοιμων COTS προϊόντων να επιχειρείται με γνώμονα την αρχή βελτιστοποίησης της σχέσης «προσφερόμενες δυνατότητες, υπάρχουσες απαιτήσεις, κόστος».
  • Αν το προσφερόμενο προϊόν έχει περισσότερες δυνατότητες από όσες απαιτούνται πρέπει να εξετάζονται οι παράγοντες : Οι επιπλέον δυνατότητες προσθέτουν κόστος ; Είναι το λογισμικό τμηματικής μορφής (modular) με ξεχωριστή κοστολόγηση κάθε τμήματος και πλήρως καθορισμένα υποσύνολα ;
  • Συνιστάται η χρήση λογισμικού επίδειξης «demo» ή υπό δοκιμή, πριν από κάθε αγορά, προκειμένου να δοθούν ευκαιρίες καλύτερης αξιολόγησής του.
  • Διαφορετικά πακέτα λογισμικού, προκειμένου να ολοκληρωθούν σε ενιαίο σύστημα, απαιτείται να υποστηρίζονται από τον ίδιο προμηθευτή και να είναι συμβατά με τα πρότυπα που καθορίστηκαν.