Cobol a Microsoft .Net

Na první pohled nemají tyto dva pojmy, Cobol a Microsoft .Net, mnoho společného. Jak může souviset klasik počítačový...


Na první pohled nemají tyto dva pojmy, Cobol a Microsoft .Net, mnoho
společného. Jak může souviset klasik počítačových dějin Cobol se současnou
moderní aktivitou .Net Microsoftu? Třeba tím, že jmenovaný softwarový gigant
oficiálně přivítal vstup Cobolu do své iniciativy .Net.
Programovací jazyk Cobol vždy byl a stále je robustním nástrojem aplikační
logiky průmyslových aplikací a firma Microsoft usiluje o to stát se standardní
platformou pro jejich provoz. Spojení obou technologií může přinést oboustranné
výhody. Výrobci vývojového a provozního prostředí Cobolu mají šanci získat
výraznější pozici na rozsáhlém trhu operačních systémů Windows. Firma Microsoft
si pak může vydobýt respekt u zákazníků dosud provozujících počítače typu
mainframe a midrange, kteří hledají úspory svých provozních nákladů. Jaké jsou
argumenty pro tato tvrzení?

Cobol a současnost
Cobol (COmmon Business Oriented Language), programovací jazyk vynalezený v roce
1959, byl již mnohokrát v minulosti zatracován. Proč se jím tedy zabývat v
dnešním světě moderních nástrojů IT?
Podle Gartneru je v současnosti 75 % dat ve světovém průmyslu a obchodu
zpracováváno aplikacemi Cobolu. Celkem jde o 180-200 miliard řádků zdrojového
kódu. Odhadem 5 miliard řádků kódu každoročně přibývá. Příkladem využití Cobolu
v moderních aplikacích je informační systém Peoplesoft Enterprise, který je
třetím neprodávanějším podnikovým informačním systémem na světě. Většina jeho
aplikační logiky a databázových přístupů je napsána v Cobolu.
Současný tlak na snižování nákladů v globální ekonomice nevynechal ani
informatiku. Informační systémy a aplikace, které dlouhá léta spolehlivě
fungují, jsou modernizovány prostřednictvím integrace s novými aplikacemi a
technologiemi, nikoli kompletně nahrazovány. Přepisování původního zdrojového
kódu je zřídkakdy praktickým, efektivním a zejména ekonomickým způsobem inovace
aplikací.
Významným způsobem, jak snížit provozní náklady aplikací na střediskových
systémech typu mainframe, je přenesení těchto aplikací na provozně levnější
platformy Unix, Linux nebo Windows. Tady vyniká významná vlastnost Cobolu,
totiž portabilita, která je dána především zachováním a rozvojem standardu
jazyka podle normy ANSI (ANSI-68 až ANSI-2002). Proto stejná verze aplikační
logiky napsaná v Cobolu může běžet na mainframe systému z/OS, různých Unixech
(AIX, HP...), Linuxu (SuSE, Red Hat) nebo i Windows. Této výhody využívá právě
zmíněný informační systém Peoplesoft, ale i IS společností Lawson, Syspro a
dalších.
Logickou možností, jak snižovat náklady, je provozovat aplikace na platformě
Microsoft Windows .Net s tím, že v případě dosažení stropu škálovatelnosti lze
stejnou aplikaci jednoduše spustit na vyšším systému, například unixového typu.
V současnosti existují dva tradiční a renomovaní výrobci vývojového a
provozního prostředí cobolských aplikací na platformách Windows, Linux a Unix,
kteří produkují Cobol v Microsoft .Net, a to společnosti Micro Focus a Fujitsu.
V následujícím textu bude způsob integrace cobolského prostředí v .Net popsán
na příkladu technologie Micro Focus Net Express with .Net. V principu stejné
nástroje a postupy jsou vlastní i technologii Fujitsu NetCobol for .Net.

Microsoft .Net
Microsoft definuje .Net jako "sadu softwarových technologií pro propojování
informací, lidí, systémů a zařízení". Tato generace technologií je založena na
webových službách malých aplikacích, které se mohou propojovat jak navzájem,
tak i s většími aplikacemi v prostředí internetu.
V případě, že pro vás není tvorba internetových aplikací nebo web services
aktuální, je vhodné si položit otázku, proč se touto technologií zabývat.
Odpovědí je fakt, že Microsoft .Net bude mít významný vliv na další vývoj všech
typů aplikací na platformě Windows.
Microsoft používá .Net jako široký termín zahrnující četné technologie operační
systémy, serverové produkty a vývojové nástroje. Pro vývojáře softwaru je
symbol .Net obvykle použit ve spojení s vývojovým prostředím aplikací Visual
Studio .Net provozovaných pod .Net frameworkem.
.Net framework je komplexní infrastrukturou iniciativy .Net. Poskytuje nové
prostředí pro vývoj aplikací a jejich provoz na platformě operačních systémů
Windows, od počítačů typu handheld k rozsáhlým víceprocesorovým serverům. Pro
tvorbu samostatných grafických aplikací nebo pro distribuované aplikace s
webovým rozhraním jsou použity stejné techniky a technologie.
Net framework poskytuje:
runtime systém CLR (Common Language Runtime) stejný pro všechny podporované
jazyky
intermediate jazyk MSIL (Microsoft Intermediate Language) vznikající jako
výstup všech kompilátorů jazyků, které podporují .Net framework
rozsáhlou knihovnu objektových tříd .Net framework Class Library použitelnou
pro všechny jazyky podporující .Net framework

Úloha Cobolu v MS .Net
Ve spojení s .Net se nejčastěji uvádějí jazyky Microsoftu, zejména pak Visual
Basic .Net a C#. Avšak role Cobolu v průmyslových aplikacích nemizí, například
proto, že existuje poptávka po transformaci těchto aplikací na platformu
Windows. Logickou i ekonomickou možností je integrovat původní i nový kód
Cobolu do aktuálních technologií včetně Microsoft .Net.
Technologie Net Express with .Net je rozšířením funkcí produktu Net Express,
vývojového prostředí aplikací v Cobolu pro operační systémy Windows firmy Micro
Focus (www.microfocus.com). Zahrnuje kompletní produkt Microsoft Visual Studio
Premier Partner Edition, což je jedna z verzí Microsoft Visual Studio .Net.
Micro Focus integroval do Net Express with .Net kompilátor Cobolu a další
nástroje potřebné pro vývoj cobolských aplikací provozovaných pod .Net
framework. Kompilátor kompiluje cobolský kód do MSIL, který je poté provozován
pod CLR.
Pozice Cobolu v Microsoft .Net je zřejmá ze schématu na této straně. Cobol
nejen patří mezi jazyky .Net frameworku, ale současně umožňuje používat stejné
nástroje a postupy jako dosud, a to díky vlastnímu provoznímu runtimu systému
Micro Focus Application Server.
Micro Focus i Fujitsu nabízejí nástroje pro migraci aplikací do Windows a
možnosti využití nových schopností této platformy, jako je například náhrada
znakového uživatelského rozhraní moderním rozhraním grafickým. Vývojáři ve
Windows se často střetávají s některými problémy, které nyní řeší .Net
framework, například:
rozdíly v reprezentaci datových typů v různých jazycích
pořadí zpracování parametrů rutin (může se mezi jazyky lišit)
rozdíly ve způsobu předávání parametrů mezi programy
obtížnost ladění aplikací v různých jazycích
komplikovaný přístup k funkcím operačního systému

Výhody Cobolu
Cobol je perfektní jazyk pro zápis aplikační logiky ekonomických, logistických
a výrobních úloh. Pravidla programování těchto typů úloh lze popsat těmito
charakteristikami:
schopnost popisu heterogenních dat s hierarchickou strukturou
schopnost dekadické aritmetiky
schopnost integrovat přístup k různým typů organizací dat
schopnost rychlého zpracování velkých objemů dat
Cobol vyhovuje všem těmto charakteristikám, zatímco moderní jazyky jako Visual
Basic a Java vyhovují pouze některým z nich. Micro Focus rozšiřuje přístup k
datům prostřednictvím podpory pro relační databáze pod názvem OpenSQL. Tato
podpora je v Net Express with .Net rozšířena o přístup EXEC ADO pro využití
přístupu typu ADO.Net k datovým zdrojům.
Jaké jsou možnosti vývoje uživatelského rozhraní? Je pochopitelně možno je celé
navrhnout v RAD nástroji Dialog System, vývojovém prostředí GUI rozhraní, který
je součástí produktu Net Express. S využitím .Net frameworku lze však použít i
GUI nástroje například Visual Basic .Net a C#. S technologií .Net je již
podstatně snazší integrovat nejvhodnější prostředky pro tvorbu komplexní
aplikace. Tato vlastnost získává na významu zejména při provozu aplikací ve
formě komponent.

Kdy migrovat
Kdy má smysl migrovat na Microsoft .Net? Vše záleží na charakteru vašich
aplikací. Net Express je často využíván pro vývoj víceplatformních aplikací
(Unix, Intel Linux, mainframe Linux, OS/400), kde Windows jsou využity jako
vývojová platforma.
Mezi charakteristiky .Net frameworku patří, že nepřináší novou verzi Windows
ani nediskvalifikuje vaše existující Windows aplikace. Když už vyvíjíte
aplikace pro tento operační systém, pak vaše stávající nástroje budou i bez
.Net dále využitelné a můžete pokračovat v dosavadním stylu vývoje.
Můžeme určit následující kategorie cobolských aplikací, kde je účelné v
současnosti využít .Net framework:
1. Aplikace, pro které je třeba navrhnout nové grafické nebo webové rozhraní,
které dosud neexistuje. V tomto případě je třeba oddělit aplikační logiku v
Cobolu, upravit ji do z vnějšku volatelné formy a použitím Visual Studia .Net
vytvořit potřebný front-end.
2. Aplikace, již existující ve formě komponent, lze migrovat do .Net frameworku.
3. Dávkové aplikace provádějící specifické úlohy, které by s výhodou využily
vlastnosti .Net.
4. Aplikace, které chceme publikovat jako webové služby pod .Net frameworkem. V
tomto případě však Micro Focus nabízí jednodušší alternativu ve formě produktu
Enterprise Server, který přímo provozuje cobolské komponenty jako webové služby.
Rizika migrace aplikací z jiných platforem na Microsoft Windows .Net jsou
minimální. Vyplývají z možného nedodržení ANSI standardu jazyka vývojářem
původní aplikace. Tento problém však firmy vyvíjející cobolské kompilátory řeší
volbou dialektu jazyka, který je zadán direktivou kompilátoru.

Výhody migrace
Výhody migrace aplikací v Cobolu do prostředí Microsoft .Net lze shrnout do
těchto bodů:
zachování dřívějším praktickým provozem ověřené aplikační logiky
rychlost provedení migrace
minimalizace testovacího provozu v novém provozním prostředí
nízké náklady ve srovnání s tvorbou nové aplikace srovnatelné užitné hodnoty
jistota dalšího rozvoje cobolských technologií a ochrany investic uživatele









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.