20
Objektorienteret netværkskommunikation Præsentation 1: Introduktion til indhold, litteratur, underviser, undervisnings- og eksamensform

Objektorienteret netværkskommunikation

Embed Size (px)

DESCRIPTION

Objektorienteret netværkskommunikation. Præsentation 1: Introduktion til indhold, litteratur, underviser, undervisnings- og eksamensform. Indhold i denne præsentation. Hvem er underviseren? Motivation for faget: hvorfor ONK Hvad kan I i forvejen? Præsentation af: hvad I skal lære (pensum) - PowerPoint PPT Presentation

Citation preview

Page 1: Objektorienteret  netværkskommunikation

Objektorienteret netværkskommunikation

Præsentation 1:Introduktion til indhold, litteratur, underviser, undervisnings- og

eksamensform

Page 2: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 2 af 20

Indhold i denne præsentation

• Hvem er underviseren?• Motivation for faget: hvorfor ONK• Hvad kan I i forvejen?• Præsentation af:

– hvad I skal lære (pensum)– hvordan (litteratur, øvelser, projektarbejde)– hvornår og hvilken fordeling (mellem øvelser og teori)– hvad I skal kunne til eksamen

• Hvilke fag bygger videre på dette?

Page 3: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 3 af 20

Underviser CV

• Stefan Wagner• Ansat som Adjunkt ved Ingeniørhøjskolen i Århus i august

måned 2002• CV:

– Studentereksamen fra SAG– Uddannet fra IHA i 1997 som Ingeniør E-retningen– Egen virksomhed fra 1995-98– Mærsk Data Food & Agro 1997-2003 (tidligere LEC)

• Softwareudvikler (Windows & Internet programmering)• IT Arkitekt• Teknisk Projektleder

– Master of Multimedia Science på Århus Universitet • Multimedia Science handler om medier, herunder

hypermediesystemer som f.eks. Internettet

Page 4: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 4 af 20

Kontakt info

• Adjunkt Stefan Wagner• Email: [email protected]• Hjemmeside: http://userportal.iha.dk/~sw/• Kontor: 407c• Tlf. 8730 2423

Page 5: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 5 af 20

Hvorfor faget ONK?

• Fremtiden er distribueret – men distribution er ikke nyt• Processorer i alting – kommunikation mellem alting?• BlueTooth, WLAN, GPRS, UMTS• Marc Weiser, Poul Dourish – Pervasive Computing• Stort forskningsområde – kraftigt på vej frem i industrien• Det er der teknologier der understøtter

– Man kan selv lave protokoller til kommunikation• Det kan I prøve i andre fag

– Man kan anvende testede ideer og spare tid + få bedre kvalitet• OO Middleware: SOAP, RMI, CORBA, (D)COM, .NET Remoting• Vigtigt med en god forståelse for teknologierne – mange lighedspunkter

• Mange Ingeniører kommer til at anvende disse til:– Kommunikationsprodukter (mobiltelefoner m.v.)– Proces- og overvågningsudstyr - dataopsamling– Administrative systemer

• Vigtig Ingeniørdisciplin: at forstå fordele og ulemper ved forskellige teknologier – så man har et godt grundlag til at vælge løsningsmodel

• Det får I forhåbentligt ud af ONK• I BLIVER DOG IKKE EKSPERTER

Page 6: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 6 af 20

Hvad kan I?

• Hvad er distribuerede systemer– giv eksempler på distribuerede systemer

• Hvor meget har I nået i jeres kurser indtil nu?– Hvad har I prøvet af objektorienteret netværkskommunikation– Hvilke teknologier?– Java networking API (UDP, TCP?)– C++, C# viden?– Brug 5 minutter på at diskutere med sidemanden

• Hvad er Objektorienteret Middleware– giv eksempler på Middleware– giv eksempler på anvendelsen af det– Java RMI – introduktion i JAVA1?

Page 7: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 7 af 20

Eksempler – behøver vi nogen?

• Lad os starte helt simpelt• Vi har i virkeligheden problemstillingen så snart vi ønsker

at program A – på computer 1 - skal tale med program B på computer 2– Hvordan gør vi det?– Kan vi ikke bare lave noget med UDP eller TCP og så finde på et

”relgsæt” for at overføre data– JO det kan vi – men hvorfor ikke bruge det der findes i forvejen?– Middleware – der findes værktøjer der kan klare arbejdet for os –

således at det bliver transparent for udvikleren om der kaldes et lokalt objekt – eller et objekt på en anden maskine:

• API’er• Generator værktøjer

– Og så kan man vælge at bruge Objektorienteret Middleware• Det gør vi i dette kursus!• Alle der vil noget andet – find et andet kursus

Page 8: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 8 af 20

Eksempel på distribueret system - CTR

• CTR – det Centrale Tilskuds Register• Samtlige apoteker i DK skal rapportere• Problemstilling:

– Mange heterogene systemer– Store datamængder– Vigtigt med høj oppetid (duer ikke at apoteket er

”nede”)

• Løsning:– J2EE – Enterprise Java Beans – med CORBA– Flere Servere kan dele belastningen (UNIX)– CORBA er meget åbent - godt for integrationen

Page 9: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 9 af 20

Eksempel II - Vestas

• Fra foredrag i Dansk Datateknisk Forening:• Kommunikation til styringen i vindmøller

– Både internt (5 noder)– Og eksternt til kontrol

• Overvejede bl.a. CORBA – men valgte at lave sin egen middleware• Det kan man jo vælge:

– Hvis der er råd til det– Hvis man har fornødent overblik– Hvis man tør

• Vestas valgte dog at basere sig på litteratur fra et lignende projekt• Morale 1: tænk over hvad du gør – men opfind ikke den dybe tallerken• Morale 2: Middleware koster performance og kan være svært at

danse med. Du får tit meget mere end du har behov for – så afstem dine teknologivalg med behovene fra din kravspec

Page 10: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 10 af 20

Eksempel III – CHR projekt

• CHR Kontrol• Mad Cow Disease• Central database• Forretningslogik spredt mellem UNIX

maskiner og Mainfraime – Oracle DB og DB2 (på MVS) (Mainframe teknologi er faktisk også Middleware –bare transaktions orienteret) – CICS eller Tuxedo

• Application Server på NT – hoster WAP og SOAP

• Klienter: – J2ME mobiltelefoner– MS SmartPhone– PDA– Embedded System til styring af automatiske

port system• Logisk afkobling via OO teknologi (nemt for

udvikler)• Genbrug fra eksisterende WAP løsning• Middleware kan lettere skiftes ud• Nye klienter kan nemt tilkobles (åbent og

heterogent)• Det handler om gode grænseflader (logisk og

teknisk set)

Page 11: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 11 af 20

Fagets omfang

• Objektorienteret netværkskommunikation 1 (ONK1) – 6-7. semester, 5 ECTS point

• I er snart færdiguddannede:– Jeg forventer altså at I arbejder selvstændigt– her er gruppearbejde nøglen

• Stort pensum – men dog kun en flig af hvad kurset kunne (burde) rumme– Vi når f.eks. ikke at arbejde rigtigt i dybden med nogle af

teknologierne – dette ville kræve store længerevarende projekter– Men vi kommer dog godt i gang, og får et solidt fodfæste

Page 12: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 12 af 20

Hvad skal I lære ifølge kursusbeskrivelsen?

Formål:Den studerende skal kunne• redegøre for de grundlæggende principper og teknikker omkring

interproceskommunikation over såvel lokalnetværk som Internettet.

• redegøre for principperne omkring transparens og heterogenitet (platforms og programmerings-sprogs uafhængighed)

• redegøre for anvendelsen af Java RMI, XML/SOAP (Webservices), herunder forskelle/ligheder, fordele/ulemper teknologierne imellem. Samt på overordnet niveau forstå forskelle og ligheder med teknologierne CORBA og DCOM

• anvende objektorienterede teknikker til at designe og programmere netværksforbindelser ved brug af middleware, og bevise dette ved at konstruere og dokumentere to distribuerede systemer der gør brug af én eller flere af ovenstående teknologier

Page 13: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 13 af 20

Hvad skal I lære – konkret

Indhold:• Transparens og heterogenitet i distribuerede systemer

• Distribueret objektmodel, livscyklus og arkitektur

• Distribuerede applikationer

• Persistens og transaktioner

• Remote procedure call (RPC) og Suns Remote Method Invocation (RMI)

• Webservices, XML, SOAP, WSDL og UDDI

• HERTIL KOMMER EN OVERORDNET INTRODUKTION TIL CORBA og DCOM!

Check hjemmesiden for nærmere detaljer

Page 14: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 14 af 20

Hvordan

• ONK belaster jer med 5 ECTS point der fordeles mellem:– Forberedelse hjemme: læsning og øvelser– Teori forelæsninger i plenum (ca. 2x35 min. om ugen)– Jeg gennemgår ikke nødvendigvis det litteratur I allerede har læst

… men i praksis vil der være et overlap– Øvelser i LAB på IHA eller derhjemme (4x35 min.), herunder også

projektarbejde• Der anvendes slides af 3 årsager:

– 1) Du kan skrive dem ud og bruge dem til at skrive supplerende noter – så ryger din koncentration ikke mens du prøver at skrive fornuftige noter

– 2) Hvis du glipper en forelæsning kan du danne dig et indtryk af forelæsningens indhold – og hvad jeg lagde vægt på

– 3) Jeg har en forfærdelig håndskrift – så mine tavle kraterier skal helst ikke indeholde alt for meget tekst ; )

• Slides (udover denne) er på engelsk

Page 15: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 15 af 20

Pensum - tidligere grundbog

• Engineering Distributed Objects• By Wolfgang Emmerich Hardcover, 390 sider

• ISBN: 0471986577• Published: april 2000

• Emmerich bogen giver en solid teoretisk ballast om principperne i moderne Middleware, eksemplificeret ved teknologierne CORBA, COM og RMI, og illustreret ved udstrakt brug af UML. Bogen mangler dog praktiske eksempler, og vil derfor fungerer som fagets grundbog og blive suppleret med artikler og uddrag fra andre bøger med praktiske eksempler. 

BRUGES IKKE LÆNGERE !- bogen dækker for bredt- men dækker ikke web services- og ikke Java RMI ret godt- er dog kursorisk set et godt køb

Page 16: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 16 af 20

Pensum - alternativ

• DERFOR:– bruger vi links og diverse mindre kompendier i stedet

(herunder uddrag fra Emmerich)– specielt i forbindelse med øvelserne vil der blive brugt

bl.a. MSDN og Sun ressourcer– intet materiale er færdigt produceret!– derfor vil det løbende blive leveret til TB

• forhåbentlig rettidigt, ellers må I tilgive mig

– Det er altid muligt at finde supplerende materiale på nettet

• Links kan findes på kursets hjemmeside

Page 17: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 17 af 20

Hvornår og hvor?

• mandage fra kl. 13: 6x35 minutter.– Af forskellige årsager vil dette fag eksperimentelt blive samlet på

én dag. Studerende kan som regel dog stadigvæk vælge at bruge den isolerede 2x35 min. blok til øvelser

– Vi starter normalt med teori og herefter kan I lave øvelser eller projektarbejde i LAB, grupperum eller derhjemme (som I nu bedst kan lide det)

– Jeg vil opfordre alle til at prøve at få et grupperum – det er virkeligt værdifuldt

– Undervisning i 412- Der kan være problemer med at få lov til at installere den software

vi gerne vil bruge, specielt efter at den nye Firewall er installeret- Campusnet erstatter nu Studienet (på kraftige opfordringer

sidste semester) til meddelelser, kalender, diskussioner og generelle information

- Introduktion til ONK på Campusnet

Page 18: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 18 af 20

Evaluering og Eksamen

• Vi skal lave to projektarbejder involverende OO Middleware. Der arbejdes i grupper af 5-6 studerende– Emne vil være valgfrit, men skal aftales med undertegnede.

Alternativt stiller jeg et projekt der skal løses– Eksempel: opsamling af temperaturmålinger fra distribuerede

måleenheder, der skal gemmes på database, og kunne tilgås via PC og mobilenhed

– Teknologi: først SOAP, herefter Java RMI. – Begge opgaver skal afleveres for at kunne komme til eksamen

• Mundtlig eksamen efter 13 skalaen, hvor I kommer ind som én gruppe (15 min. for hvert medlem ganget op)

• Hele gruppen præsentere i fællesskab projektet• Herefter trækker hver studerende et teori spørgsmål, der

skal reflekteres op i mod projekt og pensum• Spørgsmål vil blive offentliggjort 1 uge inden eksamen

Page 19: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 19 af 20

Hvilke fag bygger videre på dette?

• Vi beskæftiger os ikke med grundlæggende datakommunikation (DKT)– dvs. alt om computernetværk, OSI modellens lag, TCP/IP osv. ved

I alt om• Vi roder os heller ikke ind i UDPK’s domæneområde – dvs.

I skal ikke selv bokse med at lave jeres egen kommunikationsprotokol til objektorienteret netværkskommunikation

• Der skal også være noget til Civilingeniørstudiet, derfor skal I heller ikke lære at bygge jeres eget objektorienterede middleware. Det klarer faget DDist.

• CORBA, DCOM og .NET Remoting hører til på kurset Objektorienteret Middleware.– Oprindeligt: OOMI + ONK = ONK = håbløst hårdt– Helst af alt havde jeg set eet 10 points kursus med OOMI og ONK

sat sammen.

Page 20: Objektorienteret  netværkskommunikation

Ingeniørhøjskolen i ÅrhusSlide 20 af 20

Hvad syntes I?

• Hvordan lyder det så?– Er det spændende eller hvad?