Integration, en säkerhetsåtgärd inom IT-arkitektur
|
|
- Elin Jonasson
- för 7 år sedan
- Visningar:
Transkript
1 EXAMENSARBETE INOM DATATEKNIK, GRUNDNIVÅ, 15 HP STOCKHOLM, SVERIGE 2015 Integration, en säkerhetsåtgärd inom IT-arkitektur MANSOUR RAJAIEPOUR KTH KUNGLIGA TEKNISKA HÖGSKOLAN I N F O R M A T I O N S - O C H K O M M U N I K A T I O N S T E K N O L O G I
2
3 Integration, en säkerhetsåtgärd inom IT-arkitektur 3 Integration, en säkerhetsåtgärd inom IT-arkitektur Mansour Rajaiepour Examensarbete för Högskoleingenjörsexamen Kursnummer 6B2085 Examinator Anders Sjögren Akademisk handledare Anders Sjögren KTH Kungliga Tekniska Högskolan Skolan för Informations- och kommunikationsteknik (ICT) Avdelningen för Programvaru- och datorsystem (SCS) SE Kista/Stockholm, Sverige Integration, en säkerhetsåtgärd inom IT-arkitektur 3
4
5 Sammanfattning eller Abstrakt i Sammanfattning eller Abstrakt Företaget AB ska byta sitt affärssystem på grund av att dagens lösning är över 30 år gammal och svårt att underhålla. Behovet av nya funktionalitet i verksamheten kräver att företaget byter affärssystemet till ett nytt system, byggd på nya teknik för att det ska vara lönsamt att underhålla och att det ska fungera x-antal år till. Efter en lång undersökningsperiod har företaget AB valt ett standardsystem för försäljning av sina produkter både på kassa och automater och sina digitala kanaler som består av webbplats och mobila Appar. Syftet med denna undersökning har varit att besvara frågan om ett integrationslager mellan ett standard affärssystem och webbfront kan lösa problem med omkostnader för förvaltning och även säkra känslig data och intrång till försäljningssystemet. För att kunna besvara frågorna kring problemet har diverse relavanta litteratur artiklar lästs samt datainsamlingen har skett genom facktliga litteratur och tidningar, Internet och manualer för att kunna ta fram kartan över relevant data för olika externa och interna intressenter för affärssystemet och utifrån verksamhetens behov. Diskussioner med IT-arkitekter och systemutvecklare i olika möten om företagets behov har också hjälpt till lösningsförslag som beskrivtis i denna dokument. Nykelord IT-arkitektur, Standardsystem, Integration, API, Episerver, Mobila Appar, Biztalk. Integration, en säkerhetsåtgärd inom IT-arkitektur i
6
7 Abstract iii Abstract The company AB will change its business system which was built during the last 30 years, its old technology and also the cost of maintenance. The needs of the new features require that the business system should be built on newer technologies to be more profitable and has longer life time. After further analysis, the company AB has chosen a standard sale system to sell its products both in cashier, ATM and their digital channels consisting of websites and mobile apps. The aim of this study was to answer if an integration layer between a standard business applications and Web fronts can reduce overhead costs for maintenance and also securing sensitive data and data intrusion into the sales system. In order to answer questions about this issue, various of relevant literature articles have been read and data has been collected from fact books, literature and magazines, the Internet and manuals in order to create a map of relevant data for various internal and external stakeholders for the core business system and based on organizations needs. Discussions with IT architects and system developers in various meetings about the company's needs have also helped solution proposals explained in this document. Integration, en säkerhetsåtgärd inom IT-arkitektur iii
8
9 Förord v Förord Jag skulle vilja tacka Anders Sjögren som skapade denna möjlighet för mig att ta examen efter några år som jag var borta från studentlivet och provade på att skaffa erfareneheter inom IT genom att arbeta i olika roller, från programmerare, systemutvecklare till projektledare på olika företag. Stockholm, juni 2015 Mansour Rajaiepour Integration, en säkerhetsåtgärd inom IT-arkitektur v
10
11 Innehållsförteckning eller Table of contents vii Innehållsförteckning eller Table of contents Sammanfattning eller Abstrakt... i Nykelord... i IT-arkitektur, Standardsystem, Integration, API, Episerver, Mobila Appar, Biztalk.... i Abstract... iii Förord... v Innehållsförteckning eller Table of contents... vii Lista på akronymer och förkortningar... ix 1 Introduktion Bakgrund Problemdefinition Syfte Mål Undersökningsmetod Avgränsningar Rapportens disposition Bakgrund Oracle SOA Suite WebMethods IBM WebSphere Message Broker BizTalk Server Sammanfattning Metod Undersökningsprocess och utvecklingsprocess Genomförande Teknik Messaging och AMQP (Advanced Message Queuing Protocol) AMQP Klientbibliotek Topic och Queues Prenumeration AMQP Message Contents Exempelscenario Topics och avsändare Säkerhet och felhantering Databassäkerhet Felhantering Analys Slutsats och framtida arbete Slutsats Framtida arbete Integration, en säkerhetsåtgärd inom IT-arkitektur vii
12 8 Innehållsförteckning eller Table of contents Lista på figurer Referenser Integration, en säkerhetsåtgärd inom IT-arkitektur viii
13 Lista på akronymer och förkortningar ix Lista på akronymer och förkortningar A2A API AS/400 RPG ATM B2B BI BRM CID CBS CMS CRM COTS DB DLL DW ITIL MDM MEP MM AMQP PIM URL SOA ESQL Application to application Application Programming Interface Application System/400 Report Program Generator Automatic Teller Machine Business to business. Business Intelligence Business Relationship Manager Customer Information Display Central Business System Content Mgmt System Customer Relations Mgmt Commercial off the shelf Database Dynamic-link Library Data Warehouse Information Technology Infrastructure Library Master Data Mgmt Message Exchange Pattern Media master Advanced Message Queuing Protocol Product information mgmt. Uniform resource locator Service Oriented Architecture Extended Structured Query Language Integration, en säkerhetsåtgärd inom IT-arkitektur ix
14
15 Integration, en säkerhetsåtgärd inom IT-arkitektur 1 1 Introduktion Förvaltning av äldre system är något som kostar mycket för företag. Det fördelas över lång tid och många gånger är kostnaderna indirekta och inte så lätta att upptäcka. Oftast när man utvecklar komplexa system tänker inte långsiktigt och glömmer att systemförvaltningen kommer att ta en stor del av IT-budgeten år efter år. Den verklighet som företag och organizationer lever i innebär ständiga krav på anpassning och förbättringar, som i sin tur medför att informationssystemen måste inordnas i denna anpassning. Det innebär att systemen måste förbättras, förändras eler bytas ut allt eftersom vilket är ett arbete som utgår från det förvaltningsmässiga perspektivitet i en organisation.[4] 1.1 Bakgrund Företaget AB har ett gammalt system och efter så många år vidare utveckling av systemet har man lyckats skapa ett komplex affärssystem med flera olika integrationer och tjänster till både interna och externa behov. Interna som ekonomisystem och HR för schemaläggning av resurser och externa som försäljning sajt och mobila Appar och dessutom andra externa butiker som säljer några av företagets produkter. 1.2 Problemdefinition Internet fortsätter att spridas till allt fler. Vår användning av internet genom bland annat mobiltelefoner och surfplattor ökar explosionsartat och flera handlar sina vardagsprodukter på nätet. De senaste fem åren har drygt åtta av tio som använder internet handlat över nätet. De stora problemen tidigare var svårigheten att ta betalt för den sålda produkten och att tilliten till betalningssystemet var lågt. Man använde sig till en början av samma affärsmodell som när varorna såldes i vanliga affärer. Men konsumenterna accepterade inte detta. Nu kan man i större utsträckning utnyttja internets möjligheter till större mångfald, lägre pris och större tillgänglighet. Appar som öppnar sig när man trycker på dem i mobilen eller surfplattan och ger tillgång till särskilda program eller innehåll har blivit mycket populära. Kostnaden för användaren är ofta låg eller ingen alls samtidigt som antalet användare kan bli mycket stort. Företaget AB har i flera år byggt sitt eget affärssystem i en komplex lösning och under senaste fem åren har försökt att separera flera applikationer bland annat betalningssystemet så att det blir säkrare transaktioner, lönsamt att underhålla och skapa möjligheter att vidareutveckla nya funktionalitet efter verksamhetens behov. Integration, en säkerhetsåtgärd inom IT-arkitektur 1
16 Integration, en säkerhetsåtgärd inom IT-arkitektur 2 Figur 1.1: Företaget ABs IT systemkarta Ett affärssystem, länkar ihop företagets olika avdelningar (ekonomi, produktion mm) till en enda enhet oavsett geografisk placering av företagets enskilda enheter och dotterbolag, företaget kan i sin tur ha god översikt och kontroll över sin verksamhet. [5] Företaget ABs affärssystemet är byggd i ett AS/400-system (Application System/400) som tillhandahåller både databas och ett programlager. Databasen är i grund och botten en DB2 relationsdatabashanterare från IBM. Programlagret, som anropas bl.a. av kassasystem, är utvecklat i RPG (IBM, Report Program Generator). Programmen anropar köer genom att lägga en sträng bestående av en unik nyckel samt frågenummer m.m på kön. Svar får man genom att lyssna efter svarsmeddelanden med samma nyckel som man själv skickade. Det finns ett integrationslager och ett tjänstelager skrivna i JAVA EE (java Enterprise Edition) för läsning och lagring i databasen och används av företagets digitala kanaler. För att skapa en produktkatalog använder man ett verktyg skriven i Powerbuilder och schemalagda jobb som körs flera gånger per dag för att överföra nya produkterna i den stora produktdatabasen i AS/400. Digitala kanaler består av webbutik och mobila Appar. Webbutiken som är byggt på.net och CMS verktyget EpiServer (Content Mgmt System) där redaktörer publicerar egenskaper om produkterna och försäljningsställen. Mobila Appar med ett integrationslager som hämtar både innehåll i form av text och bild för produkter från EpiServer och försäljningsdata i form av lagerstatus, priser, försäljningsställen m fl. från affärssystemet. Integration, en säkerhetsåtgärd inom IT-arkitektur 2
17 Integration, en säkerhetsåtgärd inom IT-arkitektur 3 I flera år har företaget AB haft funderingar att utveckla ett nytt affärssystem med nya möjligheter men olika affärsbeslut och prioriteringar i ombyggnationer befintliga försäljningsställen och bygga nya försäljningsställen hindrade IT-utveckling av ett modernt affärssystem. Under dessa år har behovet av anpassade affärssystem för denna bransch. 1.3 Syfte Syftet med projektet är att undersöka organisationens behov av försäljningsdata och identifiera tekniska möjligheter och lösningsförslag för ett standardsystem som kan tolka försäljningsdata och leverera till olika interna och externa system för t ex rapportera försäljnings data till ekonomiavdelningen, koppla externa försäljningsställen till affärssystemet, läsa och skriva in i affärssystemet från digitala kanaler m fl. 1.4 Mål Målet är diskutera fördelar och nackdelar av integrationsplattformar, hitta företags krav och begränsningar och ge ett förslag för lösning till en av de stora frågorna om affärsregler i samexisterande lösningar, d v s det gama och nya affärssystemet. 1.5 Undersökningsmetod För att kunna besvara frågorna kring problemet har diverse relevanta litteratur artiklar lästs samt datasamlingen har skett genom fackliga litteratur och tidningar, Internet och manualer för att kunna ta fram kartan över relevant data till olika externa och interna intressenter från affärssystemet utifrån deras behov. 1.6 Avgränsningar Studien har fokus på integration mellan affärssystem och övriga interna och externa applikationer. För att beskriva problemet och lösningsförslaget har beskrivits ett exempel om samexisterande system och valde lösningen för presentkort i det gamla och nya systemet. Det som inte har tagits med infrastrukturen och drift av olika miljöer i de fysiska servermiljöerna, de molnbaserade miljöerna och kommunikationen mellan dem. 1.7 Rapportens disposition Kapitel 2 beskriver olika integrationsplattformar med fokus på BizTalk som ska användas i företagets IT-arkitektur. Metoden som har använts för studien presenteras i kapitel 3 och problem, lösningar och exempel på lösning på samexisterande system beskrivs i kapitel 4. Integration, en säkerhetsåtgärd inom IT-arkitektur 3
18
19 Integration, en säkerhetsåtgärd inom IT-arkitektur 5 2 Bakgrund Kristian Tomeby [1] IT-arkitekt från Företaget Imano har svarat på frågan om Varför vi ska använda en integrationsplattform. Han tycker för att skapa större flexibilitet bör företag byta ut befintliga system till en standard integrationsplattform detta underlättar att ansluta externa intressenter eller knoppa av eller ansluta verksamheter. integrationsplattform minimerar systemberoenden och genom en gemensam definierad begreppsmodell kan man enklare ansluta nya system och förenklar underhållet av integrarade system. De stora IT-systemleverantörerna har någon form av integrationsplattform bland sina produkter och bland de vanligaste integrationsplattformar kan man nämna - Oracle SOA Suite (BEA weblogic) - webmethods (Software AG) - IBM WebSphere Message Broker - BizTalk Server (Microsoft) 2.1 Oracle SOA Suite Service Oriented Architecture ( SOA ) är ett tankesätt för att organisera och utnyttja distribution av funktionalitet som kan vara under kontroll av olika domäner med olika ägare. [2] SOA är ett sätt att utveckla affärslösningar och mjukvaruapplikationer så att mjukvaruprocesser bryts ned till servicetjänster som sedan görs tillgängliga och möjliga att upptäcka över nätverket. Varje enskild tjänst erbjuder funktionalitet som kan anpassas efter organisationens behov samtidigt som de underliggande detaljerna för implementeringen behålls dolda. SOA riktar sig mot den komplexitet, avsaknad av flexibilitet och de svagheter som existerar i arbetssättet som finns i utveckling av processer, arbetsflöde och integration mellan applikationer. [3] 2.2 WebMethods Software AG:s Business Process Management Platform är ett enhetligt produkt för att skapa affärsapplikationer som bygger på orchestrated, förvaltar och övervakar end-to-end affärsprocesser eller arbetsflöden. Webmethods förbättrar processhastigheten, synligheten, smidighet och samtidigt minska kostnaderna och kör standardisering av alla kritiska komponenter i en effektiv verksamhet.[8] WebMethods är baserad på Java men med korskompilering klarar den att översätta till både C++, C# och JavaScript. Ramverket har också stöd för alla plattformar som är och bli aktuella på marknaden. Om det kommer en ny plattform kommer det mest troligt att läggas till stöd även för den inom en kort framtid.[7] Integration, en säkerhetsåtgärd inom IT-arkitektur 5
20 Integration, en säkerhetsåtgärd inom IT-arkitektur 6 Fördelar Software AG stort företag. Bra API stöd. Nackdelar Har bara stöd för en IDE. Man blir tvungen till att skriva UI lösning vid sidan av. Många stora företag använder ramverket Väldigt bra support. Fördelar och nackdelar med WebMethods 2.3 IBM WebSphere Message Broker IBM WebSphere Message Broker (tidigare IBM WebSphere MQ Integrator) är ett system för att hantera meddelandeköer. Det innebär att information flödar mellan olika datorprogram och system. Den är byggd för universella förbindelser och omvandling i heterogena IT-miljöer. WebSphere Message Broker distribuerar information och data som genereras av affärshändelser i realtid för människor, applikationer och interna och externa system. WebSphere Message Broker förbättrar flödet och spridningen av informationen genom att omvandla och förmedla meddelanden utan att ändra i programmet som genererar meddelanden eller programmet som konsumerar dem. [9] En av de vanligaste uppgifterna för ett integrationsplattform är att omvandla ett meddelande från ett format till ett annat. Websphere Message Broker erbjuder sex olika sätt att utföra denna mappningsfunktion: Mapping Node, Compute Node, Java Compute Node, NET Compute Node, PHP Compute Node och XSL Mapping Node. [10] Mapping Node är det enklaste sättet att omvandla ett meddelande. För att använda den måste projektet i whebsphere referera till meddelandemodeller. Mapping Node använder modellerna för att mappa datafält från in-parametrar till ut-parametrar. Compute Node är ett enkelt sätt att programmässigt definiera eller omvandla ett meddelande via ESQL (Extended Structured Query Language). ESQL är en mycket enkel och rakt på sak metod. Den har också två funktioner som automatiskt genereras för att omvandla meddelanden. CopyMessageHeaders() och CopyEntireMessage(). Java Compute Node är lite mer komplicerat än ESQL eftersom den använder objekten för att skapa en meddelandemodell. Java-kod som motsvarar ESQL är vanligtvis längre och mer detaljerad. PHP Compute Node hanterar in- och utgångsstrukturen som ESQL. PHP är ett dynamiskt skript språk och det är mycket lättare att göra små ändringar i meddelandet än i en Java Compute Node..NET Compute Node, till skillnad från de andra modeller, utvecklas inte i Websphrere utan i Microsoft Visual Studio..NET Compute Node har ett egenskap som pekar på en dll eller exekveringsfil och ett egenskap som anger klassnamnet som ska användas. Det sista sättet att omvandla ett meddelande är att använda XSL Mapping Node. XSL är ett verktyg som ofta används för att göra om en XML-fil till HTML på en webbsida men det kan också användas för att omvandla en XML-fil från ett format till ett annat. Integration, en säkerhetsåtgärd inom IT-arkitektur 6
21 Integration, en säkerhetsåtgärd inom IT-arkitektur BizTalk Server BizTalk är en meddelandebaserad applikation som tillåter kommunikation mellan diverse program dessutom möjliggör att bygga och modifiera affärsprocesser. Den är byggd på.nets ramverk och utvecklingen sker i Visual Studio. SQL server är lagringsmedia som BizTalk använder. Messageing-komponenten är det viktigaste i BizTalk som möjliggör kommunikation med många andra programvaror genom olika typer av sk adaptrar. De stödjer flera olika protokoll och dataformat. Utöver detta ingår bland annat Business Rules Engine i BizTalk som tillåter evaluering av relgler i platformen. Oftast har olika verksamheter, som Företaget AB, egenutvecklat sina applikationer eller använder andra applikationer som är utspridda på olika system och har tillverkats på olika plattformar, teknik och tidpunkter. Affärsprocesserna kräver sammankoppling och integration av olika system inom ett företag eller över flera organisationer och detta är grundläggande i BizTalk. I Business Rules Engine kan man definiera och ändra affärersregler på ett smidigt och enkelt sätt. För att beskriva affärsregler definierar ett ordförråd för en viss regel. Sedan skapas affärspolicyn baserade på definitioner i ordförrådet. En policy innehåller en eller flera affärsregel som använder logiska operatorer för att definiera hur affärsprocessen arbetar. 2.5 Sammanfattning Det som respektive företag ska tänka på innan de satsar på en integrationsplattform är att analysera olika plattformar och lösningar och tänka på nedanstående punkter för att underlättar beslut av val av en integrationsplattform. Kostnad Funktion Stöder produkten min integrationsstrategi Kommunikationsstrategi Miljö Kompetens Förvaltning -Inköpspris -Förvaltningskostnad -Meddelanderouter -Processintegration -Löst kopplade system -Tjänsteorienterad arkitektur (SOA) -Prenumerera på uppdaterad information. (Pub/Sub) -Köer -Adaptrar -Transaktionssäkerhet -Microsoft plattform -Java plattform -IBM -Stordator -Intern kompetens, vilken intern kompetens finns idag. -Konsultkompetens -Långsiktig förvaltning -Förvaltningsbar -Kommer produkten att finnas i Sverige om fem år? -Support Integration, en säkerhetsåtgärd inom IT-arkitektur 7
22 Integration, en säkerhetsåtgärd inom IT-arkitektur 8 Integration, en säkerhetsåtgärd inom IT-arkitektur 8
23 Integration, en säkerhetsåtgärd inom IT-arkitektur 9 3 Metod Analys av insamlade data i olika möten och diskussioner med representanter från olika avdelningar har gjorts för att skapa en bild på verksamhetensbehov av relevant data i olika former för att kunna behandla det i både interna och externa verktyg. Faktorer som har fokuserat på för att skapa den bästa lösningen har varit standarder, skalbarhet, flexibilitet, framtida förändringar och begränsningar dessutom kostnadseffektiviteten som är oftast i fokus för företag. Studie av relevanta litteratur, facktidningar, manualer och även webbsidor som W3C, Microsoft, MSDN, BEA weblogic, Software AG, IBM Webshere, Appache Project, SDN m fl. har get bidrag till studien och framtagning av en proof of concpet för pilotprojektet väg visade projektets riktning. 3.1 Undersökningsprocess och utvecklingsprocess Under uppstart av arbetet behovet av att upprätthålla kuponger och presentkort i två samexisterande systemen har identifierats då utrullningen av nya systemet i olika försäljningsställen kommer att ta över ett år. Lösningsförslaget är att kortserien ska skapas och i det befintliga affärssystemet. Därefter måste hela kortserien migreras till det nya affärssystemet. När korten har migrerat information om eventuella nya kortserie måste synkroniseras mellan de båda systemen. Dessutom så snart kortserien används, måste synkroniseras saldot på t ex presentkorten. För att det ska fungera genom att asynkrona meddelanden mellan de två systemen. Integration, en säkerhetsåtgärd inom IT-arkitektur 9
24 Integration, en säkerhetsåtgärd inom IT-arkitektur 10 Integration, en säkerhetsåtgärd inom IT-arkitektur 10
25 Integration, en säkerhetsåtgärd inom IT-arkitektur 11 4 Genomförande För att hitta den bästa lösningen började vi med planering och uppstart av projektet för att bekanta oss med det nya affärssystemet, hitta de gemensamma funktionerna mellan olika försäljningssystem för hela företaget. I arbetet gick även framtagning av förslag för en ny webbplattform för att hantera alla företaget webbsajter för olika marknader. Integrationen av olika system i dagenslösning är komplex och odokumenterade. Personalen som har jobbat med nuvarande systemet är upptagna kan inte förklara och dokumentera integration och dataöverföringar mellan olika system. utöver detta har det nya affärssystemet inte alla integrations API:erna färdigutvecklade efter företagets affärsregler och behov och utvecklarna är tvungna att göra rätt från början så lösningen håller långsiktigt. I undersökningen av integrationsplattformar såg vi att de flesta plattformar klarar våra tekniska behov och det som kommer att göra denna integration lyckad är valet av integrationspartner och deras engagemang och kunskap inom området. Det gjordes en analys av flera integrationsplattformar bl.a BizTak för att förstå hur de fungerar och om de täcker företagets behov för att sammankoppla olika applikationer och system, både befintliga och nya tillsammans. Valet av plattformen gick på grund av tidigare samarbetspartner som tar hand om förvaltning av befintliga system och kompetens inom.net och BizTalk valdes som företaget AB:s integrationsplattform. 4.1 Teknik Messaging har valts eftersom det är ett enkelt och effektivt sätt att överföra information mellan det befintliga och nya affärssystemet medan systemen samtidigt hålls i gång och är frikopplade. Messageing ger oss möjlighet att: - snabbt överföra data mellan systemen - frikoppla data utgivaren och data konsumenten - Använd kö för uppskjutna (sekunder) och leveranssäkerhet - Tillåta för asynkron kommunikation - lastbalansering och skalning - Övervaka trafik i realtid Messaging och AMQP (Advanced Message Queuing Protocol) Varför asynkron kommunikation? Messaging har valts eftersom det är ett enkelt och effektivt sätt att överföra information mellan det befintliga och nya affärssystemet medan systemen samtidigt hålls i gång och är frikopplade. Integration, en säkerhetsåtgärd inom IT-arkitektur 11
26 Integration, en säkerhetsåtgärd inom IT-arkitektur 12 Flera alternativ (t.ex. en riktad uppdateringar dagligen csv -fil och dubbelriktad dagliga CSVfiler uppdateringar) utvärderades och kasseras. Ta bort möjligheten att använda presentkort/kuponger i flera försäljningsställen är affärsmålet. Inte synkronisera eller en fördröjd synkronisering skulle utsätta hela verksamheten till denna risk. Meddelanden ger oss möjlighet att: - snabbt överföra data mellan systemen - frikoppla datautgivaren och datakonsumenten - Använd kö för uppskjutna(sekunder) och leveranssäkerhet - Tillåta för asynkron kommunikation - lastbalansering och skalning - Övervaka trafik i realtid AMQP ( är en effektiv, pålitlig, kommunikationsprotokoll som kan användas för att bygga robusta meddelandeprogram som är plattformsoberoende. AMQP ger möjligheter att utnyttja köande, publicera eller prenumerera förmedlade meddelandefunktioner för en Service-bus från en rad olika plattformar, med hjälp av ett effektivt binär protokoll. AMQP enables us to leverage the queuing and publish/subscribe brokered messaging features of a service bus from a range of platforms, using an efficient binary protocol. AMQP är: - Generellt gäller för företag - Ett öppet standardprotokoll - plattformsoberoende (olika programmeringsspråk kan genom AMQP kommunicera enkelt) - Driftkompatibel - Standard port är 5672 (TCP) - Har flera överföringskanaler Används av flera stora företa som Deutsche Börse, Red Hat, NASA, VMWare, Google och flera andra framstående företag Med stöd av de multipla Service-bus implementeringar Integration, en säkerhetsåtgärd inom IT-arkitektur 12
27 Integration, en säkerhetsåtgärd inom IT-arkitektur 13 Figur 4.1: msdn Microsoft.com, ett exempel distribution där Java klienter som JMS API, och NET -klienter som körs på Windows, utbyta meddelanden via Service Bus använder AMQP AMQP Klientbibliotek För närvarande rekommenderas nedanstående klientbiblioteken: C# Service Bus.NET client library Java Apache Qpid Java Message Service (JMS) client IIT SwiftMQ Java client C Apache Qpid Proton-C PHP Apache Qpid Proton-PHP Python Apache Qpid Proton-Python Topic och Queues Köer erbjuder Först in - Först ut (FIFO) dataleverans till en eller flera datakonsumenter i systemet. Det vill säga, är meddelanden typiskt förväntas tas emot och bearbetas av mottagarna i tidsordning som de lades till i kön och varje meddelande tas emot och behandlas av endast en datakonsument. Topic är i motsatsen till köer, där varje meddelande behandlas av en enda konsument, Topics och prenumeration ger en en-till -många kommunikationsform i en "publicera/prenumerera" modell. Det är användbart för skalning av ett mycket stort antal mottagare, varje publicerade meddelande är tillgänglig för varje abonnent som är registrerade på Topic. Meddelanden skickas till ett Topic och levereras till en eller flera tillhörande abonnenter beroende på filterregler som kan ställas in på en förabonnerad. Integration, en säkerhetsåtgärd inom IT-arkitektur 13
28 Integration, en säkerhetsåtgärd inom IT-arkitektur Prenumeration För att jämföra kan nämnas att utskickfunktionaliteten av meddelanden i en kö kartläggs direkt till Topics och dess mottagandefunktionalitet kartläggs till en prenumerant. Det bland annat innebär att prenumeration stöder samma modell som beskrevs tidigare för köer, konkurrerande konsumenten, temporal frikoppling, lastutjämning och lastbalansering AMQP Message Contents Ett AMQP meddelande kan bestå av flera delar. Den mest intressanta delen i inställningen är programdata delen som kan ses som kroppen av meddelandet. Innehållet i applikationsdata kommer att formateras med hjälp av JSON -formatet i stället för XML som det är lite mindre utförlig och enklare att använda i mångspråkiga system men ändå lämnar vårt program med en hel del framtida flexibilitet. 4.2 Exempelscenario Hantering av kort och kuponger under migrering Det nya affärssystemet som ska migrereas den befintliga AS400-baserade affärssystemet är en Windows Server/Oracle DB-baserat system. Termen "Migrering" används här för att beskriva processen när en butik förändras från att hanteras av det befintliga systemet att hanteras via det nya systemet. Denna process innebär främst att ersätta befintliga kassasystem och automater till det nya affärssystemet. I vissa fall, även hårdvaran på butikerna (eller delar av) behöver bytas ut. Migreringen kommer inte att ske i en "big-bang" paradigm, i stället en butik (eller ett få antal butiker) kommer att migreras i taget. Det innebär att under utrullningsperioden kommer det att finnas två backend-system samtidigt. Vissa butiker kommer att hanteras av det befintliga systemet (AS400) och andra kommer att hanteras av det nya systemet. Det faktumet att det finns två aktiva affärssystem under en fas kommer i allmänhet att ha inverkan på: - Webblösningen inkl betalfunktion - Mobila lösningen inkl betalfunktion - Presentkort, kuponger, rabattkort, personalkort och liknande När ett presentkort eller kupong används behöver databasposten som representerar objektet uppdateras och det måste den märkas som använd. För ett presentkort måste även balansen minskas. För andra typer av kort med ett visst antal köp laddade behöver en räknare sänkas osv. Under utrullning av det nya affärssystemet ska finnas en samexistans mellan det gamla och nya affärssystem för att bl. a presentkort köpta i ett system som ska kunna användas i det andra. Integration, en säkerhetsåtgärd inom IT-arkitektur 14
29 Integration, en säkerhetsåtgärd inom IT-arkitektur 15 Figur 4.2: Pproblem under utrullning av nya affärssystemet. Detta är en mycket grundläggande bild blad de viktigaste problemen som ska lösas. Om ingenting görs kommer bland annat presentkorten som avges i ett system inte vara möjligt att användas för köp av produkter i en butik som hör till det andra systemet. Som ett första tillvägagångssätt kan vi fundera över vad som skulle hända om vi migrerade kortnumren korsvis mellan systemen. Detta löser våra problem delvis. Men leder oss in på andra grundläggande problemet. Figur 4.3: Att kopiera kortnumren i båda systemen Efter migreringen kommer ett problem uppstå då ett kortnummer ges ut i ett system och används i ett annat system. Integration, en säkerhetsåtgärd inom IT-arkitektur 15
30 Integration, en säkerhetsåtgärd inom IT-arkitektur 16 I det nya systemet är detta OK men i det befintliga systemet är objektet inte märkt efter användning och det innebär att samma åtgärder kan vidtas i det gamla systemet. För en verifikation kan den användas igen och för ett presentkort balansen inte minskas, det vill säga samma summa som används i det nya systemet kan användas åter igen. För att övervinna detta, är det nödvändigt med en korsvis uppdateringshändelse mellan de båda systemen. Ett annat problem är då vi skapar nya kortnummer under utrullningsfasen. Om vi antar att nya kortnumren tillverkas i både gamla och nya systemet måste det finnas överföring till det andra systemet varje gång nya objekt skapas. Detta är både resurskrävande och förmodligen riskabelt och vi ska försöka undvika upprepade migration i möjligaste mån. För att underlätta arbetet ska vi låta presentkorten skapas i det befintliga systemet. I det befintliga systemet publiceras en kortuppdatering till Service Bus Topic och kortuppdateringen från nya affärssystemet ska hämtas. Figur 4.4: överföring av innehåll från det gamla till det nya affärssystemet Kort som används i det nya systemet har ett liknande scenario och förväntas när kort skapas och används i det nya systemetet. Integration, en säkerhetsåtgärd inom IT-arkitektur 16
31 Integration, en säkerhetsåtgärd inom IT-arkitektur 17 Figur 4.5: överföring av innehåll från det nya till det gamla affärssystemt Topics och avsändare Topics för att prenumerera och skicka kallas co-existens. Vi skapar olika prenumerationer i varje Topics som kan avlyssnas, ena kan kallas NewSystem (för det nya affärssystemet) och den andra OldSystem för (det gamla). Figur 4.6: Konfiguration av Service Bus Integration, en säkerhetsåtgärd inom IT-arkitektur 17
32 Integration, en säkerhetsåtgärd inom IT-arkitektur 18 Egenskaper för meddelande i Topics Varje meddelande som skickas eller tas emot i en Topic måste innehålla en context property som anger vilket system är avsändaren eller emottagaren. Dessa egenskaper kallas Sender och Receiver. Integrationsplattformen hanterar egenskapen Receiver som dirigerar meddelanden till rätt mottagare. Men varje system som skickar meddelanden till Topic måste sätta context property Sender till namnet på det avsändare systemet, t ex Sender = 'OldSystem. Skicka meddelande till en Topic För att skicka ett meddelande via en Service Bus Topic ska applikationen skapa ett ServiceBusContract protokoll. Nedanstående kod visar hur ett meddelande skickas till "coexistence" topic (Exempel i Java): Från det nya systemet BrokeredMessage message = new BrokeredMessage("Sample Message"); message.setproperty("sender","newsystem ); service.sendtopicmessage("coexistence", message); Från det gamla systemet BrokeredMessage message = new BrokeredMessage("Sample Message"); message.setproperty("sender","oldsystem ); service.sendtopicmessage("coexistence", message); Det ska noteras att det inte finns behovet att sätta mottagaren för att integrationsplattformen hanterar det. Hämta ett meddelande från en topic Det nya systemet är mottagaren här och prenumererar till meddelandet som det är intresserad av. I detta exempel är det nya systemet en prenumerant under coexistence Topic (Exempel i C#) SubscriptionClient Client = SubscriptionClient.CreateFromConnectionString (connectionstring, "coexistence", "NewSystem"); Beroende på klientens programmeringsspråk, kan koden se något annorlunda ut men detta bör ge en uppfattning om hur det sätts upp. Integration, en säkerhetsåtgärd inom IT-arkitektur 18
33 Integration, en säkerhetsåtgärd inom IT-arkitektur Säkerhet och felhantering AMQP stöder olika säkerhetsprotokoll, inklusive SSL och Kerberos. Det sist nämnda är också ett system för autentisering inom datorteknik, för att användare kan visa vem de är för datorer och tjänster, samtidigt som de får verifierat att tjänsten verkligen är den de tror sig använda. Beroende på plattformen kan behövas servercertifikateter som ska konverteras till ett visst format (PEM, DER, PKCS # 12, etc) och vi kommer att använda SSL. Figur 4.7: Transport Layer Security kommer att ge tillräcklig säkerhet för meddelanden Databassäkerhet Behovet av att kryptera nycklar finns i databasen i samband med korthanteringen (dvs. kortnummer, CVV, etc). Kryptering är inte trivial och detta kommer att bli aktuellt för diskussion i framtiden men som alltid grunden för låsta kryptering är hantering av nycklar. Vi måste lösa nyckelhanteringsfrågan först om databaskryptering måste genomföras i projektet Felhantering En annan fråga som ska funderas är felmeddelanden och informationssyftet. Ett meddelande kommer att läggas på detta om en eller flera av följande villkor är uppfyllda: - Felet inträffar på grund av en felaktig format. Integration, en säkerhetsåtgärd inom IT-arkitektur 19
34 Integration, en säkerhetsåtgärd inom IT-arkitektur 20 - Felet inträffar på grund av felaktiga uppgifter (t ex obefintliga kortnummer, ogiltig balans, etc.) - Meddelandet kunde inte bearbetas på grund av ett internt fel. I de två första fallen kommer meddelandet ses över (troligen manuellt) och skickas om. I det tredje fallet, dvs. internt fel, kommer det behandlas som en varning om att meddelandet ska skickas igen en gång till när felet är löst. Fel Topic hanteras av integrationsplattformen som kommer att åtgärda felet beroende på innehållet. Det gamla och nya systemet kommer endast att publicera meddelanden. Integration, en säkerhetsåtgärd inom IT-arkitektur 20
35 Integration, en säkerhetsåtgärd inom IT-arkitektur 21 5 Analys Nedanstående detaljerade arkitekturbild kan summera ovanstående kapitel där man kan se de olika modulerna/tjänster i front-end och integrationslagren. Arkitekturen är också uppbyggd utifrån lärdomar gjorda i en prototyp Figur 5.1 Arkitekturbild av Företaget ABs framtida IT-system Strategiska mål om varför ska ett standard integrationssystem användas är bland annat för att kunna ha kortare sk Time - to-market för innehåll, utveckla nya funktioner, bygga till nya system och koppla till externa system dessutom motståndskraft mot ändrade affärs krav, lägre underhålloch driftkostnader. Kortare Time-to-Market kan betyda att kanaler kan läggas till eller bytas ut oberoende av vilket Online plattform som helhet, enkel separation av systemet vid försäljning av de lokala marknaderna, mer frekventa och testbar releaser, möjlighet att arbeta med flera backlogs parallellt, minska redaktörsarbetet och att det underlättar externa och tredje part leverantörers kopplingar. En modulbaserad arkitektur möjliggör kostnadseffektiva marknadernas specifika önskemål. Flexibel driftsättning i en molnbaserad drifttjänst stöder planerad eller sk On Demand uppskakning av systemet för prestanda, redundans och/eller Geografiska distribution. I såna tjänster ingår alltid detaljerad realtidsövervakning av både server och klient prestanda. Integration, en säkerhetsåtgärd inom IT-arkitektur 21
36 Integration, en säkerhetsåtgärd inom IT-arkitektur 22 Integration, en säkerhetsåtgärd inom IT-arkitektur 22
37 Integration, en säkerhetsåtgärd inom IT-arkitektur 23 6 Slutsats och framtida arbete I underlaget som lämnades till ledningen rekommenderades att en sk COTS system (Commercial off the Shelf), dv s ett system som kan köpas eller licensieras från en öppen marknad i motsats till egenutvecklad eller beställningsutvecklad mjuk- eller hårdvara, ska implementeras. Då får företaget i den mån det är möjligt och klokt, sträva efter att anpassa affärsprocesser till det nya systemet, inte tvärtom. Organisationens perspektiv ska vara gemensam lösning men det ska opereras lokalt vilket det betyder att systemet ska anpassas för hela organisationen men det ska kunna konfigureras för lokala behov. Lokala funktionalitet måste utmanas och förhoppningsvis hålls till ett minimum utan att äventyra de lokala företagen. Projektet ska ha leveranser uppdelade i faser efter prioriteringar som har tagits fram i olika kravmöten med lokala marknader. 6.1 Slutsats Med nyare standardsystemen för försäljning kommer företagets komplexa system delas på tre olika delar. Ett försäljningssystem, integrationslager för kommunikation mellan interna system som ekonomi, HR etc. och ett integrationslager för kommunikation mellan olika digitala kanaler. Kommunikation mellan affärssystemet och webblagret ska gå genom en annan integrationslager som ska ha kontroll över datalagret för produkter i en sk PIM och betallösningen som drifts av en extern leverantör på grund av säkerhetsåtgärder och certifiering. 6.2 Framtida arbete Kartan över systemen blev större och större och då behovet av en ny integrationsplattform för att hantera alla system som måste prata med varandra blev tydligare och tydligare. Projektet startade med flera agilt, korsfunktionellt utvecklingsteam med kompetens inom gränssnitt-, Episerver- och integrationsutveckling, webarkitektur, UX/design och test som Jobbar i 3- veckorssprintar. Standard affärssystemet utvecklas parallellt för att bygga in de specifika affärsreglerna för respektive marknad inom företaget och där med kartlagds risker under projektet som består av pressad tidplan för ett så stort och komplext projekt, oförutsedda hinder och gap mellan webben och det nya affärssystemet som vi inte har upptäckt ännu etc. En del avgörande beslut för systemet betyder förändringar i verksamheten och behöver förankras med respektive avdelning och marknad. Integration, en säkerhetsåtgärd inom IT-arkitektur 23
38 Integration, en säkerhetsåtgärd inom IT-arkitektur 24 Integration, en säkerhetsåtgärd inom IT-arkitektur 24
39 Integration, en säkerhetsåtgärd inom IT-arkitektur 25 Lista på figurer Figure1.1: Företaget ABs IT systemkarta Figur 4.1: msdn Microsoft.com, ett exempel distribution där Java klienter som JMS API, och NET -klienter som körs på Windows, utbyta meddelanden via Service Bus använder AMQP 1.0 Figur 4.2: Pproblem under utrullning av nya affärssystemet. Figur 4.3: Att kopiera kortnumren i båda systemen Figur 4.4: överföring av innehåll från det gamla till det nya affärssystemet Figur 4.5: överföring av innehåll från det nya till det gamla affärssystemt Figur 4.6: Konfiguration av Service Bu Figur 4.7: Transport Layer Security kommer att ge tillräcklig säkerhet för meddelanden. Figur 5.1 Arkitektutbild av Företaget ABs framtida IT-system Integration, en säkerhetsåtgärd inom IT-arkitektur 25
40 Integration, en säkerhetsåtgärd inom IT-arkitektur 26 Integration, en säkerhetsåtgärd inom IT-arkitektur 26
41 Integration, en säkerhetsåtgärd inom IT-arkitektur 27 Referenser [1] Kristian Tomeby, projektledare/arkitekt, BizTalk-specialist med 13 års erfarenhet inom integration, Nyttan med integrationsplattformar och meddelandestandards ( 026bcd0464cc&OwnerType=0&PropertyName=Files&FileName=Nyttan+med+integrationsplattformar +och+meddelandestandards.pdf) [2] OASIS, Reference Model for Service Oriented Architecture 1.0 ( [3] Epicor Software Corporation, Service-oriented Architecture ( [4] Jerry Eriksson, Mikael Hedman, Systemförvaltning ur IT-chefens perspektiv (2004:203 SHU, ISSN: IRSN:LTU-SHU- -04/203 SE) [5] Karl A. S. Widerberg, Younus Bhuiyan, Integrationsarkitektur och standardisering inom molntjänster (2012) (URN: nbn:se:kth:diva , OAI: DiVA.org:kth , DiVA: diva2:617540) [7] Lena Sandvik, Michael Krog, Kristian Johannessen, Snorre Olimstad, Alexander Wehlin Produktrapport ( [8] Software AG s webmethods Business Process Management Platform ( [9] IBM WebSphere Message Broker ( [10] Paul Bauman, Mapping Messages in WebSphere Message Broker V8 (
42 Integration, en säkerhetsåtgärd inom IT-arkitektur 28 Integration, en säkerhetsåtgärd inom IT-arkitektur 28
43 Integration, en säkerhetsåtgärd inom IT-arkitektur 29 TRITA-ICT-EX-2015:148 Integration, en säkerhetsåtgärd inom IT-arkitektur 29
Nyttan med integrationsplattformar och meddelandestandards. Länken mellan verksamhet och IT
Nyttan med integrationsplattformar och meddelandestandards Länken mellan verksamhet och IT 0 Agenda Inledning Integrationsplattformar Standarder Frågor 1 Kristian Tomeby Verksamhetskunnig projektledare/arkitekt
Molntjänster. Översikt. Lektion 1: Introduktion till molntjänst. Introduktion till molntjänst. Vilka tjänster finns? Säkerhet.
Molntjänster Översikt Introduktion till molntjänst. Vilka tjänster finns? Säkerhet. Lektion 1: Introduktion till molntjänst Vad är detta? the Cloud. Definition av molntjänster. Tjänster. Skikt. Klient.
Middleware vad, hur, varför när?
Middleware vad, hur, varför när? Anders Kingstedt Askus AB Ersättas med en bild 1 Disposition Vad? Hur? Varför? När? Målsättning Ge er möjlighet att skilja på och 2 Vad? - är Middleware Ersättas med en
Klient/server. Översikt. Lektion 1: Webbtekniker från Microsoft. Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning.
Klient/server Översikt Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning. Lektion 1: Webbtekniker från Microsoft Microsoft webbtekniker. ASP.NET. Klientsidan. Internet Information Server.
Daniel Akenine, Teknikchef, Microsoft Sverige
Daniel Akenine, Teknikchef, Microsoft Sverige Quincy Invånare: 5,300 Arbete: 52% jordbruk 18 % byggsektor 18 % offentlig sektor Språk: Spanska 57% Företaget Inköp Företaget Inköp Installering Lång
Web Services. Cognitude 1
Web Services 1 Web Services Hur ska tillämpningar integreras? Hur ska tillämpningar integreras (via nätet ) för att erbjuda tjänster åtkomliga på nätet? SVAR: Web Services (Enligt Microsoft, Sun, IBM etc.)
BTH Studentkontohantering API Management
BTH Studentkontohantering API Management Leif Lagebrand, projektledare 2017-10-18 BTH och molnet Använt Azure sedan 2016-05 All nyutveckling i molnet= Azure När gamla tjänster/funktioner skrivs om åker
Cloud Computing. Richard Richthoff Strategisk Rådgivare Radar Group International
Cloud Computing Richard Richthoff Strategisk Rådgivare Radar Group International Dagens Investeringar Total IT spend 2009: 155 + 30=185BSEK 160,0 140,0 46,5 120,0 100,0 80,0 53,4 60,0 40,0 20,0 0,0 31,0
INNEHÅLL. Konfigurering av SQL Server. Egenskaper Kommunikationsprotokoll
INNEHÅLL Konfigurering av SQL Server Egenskaper Kommunikationsprotokoll 1 KONFIGURERING AV SQL SERVER SQL Server är nästan självkonfigurerande. Minne, anslutningar och buffrar hanteras dynamiskt. Man kan
Sustainable engineering and design
Sustainable engineering and design 1 Bildyta - Välj Infoga bild Trender inom geografisk IT Hur hanterar man att GIT idag är en del av IT-utveckling och verksamhetsutveckling? Mikael Elmquist Sweco 2 Geografisk
DIG IN TO Nätverksadministration
DIG IN TO Nätverksadministration Nätverksadministration Datormolnet The Cloud Agenda IT förändras kontinuerligt IT infrastruktur behöver byggas ut Högre krav på IT infrastrukturen Vad är datormoln? Vad
Distribuerade affärssystem
Distribuerade affärssystem Kursens mål Bygga upp, strukturera och programmera distribuerade system med en flerskiktsarkitektur Beskriva och förklara teorier och uttryck som används inom affärskritiska
KONSULTPROFIL Rodrigo
KONSULTPROFIL Rodrigo Systemutvecklare.NET/EPiServer/SharePoint Sammanfattning Rodrigo är en utåtriktad och glad person med båda fötterna på jorden som trivs både med att leda och samarbeta. Har jobbat
Webbtjänster med API er
Webbtjänster med API er Mål med lektionen! Veta kursmålen. Lite grunder om WCF Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se
Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster...
1 2 Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster... 9 Definition av molntjänster (forts.)... 11 Tjänster... 12 Skikt
Diagnostisktprov Utveckla i Azure
.easec Diagnostisktprov Utveckla i Azure Mats Johannesson 2015-06-08 1 o Indikerar ett svar önskas. Flera svar önskas. Maxpoäng: 86 Din poäng: Godkänt: 43 poäng Väl Godkänt: 60 poäng 2 1. Vilka fyra alternativ
Curriculum Vitae. Systemutvecklare/konsult. Kontaktuppgifter. Sammanfattning. Uppgifter hos Pulsen. Stefan Elvestål. Född: 1973 Nationalitet: Svensk
/konsult Stefan Elvestål Född: 1973 Nationalitet: Svensk Kontaktuppgifter Mobil: 0703-88 35 39 elvestal@outlook.com Sammanfattning Jag är en målmedveten och ständigt nyfiken utvecklare som är nogrann med
2014-2015 Alla rättigheter till materialet reserverade Easec
1 2 Innehåll Introduktion... 3 Azure Client SDK Libraries... 4 Översikt: Azure Client Libraries... 5 Azure SDK... 6 Azure SDK (forts.)... 7 Azure SDK (forts.)... 8 Cloud Services... 10 Cloud Services...
Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt...
Produktblad för NAV i molnet Innehåll Vad är molnet?... 2 Vad är NAV i molnet?... 3 Vem passar NAV i molnet för?... 4 Fördelar med NAV i molnet... 5 Kom igång snabbt... 5 Bli kostnadseffektiv... 5 Enkelt
Microsoft Dynamics 365 Business Application vs. ERP. Företagen måsta sätta sig själva i förarsätet
Microsoft Dynamics 365 Business Application vs. ERP Slutsats från mina 5 artiklar om ämnet: Tema Dynamics 365 Business Application 2017-05-10 Created by: Mikael Petersén: Vi är inne i ett stort teknikskifte
Fallstudie Den svenska Försvarsmakten Meddelandeinfrastruktur redo för det nya nätverksbaserade försvaret
Fallstudie Den svenska Försvarsmakten Meddelandeinfrastruktur redo för det nya nätverksbaserade försvaret Copyright 2002 - Xware AB. All rights reserved. xtrade is a registered trademark of Xware AB. Version
EG Utility Användarträff Stefan Fleron, Senior VP EG Utility
EG Utility Användarträff 2018 Stefan Fleron, Senior VP EG Utility Hur förändras energibranschen? Viktiga förändringsområden Ökning av förnybar energi Distribuerad energiproduktion Elektrifiering av transport
för iscala & Epicor ERP
Epicor Storefront t för iscala & Epicor ERP Fred Boström Bitlog AB 1 Vad är Epicor Storefront? Epicor Storefront hjälper tillverkare, distributörer och detaljister att organisera och sälja sina produkter,
Slutrapport. APFy.me
Slutrapport APFy.me Innehållsförteckning 1 Inledning... 3 2 Mål och syfte... 3 3 Projektbeskrivning... 3 4 Leverabler... 4 5 Resultat... 4 6 Utvärdering och analys... 4 6.1 Utvärdering av resultat... 4
Migration to the cloud: roadmap. PART 1: Möjligheter och hinder för att migrera till molnet
Migration to the cloud: roadmap PART 1: Möjligheter och hinder för att migrera till molnet PART 1 ÖVERSIKT 1. Varför migrera till molnet? 2. Möjligheter med migrering till molnet 3. Hinder för att migrera
1 Installationsinstruktioner
1 Installationsinstruktioner 1.1 Förbereda installationen Kontrollera systemkraven. Försäkra dig om att din dators hårdvara uppfyller de systemkrav som är specificerade. Vid installering av Engineering
Arkitektur. Den Röda Tråden
Arkitektur Done Den Röda Tråden Vad är arkitektur? Vad har vi arkitekturmodellen till? Hur redovisar vi en arkitektur? Hur tar vi fram en arkitektur? Uppgift arkitekturella krav Nu Redovisning/Diskussion
SAS VIYA JOHAN ELFMAN ROLAND BALI
5/31/2016 SAS VIYA JOHAN ELFMAN ROLAND BALI Co p yr i g h t 2 0 1 6, S A S In s t i tut e In c. A l l r i g h t s r e s e r v ed. Co p yr i g h t 2 0 1 6, S A S In s t i tut e In c. A l l r i g h t s r
Implementationsstrategier för PLCS
Implementationsstrategier för PLCS Dr Mattias Johansson Director Software Products Eurostep AB Typically complex systems environment Point to Point Integration Operational Objectives CM CM CM CM 5. Requirements
Systemkrav och tekniska förutsättningar
Systemkrav och tekniska förutsättningar Hogia Webbrapporter Det här dokumentet går igenom systemkrav, frågor och hanterar teknik och säkerhet kring Hogia Webbrapporter, vilket bl a innefattar allt ifrån
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.
Informationsinfrastruktur 7.5 hp Mattias Nordlindh Inledning 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. Dokumentet består av
Christer Scheja TAC AB
Byggnadsautomation för ingenjörer Byggnadsautomation för ingenjörer VVS-tekniska föreningen, Nordbygg 2004 Christer Scheja TAC AB resentation, No 1 Internet/Intranet Ihopkopplade datornät ingen ägare Internet
Senior utvecklare/arkitekt Rama Pour Rajaei Utbildningar Certifieringar Kontaktinformation
Senior utvecklare/arkitekt Rama Pour Rajaei Rama har jobbat mer än 12 år som IT-konsult och är en mycket skicklig konsult inom sitt område som är systemutvecklingen/arkitektur av affärskritiska system
Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen.
Entity Framework Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen. Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se
Introduktion till Entity Framework och LINQ. Källa och läs mer https://msdn.microsoft.com/en-us/data/aa937709.aspx
Introduktion till Entity Framework och LINQ Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Vad är Entity Framework? The Microsoft ADO.NET Entity Framework is an Object/Relational Mapping
Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document
Programutvecklingsprojekt 2003-04-24 Projektgrupp Elvin Detailed Design Document Björn Engdahl Fredrik Dahlström Mats Eriksson Staffan Friberg Thomas Glod Tom Eriksson engdahl@kth.se fd@kth.se d94-mae@nada.kth.se
Introduktion till molntjänster Tekniken bakom molntjänster och legala utmaningar
Introduktion till molntjänster Tekniken bakom molntjänster och legala utmaningar 19 november 2012 - Erica Wiking Häger och Mikael Moreira Innehåll 1. Vad är molntjänster? 2. Legala utmaningar 3. EU:s förslag
SOA One Year Later and With a Business Perspective. BEA Education VNUG 2006
SOA One Year Later and With a Business Perspective BEA Education VNUG 2006 Varför SOA är viktigt? As margins erode companies need to optimize for process and operational efficiency or find new markets
Datacentertjänster PaaS
Datacentertjänster PaaS Innehåll Datacentertjänst PaaS 3 Allmänt om tjänsten 3 En säker miljö för kundensa containers 3 En agil infrastruktur 3 Fördelar med tjänsten 3 Vad ingår i tjänsten 4 Applikationer
Införande av en integrationsplattform med Apache Service Mix på LTU
Införande av en integrationsplattform med Apache Service Mix på LTU Apache Service Mix = Opensource java teknologier + Prenumerationer och Support = Red Hat JBoss Fuse Bakgrund 2012/2013 - Arbetsgruppen
Cloud Computing för arkitekter Sten Sundblad IASA och Sundblad & Sundblad
Cloud Computing för arkitekter Sten Sundblad IASA och Sundblad & Sundblad Är Cloud Computing intressant? 40 % tillväxt globalt 2009. Blir likadant i Sverige! Computer Sweden/IDC 2009-03-06 USA 2008 23
Från Data till Process
Från Data till Process - Om bryggor och annat KommITS 17 nov 2005 Perspektiv och definitioner SOA för utvecklare: Service orientation är ett sätt skapa dynamiska, samverkande och löst kopplade applikationer.
Application Discovery och Delivery Intelligence en översikt
Broschyr Application Discovery och Delivery Intelligence en översikt Utveckla programvarukvaliteten genom automatiserad applikationsidentifiering och -analys 2 Application Discovery och Delivery Intelligence
Enterprise App Store. Sammi Khayer. Igor Stevstedt. Konsultchef mobila lösningar. Teknisk Lead mobila lösningar
Enterprise App Store KC TL Sammi Khayer Konsultchef mobila lösningar Familjen håller mig jordnära. Arbetar med ledarskap, mobila strategier och kreativitet. Fotbollen ger energi och fokus. Apple fanboy
Molntjänster -- vad är molnet?
En e-bok från Visma Spcs Molntjänster -- vad är molnet? Vad du bör tänka på för att göra rätt val till ditt företag Molntjänster -- vad är molnet? En guide till att förstå molntjänster Innehåll Hänger
Så blev arkitekturen ett kitt mellan IT och den övriga verksamheten
Så blev arkitekturen ett kitt mellan IT och den övriga verksamheten EA symposium KTH 28 november 2014 kari.finnskog@vasttrafik.se Twitter: kari_e_f Agenda Så blev arkitekturen ett kitt mellan IT och den
SAS USER FORUM SWEDEN 2017 USER FORUM. SAS Viya och öppenhet en gemomgång av LUA-, Java-, Python- och REST-gränssnitten mot SAS Viya
SAS USER FORUM USER FORUM SAS Viya och öppenhet en gemomgång av LUA-, Java-, Python- och REST-gränssnitten mot SAS Viya Om presentatören Jonas Wetterberg har arbetat som seniorkonsult på SAS i snart 10
Din leverantör av hissautomater, pallställ, grenställ och utdragsenheter.
v.2 Compact talk Programvaran som integrerar Compact Hissautomater med överliggande system Compact Talk gör det enkelt att till låg kostnad integrera Compact Hissautomater med ett överliggande system som
Nya möjligheter med M3 Technology. Björn Svensson, Björn Torold
Nya möjligheter med Technology Björn Svensson, Björn Torold Vem är vi? 2 Copyright 2011 Lawson. All rights reserved. Nya möjligheter med Technology System Foundation Grid Förändrar basen i Installation
JBoss Application Server ANNIE AXELSSON
JBoss Application Server ANNIE AXELSSON Examensarbete Stockholm, Sverige 2010 JBoss Application Server ANNIE AXELSSON Examensarbete i datalogi om 15 högskolepoäng vid Programmet för datateknik Kungliga
Webbtjänster med API er
Webbtjänster med API er Mål med lektionen! Titta på hur service:ar fungerar och hur vi programmerar dem. Vad lektionen omfattar WCF Service WCF Services Vad är en WCF service? En WCF Service är ett program
presenterar KASPERSKY ENDPOINT SECURITY FOR BUSINESS
presenterar KASPERSKY ENDPOINT SECURITY FOR BUSINESS 1 Verksamhetsutveckling och hur det påverkar IT-arbetet ANPASSNINGS- FÖRMÅGA Arbeta snabbt, vara följsam och flexibel 66 % av företagarna prioriterar
Introduktion till migrering till molnet. PART 4: Plattformar för molntjänster
Introduktion till migrering till molnet PART 4: Plattformar för molntjänster PART 4 ÖVERSIKT 1. PaaS 2.Migration Vad betyder PaaS? PaaS betyderplatform as a Service eller plattform för cloud computing
Molntjänster för administration, utbildning och forskning. Projektplan för 2017
forskning Projektplan för 2017 1 Innehåll Innehållsförteckning forskning 1 Projektplan för 2017 1 Innehåll 2 Introduktion 2 Projektdirektiv: forskning 2 Mål 3 Förväntat resultat: 3 Avgränsningar 4 Projektaktiviteter
Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie Justering för krav på Windows Server
Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie 2017-03-09 Justering för krav på Windows Server 2012 1.2 Micke 2017-04-07 Vitec Ekonomi från x.60 kräver IIS 8 och websocket.
Molntjänster och molnteknologi: En ordlista
Molntjänster och molnteknologi: En ordlista Har du koll på molnet? Det talas om moln överallt, men förstår du alla nya ord, förkortningar och uttryck? Här är en ordlista för dig som vill hänga med och
Java Programmer for JDK 1.1 1997 Developer for Java 2 Platform 2002
Systemarkitekt/systemutvecklare Trevor Lyall arbetar som systemarkitekt och senior systemutvecklare. Han har en lång och bred erfarenhet av projekt inom flera olika branscher. Med sitt djupa intresse för
Webbserverprogrammering
Webbserverprogrammering WES Webbserverprogrammering Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets
Grundläggande datavetenskap, 4p
Grundläggande datavetenskap, 4p Kapitel 4 Nätverk och Internet Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-23 IT och medier 1 Innehåll Nätverk Benämningar Topologier Sammankoppling
1 Installationsinstruktioner
1 Installationsinstruktioner 1.1 Förbereda installationen På Aucotecs hemsiad www.aucotec.com kan du kontrollera de aktuella systemkraven för Engineering Base. Försäkra dig om att din dators hårdvara uppfyller
WELCOME TO. Value of IAM in Business Integrations
WELCOME TO Value of IAM in Business Integrations WELCOME TO Value of IAM Agenda Zipper Zecurity, vilka är vi? IAM, varför och vad gör det för nytta? IBM Security Identity Manager IBM Security Role & Policy
API:er/Mashup. Föreläsning 4 API:er och Mashups. Johan Leitet johan.leitet@lnu.se twitter.com/leitet facebook.com/leitet. Webbteknik II, 1DV449
API:er/Mashup Föreläsning 4 API:er och Mashups Webbteknik II, 1DV449 Johan Leitet johan.leitet@lnu.se twitter.com/leitet facebook.com/leitet F04 API:er Mashup Dagens agenda API RSS Säkerhet Mashup Resurser
Taxi boknings system, inpassering och medlemshanterings system, betallösningar, realtidssystem, App utveckling
Magnus Moberg Är en strukturerad och noggrann systemutvecklare/arkitekt som tycker om nya utmaningar. Har 17 års erfarenhet av systemutveckling, produktframställning, design och arkitekt. Har jobbat med
Affärssystem. Linda Askenäs Linköpings universitet
Affärssystem Linda Askenäs Linköpings universitet AS AS i sitt sammanhang i verksamheten - val, införande och användning Finns flera sätt att betrakta detta. Vi skall gå in på några framförallt tekniska,
Våg 2010 We re all in!
Click to edit headline title style Click to edit body copy. Våg 2010 We re all in! Henrik Byström, Magnus Forsberg Microsoft Citizen Service Platform Click to edit headline title style Kommunens utmaningar
Manuell installation av SQL Server 2008 R2 Express för SSF Timing
Manuell installation av SQL Server 2008 R2 Express för SSF Timing Innehåll 1. Metoder att installera...1 2. Förutsättningar...2 DotNet Framework 3.5...2 MSI Installer 4.5...2 3. Hämta SQL Server 2008 R2
TDDD80. Mobila och sociala applikationer Introduktion HTTP,SaaS. Anders Fröberg Institutionen för Datavetenskap (IDA)
TDDD80 Mobila och sociala applikationer Introduktion HTTP,SaaS Anders Fröberg Institutionen för Datavetenskap (IDA) Internet Internet är världens största datornätverk och ett system för enkel och effektiv
Konsultprofil. Per Norgren (1983) Arkitekt & webbutvecklare
Konsultprofil Per Norgren (1983) Arkitekt & webbutvecklare Per Norgren är arkitekt och webbutvecklare som främst är inriktad på Mircosofts.Net-ramverk och EPiServer. Han har arbetat i branschen sedan 2007
Tove Carlsund Systemutvecklare
OM MIG Under mina yrkesverksamma år som systemutvecklare har jag jobbat mycket med olika Content Management System, CMS. Dels med utveckling av själva systemen, mestadels frontend. Men också med transformation
Tjänstebeskrivning Extern Åtkomst COSMIC LINK. Version 1.0
Tjänstebeskrivning Extern Åtkomst COSMIC LINK Version 1.0 Ändringshantering Ansvarig för dokumentet: Datum Ändring Ansvarig Version 2017-01-27 Prel. version för initial test Anders Carlberg 0.2 2017-02-14
Innehåll. MySQL Grundkurs
MySQL Grundkurs Copyright 2014 Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Innehåll Introduktion till databaser Installera MySQL lokalt Webbserverprogrampaket (XAMPP) Introduktion till phpmyadmin
Innehåll Översikt: Introduktion till SQL Server... 3 Introduktion till plattform för SQL Server... 4 Översikt introduktion till plattform för SQL
1 2 Innehåll Översikt: Introduktion till SQL Server... 3 Introduktion till plattform för SQL Server... 4 Översikt introduktion till plattform för SQL Server... 5 Arkitektur för SQL Server... 6 Arkitektur
Webbservrar, severskript & webbproduktion
Webbprogrammering Webbservrar, severskript & webbproduktion 1 Vad är en webbserver En webbserver är en tjänst som lyssnar på port 80. Den hanterar tillgång till filer och kataloger genom att kommunicera
Jonas Daag Microsoftspecialist
Sofia Österman Jonas Daag Microsoftspecialist Systemutveckling/IT-Arkitekt KOMPETENS PROJEKLEDNING SYSTEMUTVECKLING SYSTEMFÖRVALTNING WEB FÖRÄNDRINGSHANTERING KRAVANALYS SÄKERHET MOBILITET MIGRERING LÖSNINGSARKITEK
Flytta din affär till molnet
Flytta din affär till molnet Låt oss prata moln 2 Låt oss prata moln 3 Marknadsförare var först i molnet. Vi skulle inte bli förvånade om du redan använder molnet för: CRM Marketing automation Social media-platformar
Välj rätt affärssystem för att din. organisation ska blomstra!
Välj rätt affärssystem för att din organisation ska blomstra! - En guide till dig som funderar på att byta eller investera i ett ERP system. Innehåll Därför är ett affärssystem viktigt för tillväxten...
Spetskompetens inom systemintegration, SOA och systemutveckling
Spetskompetens inom systemintegration, SOA och systemutveckling Mjukvarukraft är ett företag som inriktar sig på konsultation och systemutveckling baserad på och omkring Microsofts plattformar och produkter.
URVAL AV UTFÖRDA FRILANSJOBB
URVAL AV UTFÖRDA FRILANSJOBB Här följer information om ett urval av utförda frilansjobb. CONTENT MANAGEMENT- OCH GROUPWARE RAMVERK Kund: Sundance MD&M En modulär flashapplikation med en PHP och MySQL backend
Mjukvarukraft Integration som Tjänst (ipaas)
Mjukvarukraft Integration som Tjänst (ipaas) 2018-12-06 Bakgrund Integration som tjänst (ipaas) utgör ett alternativ för organisationer som: Har tydliga behov av ordnade integrationslösningar baserad på
CIO MÖTE OSLO 17/11 INFORMATION // INTELLIGENCE // ADVICE. Radar Ecosystem Specialists
CIO MÖTE OSLO 17/11 INFORMATION // INTELLIGENCE // ADVICE IT & DIGITALISERING SVERIGE 2016-2017 Viktigaste IT-trender 2016-2020 Intelligenta system Integration Informationssäkerhet Digitalisering Automatisering
Leverantör av programvarutjänster skapar kostnadseffektiv lösning för e-förvaltning
Windows Azure Fallstudie av kundlösning Leverantör av programvarutjänster skapar kostnadseffektiv lösning för e-förvaltning Översikt Land eller region: Indien Bransch: it Kundprofil tillhandahåller tjänster
CMS, optimerade för programmerare Eller hur kan ett sådan skapas.
Examensarbete CMS, optimerade för programmerare Eller hur kan ett sådan skapas. David Strömbom 2011-05-20 Ämne: Datavetenskap Nivå: B Kurskod: 1DV40E Abstrakt Denna rapport fokuserar på att undersöka några
Olika slags datornätverk. Föreläsning 5 Internet ARPANET, 1971. Internet började med ARPANET
Olika slags datornätverk Förberedelse inför laboration 4. Historik Protokoll, / Adressering, namnservrar WWW, HTML Föreläsning 5 Internet LAN Local Area Network student.lth.se (ganska stort LAN) MAN Metropolitan
Hur sälja Mamut One? Pär Svärd, Sales Manager VAR Sweden 16 oktober, 2008. pars@mamut.se
Hur sälja Mamut One? Pär Svärd, Sales Manager VAR Sweden 16 oktober, 2008 pars@mamut.se Mamut One - vision Att förenkla vardagen för mindre företag Så mycket funktionalitet som möjligt i en och samma lösning
Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved.
Administrera din SAS miljö med SAS Metadata Server och SAS Management Console. Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved. SAS Intelligence Value Chain
TMP Consulting - tjänster för företag
TMP Consulting - tjänster för företag Adress: http://tmpc.se Kontakta: info@tmpc.se TMP Consulting är ett bolag som utvecklar tekniska lösningar och arbetar med effektivisering och problemslösning i organisationer.
Daniel.Ringquist@swe.sas.com Copyright 2003, SAS Institute Inc. All rights reserved.
SAS Enterprise Guide 3.0 och framåt Daniel.Ringquist@swe.sas.com Copyright 2003, SAS Institute Inc. All rights reserved. SAS Enterprise Guide Ett Windowsbaserat rapporterings och analysverktyg. Enterprise
Big Data i spelbranchen
Big Data i spelbranchen ett projekt med Hadoop och open source i fokus Kunden Företaget arbetar med onlinespel och utvecklar många olika spel för över 100 spelbolag, exempelvis Casinon som Casinostugan
ACTE SOLUTIONS AB. IoT-LÖSNINGAR FRÅN ACTE. November Sammanställt av Peter Björkstrand, Head of Product Management
ACTE SOLUTIONS AB IoT-LÖSNINGAR FRÅN ACTE November 2018 Sammanställt av Peter Björkstrand, Head of Product Management IoT är något som pågår för fullt men vad innebär det och hur ska man använda det och
JHS 179 Planering och utveckling av en övergripande arkitektur Bilaga 9. Virtualisering och molntjänster i planering av teknologiarkitektur
JHS 179 Planering och utveckling av en övergripande arkitektur Bilaga 9. Virtualisering och molntjänster i planering av teknologiarkitektur Version: 2.0 Publicerad: 7.2.2017 Giltighetstid: tills vidare
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
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 Systemet måste kunna registrera vilka resurser, d v s data och databärande
Framtiden inom geografisk IT, trender och vad som kommer påverka alla som arbetar med GIS. Lars Backhans, ESRI
Framtiden inom geografisk IT, trender och vad som kommer påverka alla som arbetar med GIS. Lars Backhans, ESRI Digitalisera allt Inledningsvis prioriterar regeringen digitalt först inom följande områden:
WEBBSERVERPROGRAMMERING
WEBBSERVERPROGRAMMERING Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets syfte Undervisningen i ämnet
Systemkrav WinServ II Edition Release 2 (R2)
Systemkrav WinServ II Edition Release 2 (R2) Observera: Alla rekommendationer är aktuella vid den tid då dokumentet publicerades och visar den senaste informationen för nödvändig mjukvara. Systemkrav för
KONSULTPROFIL Juan. Systemutvecklare.NET/EPiServer/Commerce. Sammanfattning. Kompetens. Uppdrag
KONSULTPROFIL Juan Systemutvecklare.NET/EPiServer/Commerce Sammanfattning Mångsidig IT-arkitekt med mer än 14 års erfarenhet av IT-branschen. Erfarenhet av att leverera och implementera avancerade IT-lösningar
Arrowhead - Process- och energisystem- automation
Arrowhead - Process- och energisystem- automation Mats Johansson Project Manager ProcessIT.EU/LTU ARTEMIS Industry Association The association for R&D actors in embedded systems Bakgrund Ökad automa2on
Dag König Developer Tools Specialist Microsoft Corporation
Dag König Developer Tools Specialist Microsoft Corporation Magnus Timner Transcendent Group Olov Mattsson Know IT Krav Testning Microsoft Team System Arkitektur Bygga Kodning Vinn en XBOX 360 Elite Alla
EVRY One Outsourcing Linköping AB. Erfaranheter av daglig drift och nyttjande av IFS Applications 8.
EVRY One Outsourcing Linköping AB Erfaranheter av daglig drift och nyttjande av IFS Applications 8. Vår erfarenhet IFS Applications 8 Ca 10 st genomförda eller pågående uppgraderingar till IFS 8. Första
Virtuell Server Tjänstebeskrivning
Virtuell Server Tjänstebeskrivning Inledning SoftIT tillhandahåller i samarbete med IP Only, tjänsten Virtuell Server, varigenom kunden erhåller serverkapacitet som Kunden får tillgång till genom SoftIT:s
Donator. Partnerprogram. Från produkt till molntjänst.
Donator Partnerprogram Från produkt till molntjänst. Donator Partnerprogram Erbjuda vår applikation som en molntjänst? Javisst, men hur tar vi oss dit? De flesta programutvecklingsföretag (ISVer) ser möjligheterna