Facit Tentamen 17/3 Informationsinfrastruktur

Relevanta dokument
Tentamen Informationsinfrastruktur

Informationsinfrastruktur e-infrastruktur (Information infrastructure) enligt Hanseth och Lyytinen, 2004 Horisontell indelning

Tentamen Informationsinfrastruktur

Facit Tentamen 16/2 Informationsinfrastruktur

SOA. Länkar +ll sidor om SOA h3p:// h3p://dsv.su.se/soa/

Webbtjänster med API er

Webbtjänster med API er

Arkitektur. Den Röda Tråden

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.

Kärnfunktionalitet. Middleware. Samverkande system. Service Oriented Architecture. Kommunikationsmekanismer. Tjänsteorienterade arkitekturer

RDT Externt Webbtjänst Gränssnitt

e-infrastrukturen som grund för e-govermnent Dr. Owen Eriksson Högskolan Dalarna och VITS

Webbteknik II. Föreläsning 4. Watching the river flow. John Häggerud, 2011

Objektorienterad programmering

Regelverk. Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag. Bilaga A. Tekniska ramverk. Version: 3.0

Arv. Objektorienterad och komponentbaserad programmering

INTERSTAGE V4. Application Server. Integration Server. Portal Server. Network Access Server 1 INTERSTAGE V4. INTERSTAGE Application Server

Regelverk. Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag. Bilaga A. Tekniska ramverk. Version: 1.0

Kopiering av objekt i Java

Affärssystem. Affärssystem - 1. Affärssystem. Informationssystem (IS) Tobias Nyström

RDT Externt Webbtjänst Gränssnitt

Middleware vad, hur, varför när?

Arv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier

Testdriven utveckling av Web Services. Ole Matzura

Tentamen. 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl

Webbtjänster med API er

RFID in Rail NAF Business Watch strategiseminarium II

GATEWAY TJÄNSTEBESKRIVNING. Webbservice. WSDL-fil. Skicka meddelanden. SMS och FastnätsSMS

DAT043 - Föreläsning 7

Arbeta med databas. Översikt. Lektion 1: Arbeta med Entity Data Models. Arbeta med Entity Data Models. LINQ (Language Integrated Query).

En verktygslåda för tjänsteorientering

Seminarierapport av RESONANS SEMINARIERAPPORT AV RAPPORTEN RESONANS FREDRIK OGRAHN

Web Services. Cognitude 1

Beijer Electronics AB 2000, MA00336A,

Informa(onsinfrastruktur e- infrastruktur (Informa(on infrastructure) enligt Hanseth och Lyy(nen, 2004 Horisontell indelning

Tjänstebeskrivning Tillgång till utökad detektorinformation

Tentamen Grundläggande programmering

XML-produkter. -Registret över verkliga huvudmän (RVH) Teknisk handledning för webbtjänst mot RVH (Web Services) Datum: Version: 1.

Programmering B med Visual C

Från Data till Process

Objektorienterad programmering. Grundläggande begrepp

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo

A metadata registry for Japanese construction field

F8 - Arv. ID1004 Objektorienterad programmering Fredrik Kilander

Swedbank Mobile Loadtesting. LoadRunner Mobile App protocol

Vad kännetecknar en god klass. Vad kännetecknar en god klass. F12 Nested & Inner Classes

Christer Scheja TAC AB

Polymorfi. Objektorienterad och komponentbaserad programmering

802.11b Wireless router w. 4 port switch. StarTech ID: BR411BWDC

UML. Översikt UML. Relationer mellan klasser. A är ett aggregerat av B:n. Kontor aggregat av Enheter. 12 olika diagramtyper, bl.a.

Objektorienterad Programkonstruktion

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det

Voice over IP / SIP. Switching Costs SIP. Motivation for VoIP. Internet Telephony as PBX replacement. Internet Telephony Modes.

Objektorienterad Programkonstruktion. Föreläsning jan 2016

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin

Vad är en einfrastruktur för eförvaltning? einfrastruktur: Insatsområde 2

Distribuerade affärssystem

Föreläsning 8. Designmönster

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016

RFID i järnvägstillämpningar system för framtiden

DATA ÖPPNA DATA LÄNKADE DATA LÄNKADE ÖPPNA DATA

Objektorienterad Programkonstruktion, DD1346 FACIT. Tentamen , kl

Laboration 2: Designmönster

Objektorienterad programmering Föreläsning 11. Copyright Mahmud Al Hakim

Access Direct Bredband

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018

Systemutvecklare SU14, Malmö

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 11 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Webbtjänster med API er

TJÄNSTEBESKRIVNING FASAD Tjänstebaserad direktåtkomst Byggnad

QC i en organisation SAST

Tentamen DE12, IMIT12, SYST12, ITEK11 (även öppen för övriga)

Resultatrapport. Utvärdering. Anbudslämnare. Utvärderingskriterium

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Tentamen, EDAA20/EDA501 Programmering

2.1 Installation of driver using Internet Installation of driver from disk... 3

Vad är gemensam IT-Infrastruktur

Swing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. LayoutManagers. Exempel på några av komponenterna

Läs mer om SLL:s Regionala Tjänsteplattform (RTP)

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

12 juni 2009 Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE

Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? LayoutManagers. Exempel på några av komponenterna

Övning 5 - Tillämpad datalogi 2013

Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11

Mot en ny (?) Internet-arkitektur

Omtentamen i OOSU2, 21 augusti 2014

F9 - Polymorfism. ID1004 Objektorienterad programmering Fredrik Kilander

Webservice & ERP-Integration Rapport

Objekt-orienterad programmering och design. DIT953 Niklas Broberg, 2018

Villkor för anslutning till Nationella tjänsteplattformen

Laboration 2: Designmönster

Main headline. Affärsvärde till Perstorp AB Headline. mha appar SAPSA IMPULS

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Föreläsning 8. Arv. Arv (forts) Arv och abstrakta klasser

TENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: Tid: kl

Föreläsning 1: Introduktion till kursen

DI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson

Objektorienterad konstruktion

Generic type declarations. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Tentamen. 2D4135 vt 2004 Objektorienterad programmering, design och analys med Java Torsdagen den 3 juni 2004 kl

Transkript:

Facit Tentamen 17/3 Informationsinfrastruktur Teoridel (30 p) 1) Svar Application infrastructure innehåller system och tjänster som tillhandahåller funktionalitet och information till olika verksamheter. Service infrastructure innehåller tjänster för säkerhet och identifiering. Data transport infrastructure erbjuder transport av data från olika system och tjänster på applikationsnivån. Serviceinfranstrukturen tillsammans med transportinfrastrukturen understödjer applikationsinfrastrukturen med sina tjänster. Applikationsinfrastruktur: Exempel från uppgiften är den gateway som ni utvecklade och de tjänster som ni anropade för att få information om fordon och platser och den klient ni utvecklade. Serviceinfrastruktur: Exempel från uppgiften är t.ex. de identifierare GIAI och EVN som ni använde er av och t.ex. UDDI and WSDL protokollen som används i webservices. Transportinfrastrukturen: Exempel på detta är TCP/IP och SOAP-potokollets beskrivning av hur XML-filer ska skickas och tas emot. Andra exempel är den tekniska infrastrukturen av RFID-läsare och RFID-taggar på vagnar. 2) Svar En identifierare är en språklig konstruktion som används för att unikt referera till objekt utan att man behöver beskriva objektet. 1 p Genom att identifierare används till att unikt referera till viktiga informationsobjekt och att viktig information kan sökas ut med hjälp av dessa identifierare så måste dessa identifierare och register med sådana identifierare vara lätttillgängliga för de som använder e-infrastrukturen. Detta kan exemplifieras med EVN-numret som användes för att hämta information från fordonsregistret. 3 p c) Problem 1 innebär att man lägger in beskrivande information i identifieraren vilket gör den instabil. Problem 2 betyder att man väljer fel identifierare till fel objekt vilket leder till att man identifiera alla objekt som man vill identifera med hjälp av identifieraren. Problem 3 handlar om att man inte har tillräckligt bra rutiner för att skapa och ta bort identifierare vilket kan leda till att samma identifierare används för att identifiera flera ting eller att ett ting felaktigt får flera identifierare. 3 p 3) Svar

Standarder är en av de mest effektiva medlen för att koordinera den distribuerade designen av e-infrastrukturer. De spelar en dominerade roll när det gäller att koordinera och implementera, IT komponenter på ett distribuerat sätt. c) Tekniska standards (horisontella standards) är standarder som används för att koppla samman IT komponenter i den understödjande strukturen samt komponenter i den understödjande strukturen med IT komponenter i applikationsinfrastrukturen, t.ex. Internet standarder som (TCP/IP, XML) Semantiska standarder (vertikala standards). Standarder för olika verksamhetsområden som definerar hur IT komponenter kan kopplas samman på applikationsnivå. Exempel på tekniska standarder som användes i projektet var TCP/IP och XML. Exempel på verksamhetsmässiga standarder är t.ex. EPCIS meddelandet. 4) Svar Legala förutsättningar (Legal pre-conditions) Det är lagen som möjliggör informationsutbytet. De är mycket viktigare än standarder p.g.a. att standarder är frivilliga lagen är obligatorisk. Lagarna motverkar dock informationsutbyte genom att de ofta inte är i harmoni med och med modern e-förvaltning. Den är ett hinder när den inte är för vag och utelämnar för mycket tolkning eller för detaljerad som omöjliggör god IT design. Den motverkar ett modernt informationsutbyte genom t.ex. en otydlig definition av direkt-access. 5) Svar Gateways Gateways permit information and functionality from multiple applications to be integrated, through rough patches often remain that must be smoothed over by user action. At the user level gateways can be described as IT-capabilities connecting various dispersed applications and work practices. SOA SOA definerar standardiserade system-till-system tjänster som är löst sammanbundna genom att binding sker vid runtime och att de kommunicerar med hjälp av standardiserade XML-meddelanden. Detta gör att man kan koppla samman olika heterogena IT komponenter.

Adapter En adapter är en översättare av olika format och utgör ett interface mellan olika protokoll och standarder. I samband med e-infrastrukturer används adaptrar för att översätta data med olika format i den installerade basen till ett standardiserat format t.ex. XML. Programmerings- och modelleringsdel (25 p) Det finns fyra tydliga identifierade objekt i meddelandet RapportOmUtlastningFrånLager: Transport Identitet på transportfordonet samt ansvarigt företag med kontaktperson Transportlista Definierar lasten av transporten genom en lista av kollin Kolli Ingår i en transportlista och innehåller en produkt vid transport Produkt identifieras med en EPC-kod

En transport har en last som beskrivs i transportlistan. En transportlista beskriver flera kollin och till varje kolli hör till en produkt. XElement HämtaRapportOmUtlastningFrånLager() { XElement aggevent = HämtaAggregationEvent().Element("AggregationEvent"); DateTime eventtid = (DateTime)aggEvent.Element("eventTime"); String parentid = (String)aggEvent.Element("parentID"); XElement fordonregister = HämtaTransportregister(); XElement fordoninfo = fordonregister.elements("transport"). Single(xml => (String)xml.Element("Id") == parentid); var rapport = new XElement("RapportOmUtlastningFrånLager", new XElement("RapportId", Guid.NewGuid()), new XElement("LastTid", eventtid.tostring("dd/mm/yyyy HH:mm")), new XElement("Transport", new XElement("TransportId", Guid.NewGuid()), new XElement("FordonId", parentid), new XElement("AnsvarigtFöretag", fordoninfo.element("företag"), fordoninfo.element("kontaktperson"))), new XElement("TransportLista", new XElement("AntalKollin", aggevent.element("childepcs").elements("epc").count()), new XElement("Kollin", from epc in aggevent.element("childepcs").elements("epc") let produktsvar = HämtaProduktInformation((String)epc) let produktinfo = produktsvar.element("produktinformation") let pföretag = (String)produktSvar.Element("Företag") let pid = (String)produktInfo.Element("Id") let pnamn = (String)produktInfo.Element("Namn") select new XElement("Kolli", new XElement("KolliId", Guid.NewGuid()), new XElement("Produkt", new XElement("Id", pid), new XElement("Namn", pnamn), new XElement("Företag", pföretag)))))); } return rapport;

Exempel XML: <RapportOmUtlastningFrånLager> <RapportId>83b5471c-2ada-409c-ae59-121bc9cac5e3</RapportId> <LastTid>21-06-2011 09:37</LastTid> <Transport> <TransportId>d143fdf6-b882-4a5f-8bfb-aae52f7afc57</TransportId> <FordonId>bcb54b67-d47c-44b2-9246-d57f9f5f6257</FordonId> <AnsvarigtFöretag> <Företag>Rullande transporter AB</Företag> <Kontaktperson> <Namn>Kalle Svensson</Namn> <Telefonnummer>555-555-555</Telefonnummer> </Kontaktperson> </AnsvarigtFöretag> </Transport> <TransportLista> <AntalKollin>2</AntalKollin> <Kollin> <Kolli> <KolliId>c5572bff-992c-4437-958e-9994bfc47884</KolliId> <Produkt> <Id>urn:epc:id:giai:735003433.1317445522194</Id> <Namn>Tandborste</Namn> <Företag>Tandborstar AB</Företag> </Produkt> </Kolli> <Kolli> <KolliId>572ea4a0-b472-4440-82b7-31bc7a96eab3</KolliId> <Produkt> <Id>urn:epc:id:giai:120065575.1317445522192</Id> <Namn>Mjölk</Namn> <Företag>Arla AB</Företag> </Produkt> </Kolli> </Kollin> </TransportLista> </RapportOmUtlastningFrånLager>