Планирани разработки
През последните години стана ясно, че е от съществено значение да бъде открит начин, по който различните софтуери, хардуери и източници на данни да работят гладко помежду си, или казано по друг начин как да бъде постигната интероперативност. Flat файлови формати (текстови файлове) играеха ролята на фоусна точка в търсенето на интероперативност. Направени бяха много опити да се осигури стандартен формат данни, но никой от тях не бе широко възприет. Една от ключовите концепции в резултат на тези усилия бе установяването на важната роля на метаданните – данни за данните. Търсените артибути на данните могат да бъдат строго определени чрез използването на подходящ метаезик. Метаезикът е използваем от машина, а програма, която няма никаква предишна информация за определена съвкупност от данни е в състояние да чете информацията и да я използва за разбор на данните. Предимството на този подход се състои в това, че един метаезик може да бъде използван да дефинира атрибутите на широк диапазон от различни съвкупности от данни. Изискванията за дадена спецификация бяха обект на много спорове, като целите се концентрират по-скоро върху детайлите по изпълнението, отколкото върху това как точно тези деатйли са употребени. Това доведе до разработката и приложението на множество различни езици за дефиниране в сферата на биологичните изследвания, като те са или специфично проектирани да описват биологични данни (SDDL) или са по-общи езици за дефиниране (ASN.1, CIF, ACE, OPM). При всички случаи поддръжката на тези езици и свързаните с тях софтуерни инструменти се изпълнява от отделни групи специалисти в допълнение към останалите им дейности.
Изискването за интероперативност не е ново в биологията. Други сфери на науката, които в голяма част са свързани с информатиката също са си поставяли такива цели. Може би най-значим принос в тази насока има Object Management Group (OMG). OMG е световен консорциум, чиято постоянно увеличаваща се членска маса включва на практика всички най-големи търговски софтуерни компании в сферата на информационните технологии. През последните няколко гоидни OMG и членовете й дефинираха отворен стандарт CORBA. Този стандарт включва спецификациите за най-важните елементи, които заедно формират обща обектно-ориентирана рамка, осигуряваща отворена среда, в която разпределените приложения могат да работят заедно. CORBA V. 2.0 включва следното:
Eзик за Интерфейсни дефиниции (IDL) – независим език за дефиниции, който се използва за
специфицирането на данните като обекти и на интерфейсите, свързани с тези обекти
Object Request Broker (ORB) – посредник при запитвания за обекти – главният елемент, който управлява
заявките между клиентските приложения и обектните изпълнения. ORB изолира приложенията от механизмите
за комуникация и управление на обектните интерфейси. Множество ORB –и, разпределени в мрежа работят в
унисон за осигуряването на единен вид на наличните интерфейси, без значение от тяхното местоположение и
изпълнение. Това означава, че разпределените приложения работят само с обектните интерфейси. Не е задълижтелно
основните инплементации да са обектно-ориентирани, те само трябва да осигуряват обектен слой, който да е
достижим от ORB –а и този слой трябва да отговаря на интерфейсната дефиниция.
Interface Repository (IR) – интерфейсен склад (хранилище на интерфейси) – управлява детайлите на
съществуващите интерфейсни дефиниции
Dynamic Invocation Interface (DII) – динамично извикван интерфейс – стандартен интерфейс,
който позволява на приложения, непознати на съществуващите интерфейсни дефиниции да правят заявки
към интерфейсното хранилище и да определят какви обекти и интерфейси са налични.
Общи обектни услуги (Common Object Services, CORBA services) сбор от стандартни спецификации
за сродни услуги, включващ обектния жизнен цикъл, постоянство, именуване, събития, конкурентност,
транзакции, връзки и формализация.
Съществуват множество ORB -и, които работят със стандарта. Този отворен стандарт се използва от голям брой специалисти, разработващи софтуер извън сферата на биологията и се разработват множество нови приложения, които се очаква да бъдат завършени в близкото бъдеще. Тези проекти предлагат перспективата, при която приложения от различни разработчици ще могат да сработват заедно.
Исторически погледнато, опитите да за постигане на съвместимост при стандартизацията често са се проваляли поради твърде голямата цел: опит да бъдат съгласувани детайлни стандарти за всички аспекти на комплексните системи. Големият успех на обектно-оринтираните методи дойде отчасти от разбирането, че стандартизация може да бъде постигната чрез стандартизация само на съобщенията между обектите, а не на техните вътрешни детайли. Разбирането на CORBA в тази насока е че трябва да бъдат стандартизирани само онези аспекти, които са ключови за съвместимостта, чрез осигуряването на език (IDL), който да специфицира интерфейсите на обектите, като оставя най-голяма автономия на тяхното изпълнение. Могат да бъдат добавени интерфейсите за нови обекти , а съвествуващите могат да бъдат подобрени. По този начин се осигурява много гъвкав и динамичен подход, който ще има възможност да отрази нашето разбиране за биологията и структурата на биологичната информация. Няма изисквания за стандарти на множество други фактори (flat file формат, местоположение, език за програмиране, операционна система и т.н.)
Съгласието да се използват IDL спецификациите може да баде сравнено с това някой, който използва WWW да се съгласи с уптребата на HTML. За разлика от HTML, IDL дефиницията сама по себе си не съдържа данни. Вместо това той определя какви са данните и какви са възможните операции с тези данни. Тази нова концепция в развитието на разпределените приложения позволява недостатъците в www да бъдат преодоляни и представя нов концептуален подход към интероперативността на базите данни. Сравнен с останалите подходи този има много предимства:
Източникът на данни остава непокътнат. Необходимо е
преустройството на вътрешното представяне във външен формат като HTML.
По всяко време могат да бъдат добавени допълнителни източници на данни. Техните интерфейси се добавят към
вече съществуващите такива.
Комуникацията между независимите източници може да бъде автоматизирана, не е необходима човешка намеса.
Доставчикът на услуги трябва само да позволява механизъма за процедурен достъп, който може да бъде изразен в IDL.
![]() |
Фигура 1 |
На фигура 1. е показана схема, която отразява модулната структура на CORBA и как си взаимодействат инплементациите и приложенията. Проектът е изграден в основни линии от два кoмпонента : осигуряването на данни през обектните интерфейси (1, 2) и включването на допълнителни услуги (4, 5) и клиентски приложения (3).