Standardowy model

Z Jamesem Rumbaughem, specjalistą z zakresu inżynierii oprogramowania i współtwórcą języka UML, pracownikiem firmy programistycznej Rational, rozmawia Marian Łakomy.

Z Jamesem Rumbaughem, specjalistą z zakresu inżynierii oprogramowania i współtwórcą języka UML, pracownikiem firmy programistycznej Rational, rozmawia Marian Łakomy.

Jak określiłby Pan rolę Unified Modelling Language (UML) w procesie tworzenia aplikacji?

UML to język do systemowego modelowania oprogramowania. Nie jest to język programowania - jest bardziej abstrakcyjny. UML nie służy do tworzenia programów, lecz do ich projektowania. Podobnie jak inżynier nie zbuduje niczego bez uprzedniego modelowania, tak nie da się stworzyć dobrego programu bez opracowania modelu.

Język UML powstał, by pokonać trudności wynikające z tradycyjnego, jednokierunkowego procesu programistycznego. Jak doszło do tego, że stał się on standardem w zakresie projektowania aplikacji?

Dawniej wielu ekspertów zajmujących się projektowaniem oprogramowania toczyło "religijne" wojny o szczegóły dotyczące sposobu reprezentacji programów. W roku 1994 prezes Rational Software zatrudnił mnie i Grady Boocha, reprezentantów dwóch najpopularniejszych metod w projektowaniu oprogramowania. Wspólnie opracowaliśmy UML. Efekt naszej pracy zaakceptowano, a UML wkrótce stał się standardem przemysłowym zatwierdzonym przez konsorcjum Object Management Group.

Złośliwi mówią czasem: "Co to jest wielbłąd? Koń zaprojektowany przez komitet". Czy nie uważa Pan, że proces standaryzacji nie zawsze wpływa korzystnie na rozwój technologii?

Łatwo dojść do takiego wniosku, uczestnicząc w posiedzeniach komitetu standaryzacyjnego. Proces standaryzacji wymaga wiele wysiłku, kompromisów. Często myślę, że jakieś zadanie wykonałbym znacznie lepiej sam, bez pomocy komitetu. Nie ma jednak wątpliwości - demokracja jest lepsza od dyktatury. Zaletą standaryzacji jest powszechna akceptacja. Nie traci się energii na promowanie lepszych i gorszych firmowych rozwiązań - wszyscy używają UML.

Czy UML może wspomagać programistów w tworzeniu komponentów?

Tworzenie komponentów wymaga programowania wysokiej jakości, gdyż będą one używane przez wiele osób. Muszą być więc dokładnie specyfikowane, modelowane i mieć dobrze zdefiniowane interfejsy. To zapewniają narzędzia Rational Software. Ponieważ nasza firma od początku istnienia zajmowała się kompilatorami, potrafimy produkować również narzędzie do tworzenia kodu. Uważamy natomiast, że w tworzeniu oprogramowania najważniejsze etapy to: zbieranie wymagań, analiza, projektowanie...

Czym jest Rational Unified Proces (RUP)?

Doświadczenie Rational Software w projektowaniu aplikacji zaowocowało stworzeniem efektywnej metodyki tworzenia aplikacji RUP, której jednym z elementów jest język modelowania UML. W przeciwieństwie do UML, RUP nie jest standaryzowany. Mamy nadzieję, że gdy więcej osób będzie używać tej metody, stanie się ona standardem.

Jaka jest pozycja rynkowa narzędzi Rational Software? Z kim Pańska firma bezpośrednio konkuruje?

Mamy narzędzia do zespołowego zbierania wymagań, analizy, projektowania, modyfikowania, testowania i sprawdzania wydajności aplikacji.

Nie mamy bezpośrednich konkurentów, gdyż inni producenci nie dostarczają narzędzi obejmujących funkcjonalnością cały proces wytwórczy oprogramowania. Naturalnie mamy konkurentów w poszczególnych dziedzinach. Przykładowo, w zakresie testowania aplikacji wyprzedza nas Mercury. Przodujemy zaś w innych: modelowaniu wizualnym, zarządzaniu konfiguracją oprogramowania, zbieraniu i zarządzaniu wymaganiami.

Nie zajmujemy się natomiast zarządzaniem gotowymi aplikacjami. Na rynku jest wiele produktów, które do tego służą.

Jak Pańskim zdaniem będzie rozwijać się UML?

Zajmujemy się wieloma aspektami rozwoju UML - modelowaniem systemów czasu rzeczywistego, przetwarzaniem rozproszonym, modelowaniem baz danych, dostosowaniem UML do specyfiki platform CORBA i EJB. Wszystkie te prace znajdą swoje odbicie w specyfikacji UML 2.0, która powinna pojawić się w formie propozycji złożonej Object Management Group w 2001 r. Mam nadzieję, że zostanie zaakceptowana w 2002 r.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200