Webpartshop i Sharepoint 2007



Relaterede dokumenter
IBM Network Station Manager. esuite 1.5 / NSM Integration. IBM Network Computer Division. tdc - 02/08/99 lotusnsm.prz Page 1

Hvorfor skal vi bruge objekt orienteret databaser?

Sporbarhed og Rapportering i Quality Center. Kim Stenbo Nielsen NNIT Application Management Services

FairSSL Fair priser fair support

WIKI & Lady Avenue New B2B shop

Hosted CRM Outlook client connector setup guide. Date: Version: 1. Author: anb. Target Level: Customer. Target Audience: End User

Formål I forbindelse med opgradering af Navision Stat fra NS til NS7.0 skal den tilhørende Navision Stat licens migreres til NAV2013R2.

Hvad er InfoPath? Et program i Microsoft Office System En desktop applikation Platformen for en ny generation af elektroniske formularer

GRAFISK WORKFLOW REDESIGN AF HJEMMESIDE

Help / Hjælp

Hosted CRM Outlook client connector setup guide. Date: Version: 1. Author: anb. Target Level: Customer. Target Audience: End User

Portal Registration. Check Junk Mail for activation . 1 Click the hyperlink to take you back to the portal to confirm your registration

Umbraco installationsvejledning

10. Rapporter i BBR... 2

Advanced Word Template Brugermanual

FairSSL Fair priser fair support

BACK-END OG DATA: ADMINISTRATION HVAD ER DE NYE MULIGHEDER MED VERSION 7.1? STEFFEN BILLE RANNES, 4. FEBRUAR 2015

Installation og Drift. Aplanner for Windows Systemer Version

Udrulning af globalt Intranet I Novo Nordisk. Henrik Nordtorp Senior Solution Architect esolutions NNIT A/S

RentCalC V Soft-Solutions

App til indmelding af glemt check ud

Vejledning til Teknisk opsætning

SPECIALTRYKKERIETS KUNDE WEBPORTAL KOM GODT I GANG

Indholdsfortegnelse. EasyIQ IDM 5.4 Brugermanual

3. SEMESTER 2. PROJECT MULB Gruppe september 2015

FairSSL Fair priser fair support

DK - Quick Text Translation. HEYYER Net Promoter System Magento extension

Hvor er mine runde hjørner?

Opsætning af Backup. Hvis programmet registreres korrekt vises nedenstående skærmbillede. Genstart herefter programmet.

NT PDC Udarbejdet af Kenneth Dalbjerg

Succes med intranet til Office 365. Den 13. august 2014 Webtop A/S s. 1

Display Guideline (Dansk)

Grafisk design / Frederik Aaen / Portfolio H2 GRAFISK WORKFLOW

Dagens program. Domæner. change log- screen shots hver gang I har arbejdet med themet. Arkitekturen bag en wp blog. Hvad er widgets.

Microsoft Pinpoint Guide

Indholdsfortegnelse. Systembeskrivelse Rapporter

Internet Information Services (IIS)

Installation og ibrugtagning af Geomagic Alibre Vault

DET KONGELIGE BIBLIOTEK NATIONALBIBLIOTEK OG KØBENHAVNS UNIVERSITETS- BIBLIOTEK. Index

KUNDE-WEBPORTAL KOM GODT I GANG

Installation af Oracle 10g Release 2 database

Manual til administration af online booking

Salg af servere. Torben Vig Nelausen Produktchef Windows Server Familien

Bruger v1.5 QUICK GUIDE. Green Glass Software V/ Dan Feld-Jakobsen Lojovej Aabenraa / dan@rekvi-skole.dk

FairSSL Fair priser fair support

Begynderens Guide Til Chatbots

Tips og tricks Billeder Topfrise Topfrisen kan udskiftes. Topfrisen er knyttet til de enkelte mapper i strukturen. Ændres topfrisen, slår det igennem

Opsætning af Backup. Dette er en guide til opsætning af backup med Octopus File Synchronizer.

EasyIQ Opdatering > 5.4.0

Vores mange brugere på musskema.dk er rigtig gode til at komme med kvalificerede ønsker og behov.

Godkendelsesdato Version Rettet af Rettelse(r)

Ruko SmartAir. Updater installation

Database for udviklere. Jan Lund Madsen PBS10107

Software Assurance (SA)

PID2000 Archive Service

Delphi og Databaser for begyndere

Det Naturvidenskabelige Fakultet. Introduktion til Blackboard (Øvelser) Naturvidenskabeligt Projekt 2006 Prøv at forske

Indhold. Indholdsfortegnelse

Aktivering af Survey funktionalitet

Office 365 Installation og aktivering på Mac

TigerCMS Moduler. Oversigt. CMS modul. Nyhedsmodul. Brugermodul. Billede redigering. Billedsøgning. Hjemmeside Helbredstjek. Brugerdefinerede felter

Version 8.0. BullGuard. Backup

Installér din Officepakke 2013

Internet. Komplet featureliste. Aesiras - integreret Regnskab, Handel og Internet

Opsætning af MobilePBX med Kalenderdatabase

Dynamicweb Quickguide

JEG GL DER MIG I DENNE TID PDF

Pinpoint Tips & Tricks

Lav en hjemme side der kan sælge fly billetter til en stor i Europa.

Citrix CSP og Certificate Store Provider

Idekatalog. Så vidt jeg husker fremgik det ret tydeligt hvad der skulle være i ansøgningen. Der var bare virkelig mange informationer der skulle med.

Jan Kjær Sitecore Intranet Project Consultant w w w. e n z y m. d k

Integration med Microsoft SharePoint

Hjemmesideoptimering/synlighed

Manual til Statistik. ShopStatistics. Med forklaring og eksempler på hvordan man håndterer statistik. Consulo ApS

REFWORKS FAGKONSULENTENS VEJLEDNING

Tillæg til Libris-hæftet: WordPress. Temaredigering og sikkerhed m.m.

2013 SP1. Konfiguration af koncernindblik. Configuration Guide

Sådan sætter du et dokument op med billeder i Microsoft Word (2003)

ViKoSys. Virksomheds Kontakt System

RESPONSIVE DESIGN. Fleksibelt, platformuafhængigt webdesign. Frank Thomsen & Toke Fritzemeier Efterår 2012

CONTENTS 1. KOM GODT IGANG JEG HAR WINDOWS 7 OG ØNSKER AT UDVIKLE APPS TIL WINDOWS PHONE Opret en DreamSpark konto

UPLOAD. Af Database og Website til Skolens Server

Design til digitale kommunikationsplatforme-f2013

Content Management System. Content Management System

Microsoft Dynamics CRM 2011 (CRM2011) From a Technical point of view

GUIDE TIL CLOUD DRIVE

360 Digital Styringsreol

Vejledning til Autodesk Account - Autodesk Collection og Autodesk AutoCAD Toolset

Installationsvejledning SAS Foundation 9.2 SAS Enterprise Guide 4.2. Windows Vista

10. Rapporter i BBR... 2

Installation og Drift. Aplanner for Windows Systemer Version 8.15

Systemet skal kunne håndtere små turneringer med ned til 2 deltagere, såvel som turneringer med op til 1000 deltagere.

Sådan logger du ind... 2 Hvilke mapper kan du tilgå... 3 Visning af eksempel af en fil... 5 Sådan deler du en fil... 7 Se hvad du deler med andre...

Erfaringer med Information Management. Charlottehaven Jens Nørgaard, NNIT A/S

Shooting tethered med Canon EOS-D i Capture One Pro. Shooting tethered i Capture One Pro 6.4 & 7.0 på MAC OS-X & 10.8

GEONIS Vand. fact sheet. Planlæg, dokumentér og vedligehold

Trin for trin guide til Google Analytics

Transkript:

Webpartshop i Sharepoint 2007 Peter Magnus Falk s042289 Kongens Lyngby 2008 IMM-B.Eng-2008-68

Technical University of Denmark Informatics and Mathematical Modelling Building 321, DK-2800 Kongens Lyngby, Denmark Phone +45 45253351, Fax +45 45882673 reception@imm.dtu.dk www.imm.dtu.dk

Summary The project is to make a webpart shop for GlobeShare in Microsoft Office Sharepoint Services (MOSS). MOSS is a new tool from Microsoft to create intraand internet portals. A homepage in MOSS is built from a masterpage, from where you create templates that inherit from the masterpage. On these templates there are webpart zones where you can put in small applications called webparts. This report describes how a shop and webparts are going to be developed. The shop is later to be implemented in GlobeShare, which is the new intranet portal of Novo Nordisk A/S (NN). GlobeShare has already been defined and is ready for launch. What I will create in this project is a Proof of Concept (POC) of a webpart shop for GlobeShare. The report is in Danish.

ii

Resumé Projektet er at lave en webpartshop til GlobeShare i Microsoft Office Sharepoint Services (MOSS). MOSS er et nyt portalværktøj fra Microsoft der bliver brugt til at lave inter- og intranetløsninger. En hjemmeside i MOSS er bygget op ved at man har en masterside, som man går ud fra og bygger andre sider fra. Disse andre sider er så bygget op af webpartszoner, hvor man kan sætte små programmer ind, webparts. Denne rapport beskriver hvordan en shop til disse webparts skal se ud, og hvordan man får uviklet webparts til brug i shoppen. Denne shop skal bruges i GlobeShare, hvilket er Novo Nordisk A/S (NN) nye intranetløsning. Der er derfor allerede blevet defineret hvordan GlobeShare skal se ud. Det jeg skal lave er en Proof of Concept (POC) af, hvordan shoppen kan se ud i GlobeShare.

iv

Forord Rapporten og forsvaret er lavet som afslutningen på min uddannelse som IT diplomingeniør på DTU. Opgaven er lavet i samarbejdet med NNIT A/S, hvor jeg har haft Thorvaldur Flemming Jensen som kontaktperson og det er ham der har stillet opgaven for projektet. På DTU har jeg har Robin Sharp (IMM) som vejleder, som har vejledt mig igennem mit projekt. Tak for den gode vejledning. Derudover vil jeg sige tak til NNIT A/S generelt, for at have stillet så stor en hjælp til rådighed i både min praktikperiode og til mit bachelorprojekt. Rapporten er lavet efter at jeg har været i praktik i NNIT A/S og har for det meste arbejdet med MOSS og.net programmering. Det har været en stor udfordring at lave meget af det arbejde, da MOSS er et så nyt et produkt. Men udfordringen har været stor og spændende. Rapporten er ment som et Proof of Concept (POC), for at se om projektet kan lade sig gøre.

vi

Indhold Summary i Resumé iii Forord v 1 Introduktion 1 1.1 Om NNIT - og hvad det betyder for firmaet............ 2 1.2 Hvad er GlobeShare......................... 2 1.3 Forudsætninger............................ 2 1.4 Afgrænsninger............................ 3 1.5 Rapportens struktur......................... 3 1.6 Ordforklaring............................. 3 2 Krav 5 2.1 Kravspecifikation........................... 5

viii INDHOLD 3 Problemformulering 9 4 Teknologi 11 4.1 Sharepoint (MOSS).......................... 11 4.2 VS2005/.net.............................. 14 4.3 Konklusion.............................. 15 5 Analyse 17 5.1 Generelt................................ 17 5.2 Produkter............................... 17 5.3 Udvidelser............................... 24 5.4 Konklusion.............................. 26 6 Design 27 6.1 Produkter............................... 27 6.2 Opsætning af MOSS......................... 29 6.3 Udvidelser............................... 29 6.4 Konklusion.............................. 30 7 Problemer 31 7.1 Webparts............................... 32 7.2 GlobeShare.............................. 32 7.3 Adgange og brugere......................... 32 7.4 Workflow............................... 32

INDHOLD ix 7.5 Konklusion.............................. 33 8 Løsning på problemerne 35 8.1 GlobeShare opsætning........................ 35 8.2 Sikring af webparts.......................... 36 8.3 Hvad kan man ellers gøre...................... 37 8.4 Konklusion.............................. 38 9 Konklusion 39 9.1 Generelt om projektet........................ 40 9.2 Om arbejdet............................. 40 9.3 Evaluering............................... 41 9.4 Bagefter................................ 41

x INDHOLD

Kapitel 1 Introduktion NNIT er ved at lave en ny intranetløsning til Novo Nordisk. Denne nye løsning skal køre på Microsoft Office Sharepoint Server 2007 (MOSS). Dette produkt bliver brugt til at lave store interne og eksterne internetløsninger. Denne portal er så bygget op af mindre sites, som alle bliver lavet ud fra standardiserede skabeloner. På disse skabeloner kan man indsætte webparts, som kan indeholde alt fra et billede, til avancerede beregninger og dataudtræk. MOSS kommer med en masse standard webparts, som kan bruges af alle. Dette projekt sætter fokus på de webparts, som bliver udviklet specielt af NNIT til et givent formål. Novo Nordisk har mange forskellige IT systemer (f.eks. SAP), så der vil givetvis være brug for specialudviklede webparts til at vise data fra disse systemer. Det er NNIT s job at udvikle disse webparts, og det skal så være muligt for Novo Nordisk at købe dem. Mit projekt går så ud på at lave en shop, hvor der kan købes webparts, som er udviklet af NNIT.

2 Introduktion 1.1 Om NNIT - og hvad det betyder for firmaet NNIT A/S er et søsterfirma til Novo Nordisk A/S. Det er et af Danmarks største softwarehuse, og har Novo Nordisk A/S som deres største kunde, men derudover laves der mange opgaver for andre virksomheder og det offentlige. NNIT rundede 1000 ansatte Juni 2007 og har en omsætning på over 1 mia. kroner[1]. 1.2 Hvad er GlobeShare GlobeShare er navnet på det nye intranet til Novo Nordisk A/S (NN). Det skal afløse det gamle intranet, samt afløse de gamle sharepoint 2003 løsninger der kører på nuværende tidspunkt. Det skal samle det hele på én stor MOSS portal. Så udover at have en central portal, skal det også være muligt for hvert projekt og hver afdeling at have deres eget site. Det smarte ved at vælge MOSS er at få hele ens intranet til at se ens ud, bruge de samme templates og alt indhold være i overenstemmelse med NN s Corporate Visual Identity (CVI). 1.3 Forudsætninger Mit projekt er en komponent til GlobeShare, hvilket betyder at der er mange af de elementer jeg bruger, som allerede er lavet. Eksempler Jeg har viden om alle brugere og hvor i organisationen de er, og hvem deres leder er m.m. Da der er tale om et intranet, behøver jeg ikke tænke på login og dertilhørende sikkerhed.

1.4 Afgrænsninger 3 1.4 Afgrænsninger Det jeg vil analysere og gå i dybden med er selve shoppen, webparts og hvordan de skal opbygges, samt det workflow der skal bruges for at en bruger kan købe en webpart. De ting jeg ikke vil beskæftige mig med er bl.a. Transaktioner, mht. til betaling af køb. Avancerede shop funktioner, som fx indkøbsvogn (shopping cart) 1.5 Rapportens struktur I kapitel 2: Krav, beskrives hvilke krav der er givet fra NNIT s side, og hvordan mit projekt kan udvides. I kapitel 3: Teknlogi, beskrives hvilke nye teknologier og applikationer jeg har brugt til at lave selve projekter. I kapitel 4: Analyse, analyses de forskellige aspekter af projektet, og de produkter der skal udvikles. I kapitel 5: Design, designes det som er blevet analyseret. I kapitel 6: Problemer, her beskriver jeg hvilke problemer jeg er løbet ind i. I kapitel 7: Løsning på problemerne, kommer jeg med løsningsforslag til hvordan problemerne kan undgås eller løses. 1.6 Ordforklaring Jeg har arbejdet med en del nye værktøjer og begreber i dette projekt, hvilket har betydet at jeg har lært en masse nye begreber og akronymer. I tabel 1.1 er der en liste over de forkortelser, der bliver brugt i denne rapport.

4 Introduktion Forkortelse Betydning MOSS Microsoft Office Sharepoint Services 2007 VS Microsoft Visual Studio 2005 NN Novo Nordisk A/S CVI Corporate Visual Identity IDE Integrated Development Environment POC Proof of Concept MSDN Microsoft Developer Network Tabel 1.1: Abbreviations

Kapitel 2 Krav Kravene er blevet udarbejdet sammen med Thorvaldur (TFJe) fra NNIT. De er lavet så de dækker de mest basale elementer af projektet, hvorefter der kan laves udvidelser. Projektet laves til GlobeShare, hvor mange af elementerne allerede er defineret og er derfor udeladt af kravspecifikationen, dette er blandt andet login og strukturen af sites og brugere. 2.1 Kravspecifikation Overordnet gælder det at løsningen skal udvikles til MOSS platformen. 2.1.1 Minimum 2.1.1.1 Søge- og vælgefunktionaliteter Det skal være muligt for brugeren at vælge de webparts, der skal købes ved enten at bruge en søgefunktion, hvor brugeren kan komme med søgekriterier,

6 Krav hvorefter der bliver vist webparts der matcher. Den anden mulighed for at vælge en webpart, er hvor der er nogle kategorier, som der kan browses igennem. 2.1.1.2 Workflow Der skal startes et workflow, når brugeren har bestilt en webpart. Her skal afdelingslederen give sin tilladelse til at vedkommendes medarbejder skal have lov til at købe webparten. Herefter kan der være webparts som kræver yderligere tilladelser, fra andre personer, hvilket så skal inkluderes i dette workflow. 2.1.1.3 Webpart Der skal defineres en måde på hvordan webparts skal se ud, for at de er generiske og stadig kan bruges i denne shop. Demovisning Brugeren skal have muligheden for at se en demoversion af en webpart, inden de køber den, for at tjekke efter om webparten har den ønskede funktionalitet. Licensering Der skal gøres klar til at webparten kun skal være tilgængelig for brugere der har købt den. 2.1.1.4 Login Eksisterende brugersystem skal være etableret. 2.1.2 Udvidelser 2.1.2.1 Generalisering Det skal være muligt at bruge webpart shoppen på andre sites, eller have den som et externt site, hvor kunder kan gå ind og købe webparts til deres eget site.

2.1 Kravspecifikation 7 2.1.2.2 Betaling Der skal implementeres et betalingssystem, som kan udveksle data med SAP.

8 Krav

Kapitel 3 Problemformulering Formålet med projektet er at lave en POC af en webpartshop til GlobeShare. Altså vise om idéen kan lade sig gøre. Nogle af de punkter jeg vil undersøge og analysere i denne rapport er følgende: Der skal bygges en shop på MOSS. Webparts som skal sælges i denne shop, skal de laves på en specifik måde m.v. Hvordan skal dette integreres i GlobeShare. Hvordan skal workflowet virke. Da der er tale om køb af software, skal der så være licens på webparts.

10 Problemformulering

Kapitel 4 Teknologi Dette projekt bruger nogle nye teknologier, som ikke er særlig veldokumenterede. Der har derfor været en del forhindringer og det har været vanskeligt at finde informationer, da der ikke findes publiceret materialer men eneste mulighed har været at finde blogs og artikler på Internettet. I dette kapitel vil jeg give en hurtig introduktion til de teknlogier jeg har anvendt og lært at bruge mens jeg skrev projektet og i min praktikperiode. 4.1 Sharepoint (MOSS) Et website i MOSS er lavet ved at man laver en eller flere master-sider. Dette er en template for hvordan et site kan se ud. Denne template sørger for at alle sites kommer til at se ens ud. En template består af webpart zoner. I disse zoner er det muligt for en administrator for det pågældende site at indsætte webparts. Webparts er den eneste mulighed en bruger har for at ændre udseendet af et site. Det er kun muligt at tilføje de elementer man mener, er vigtige, men ikke at ændre det generelle udseende. Dette gør det meget nemmere for en virksomhed at opretholde sit CVI. Webparts varierer i kompleksitet, som standard i MOSS er der webparts til at

12 Teknologi Farm Web Application Web Application Site Collection Site Collection Web Web Figur 4.1: MOSS niveau oversigt lave manipulation af MOSS data, samt simple visninger. Hvis man skal have data fra andre kilder, bliver det noget mere avanceret, og er sikkert ikke muligt ved hjælp af en standard komponent i MOSS. Avancerede webparts kan så udvikles for at få den ønskede funktionalitet. Det er denne type webparts der skal kunne købes i shoppen. 4.1.1 Niveauer og scope Generelt set er der fire niveauer i sharepoint. Det øverste niveau er Farm. Herunder ligger Web Application, dernæst Site (Site collection), og det laveste niveau er Web (web site). Kort sagt kan der under hvert niveau være flere af niveauet under. De niveauer jeg vil beskæftige mig mest med er Site og Web niveau. Dette kan ses på figur 4.1.

4.1 Sharepoint (MOSS) 13 Site Column A Content Type A Site Column B Site Column C List Site Column D Content Type B Site Column E Figur 4.2: A list in MOSS 4.1.2 Features Alt hvad der laves til sharepoint bliver pakket ind i features. En feature kan indeholde alt slags indhold, og kan installeres og aktiveres individuelt. Derudover kan de konfigureres individuelt helt ned på web niveau. Så et Site kan have flere Web s under det. Så hvis man aktiverer en feature på Site niveau vil det være aktivt for alle Web s under den site collection. Senere hen i rapporten når der reffereres til webparts og de ting der sælges i webpartshoppen, er dette faktisk features. Da en webpart sagtens kan være afhængig af flere lister m.v. Men for at have gøre det nemt og overskueligt for brugeren har jeg valgt bare at kalde det for webparts i rapporten. 4.1.3 Lister En liste i MOSS er bygget op af at du laver en liste, hvor der tilknyttes en Content Type. En Content Type er en samling af Site Columns som egentlig bare er et element i en liste. Et eksempel på hvordan en liste er bygget op kan ses i figur 4.2. En liste indeholder så elementer med de informationer der er givet. Et eksempel på dette kan ses i figur 4.3.

14 Teknologi List Item 1 Item 2 Site Column A Site Column B Site Column C Site Column D Site Column E Site Column A Site Column B Site Column C Site Column D Site Column E Figur 4.3: A list with items 4.2 VS2005/.net Til udvikling af MOSS komponenter er Visual Studio 2005 et rigtig godt integrated development environment (IDE). Ved at downloade Sharepoint Extensions for Visual Studio[5] kan der nemt laves projekter og dele til MOSS. De elementer der er med i denne extension er: Project templates Web Part Team Site Definition Blank Site Definition Item templates Web Part Custom Field List Definition Content Type Module

4.3 Konklusion 15 Derudover bliver der inkluderet en solution generator, som kan pakke det man har lavet ned i en solution, så det er nemt at deploye til hvor man ønsker. Disse extensions kræver at man har en MOSS server kørende på den maskine man ønsker at bruge til at udvikle på. 4.3 Konklusion Det er utroligt dejligt at arbejde i MOSS, da det åbner for mange muligheder til at designe hjemmesider og portaler. Man skal dog tage hensyn til at det er et meget nyt produkt fra MS, og jeg har haft mine problemer med at finde løsninger på de problemer jeg er stødt på.

16 Teknologi

Kapitel 5 Analyse I dette kapitel vil jeg analysere, hvordan det samlede system skal opbygges. Jeg starter med at se på den generelle idé, hvorefter jeg kigger på hvert produkt i løsningen. 5.1 Generelt Løsningen skal virke som enhver anden webshop. Brugeren logger først ind, dernæst findes det produkt der ønskes købt. Herefter bliver brugeren ført igennem et betalingselement og produktet bliver leveret. Da denne webpartshop er en integreret del af GlobeShare, og derved NN s intranet skal en ordre godkendes af brugerens nærmeste leder, samt evt. en ansvarlig for det produkt der ønskes købt. På figur 5.1 kan den generelle løsning ses. 5.2 Produkter Shoppen kan deles ud i flere produkter. Disse er:

18 Analyse Startpage Searchpage Search or browse? Browse the catalogue No results Did the search find anything? Webpart found and selected The webpart the user want User buys the webpart E-mail for manager approval Yes Does this user/action require manager approval? Approved by manager No Not approved E-mail for special approval Yes Does this user/action require special approval? Not approved Approved by responsible unit No Ortder cancelled (Or on hold?) Payment No Payment successful? Yes The webpart will be made available for the user to insert on his/her site Figur 5.1: General Idea

5.2 Produkter 19 Webparts, de elementer der skal sælges i shoppen. De skal udvikles specifikt så de kan bruges i shoppen. Shoppen, de generelle shopelementer, til f.eks. søgning og kategorisering. Derudover hvordan dette integreres bedst med MOSS. Workflow, måden hvorpå betaling, autorisering og levering fungerer på. 5.2.1 Webparts Normalt vil man udvikle sin webpart til en specifik side, med et specifikt formål. Men i dette projekt skal de være generelle, så de kan bruges overalt. En webpart skal kunne finde ud af hvor den befinder sig og hvor lang tid der er tilbage af licensen. Da der i kravspecifikationen ikke er noget krav om at der skal kunne købes forskellige licenslængder, vil jeg antage at når man har købt et produkt, har man en uendelig licens. Der skal derfor ikke laves workflows til fornyelse af licens og hvad der skal ske hvis licensen udløber. Der er flere måder på hvordan webparten registrerer om den skal kunne bruges på det pågældende site. De metoder jeg vil arbejde videre med er: 1. Webparten kan bruges så snart den er installeret og aktiveret på et site. 2. Webparten kigger i en database, og sammenligner den url der står i databasen med der hvor den ligger. I selve shoppen skal webparten vises i demonstrationsudgave. Den måde jeg har forestillet mig at en webpart skal vises på kan ses i figur 5.2 på side 20. Der skal kunne sættes et flag, som siger til webparten at der skal vises demonstrationsdata. Dette data kan være statisk og indkodet i selve webparten. Hvis dette flag ikke er sat skal webparten se om den er lovligt installeret, altså om der stadig er licens. Hvis der ikke er licens til at brugeren må bruge webparten skal der startes et licensworkflow, og webparten skal vise en fejlmeddelelse. Når der er betalt for webparten og licensen er godkendt skal alle parametre til webparten være indtastet korrekt, hvorefter webparten bliver vist korrekt på siden. Hvis der er dele af webparten som ikke er konfigureret korrekt, bliver der vist en fejlmeddelelse.

20 Analyse Chosen configuration Displayed by the webpart Demo On a site License expired? No Is configured? Yes Display demo data Display final data No Display error message Yes Start licensing workflow Figur 5.2: Displaying A Webpart

5.2 Produkter 21 5.2.2 Shoppen Den generelle idé i shoppen er vist i figur 5.1 på side 18. Brugeren kommer ind på startsiden, hvor der skal være muligt for brugeren at søge efter webparts eller finde dem ved at vælge en kategori, dvs. en prædefineret søgning. Den anden ting brugeren skal kunne se på startsiden er nyheder, det kan f.eks. være nye webparts. Et udkast til startsiden kan ses på figur 5.3. Når brugeren har udført en søgning skal resultaterne vises, dette kan gøres som i figur 5.4. Det er vigtigt at brugeren kun ser de informationer der er relevante for lige præcis dén bruger. Der er to dele af information i en webpart, den basale del og ekstra teknisk information. Et eksempel på dette er i figur 5.5. Da hele dette system er integreret i GlobeShare har jeg fuldt adgang til hvem der kommer ind i shoppen. Jeg kan derfor hurtigt se hvilken og hvor meget information der skal være tilgængelig for brugeren. Det er muligt at altid vise alt information til afdelingsledere, administratorer, projektledere m.m. som standard, hvorimod alle andre kun vil se den basale information. 5.2.2.1 Tilplasning til MOSS Da hele dette system kører på én MOSS løsning, er det derfor muligt at bruge MOSS egen database til at styre informationen, samt bruge lister til at vise alt data. 5.2.3 Workflow Når en bruger køber et produkt, skal ordren først godkendes af afdelingslederen og dernæst af de webpartsansvarlige for de specifikke webparts. Det er ikke alle webparts der har en webpartsansvarlig, dette er kun for webparts som f.eks. er specialudviklet og allerede sat op, og derfor allerede har adgang til den data den skal vise. Derfor vil man ikke have at alle skal kunne købe denne webpart. Hvis ordren bliver godkendt bliver fakturaen sendt til betalingssystemet og webparten leveret. Når en ordre skal godkendes af en afdelingsleder eller webpartsansvarlig bliver der udsendt en mail. I denne mail bliver det gjort klart hvem der ønsker at udføre ordren og hvilke webparts der er tale om. Derudover er der et link til hvor de skal gå hen for at godkende eller afvise ordren. Dette får systemet til at virke på samme måde som NN s andre systemer, bl.a. den måde der bliver givet adgang til computersystemer på.

22 Analyse Search + Adv. Search functionalities Browse - Category 1 - Category 2 - Category 3 - Category 4 - Category 5... News/New stuff/etc. Shopping cart Figur 5.3: Startpage

5.2 Produkter 23 Search + Adv. Search functionalities Results Browse - Category 1 - Category 2 - Category 3 - Category 4 - Category 5... Name: Webpart 1 Description: Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras vel quam. Maecenas feugiat justo convallis lectus. Pellentesque tellus. Suspendisse pharetra porta orci. In convallis lacus non odio. Praesent nonummy cursus. Price: 5 dkk Click here for an example Add to shoppingcart Name: Webpart 2 Description: Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integer viverra fringilla quam. Aenean scelerisque pharetra velit. Fusce quis urna ac lectus porta porta. Nulla ut. Price: 5 dkk Click here for an example Add to shoppingcart Shopping cart Figur 5.4: Resultpage

24 Analyse Name: Description: Keywords: System: Size: Price: Extra information for specific users Owner/Responsible/Approver (NN) User Support Complexity/Integration (Data access) Developed by System description (detailed specifics) Figur 5.5: A Webpart Herefter skal webparten installeres på brugerens site. Der er flere måder dette kan gøres på. Man kan have det hele installeret på alle sites, og så først aktivere dem når de skal bruges. Denne metode er vist i figur 5.6. Hvis en webpart så skal fjernes så deaktiveres den feature, som den er knyttet sammen med, og webparten virker ikke længere. En anden metode til installation og aktivering af features er at have dette gjort manuelt. Det er hvad jeg har illustreret i eksempel et på figur 5.7. Dette kan så udvides videre til hvad der kan ses på eksempel to. I eksempel tre er der kommet et workflow på først, og dernæst det samme der sker i eksempel to, hvor Install og Deploy/activation er i det samme script. Jeg var ikke helt klar over om det var ønsket at have dette lavet manuelt eller automatisk. Der er fordele og ulemper ved begge metoder. Jeg tog kontakten op med NNIT og fandt ud af at eksempel tre var den foretrukne løsning. 5.3 Udvidelser Integration til et betalingssystem. Da denne shop kører på et intranet kan det kobles op med det nuværende betalingssystem, som der bliver brugt på NN.

5.3 Udvidelser 25 The user haven t bought the feature. And it is therefore disabled. Site features A feature containing a webpart and a couple of lists. There is no limit to how many webparts or other objects, a feature can contain. The webpart List List Another webpart Webpart being installed Another webpart A third webpart The user bought the feature and it is now enabled, for the user to insert it on his/her site. Site features The webpart List List Another webpart A third webpart Figur 5.6: Static webparts, only needing activation

26 Analyse Example 1: Manual User bought the webpart Mail sent to admin, inkl. what to be instlalled and where Administrator installs the feature and activates it on the site. Mail to the user that the webpart is ready for use. Example 2: Automated User bought the webpart Install script is run Deploy/Activation script is run Mail to the user that the webpart is ready for use. Example 3: Everything already installed User bought the webpart Start workflow Get appropriate authorisations from responsible authorities Run install script Mail to the user that the webpart is ready for use. 5.4 Konklusion Figur 5.7: Installation of webpart Efter at have analyseret de forskellige produkter er det det nu blevet lidt mere klart, hvordan NNIT regner med at systemet skal fungere. Jeg vil i tage udgangspunkt i analysen, når jeg skriver designet og bruge de metoder der er fundet i dette kapitel.

Kapitel 6 Design I analysen blev der stillet løsningforslag til de forskellige produkter. Dette kapitel omhandler hvilke løsninger der skal bruges og hvordan de udføres. I kravspecifikationen er det gjort klart at projektet skal udvikles til MOSSplatformen, hvilket betyder at der skal udvikles en masterpage og hver af de underliggende sider nedarver fra denne. Det er ikke vigtigt for projektet hvordan denne masterpage ser ud på nuværende tidspunkt, da den skal erstattes af én udviklet til at ligne resten af GlobeShare. Denne er dog ikke tilgængelig på nuværende tidspunkt. 6.1 Produkter Shoppen er delt op på samme måde som i analyse. 6.1.1 Webparts Webparts til denne shop bliver udviklet af mange forskellige personer, derfor er.net perfekt til dette formål. Da det er ligegyldigt om der udvikles i VB.net eller

28 Design C#.net.[6] Der skal i hver webpart være en del fælles elementer, så de alle er lige til at bruge i shoppen. Der skal være et toolbox-item, så der kan vælges om webparten skal vises som demonstration eller produktion. Et eksempel på hvordan man laver dette kan ses her: using ASPnet = System.Web.UI.WebControls.WebParts; using MOSS = Microsoft.SharePoint.WebPartPages; [ASPnet.Personalizable(ASPnet.PersonalizationScope.Shared] [ASPnet.WebBrowsable] [MOSS.FriendlyName("DemoMode"), MOSS.SPWebCategoryName("Configuration")] public string DemoMode { get { return DemoModeVariable; } set { DemoModeVariable = value; } } Det er vigtigt at der ikke er nogle afhængigheder til andre systemer, når den er sat til at blive vist som demonstration, da det skal være muligt at vise den færdige webpart i shoppen. Det er tiltænkt at bruge den færdige webpart i shoppen, så der ikke behøves at lave to udgaver af den samme webpart. 6.1.2 Shoppen I shoppen skal der laves en liste til webparts. Denne liste skal indeholde alle informationer om de webparts i shoppen. Her skal laves en liste der indeholder de elementer der er vist i figur 5.5 på side 24. Listen kan indeholde alle informationerne, hvorefter der skal laves to visninger af listen. En visning med kun de basale informationer og en med alle informationer. Herudover skal der laves en liste der kan indeholde alle ordre, hvor man kan se deres status. Dette skal bruges i til at holde styr på ordrene og det vil blive workflowet der kommer til at styre status på ordrene. 6.1.3 Workflow Der skal bruges et godkendelsesworkflow, der kan notificere afdelingslederen og evt. andre personer, når der bliver fremsat en ordre. Dette workflow skal starte

6.2 Opsætning af MOSS 29 med at sende en meddelelse til afdelingslederen, som så skal godkende ordren. Som standard i MOSS er det muligt at lave simple workflows til godkendelse af dokumenter før de publiceres. Dette er dog ikke avanceret nok til dette projekt, og der skal derfor udvikles et workflow.[2][3] Workflowet skal finde den nuværende brugers nærmeste leder. Dette kan gøres nemt, da hele shoppen er integreret i GlobeShare, som har disse informationer tilgængelige. Workflowet sender en mail til lederen, og ordren sættes til at vente på lederens svar. Hvis lederen ikke svarer indenfor tidsrammen eller afviser ordren, bliver ordren annulleret og brugeren der lavede ordren får besked. Efter lederen har godkendt ordren bliver der sendt en notifikation til den webpartsansvarlige, hvis der er en. Dette foregår på samme måde, og handlen vil blive annulleret hvis den ansvarlige ikke godkender ordren. Når alt er godkendt skal de valgte webparts installeres. De næste figurer er simplificeret ved at jeg går ud fra at der kun er valgt én webpart. Den metode som NNIT gerne ses brugt til installering af webparts er eksempel tre i figur 5.7 på side 26. Hele idéen i denne metode er at først installere selve webpart en på det site der skal bruge den, og dernæst aktivere den. 6.2 Opsætning af MOSS Der er allerede sat flere servere op, som danner rammer for GlobeShare projektet. Det ser dog sådan ud at hver afdeling vil have en side på website niveau. Hvilket også er det der er lagt op til i dette projekt. 6.3 Udvidelser I workflowet skal der implementeres et system der kan tale sammen med SAP. Det er mig uvist om SAP allerede har lavet et modul til dette, ellers skal det være nødvendigt at udvikle en C# applikation som kan dette. Dette vil være langt ude for hvad der egentlig er lagt op til i dette projekt.

30 Design 6.4 Konklusion Shoppen skal fungere som enhver anden shop, man vil kunne finde på Internettet. Det eneste anderledes er at det skal udvikles på MOSS. Webparts skal udvikles specifikt til brug i shoppen, og der skal sættes nogle retningslinjer op til hvordan dette skal gøres. På nuværende tidspunkt vælger jeg at der kun skal implementeres en demo-funktionalitet.

Kapitel 7 Problemer Efter at have undersøgt hvad MOSS kan og hvad det ikke kan, er jeg stødt ind i et problem. De ting som NNIT gerne ville have webshoppen skal kunne og hvad der rent faktisk kan lade sig gøre, er to forskellige ting. Der er flere elementer i problemet. En liste over de problemer der er kommet i løbet af projektet er: 1. Webparts ligger i galleriet, hvor alle sites i den site collection kan bruge dem. 2. GlobeShare er delt ud på mange farms, og det er derfor ikke muligt at få webparts deployed ud på de enkelte site collections. 3. En farm administrator får fuld adgang over den webpart som ét site i den farm har købt, og kan potentielt give den til alle på den farm. Jeg vil herunder gå igennem disse problemer, og hvad der kan gøres for at få dem til at virke.