SOA проектът ми по информатика

През последната година се занимавах с един проект към университета. Уча за бакалавър по изчислително инженерство, но това въобще не пречи да сложат проект за магистър в програмата ми. Целта на проекта е да ни покаже какво е да се работи в реални условия и да ни научи на някой тънкости около организацията, документацията и проблемите около подобни проекти. Затова се разделяме на групи от по 6-8 човека и всяка си избира какъв проект да прави. Темите за проектите се представят от фирми всяка година на един импровизиран панаир. На него също така се представят и готовите проекти от миналата година. Обикновено в рамките на тези проекти се разработва или се доразвива софтуер, от който конкретна фирма има нужда. Също така, обикновено този софтуер е по-скоро експериментален и евентуално става база за по-сериозни разработки.

mt_logo_200.png Темата, която ние избрахме, беше SOACity на Software AG. Въпреки че представянето им беше бегло, разбрахме за какво става дума. Аз гласувах за този проект основно, защото вече работех в Software AG и бях запознат с технологиите и някой от продуктите им. Освен това останалите теми за проекти бяха или скучни, или невероятно сложни.

Software AG имат един комплект със корпоративен софтуер, който се казва Crossvision. Състои се от шест продукта, които имат за цел да помагат на бизнеса да създава бързо нови системи, web service-и (WS), бизнес процеси, както и да интегрира стари бази данни и legacy системи. Ето кратко описание на продуктите:

CentraSite – централен регистър и архив (registry и repository). Поддържа UDDI и WebDav. Този продукт се изисква от всички останали, защото цялата информация за проектите, както и готовите решения се регистрират и се пазят тук. Също така може да се регистрират и web service-и, които да бъдат намирани през UDDI регистъра. CentraSite има два контролни панели – единия е като plug-in за Eclipse, а другият е като интернет страница базирана на AJAX.

Information Integrator – използва се за бързо интегриране на бази данни в онтологии и информационни web service-и.

Legacy Integrator – тъй като в голяма част от компаниите има mainframe-и, този продукт е полезен за интегрирането им и генериране на web services, които да използват функционалността им. С единият продукт може да се използва специално api от legacy програми, а при другият – директно да се чете от конзолният им интерфейс.

Service Orchestrator – има много действия като четене на данни, изпращане на мейли, викане на web services, пращане на файлове и т.н., които могат да се автоматизират. Досега за целта се писаха тонове с код. С този продукт всичко се прави визуално и накрая цялата програма е достъпна през WS.

Business Process Manager – идеята тук е да се създават и после лесно променят бизнес процеси. Разликата със Service Orchestrator е, че тук има и човешки действия.

Application Composer – целият комплект от продукти е насочен към WS. С тази програма могат да се направят интернет приложения базирани на Java и AJAX, които да ги използват. Също така може да се извикват чужди WS като този на PayPal или на някой от информационните услуги на Google.

Нашият проект имаше три цели. Първата е да създадем система използвайки тези програми. Системата трябва да илюстрира най-важните им възможности и в същото време да е функционална. Ние избрахме да направим интернет магазин. Втората цел е да представим проекта и начина на работа с програмите. Затова написахме редица презентации, заснехме клипове за това как сме направили частите от магазина и как се използва самият той. Третата задача беше да изготвим документ, в който описваме препоръки за подобрението на продуктите и проблемите, които сме срещнали.

Няма да навлизам в подробности как сме направили всичко. Може да видите сайта ето тук. За жалост интернет магазина не е в интернет и не знам дали Software AG ще го пусне въобще. За целта трябва да се отдели сървър, на който да върви целия софтуер, които хич не е лек. Може да видите обаче документацията по проекта, презентациите и клиповете към проекта тук. На страницата има и по-подробно описание на частите от интернет магазина. Ето и екипът ни.

Като цяло бизнеса се ориентира към SOA архитектура и интернет базирани интерфейси. Не искам да излезе като реклама на софтуера на Software AG, въпреки че май целият проект целеше това, но наистина с него може да се направи много в тази насока. Радвам се, че от този проект всички научихме много по темата, защото в училище тези неща не се учат. Просто са твърде нови. Освен това научих много за организацията, документирането и представянето на такива проекти. Въобще опита беше безценен.

В крайна сметка клиентът беше доста доволен. Дадоха ни сертификати, че сме работили с тях и с техните програми. Това не е като да имаш опит с MSOffice. Дори и да си търсим работа в други компании, факта че сме работили в сферата на SOA ни дава предимство. Доколкото разбрах проектът ни ще бъде използван като база за следващи такива проекти, а клиповете и презентациите – за обучение на студенти.

Миналия Петък имаше пак панаир, на който показахме какво сме направили. Струва ми се, че обясних всичко поне 30 пъти в рамките на 6 часа. Не ми спря устата просто. Снимките може да видите тук. Впрочем логото съм го правил аз.

Това, което искам да направя сега, ако намеря време разбира се, е да напиша няколко статии във Wikipedia на тема SOA и RIA. Видях, че в българската версия няма много такива и мисля, че ще е от полза.

[tags]mindtech, soacity, tu darmstadt, tud, software ag, soa, ria, axaj, web service, интернет услуги, проект, германия[/tags]

14 коментара

  1. Ето снимката ни в частта за сертификати в корпоративният сайт на Software AG. Има и линк към сайта на проекта.

    Освен това вчера разбрах, че един от заместник директорите, Stefan Ried, е разпратил съобщение до доста от директорите и главните инженери с описание на проекта ни и препратки към документацията, примерите и системата ни.

  2. S drug software rabotili li ste ili samo po tozi proekt ? Imate li realen prakticheski opit s integracia. Imate li opit s Global SOA Pozdravi Todorov

  3. Доколкото намерих инфо, Global SOA е просто комбинация от Web 2.0 + SOA. В този смисъл – да имам опит.

    Що се отнася до интеграцията – имам опит с интеграция на бази данни. Скоро ще започна курсове по Natural, който е идеален за тази цел. В интеграция на mainframes няма опит. Знам принципите и как се прави, но никога не съм го правил.

    Наистина опитът ни от този проект е само със софтуера на Software AG. Използвали сме и доста други помощни продукти, но основната идея беше да направим системата с техните. Това, което е по-важното в случая е, че имам опит с технологиите и разбиране по приложението им. Вече какъв продукт конкретно се използва за интеграция + изграждане на SOA, е въпрос за няколко дневно обучение.

  4. Tochno taka interesuva me Global SOA i integraciata na web 2.0 socialni mreji, blogove i video blogove kam konvencionalnite sistemi. Kakto i SOA
    blogove i socialni mreji v intranet enterprise 2.0. Kakto i RSS sindykacia. Imate li takuv opit?

  5. !!! Май не ви трябва кой знае какво. Това е горе-долу всичко, което може да се иска от един интернет програмист от сега нататък. Надявам се, че сте готови да платите щедро на който и да наемете, защото с тези изисквания … И не очаквайте да намерите някой с опит в тази сфера, защото тя тепърва изниква. Все едно да кажете, че търсите някой с 5 години опит с Vista.

    Всъщност половината от изискванията се припокриват. Всичко споменато за блоговете се покрива с RSS поддържката. Не знам какво имате в предвид по SOA блогове, но надали има някой, който си е пуснал web services за блогът си. RSS е предостатъчен.

    Що се отнася до социалните мрежи, има доста, които имат изкарани web services, но са предимно информационни. За целта обаче не ви трябва нищо повече от някой, който се е занимавал с web services.

    Значи сведохме нещата до поддръжка на RSS и web services. И разбира се AJAX, защото искате връзката да става директно от клиентската машина.

    Предполагам, че се опитвате да направите система, която да агрегира блогове и да комбинира функционалността на различни социални мрежи. Нещо като супер портал, в който маниаци на социалните мрежи (като мен) могат да получават инфо от всичките си сметки и любими блогове. Има доста опити по темата, но основната спънка е, че не всички социални мрежи имат добри services, които да дават пълна информация за това, което става вътре. Просто си защитават посещаемостта.

    Поправете ме ако съм ви разбрал погрешно.

  6. prosto iskam da integriram ERP CRM i BI navun kam Web 2.0 tools (Socialna mreja Blog, widgets) i vutre Enterprise 2.0 (socialni mreji, blog …)
    razbira se che SOA specialisti lipsvat i niama hora s opit No ako vladeesh SOAP AJAX i niakoi ezik neshata se narejdat. SOA e edin ot patishata. I zatova pitam chovek koito nesho e pravil po vaprosa.
    Prati mi telefon da ti zvunna che taka si pishem i dialoga e truden

  7. Ok za sega razrabotvam b2b sites no neminuemo she se stigne do SOA i integracia a blog i socialni mreji vav web 2.0 si e chista Global SOA. DA naistina niama smisal ot web servises za blog no triabva da se upravliva RSS Pri socialnite mreji moje da se naloji Web servises. Primerno busines soc mreji. Pogledni bloga mi za Web 2.0 Tam predi 5 godini se opitah da napravia Business plan kato web services na PERL i SOAP no neshata pozaglahnaha. ega zapochvat nanovo . bloga mi e http://www.hotmonitor.org/wordpress ima i kratki prezentacii za SOA

  8. До 8-ми няма да имам много време, но после обещавам да го прегледам.

    Ако ще разработваш SOAP с по-сложни схеми, каквито предполагам, че са на социалните мрежи, бих ти препоръчал направо да минеш на java. През последната година и половина се занимавам само с axis2 и мога да ти кажа, че е доста леко. Не съм правил по-сложни неща със скриптови езици (в моя случай php), но не си представям какъв ад ще е. Затова просто пусни един java код в някой application server и всичко е наред.

    Иначе за rss може да си прав. Ако става дума за по-сложни агрегации, май ще трябва някой service, който да си пази feed-овете и да филтрира резултата. Иначе клиента ще стане много дебел.

  9. Pingback: SOA - следващата революция в програмирането : IT Отдел
  10. Pingback: Q&A – Преди, за и след учението в Германия | Кандидатстване в Германия и Австрия

Вашият коментар

Вашият имейл адрес няма да бъде публикуван.

Този сайт използва Akismet за намаляване на спама. Научете как се обработват данните ви за коментари.