Object-Oriented Query Languages and Views

advertisement
Specjalność kursu inżynierskiego
w Polsko-Japońskiej Wyższej Szkole Technik
Komputerowych:
Inżynieria Oprogramowania i Baz Danych
Prowadzący: dr hab. inż Kazimierz Subieta, profesor PJWSTK
Polsko-Japońska Wyższa Szkoła Technik Komputerowych
Katedra Systemów Informacyjnych
http://www.si.pjwstk.edu.pl
Instytut Podstaw Informatyki PAN
[email protected]
http://www.ipipan.waw.pl/~subieta
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 1
Wrzesień. 2000
Cel specjalności
Kształcenie w zakresie inżynierii oprogramowania, baz danych i
systemów rozproszonych (w tym technologii Internetowych).
Prowadzenie prac inżynierskich w w/w zakresie.
Kształcenie jest przede wszystkim nastawione na zdobycie wiedzy
i umiejętności inżynierskich bezpośrednio przydatnych praktycznie
w późniejszej pracy zawodowej.
Kształcenie dotyczy także ważnych aspektów teoretycznych,
których praktyczna wartość została zweryfikowana w wiarygodny
sposób.
Prace inżynierskie są wykonywane w dużych zespołach,
przypominających swoją organizacją zespoły projektowe firm
programistycznych.
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 2
Wrzesień. 2000
Perspektywy pracy
Obecna oferta pracy dla absolwentów tej specjalności jest ogromna. Popyt na
specjalistów z tego zakresu znacznie przewyższa podaż.
Początkowe uposażenie absolwenta tej specjalności w firmach komercyjnych jest
na ogół nie niższe niż 3000 PLN netto (często jest wyższe).
Absolwenci są poszukiwani przez przedsiębiorstwa państwowe i prywatne, firmy
programistyczne, przedsiębiorstwa telekomunikacyjne, wojsko, instytucje, banki,
urzędy, spółki, itd.
Absolwenci tej specjalności łatwo znajdą pracę w krajach zachodnich i USA, w
tym w przedstawicielstwach firm zachodnich i amerykańskich w Polsce.
Charakter pracy: analiza i projektowanie dużych systemów informatycznych,
konstrukcja oprogramowania, prace badawcze, kształcenie w zakresie
oprogramowania, kierowanie projektami informatycznymi, audyt i zarządzanie
jakością oprogramowania, pielęgnacja oprogramowania, projektowanie aplikacji
Internetowych, w tym handel elektroniczny oraz portale biznesowe.
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 3
Wrzesień. 2000
Czego uczymy?
Analiza i projektowanie systemów informatycznych przy użyciu
metodyk obiektowych (UML) i obiektowych narzędzi CASE;
Zagadnienia inżynierii oprogramowania, w tym omówienie
pełnego cyklu życiowego oprogramowania (faza strategiczna,
analiza, projektowanie, konstrukcja, testowanie, wdrożenie,
pielęgnacja);
Zarządzanie
przedsięwzięciem
programistycznym,
miary
złożoności i jakości oprogramowania, zarządzanie konfiguracją
oprogramowania, i inne;
Wybrane zagadnienia z zakresu baz danych.
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 4
Wrzesień. 2000
Profil absolwenta specjalności inżynierskiej Bazy
Danych i Inżynieria Oprogramowania
Umiejętność łatwego przystosowania się do pracy w średnich i wielkich
zespołach projektowych w charakterze analityka, projektanta, programisty,
inżyniera oprogramowania, kontrolera jakości, administratora repozytoriów
projektowych, itd.;
Umiejętność
prowadzenia
nadzoru
nad
informatycznymi i zarządzania aplikacjami;
działającymi
aplikacjami
Umiejętność samodzielnego prowadzenia projektów informatycznych średniej
wielkości;
Umiejętność samodzielnego rozpoznania i modelowania informatycznych
aspektów dowolnych procesów biznesowych;
Dobra znajomość metodyk, narzędzi i technologii informatycznych w zakresie
projektowania SI, programowania, testowania, budowy aplikacji internetowych,
itp.
Umiejętność łatwego zapoznania się i przystosowania się do nowości na rynku
informatycznym.
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 5
Wrzesień. 2000
Przykładowe tematy prac inżynierskich
Zrealizowane:
Repozytorium ponownego użycia, gromadzące i udostępniające
poprzez WWW dowolne informacje, które mogą być przedmiotem
wymiany w ramach firmy.
System zarządzania wiedzą dla firmy programistycznej ze
wspomaganiem analizy ryzyka.
Oprogramowanie wspomagające budowę i działanie sklepu
internetowego.
System workflow wspomagający zarządzanie dokumentami i
jakością oprogramowania
W trakcie realizacji:
System zarządzanie treścią serwisów internetowych.
System wspomagający nauczanie IO (szczególne uwzględnienie
zarządzania różnorodnymi zasobami dydaktycznymi)
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 6
Wrzesień. 2000
Przykładowa tematyka prac inżynierskich (1)
Analiza i projektowanie SI; metodyki analizy i projektowania; notacje; w tym
UML, OPEN, BON, encja -związek, itd.; modelowanie pojęciowe; narzędzia i
języki wspomagające modelowanie pojęciowe;
Narzędzia CASE; narzędzia wspomagające zarządzanie projektem;
Inżynieria oprogramowania w rozbiciu na fazy cyklu życia oprogramowania
(analiza, projektowanie, konstrukcja, testowanie, wdrożenie, pielęgnacja, itd.);
Zarządzania przedsięwzięciem programistycznym; zarządzanie ryzykiem; audyt
i zarządzanie jakością oprogramowania;
Miary złożoności i jakości oprogramowania;
Zarządzanie konfiguracjami i wersjami; dokumentowanie oprogramowania i
procesów wytwarzania oprogramowania;
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 7
Wrzesień. 2000
Przykładowa tematyka prac inżynierskich (2)
Ponowne użycie oprogramowania, dokumentacji i procesów wytwarzania
oprogramowania; wzorce projektowe, szkielety aplikacji;
Graficzne interfejsy użytkownika;
Rozproszone i federacyjne bazy danych; replikacje w rozproszonych bazach
danych, migracja obiektów; przetwarzanie zapytań w rozproszonych bazach
danych;
Architektury systemów oprogramowania, w tym architektury klient-serwer,
architektury wielowarstwowe, itd.; oprogramowanie middleware’owe i
komponentowe;
Interoperacyjność (współdziałanie) systemów heterogenicznych i/lub
rozproszonych; odwzorowanie heterogenicznych ontologii; mediatory i osłony;
Standardy w zakresie rozproszonych obiektów, w tym standardy CORBA/IIOP,
JavaBeans, RMI i COM/DCOM/ActiveX; brokery (ORB) zbudowane wg tych
standardów, np. Orbix, Visibroker, i inne;
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 8
Wrzesień. 2000
Przykładowa tematyka prac inżynierskich (3)
Zarządzanie przepływem prac (workflow); technologie mobilnych agentów;
Obiektowe i obiektowo-relacyjne bazy danych: anatomia, projektowanie,
pielęgnacja, użycie; Oracle-8, Informix Dynamic Server, DB/2 Universal Server,
Sybase, i inne; standard SQL3 i jego następcy;
Standardy obiektowych baz danych, w tym standard ODMG; systemy
zbudowane wg tych standardów, np. ObjectStore, Versant, Poet, O2;
Fizyczna organizacja składów trwałych obiektów, repozytoria multimediów,
dane temporalne i przestrzenne (geograficzne), optymalizacja dostępu do danych
multimedialnych, temporalnych i przestrzennych;
Optymalizacja fizycznej organizacji i dostępu do danych, organizacja indeksów,
buforowanie danych, przemiana wskaźników (pointer swizzling);
Integracja języków zapytań z językami programowania;
Tranzytywne domknięcia, zadania rekurencyjne typu rachunek materiałów (billof-material, BOM);
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 9
Wrzesień. 2000
Przykładowa tematyka prac inżynierskich (4)
Języki programowania baz danych (z trwałymi zmiennymi lub obiektami), w
tym SQL, Java z trwałością; interfejsy ODBC, JDBC i SQLJ; języki czwartej
generacji (4GL), narzędzia RAD i RAP;
Optymalizacja języków zapytań;
Wirtualne i zmaterializowane perspektywy baz danych; hurtownie danych,
kostki danych, przetwarzanie analityczne (OLAP);
Przetwarzanie transakcji, rozproszone transakcje, monitory transakcji;
Aktywne reguły, aktywne bazy danych, programowanie zdarzeniowe;
Technologie WWW, w tym WAP i technologie oparte na XML; repozytoria
XML, języki zapytań dla XML, perspektywy w XML, odwzorowania na/z
XML, w tym XSLT;
Bazy danych w Internecie; systemy zarządzania treścią (content management);
Repozytoria danych sformatowanych, tekstowych i multimedialnych;
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 10
Wrzesień. 2000
Przykładowa tematyka prac inżynierskich (5)
Systemy pracy grupowej (CSCW), w tym wspomaganie grup współpracujących
poprzez Internet;
Pełno-tekstowe bazy danych; wyszukiwanie w danych pełnotekstowych;
Internetowe wyszukiwarki informacji w pełnym tekście;
Przetwarzanie danych półstrukturalnych; języki zapytań i repozytoria danych
półstrukturalnych;
Projektowanie i programowanie generycznych aplikacji; szablony (templates),
programowanie poprzez refleksję lingwistyczną;
Bezpieczeństwo i ochrona danych i systemów; prywatność i autoryzacja
dostępu; ochrona przed wirusami, wandalizmem, sabotażem, odmową płatności;
Elektroniczny handel, portale biznesowe; Internetowe systemy wspomagania
dziedzin życia i gospodarki: ochrona zdrowia, handel, telekomunikacja,
bankowość, giełda, mała i średnia przedsiębiorczość, szkolnictwo,
ubezpieczenia, finanse, leasing, usługi, itd.;
Biblioteki cyfrowe; systemy wspomagania dużych archiwów dokumentów.
K.Subieta. Bazy Danych i Inżynieria Oprogramowania, slajd 11
Wrzesień. 2000
Download