Dataverse for Teams and what it means for users and admins?

Starting from mid November 2020 users of Office 365 and Microsoft Teams have been able to create Dataverse for Teams environments within standard O365/M365 licensing. What this actually means for end users and IT admins? What they have to consider when using this new feature?

Summary

As a summary Microsoft Power Platform is a platform to visualize data, build apps, automate workflows, build chatbots and store data by centralized way to Dataverse as a low-code approach. But wait… I thought Common Data Service was part of Power Platform? Haven’t heard about Dataverse? Microsoft renamed Common Data Service as Dataverse and the same time Dataverse for Teams came generally available (11/2020). Also some other main terminology changes came effective related to Dataverse environments: Entities -> Tables, Records -> Rows, Fields -> Columns.

Screenshot showing overview of Microsoft Power Platform.

Previously utilizing Dataverse (CDS) required advanced licensing model for Power Platform. Also using some advanced features like Power Virtual Agents and AI Builder required Dataverse as a background service so they were also binded to advanced licensing model. Since the launch Dataverse for Teams end users are now able to create “light-weight” Dataverse instances within their Microsoft Teams context. This allows a completely new approaches and options for individual teams and employees to start working with their data. Also building Power Virtual Agents is now possible through Dataverse for Teams… and it’s easy!

Creating Dataverse for Teams environment for your team

To create a Dataverse for Teams instance to your Team you have to add “Power Apps” or “Power Virtual Agents” (or both) Teams app to your Teams client. Simply access “Apps” button on lower left corner of Teams UI, search for Power Apps and then choose the app and select “Add”. You can be owner or member of the team and Team itself can be private, public or organization wide.

This will add app to your Teams left navigation. Remember to pin it with right click! Now you can access the new interface which allows of creating a new Power App (and Dataverse for Teams environment on background) for selected Team. I prefer using “Power Apps” Teams app as a main interface since it contains more features than “Power Virtual Agents” app and it launches the later one when needed.

You will end up to this kind of polished Canvas Power App editor which allows you to edit your canvas app and/or to create a new Table to newly created Dataverse for Teams environment. Ignoring building Table or Canvas App itself here actually doesn’t matter, you now have Dataverse for Teams environment on background. Of course you can start building app right away.

Later accessing “Build” tab of Power Apps app you can list all Teams which have Dataverse for Teams environment created and you have access as owner or member. From “New” button here you are also able to start creating a Chatbots (Power Virtual Agents).

By selecting “See all” option from previous view you can easily see all the artifacts from selected Team. This view also actually allows the full management of Tables and their columns as well as table data if needed. Notice all column types for tables are not available from other views! You can of course create multiple custom tables if needed, add custom columns and create relationships between tables.

End User considerations

  • You can build Canvas Power Apps, Power Automates or Power Virtual Agents
  • All standard and premium connectors are available. However you should prefer standard connectors to really get benefit from licensing changes.
  • Applications based for Dataverse for Teams only works in Microsoft Teams context. You can’t run these as standalone or add them to your company Intranet portal or so.
  • Remember this approach can be a data silo in a negative manner!
  • Considering previous bullets, make sure to scope you application correctly. Who are the actual users needs access to data? Is this really for your team only or should we actually build organization level application? How much data you are going to store considering limits we have? Your company must have some kind of Playbook for utilizing Dataverse for Teams.
  • Data is accessible by owners and members of the team. Guest users can use apps but by default they only see their own items from Tables for example. Individual access to PowerPlatform environment can be given through Power Apps admin center.
  • Many advanced feature from actual Dataverse is not available. REST API is missing, Dataverse access right model is missing, no Business Rules, no Webhooks and no plugins for example. You can’t create Model Driven Apps at all based for Table.
  • You can update Dataverse for Teams to actual Dataverse environment if needed – Option however is not yet available!
  • There is a limit of 2GB and/or 1 million rows of data per team (and per Dataverse for teams instance)

IT Admins consideration

  • By default all end users can add required apps to their teams and create Dataverse for Teams environments. This behavior can be blocked or changed through Teams Admin Center App policies.
  • 500 Dataverse for Teams environments can be created per Office 365 tenant. This is a current hard limit and can’t be changed.
  • Dataverse for Teams environments doesn’t count or effect for actual PowerPlatform and Dataverse capacity in your tenant.
  • All Dataverse for Teams are actual PowerPlatform environments and can be seen through Power Apps Admin center as “Microsoft Teams” typed environments.
  • You can setup and configure PowerPlatform DLP policies against these environments if needed.
  • By default Dataverse for Teams environment is deleted when the connected Team is deleted. However Dataverse for Teams PowerPlatform environments can be deleted on background without deleting actual Teams for example to get more quota for new active environments.
  • You should take this new PowerPlatform environment type under consideration in your Governance models.

Final words

Even the whole concept of Dataverse for Teams may sound a bit complicated I feel this a really good track and addition to current toolbox of Microsoft Teams. By informing and training end users, having a Playbook for them and getting these environments under ICT governance models there are again a lot more possibilities for organization and individual teams to be more efficient. And I love Power Virtual Agents already!

How to create crisis communications app for Microsoft Teams

The world is currently facing one of it’s biggest challenges in modern era because of ongoing coronavirus outbreak. Many organisations has been forced to move to 100% remote working mode whenever possible and situation has been a real challenge for company communications also. The need for efficient communication is bigger than ever.

This blog is all about how to easily create an crisis communications app for Microsoft Teams without any coding needs to support your company crisis communications. The main idea is to create modern communication site to your Intranet to host information, news and other “crisis content” itself and then expose this information through customized Microsoft Teams App easily for all your company employees.

The high level steps required for this approach

  • Allow “Apps Studio” Teams App usage from Teams Admin Center if needed
  • Add “App Studio” for yourself as an Teams application
  • Provision or produce a crisis management communication site
  • Create a separate COVID-19 Teams App with App Studio
  • Add App to Teams App catalog and deploy app to Teams left trail automatically through Teams Setup Policy
  1. Allow Apps Studio Teams App usage from Teams Admin Center if needed

It may be the Teams administrators or ICT department has blocked your access to Microsoft App Studio. If you go to Teams App catalog, search for App Studio and got no results then this is the case. If you can find the app you can ignore this step.

For Admins Teams allows quite dedicated control of which users can use and which apps so next thing is to check (or ask your Teams Admins to check) Teams Apps settings from Teams Admin Center https://admin.teams.microsoft.com/.

Make sure in ‘Manage apps’ the App Studio is and allowed application. and from Organisation wide app settings it’s already good to check your company allows usage of custom apps.

In ‘Permission Policies’ you can setup different app policies for different user groups in Teams. For desired user group – for all employees (Global policy by default) or only for professional Teams users for example (create and apply custom policy for this) – make sure App Studio is listed as allowed app.

  1. Add App Studio for yourself as an application

After Administrator has allowed you the usage of App studio you are ready to use it. So find it from Teams App catalog and add it as personal app. You will probably wan’t to add and pin it to your Teams left rail apps.

  1. Provision and/or produce (or find existing ) crisis management communication site

Now your company probably already has a communication site on top of SharePoint Online to be used as crisis communication site. If not Microsoft offers a free template to provision modern communication site to start gathering crisis information into one place. Overall it could be beneficial to check different site and page layout options from SharePoint Lookbook to get ideas how to build a cool looking and easily accessible crisis site for your employees.

Check the template and if you have a Office365 tenant admin role/rights you are also able to provision this template site directly from the SharePoint Lookbook to your own tenant through provisioning engine.

https://lookbook.microsoft.com/details/8f8337d2-b1f6-4a84-91a4-9081f841f0f6

  1. Create a separate COVID-19 Teams App with App Studio

Now we have all the basic bits and pieces in place to start creating our first very own Teams App through Teams App Studio. AS first step let’s access to app studio and start creating a new app from Manifest editor tab.

After this we have to enter very basic information related to our App. You can use given values or add more precise information if you feel so. I think the most important information is actually “Short Name” parameter of your app. This is name visible for end users and Teams left trail for example has very limited space for app name. If you use COVID-19 it will fit nicely to left trail and so on.

In App details section the couple of important things. As developer name it good to give either your own name or actual company name to make application more recognizable. Since we are nor officially publishing this app the partner information etc. can be left empty and app urls etc. can be fake urls or point to some general Terms of use page of your organisation. Adding a visual branding element and icon for application is important to make it recognizable so add icons with the correct size in place. I would prefer storing images as transparent png to make sure they looks good in every situation.

Now we will generate actual application. We are going to create an app with several tabs in place. So navigate to Tabs on left navigation and start adding tabs.

First Teams requires an configuration Url parameter for application and tab but it’s actually not so relevant so you can give basically any address you want. Make sure Scope you select is “Teams” and select “Runs the tab as and app page”

Now we can start adding the actual personal tabs and app content. Idea on this demo is to add tabs for each country in organisation to give them easy access to crisis communication in their own language so now add needed information for each tab

  • Name = Name of the tab visible in application
  • Entity ID = Any non reserved ID like 1000 (to start with)
  • Content URL = Link to communication site you want to expose for end users *
  • Website URL = Link to communication site you want to expose for end users

* To get Url work with Teams desktop client also in addition to browser you need to add following postfix to url where ‘dest’ parameter is actually depending of your actual site URL: https://<your tenant>.sharepoint.com/sites/COVID-19/_layouts/15/teamslogon.aspx?SPFX=true&dest=/sites/COVID-19

Also make sure all organisation users have read access to these sites exposed.

The end result for me is to have separate tabs for all country organisations we have in our company

To finalize the setup of application and functionality of Teams client app we still have to setup domains and permissions. Put following settings in place:

  • AAD App ID: 00000003-0000-0ff1-ce00-000000000000
  • Single-Sign-On: https://<your tenant>.sharepoint.com
  1. Deploy App to Teams App catalog

Now you are ready to deploy and make newly created app available for anyone in your company.

In your App Studio left navigation access to step “Test and distribute”. Select download and you will get nice and clean zip package to save.

After this step you can exit from App Studio and access Teams App catalog from lower left corner of your Teams interface. Then select Upload a custom App and upload it for you whole organisation.

After this step the newly created app should be available in Teams app catalog as organisation app (Built for <your tenant name>) for every user in your organisation. They are able to add it themselves and pin it to left trail app if it is allowed in Teams policies of yours.

As an end result we have created a new custom Teams app with four separate tabs in place to deliver crisis communication information through Teams to different country organisations we have.

  1. Modify Teams Setup Policy to add app automatically to users Teams client left trail

Now you can’t be sure users are able to find or they have time to add important application with themselves to their Teams UI and navigation through instructions for process. It may be good idea to force addition of this crisis app to all users’ left navigation in Teams.

You are able to achieve this through Teams Setup Policies. So access a setup policy and select policy which applies all your employees (like global policy by default does). Now click “Add apps” and you should be able to see your custom uploaded app as selectable option. Notice it may take hours (2-24h to be exact) before your custom app is visible in application listing. After application is available add it to selected policy’s pinned apps in the order you want.

After policy comes effective (again it may take 2-24h) the end result should be all yours employees will get your crisis communication app on their left trail automatically and they are able to access crisis information really easily through Microsoft Teams interface.

Hope this gives your company a new ideas how to make sure users are easily able to access the crisis information (or any other information) which may be crucial to your organisation.

How to migrate your Power Automates to Azure Logic Apps and why?

It’s really easy to implement and use Microsoft Power Automate (previously named as Microsoft Flow) to support your or your team’s daily work. You can use different triggers and ready made connectors to automate processes, react to any input and move data in context of Microsoft solutions. Also hundreds of 3rd party software is supported and Power Automate alongside with other Power Platform products allows you to achieve complex solutions easily even without any actual integration or coding skills.

However Power Automates can easily be really complex ones and in some point (especially if you have developer or architect background) you may start to miss a better editor than browser based UI and maybe also a better support for versioning and deployment etc.

Then it may be correct time to check what Azure Logic Apps has to offer for you. Power Automate is actually a almost same thing as Azure Logic App but it’s separated to Office 365 context to be available within Office 365 licensing model.

Possible why’s to start using Azure Logic Apps?

  • Export / Import to create Logic App from Power Automate is fairly easy and automatic operation.
  • Starting to work directly with Azure Logic apps is easy if you have a basic knowledge from Azure components, available Azure subscription and contribute rights at least to one Azure resource group
  • All Azure extensibility options, monitoring, logging and other Azure services are available to support your Logic App approach – Azure Key Vault at least to mention to store you Logic App related secrets
  • You can actually use Visual Studio 2019 or Visual Studio Code to modify or deploy your Logic Apps (Azure Logic Apps Tools for Visual Studio or Azure Logic Apps extension are required)
  • DevOps (version control and automated deployment) and better manageability – Power Platform is advancing all the time but still it lacks complete DevOps story and capabilities
  • Logic App pricing model (pay-as-you-go / per action) differs from Power Automate (Licensing with seeded, per app or per user options) and it could be beneficial to compare these approaches in terms of overall costs
  • Allows usage of Azure Integration Accounts for approaches which can benefit from them

How to import Power Automate as Azure Logic App?

In my case Logic App is handling Microsoft Teams related data through GraphAPI on top of SharePoint custom list.

1. Go to Power Automate center and export your current Power Automate in JSON form – Open your Power Automate and select Export | Logic Apps template .json

2. Access your Azure portal and select “Create a resource” and find option “Template deployment” and select “Create | Build your own template in the editor”

3. Now upload your exported JSON file to editor with “Load file” option and press save to define necessary information for your Logic App

4. If deployment goes fine that’s all and you can start develop your Logic Apps in Azure. One step however is to re-authenticate Azure API connections (former Power Automate connections) used by Logic App in App Edit mode. All connections requiring re-authentication are highlighted and you have to enter credentials or select already created working connection.

5. Please note in addition to Azure default Logic app editor you can now use Visual Studio Code Or Visual Studio 2019 to connect and manage your Logic Apps. It seems this approach actually offer a more stable way compared to browsers to modify your Logic Apps.

6. Instead of Azure template deployment, you can also create a Visual Studio “Azure Resource Group” typed project and select Logic App template to connect and deploy Logic App to your Azure subscription. You can replace the highlighted file with your Power Automate export(s) and deploy your project to Azure directly.

Encountered issues & Considerations

  • All connectors from Power Automate are not necessary available in Logic Apps. You can import Power Automates that have equivalent connectors in Azure Logic Apps. For example, the Button trigger, the Approval connector, and Notification connector are specific to only Power Automate https://docs.microsoft.com/en-us/azure/connectors/apis-list
  • By default for Logic Apps “Apply to each” loops enables concurrency which causes issues when using for Logic App variables with SharePoint Update item connector for example. So setting concurrency “Degree of Parallelism” setting from apply to each control settings to 1 helps but this will have a effect for performance
  • It seems that in my case multiple SharePoint API connections within single Logic App JSON definition causes error in deployment. If needed you can clear the extra connections from Power Automate UI and export the JSON manifest again. Alternatively you can manually clear these “extra references” from JSON (with Notepad++ for example) to get Power Automate imported correctly. It should be fairly easy to identify and change connection references from JSON file.

So if you have a wider workflow needs (real enterprise scenarios with premium connector needs for example) in your hands on Office 365/Azure cloud environment and you are thinking to use or already using Power Automate, it could be worth to check what Azure Logic apps has to offer and could this be more viable approach for you.

Microsoft Power Platformin käyttöönoton ensiaskeleet

Microsoftin Power Platform on yhä vahvempi tekijä, kun puhutaan nk. “low-code” alustoista. Ne mahdollistavat monia sovelluskehityksen ja sovellusautomaation mahdollisuuksia graafisen käyttöliittymän kautta ilman työlästä sovelluskehitystä. Tämä malli leikkaa tyypillisesti sovelluksen käyttöönottoon tarvittavaa aikaa sekä erityisesti kustannuksia. Alustan avulla loppukäyttäjät voivat tehdä monia asioita, jotka aiemmin eivät olleet mahdollisia ainakaan ilman raskaita ja kalliita sovelluskehityksen ponnisteluita. Power Platformin käyttöönotto voikin parhaimmillaan tehostaa työntekijöiden ajankäyttöä merkittävästi ja tuoda tätä kautta kustannussäästöjä, yleistä tehokkuuden paranemista sekä lisätä henkilöstön yleistä tyytyväisyyttä.

Myös Gartner listasi aiemmin syksyllä Microsoftin Power Platformin low-code alustojen tämän hetkiseksi markkinajohtaksi: https://powerapps.microsoft.com/en-us/blog/gartner-names-microsoft-a-leader-in-enterprise-low-code-application-platforms-2019-magic-quadrant/

Kirjoittelin tämän vuoden MS Igniten pohjalta yhteenvetoa jo aiemmin, ja sieltä löytyy muutama sananen myös Power Platformista: https://newway2work.blog/2019/11/13/ms-ignite-2019-loppukayttaja-ottaa-modernin-tyon-yha-vahvemmin-omiin-kasiinsa/

Lähde: Microsoft Ignite 2019 – POWA10: Enabling everyone to digitize apps and processes with Power Apps and the Power Platform

Tässä blogissa esittelen yksinkertaistettuna Power Platform -ympäristön käyttöönoton perustarpeet. Oletus on, että organisaatio haluaa hyödyntää ja lähteä liikkeelle seuraavilla kokonaisuuksilla:

  • Graafiset Canvas-tyyppiset Power Appsit ja niiden päälle rakennetut kevyet sovellukset
  • Työnkulut ja sovellusautomaatio niiltä osin, kun tarpeita on tunnistettu
  • Em. kokonaisuudet halutaan tuoda kaikkien työntekijöiden saataville sekä toisaalta halutaan tehdä muutamia “virallisia” sovelluksia organisaatiolle

Mitä pitää vähintään huomioida?

1) Power Platform-ympäristöt

Kaikkiin Office 365 -tenantteihin muodostuu automaattisesti yksi default -ympäristö (Environment). Tähän ympäristöön päätyvät oletuksena kaikki luotavat Power Appsit ja Power Automate-työnkulut. Lisäksi kaikilla käyttäjillä on oikeus luoda em. komponentteja ympäristöön.

Ympäristöjä voidaan hallita Power Platformin Admin Centerin kautta osoitteessa https://admin.powerplatform.microsoft.com/environments.

Organisaation tarpeista riippuen pitäisi luoda ainakin toinen ympäristö tuotantokäyttöön (Type “Production”), johon kasataan organisaation viralliset sovellukset. Tähän ympäristöön voidaan antaa rajatummat käyttöoikeudet ympäristökohtaisen nk. maker-roolin puitteissa, jolloin kokonaisuus on paremmin hallittava. Tähän liittyy myös ympäristön kesken jaettujen datayhteyksien tietoturva ja tarvittaessa myös ympärisökohtaiset DLP-policyt. Lisäksi voidaan perustaa esim. kehitysympäristö, johon voidaan myös määrittää erikseen oikeuksia tyypillisesti default- ja tuotantoympäristön välimaastosta.

Esimerkki Power Platform-ympäristöistä tenantissa

2) Erillinen automaatiotunnus

Power Platformin käyttöön kannattaa luoda erillinen automaatiotunnus, joka omistaa lähtökohtaisesti tuotanto-ympäristön sovellukset. Ei ole väliä, onko tämä tunnus lokaali AD:n tunnus vai “Cloud Only”-tyyppinen Azure AD-tunnus. Tämän omistajatunnuksen rinnalle voidaan tuoda co-owner roolissa esim. IT:n henkilöiden tunnukset / ryhmät. Tätä kautta säilytetään hyvä näkyvyys kaikkiin ympäristössä oleviin sovelluksiin sekä mahdollistetaan tarvittavat huoltotoimet.

Hyviä syitä automaatiotunnuksen luomiseen ovat ainakin:

  • Perinteinen sovelluksen omistajan lähtö yrityksestä -> Orvot työnkulut ja Power Appsit
  • Tarvittaessa kaikilla hallintorooleilla pääsy sovelluksiin yhden tunnuksen kautta
  • Sovelluksen sisäiset datayhteydet määritellään usein samalle tunnukselle, joka omistaa sovelluksen -> Huomioi tunnuksen näkyvyys loppukäyttäjille tietyin yhdistimin, kuten esim. sähköpostin lähetys tai Teams-viestin lähetys
  • Yhdistimien vaatimat oikeudet taustalla voivat olla järeitä Office 365 admin-rooleja -> selkeä luvitusmalli
  • Tarvittaessa MFA-autentikaatio voidaan pitää voimassa myös tässä mallissa

3) Lisensointitarpeet

Lisensointitarpeet on hyvä selvittää heti alkuun. Perusyhdistimet ja esim. SharePoint-listan hyödyntäminen tietovarastona kuuluvat peruslisensointiin ja itse asiassa näillä päästään peruskäyttötapauksissa ja perussovelluksissa hyvinkin pitkälle.

Esimerkki saatavilla olevista perusyhdistimistä

Erikseen maksullisia Per App ja Per User -lisensointimalleja tarvitaan ainakin seuraavissa tapauksessa mikäli:

  • Hyödynnetään premium-yhdistimiä
    • Dynamics 365-yhdistimet
    • Azure-yhdistimet ml. Azure SQL / Cosmos DB
    • GraphAPI ja sitä vasten tehtävät operaatiot
  • Käytetään Common Data Serviceä (CDS) tietovarastona
  • Käytetään ominaisuuksia, jotka tarvitsevat toimiakseen CDS:ää esim. AI Builder, Portal-tyyppiset Power Appsit, Power Virtual Agents jatkossa
  • Käytetään OnPremise Data Gateway:tä tapauksissa, joissa datalähde sijaitsee lokaalissa konesalissa

Lisensointi tulee aina miettiä tapauskohtaisesti ja esim. se, onko organisaatiolla käytössä Dynamics 365, vaikuttaa Power Platformin käyttömahdollisuuksiin merkittävästi. Uusin ohjeistus lisensointiin löytyy täältä https://docs.microsoft.com/en-us/power-platform/admin/powerapps-flow-licensing-faq.

4) Virallisten Canvas-tyyppisten Power Appsien ulkoasu ja käytettävyys

Liian usein tulee vastaan graafisia Power Appseja, joiden ulkoasu on jotakin “sinne päin”. Jotta loppukäyttäjien olisi mukava käyttää sovelluksia, edes perus saavutettavuusvaatimukset täyttyisivät ja applikaatiosta kävisi selkeästi ilmi minkä organisaation sovellus on kyseessä esim. vieraskäyttötapauksissa, olisi organisaation sähköisten kanavien ulkoasuun muutenkin sovellettavat ohjeet syytä huomioida myös Power Appsien puolella mahdollisuuksien mukaan. Esimerkkejä:

  • Perusilme aina samanlainen – Ylä- ja alatunnisteen sisältö
  • Perusnavigoitavuus ja esim. “koti”-painikkeen lokaatio
  • Käyttöliittymän suunnittelu jonkinlaisen “parhaan käytännön” mukaisesti niin, että liittymän perusasiat ovat kunnossa
  • Organisaation värimaailma ja logo applikaatiossa
  • Saavutettavuuden perusasiat: Riittävän suuri ja selkeä fontti, selkeät ja erottuvat elementit, riittävät kontrastit elementeissä jne.
Valmiita saatavilla olevia Canvas Power Apps-templaattimalleja

5) Sovelluksen loppukäyttäjät

Miksi sovellus olikaan olemassa? Todennäköisesti helpottaakseen loppukäyttäjien elämää ja päivittäisen työn tekemistä. Näin ollen loppukäyttäjät tulee huomioida monella eri rintamalla:

  • Ks. kohta 4. yhtenä tärkeimmistä
  • Loppukäyttäjien ja koko henkilöstön mahdollisuus ja tuki alustan ominaisuuksien hyödyntämiseen. Alustan perusominaisuudet käytössä kaikilla työntekijöillä Office 365 Business / E1 / E3 / E5-lisensointitasoilla ja myös F1 -lisensointi mahdollistaa sovellusten käytön
  • Tarvittava koulutus, jotta peruseväät ja “uskallus” hyödyntää ominaisuuksia ovat olemassa
  • Power Platform tulee ottaa osaksi käyttöönoton- ja muutoksen tukea organisaatiossa. Jos olette määritelleet esim. Office 365 -käytön Pelikirjaa, tulisi Power Platformin elementtien olla myös mukana Pelikirjassa
  • Yrityksen käytössä oleva mobiililaitteisto ja laitekanta

6) Kevyt hallintomallitarve virallisille sovelluksille

Vaikka Power Platform tuo kevyen mallin sovellusten rakenteluun ja hyödyntämiseen, ei sekään toimi ilman perushallintomallin määrittelyä. Organisaatiossa IT:n tai alustastavastaavien tahojen pitää pysyä perillä tilanteesta myös Power Platformin suhteen ja tarvittaessa esim. tarjota tukea, jos loppukäyttäjillä tulee ongelmia virallisten sovellusten kanssa. Samoin jos esim. sovelluskumppanin halutaan tekevän kehitystä alustalle, pitää kokonaisuuteen olla määriteltynä selkeä malli.

Hallintomallin tulisi sisältää vähintään seuraavat määrittelyt:

  • Kehitys- ja tuotantoonvienti prosessi virallisille applikaatioille – Missä ympäristössä kehittäminen tapahtuu? Kuka vie sovellukset tuotantoon? Missä ympäristössä bugikorjaukset tehdään? Miten jatkokehitys hoidetaan?
  • Sovellusten versiointi ja varmistus – Liittyy suuresti edelliseen kohtaan, mikä myös määrittelee sovellusten ja työnkulkujen versiointia. Vaikka sovellukset säilyvätkin ympäristöissä ja kuuluvat esim. Microsoftin perusvarmistusten piiriin, halutaanko uusista versioista viedä exportatut sovelluspaketit (ja tarvittaessa esim. SharePointin listatemplaatit) vielä erikseen organisaation versionhallintaan?
  • Yhtenevät nimeäsmiskäytännöt – Vaikka rakennettu sovellus muodostuisi esim. Canvas Power Appsista, Power Automate työnkulusta ja SharePointin listasta, ei suoraa linkitystä näiden elementtien välillä välttämättä ole sovellusnäkökulmasta. Dokumentaatio sovelluksista on hyvä olla olemassa ja eri komponentit tulee myös nimetä niin, että myöhemmin on helppo kertoa mitkä niistä liittyvät a) toisiinsa b) mihinkin toiminnalliseen kokonaisuuteen.
  • Power Appsien uudelleenjulkaisu ja yhdistimen versiopäivitykset tietyllä syklillä – Jotta Microsoftin päivitykset ja esim. yhdistimien suorituskykyyn liittyvät parannukset tulevat voimaan, tulisi Power App-sovellukset aika-ajoin julkaista uudelleen. Lisäksi Power Automaten yhdistimissä tapahtuu parannuksia ja versiopäivityksiä (kuten esim. juuri nyt Outlook-yhdistimen version päivittyminen V3 -> V4) ja nämä versiopäivitykset eivät automaattisesti päivity työnkulkuihin.
  • Ympäristöjen ja applikaatioiden monitorointi – Admin Centerin hallintaliittymien kautta on saatavilla jatkossa dataa siitä miten esim. Power Appseja käytetään organisaatiossa. Käyttöä tulisi mitata ja dataa pystyä hyödyntämään samalla tavoin kuin muutakin Office 365:n tuottamaa vastaavaa analytiikkaa toimintapojen kehittämisessä.
  • Virhetilanteiden selvitys ja tukitoiminnot – Power Platformin sovellukset ovat sovelluksia siinä missä kaikki muutkin sovellukset. Vastaavalla tavalla niissä ilmenee välillä loppukäyttäjillä ongelmia, joihin tarvittaessa pitää pystyä vastaamaan. Yrityksellä tulisi olla selkeä tukimalli esim. oman IT:n ja tarvittaessa vaikkapa sovelluskumppanin kautta.

Hyödyllisiä linkkejä ja dokumentteja, joilla päästä alkuun Power Platformin parissa

Lopuksi vielä muutamia linkkejä ja dokumentteja, jotka helpottavat Power Platformin käynnistelyä. Kun perusasiat ovat kunnossa, on vakaalla pohjalla mukavaa lähteä rakentamaan sovelluksia ja tätä kautta parantamaan työntekijöiden arkea ja päivittäistä työskentelyä.

MS Ignite 2019 – Loppukäyttäjä ottaa modernin työn yhä vahvemmin omiin käsiinsä

Intensiivinen Ignite-viikko Orlandossa on nyt takana. Aikaerosta ja matkustamisesta on myös sen verran selvitty, että on aika vetää yhteen viikon antia sekä miettiä, mihin olemme matkalla.

Tapahtuman keynotessa tuottavuustyökalujen osalta Microsoft käytti nimitystä “The world’s productivity cloud”. Tätähän Microsoft 365-pilviympäristö todellakin nykyään on – maailmanlaajuinen, tietoturvallinen, monipuolinen, käyttäjäkeskeinen sekä samalla yhä helppokäyttöisempi kivijalka, jonka varaan on hyvä rakentaa niin pienen kuin suurenkin yrityksen toimintaa. Ne lukijat joille Office 365 on terminä tutumpi – Microsoft 365 on siis käytännössä Office 365:n laajennettu lisensointimalli, joka tuo perustasollaan mukanaan myös Windows 10:n sekä tietoturvan ja päätelaitehallinnan ominaisuuksia.

Microsoft 365 
The world's productivity cloud

Moderni SharePoint & Intranet

Moderni SharePoint on ottanut viimeisen vuoden aikana suuria askelia eteenpäin, ja tiekartta sekä tehdyt julkistukset tulevista ominaisuuksista olivat johdonmukaista jatkoa sille.

Kokonaan uutena palveluna on tulossa Project Cortex, joka tuo tekoälyyn perustuvan tiedon automaattisen linkityksen ja analysoinnin sekä tämän pohjalta aihesivujen, tietokeskuksen ja aihekorttien automaattisen muodostamisen saataville.

Lisäksi tulossa on navigaatioiden kohdentaminen, parannuksia kokoomasivustojen ominaisuuksiin ja hallittavuuteen, suuri määrä parannuksia SharePoint-listojen ominaisuuksiin, listojen paremman integroitumisen Teamsin käyttöliittymään ja niin edelleen. Lista on pitkä.

Moderni SharePoint on responsiivinen, tyylikäs, helppokäyttöinen, vakio-ominaisuuksiltaan jo nyt hyvin monipuolinen sekä moderneja käyttötapauksia tukeva. Mukauttaminen on helppoa SharePoint Frameworkin (SPFx) avulla tilanteissa, joissa mukautukset ovat selkeästi perusteltuja. Samoja mukautuksia webosissa voidaan hyödyntää myös suoraan Microsoft Teamsin käyttöliittymän kautta.

Ilo oli myös nähdä, miten yritykset ovat huomanneet ja valjastaneet modernin SharePointin kyvykkyydet ja mm. kattavat modernit uutisointiominaisuudet. Samoin on huomattu, että loppukäyttäjät voivat itsekin tehdä paljon ilman ulkopuolista apua, mikä tuo nopeutta ja joustavuutta tekemiseen.

Klassisen ajattelumaailman kysymyksiä oli sessioissa yhä harvemmassa. Modernin SharePoint-ympäristön valmisominaisuuksien riittävät mahdollisuudet on vihdoinkin alettu ymmärtää myös muualla kuin esim. Suomessa (jossa kuljemme tässä asiassa aika eturintamassa). SharePointin (tai Intran) mukautuksiin tai “valmis-intraan” ei kannata enää yksinkertaisesti käyttää aikaa, rahaa tai vaivaa suuria summia. Ennemminkin halutaan pysytellä valmisominaisuuksissa ja hyödyntää niitä järkevällä tavalla.

Maailma on myös muuttunut siinä, miten Intranet organisaatioissa rakentuu. Yhä enemmän kaikki käyttäjät ovat mukana sisällöntuotannossa ja ulkoasuun tehdään vain kevyt brändäys. Alustat kuten Yammer ja Microsoft Teams mahdollistavat läpinäkyvän informaation kulun ja sisällön tuottamisen, johon kaikki loppukäyttäjät osallistuvat. Toisaalta loppukäyttäjät voivat myös valita esim. roolinsa perusteella luontevimman tavan ja sähköisen kanavan kuluttaa tätä sisältöä.

Intranet konseptina siis mukautuu nykyajan tarpeisiin ja ennen Intralle luontaisia funktioita toteuttavat yhä enemmän kaikki Office 365:n työkalut yhdessä. Moderni “Intranet”-käyttöönotto onkin nykyään kevyemmän teknisen lähestymisen ohella enemmän käyttäjälähtöinen kokemus. Projektissa mietitään organisaation viestintää kokonaisuutena ja sitä miten uudet työtavat ja Microsoft 365:n tarjoamat mahdollisuudet saadaan hyödynnettyä tehokkaasti juuri kyseisessä organisaatiossa niin viestinnän kuin ryhmätyönkin osalta.

Microsoft Teams & Yammer

Myös Microsoft Teamsin ja Yammerin osalta Ignite tarjosi paljon.

Yammerin uusi ulkoasu julkaistiin ja Office 365-ryhmiin tehdään pesäeroa muuttamalla Yammer-ryhmien nimi yhteisöiksi (communities). Lisäksi saamme uuden Teams-appsin, jolla Yammer on helppo tuoda osaksi Teamsin käyttöliittymää, mikä selkeyttää ja helpottaa Yammerin käyttöä oleellisesti. Microsoftin aiemmin lanseeraama Inner loop (Teams) – Outer loop (Yammer)-ajattelu tukee taas paremmin kokonaisuutta. Päivittäinen työskentely siis tapahtuu Teamsin kautta, mutta Yammerin kautta loppukäyttäjät voivat jakaa omaa tietoutta ja tekemistä muulle organisaatiolle yli siilojen suoraan Teamsistä.

Teamsin osalta kauan odotetut privaattikanavat tulevat vihdoin tuotantoon nopealla aikataululla jo tällä viikolla. Samoin käyttöä helpottavat erilliset keskusteluikkunat ovat tulossa alkuvuodesta. Lisäksi esiteltiin malli jaella Power Appseihin perustuvia applikaatioita helposti Teamsin sovelluskeskuksen kautta organisaatiossa yhdessä uuden applikaatiokatalogin kanssa. Jatkossa voidaan siis tuoda yrityksen ja eri henkilöstöroolien toimintaa tukevat Power Apps-sovellukset suoraan Teamsin vasemman reunan navigaatioon, jolloin niiden käyttäminen helpottuu. Lisäksi mainittakoon Teamsin uudet tehtävät ja keskitetty näkymä kaikkien eri tehtävätyyppien hallintaan Office 365:ssa. Tämä on ehdottamasti odotettu uudistus.

Microsoft Teams alkaa myös olla “de facto” ryhmätyön alusta yrityksissä, joissa Office 365 on käytössä. Ajatuksena työn käyttöliittymä on toimiva ja antaa tiimeille, eri funktioille ja yksilöille valtavasti mahdollisuuksia organisoitua tehokkaasti oman toimintansa ympärille käyttäjälähtöisesti kunhan tämä tehdään hallitusti ja siten, että kaikki käyttäjät tuntevat organisaation pelikirjan ja yhteiset pelisäännöt. Jatkossa Teamsin rooli entisestään vahvistuu ja yhä useampaa liiketoimintasovellusta tiedon tai sovelluksen sijainnista riippumatta tullaan käyttämään luontaisesti Teamsin kautta. Tämä tarkoittaa myös mukautusten ja lisätoimintojen tuomista Teamsin kontekstiin. Tämän myötä organisaation Teams-osaaminen, Teams-kyvykkydet sekä avoin organisaatiokulttuuri ja yhteiset pelisäännöt nousevat yhä voimakkaammin tekemisen ja osaamisen keskiöön.

Ignitessa oli myös vahvasti esillä Teams-yhteensopivia laitteita ja Microsoft Teams Rooms- sekä Focus Rooms-konseptit. Lisäksi lanseerattiin uusi Managed Meeting rooms-palvelu. Kokonaisuuden täydentää Surface Hub 2 ja näppärät integroidut whiteboard-toiminnallisuudet. Kokoukseen liittyminen ja kokouksen aloittaminen näillä on todella vaivatonta ja kokouskokemus ylipäätään sujuva. Olemme tulleet kauas ongelmallisista Skype-kokouksista ja hyvä niin!

Microsoft Power Platform

Igniten ehkä parasta antia oli mielestäni Microsoft Power Platformiin liittyvät sessiot ja alustan avaamat mahdollisuudet. Power Platform tulee ja kovaa! Monet organisaatiot tekevät alustan käyttöönottoa parhaillaan sekä automatisoivat prosessejaan. Proof of Concept-hengessä toteutuksia yhä useampien liiketoiminta- tai tuottavuussovelluksien tuomiseksi Power Platformin päälle on menossa leveällä rintamalla. Ignitessa moni suurempi yritys myös esitteli omia, jo tuotannossa olevia Power Platform-sovelluksiaan ja jakoi kokemuksia niistä.

Power Platform on alusta, joka koostuu seuraavista komponenteista:

  • Eri tyyppiset Power Appsit – Sovellukset ja UI
  • Power Automate – Työnkulut, automaatio, yhdistimet (aiemmin MS Flow)
  • Power BI – Tiedon visualisointi ja analysointi
  • Power Virtual Agents – Vuorovaikutteiset toiminnot perustuen botteihin

Power Platform sisältää valmiita yhdistimiä moniin eri järjestelmiin ja ideana on low-code/no-code- tyyppinen lähestyminen, jossa sovelluksia ja automaatiota voidaan rakentaa käyttöliittymän kautta helposti ilman syvää koodausosaamista. Kun loppukäyttäjät itse ryhtyvät tekemään tätä, puhutaan kansalaiskoodauksesta. Power Platformin hyödyntäminen leikkaa ideaalitapauksessa suuresti sovelluskehityksen kustannuksia ja tarvittavaa kalenteriaikaa sovelluksen rakentamiseksi.

Monet yhdistimet ja ominaisuudet vaativat erikseen lisensointia mutta monet tarpeet hoituvat myös olemassa olevin Office 365 F1/E3-lisenssein kuten visuaalisen canvas-tyyppisen Power Appsin ja Power Automaten avulla hyödyntäen tuttua SharePointin listaa tietovarastona. Toisena esimerkkinä erilaisten syötteiden saaminen ja niihin reagoiminen suoraan Teamsin käyttöliittymästä vaikkapa mukautuvien korttien avulla ja kaikki yhden käyttöliittymän takaa.

Myös Power Platformin tulevaisuus näyttää erittäin vahvalta. Yhä parempi integroituminen Teamsiin, AI Builder-ominaisuus, jossa tekoälyä voidaan opettaa ja hyödyntää suoraan Power Appsien kautta vaikkapa kuvien sisällön tunnistamiseen, Ignitessa julkaistut RPA-ominaisuudet joilla voidaan automatisoida myös toimintoja ruudulla nauhoitettujen käyttäjäinteraktioiden pohjalta ja PCF (PowerApps Component Framework) Power Appsien komponenttien laajentamiseksi avaavat lähes rajattomasti uusia  hyödyntämismahdollisuuksia.

Kaikki tämä on lähtökohtaisesti myös loppukäyttäjien suoraan hyödynnettävissä.

Muutoksen tuki organisaatiossa (Adoption)

Se, miten muutosta ja käyttäjiä organisaatiossa tuetaan, on noussut jo aiemmin keskeiseksi elementiksi Microsoft 365 -käyttöönotoissa. Jo tätä blogia lukiessa ymmärtää, miksi muutoksen tukeminen ja siirtyminen jatkuvan kehityksen malliin korostuu entisestään

  • Microsoft 365 käyttöönotto on aina kokonaisuus ja organisaatiolle usein kokonaan uusi tapa toimia. Muutos lähtee aina yksilöstä ja siitä että yksilö kokee muutoksen tarpeellisena ja hyödyllisenä itselleen
  • Loppukäyttäjillä on yhä suurempi mahdollisuus osallistua sisältöjen tuottamiseen,  keskusteluun ja heillä on parempi näkyvyys siihen mitä organisaatiossa tapahtuu kokonaisuutena
  • Loppukäyttäjillä ja tiimeillä on yhä suurempi mahdollisuus vaikuttaa itse siihen, mitä työkaluja ja millä tavoin he haluavat niitä omassa työssään hyödyntää
  • Aiemmasta poiketen toimintojen mukauttaminen käyttötapausten mukaiseksi loppukäyttäjien toimesta on mahdollista ja jopa toivottavaa
  • Käyttäjille syntyy tarve ymmärtää paremmin Microsoft 365-kokonaisuutta ja potentiaalia
  • Muutoksen pysyvyys ja nopeakin tarve omaksua uusia ominaisuuksia on uusi normi
  • Kun digitaalinen ympäristö mahdollistaa kaiken edellä kuvatun, on yhteistyön toimivuuden kannalta koko ajan tärkeämpää, jopa elintärkeää, johtaa muutosta niin, että työyhteisö toimii samojen peruskäytäntöjen mukaisesti. Yhteistyö ei vain toimi, jos kaikki säntäilevät joka suuntaan omien mielihalujen ja oivallusten vieminä.

Muutoksen tukeminen (end user adoption) onkin syystä myös Microsoftilla yksi tämän vuoden avain-focuksista. Loppukäyttäjän ja tiimien käsissä on yhä enemmän mahdollisuuksia käyttää tuottavuustyökaluja haluamallaan tavalla. Lisäksi on tärkeää ymmärtää että em. työkalujen käyttöönotto, prosessien ja pelikirjan määrittely sekä tekemisen kehittäminen eivät suinkaan ole kertaluontoisia ponnistuksia. Uusia ominaisuuksia tulee koko ajan, jopa viikoittain, ja samalla organisaation on myös mietittävä miten saada hyödyt irti maksetuista lisensseistä sekä miten organisoitua jatkuvan muutoksen mallin ympärille. Myös hallintamallit ja avustavat työkalut sekä prosessit vaativat päivitystä.

Oleellista tässä kaikessa on myös se, että alustan ylläpidon, mukautettujen sovelluksien ylläpidon ja esim työläiden jatkokehitysponnisteluiden sijaan panokset voidaan nyt käyttää ketterästi aitojen hyötyjen, liiketoimintaa aidosti edistävien, loppukäyttäjiä tukevien sekä yrityksen toimintaa tehostavien ratkaisujen eteenpäin viemiseksi.

Productivity cloud feature announcements highlights from MS Ignite 2019

This blog lists some Ignite announcements highlights and adds some considerations in context of Microsoft Teams, SharePoint Online, Yammer and Power Platform as a part of productivity cloud. All of these components can be considered as the key building elements of modern workplace and “the world’s productivity cloud” like Microsoft is now branding the Microsoft 365.

Microsoft 365 
The world's productivity cloud

Remember all Ignite 2019 keynotes and already kept sessions can be viewed through the event main site https://www.microsoft.com/en-us/ignite

Microsoft Teams announcements

All Teams announcements: https://techcommunity.microsoft.com/t5/Microsoft-Teams-Blog/What-s-New-in-Microsoft-Teams-Ignite-2019/ba-p/937025

Private channels

Private channels was by far the most awaited new feature for the Microsoft Teams and its starts to rollout as we speak. Basically it allows to restrict visibility of channel and it’s discussions, tabs and files for the subset of team members, owners or guest users to engage more private collaboration.

If we consider a team which has guest users from other organization for example this could be extremely handy feature to get all collaboration and files inside same team. Likewise it works in case where internal team like HR want’s to collaborate internally and publish information for whole company within same team. Private channels may actually significantly lower the amount of required teams in organization overall since there is no need to create separate teams anymore and in that perpective make the governance easier.

However there are some considerations. How private channels works is whole different story compared to “normal” channels. When creating a private channel, in the background the whole SharePoint site collection is actually created per private channel to manage user permission and host files effectively. This means if single team is consisting of 6 normal channels and 2 private channels for example it requires actually 3 SharePoint site collections to host this single team on backgound. There are also some restrictions and differences with functionalities compared to normal channels discussed here https://docs.microsoft.com/en-us/MicrosoftTeams/private-channels.

Second consideration for private channels is that there is even bigger need to make sure end users and both team owners and members knows how to act correctly in different usage scenarios. It’s extremely important that they on required level understands the difference between private channel and separate team and which is more efficient way to work on case exact. So update your playbooks in this area and think how your organization should instruct the usage!

And by the way it seems private channel related site collections are currently not visible in SharePoint admin center at all.

Multiwindow capabilities

Multiwindow capability was by far the second most wanted feature for Microsoft Teams. Well its finally here or more closely it will be in early next year. What this basically means is that you can popout teams meetings and/or chats to separate windows to make usage easier in case you have many ongoing activities at same time. Huge usability improvement since this has been a real issue i would say.

SharePoint Online

All SharePoint announcements: https://techcommunity.microsoft.com/t5/Microsoft-SharePoint-Blog/The-intelligent-intranet-powered-by-Microsoft-365-Microsoft/ba-p/975037

Audience Targeting for Navigation

Audience targeting for modern news and content pages is currently rollling out worlwide. It allows you to target news and content pages for Office 365 Groups or Active directory groups through news or search highlights webpart and is extremely handy feature to create more personalized (news) content for hub sites or new SharePoint Home Site.

It’s quite natural to get targeting feature for navigation also to get more complete implementation for targeting as a whole. Release is expected on December.

Multilingual page publishing for Modern SharePoint

In modern SharePoint creating multilingual implementations required previously creation of separate communication site structures and hub sites for each of languages. Through multilingual approach content editors can start producing content with various languages to same communication site for news or content pages. This feature allows to create multilingual Intranet to single communication site / hub site structure with sime considerations. When user enters to page with multilingual content available the users’ preferred language version is presented automatically. Release is expected on December.

Power Platform

All Powerplatform announcements: https://cloudblogs.microsoft.com/dynamics365/bdm/2019/11/04/announcing-rpa-enhanced-security-no-code-virtual-agents-and-more-for-microsoft-power-platform/

Flow is now called Power Automate

First thing is that Flow got renamed as Power Automate. According Microsoft this naming is better aligned with Power Platform but this may require a bit time to get used to it.

Availability of UI Flows

There is now option available to interact with other applications UI through Power Automate. You can record actions for desktop or web browser applications you are using as Power Automate steps. Let’s take and example: Your organization is using an old software as business critical system and it constantly requires manual work to get things done. Since Power Automate doesn’t have connector for your custom software and it’s too expensive to develop REST api for the old software the working solution is to automate actual user actions in UI level.

This is actually a really good feature and bring Power Automate to different league what becomes to usablity and compliteness of vision in this area. Now Power Automate can really be a single automation platform in many companies.

We must remember these features are now in preview state and there are some restrictions what can be done. However this is a good start.

New Yammer

Full Yammer announcement: https://techcommunity.microsoft.com/t5/Yammer-Blog/The-New-Yammer/ba-p/976855

New Yammer is coming during year 2020. Please notice you can participate private preview starting on december through this link https://aka.ms/TheNewYammer. There are a lot of improvements. The UI is completely rewritten to match current standards. They are renaming Yammer groups as communities and what’s the best there will be new Yammer teams app available also. Still previous thinking is valid: Yammer is definitely meant for outer loop messaging and sharing knowledge within organization while  Teams is a inner loop tool to enable day to day collaboration. I would say Yammer is targeted for bigger customer but may work well in smaller companies also if organization type especially supports it.

Participating for MS Ignite 2019 at Orlando as a first timer?

Ignite 2019 is almost here. It will take place on 4-8.11.2019 at Orlando on Orange County Convention Center (OCCC).

First of all the event is huge – a real heavy weighter… If you have participated previously to some European conferences (ESPC, Collaboration Summit etc.) they are “nice and tiny” events compared to Ignite itself. Ignite is definitely one of the main events for Microsoft’s fiscal year. There will be around 25000-30000+ participants, speakers, Microsoft people, different organizing parties etc. so really lot of people with “Microsoft spirit” is packed to Orlando during Ignite takes place and it’s simply great.

As a first timer the most common error as a participant is to get all possible important and “must go” sessions in your calendar, try to actually participate all of them and basically do nothing else. This is a path to get frustrated and completely overwhelmed with the amount of information. It will be exhausting even physically since it’s normal changing room inside event venue from wing to another may easily take 30min to walk in a crowd. Through this approach you will make sure not to get benefits out from event itself. Also remember this year all the sessions will be live-streamed and recorded so it’s easy to get back them if and when needed.

I tried to list some hints in how to conquer Ignite:

Make sure you are well prepared

Even I just said it doesn’t make sense to book your schedule full of different sessions, it still good to check session scheduler beforehand to get idea what is happening and when – Select a real must haves for you and also download the Ignite mobile app to have sessions in your pocket. There are also a lot of different events, official and unofficial ones during Ignite during evenings so it would be good to check those also. There is probably some kind of WhatsApp, Teams or Kaizala group to organize within participants from your company or country (in case of smaller country like Finland 🙂 Make sure you are part of it. Also when arriving Orlando from Europe or even further you gonna need at least one day to survive from jetlag so be in place at saturday evening at the latest local time. And since you are in the United States it’s good time to download Uber App and also check is your hotel one of the official Ignite hotels where shuttle rides to OCCC are available. Don’t count you can walk to venue at all even you are staying “pretty close” to OCCC.

Book only “real must have” sessions for you calendar

It may sound a bit strange after paying many thousand dollars/euros from flights, hotels and tickets and I say make sure to not participate too many sessions. Think about it – 5 days in a row, from 9 AM to 6PM full of sessions with a lot of other events, discussions, blogging and maybe some parties. Simply not gonna happen. All sessions will be recorded or streamed, walking venue end to end will easily take 30min and amount of information will be overwhelming. I would say book max couple of must have sessions for each day and then use rest of the time for next bullets 🙂

Social aspect is what makes Ignite

As a finns we never speak. We simply are not extroverts and even introvert may be a bit too much to describe us in this aspect 🙂 However Ignite is all about good discussions with same minded people! Seeing each others, discussing about the upcoming or published features, sharing knowledge, being with the friends, participating different evening events, connecting to new people etc. so make sure you take every chance you have to make this aspect happen.

Expo (now called The Hub) – The heart of Ignite

Hub area is a heart of Ignite. The is always people walking around and you can take interesting discussions with different company presenters, Microsoft people, with random people or sometimes even with Microsoft product group people. Make sure you have gathered questions which are important to you and take a chance to ask questions. You can also agree some discussions with people you want to meet. So instead of sitting in sessions the hub will be a good area to hang around. Oh and there are plenty of SWAG here 😉

Take a time for yourself

5 days in a row with jetlag, endless sessions, evening parties etc. is just too much for everyone to handle. Just admit that for yourself. So take your private time when it feels even a bit you need it and dont be sorry! Maybe an afternoon off, enjoy the summer, heat, sun and give your head time to reflect thoughts and information you have received. You know what works best for you in this area.

You are in Florida!

You really are in sunny Florida! There is bunch of things to do in Orlando itself and Miami, Tampa or Kennedy Space Center for example are mostly within driving distance. So make sure you book some “outdoor” time also to make sure you catch your vitamin D dose. And not forget the huge Ignite 2019 official attendee celebration will happen on Thursday evening in Universal Studios Orlando.

As a summary and really interesting and busy week is waiting for us just behind the corner… Be prepared!

Links:

Get your classic SharePoint Online based Intranet news directly to Teams interface by using MS Flow

Lets assume you are a fanatic Microsoft Teams user and Teams is your number one interface for your daily tasks. However your organization is still partly using a classic SharePoint Online approach for Intranet and “official” organizational news are still created as a classic blog posts which was a really common approach before modern SharePoint Online and modern news model few years ago. As a Teams user you don’t want to order email based notifications / alerts about news or use some other ways to access them.

This is a quite simple way to get notified about new news items directly to your MS Teams interface by using MS Flow, MS Flow Bot, Adaptive Cards and SharePoint connector.

The Flow requires actually only four steps:

We will use ‘when an item is created’ event as trigger in case of blog site template based news. What you have to know in this example is the blog site address (News site) and the blog list name which is always ‘posts’ in this scenario.

Then we are reading users’ own profile to get user email for Teams Flow bot. Just select ‘Get my profile (V2)’ action and there are no additional properties for this action.

News converting action ‘Html to text’ is required when reading rich text content from SharePoint blog post body since adaptive cards can’t be used with html content directly. Also this step is really simple:

Finally we are forming and posting adaptive card to Teams through Flow Bot.

Adaptive Cards is a fairly new concept which can be used in many different occasions and platforms. In this case we are using it with Microsoft Teams and you can access adaptive card designer in Url https://adaptivecards.io/designer . This makes planning of your adaptive card fairly easy. Just make sure you have select ‘Microsoft Teams’ as a host app (Yes, dark mode is also included) and after you are ready with formatting, adding actions and other components you want just use ‘Copy card JSON’ button to get your ready made JSON to clipboard.

Now you can paste your adaptive card JSON to Teams Flow Bot action message field which is used to create actual adaptive card. This action is still preview but works quite nicely. As recipient use email retrieved from ‘Get my profile (V2)’ action. Please notice there is also action available to post adaptive card directly to Teams channel with Flow Bot if you need more general approach. To form adaptive card content you can and you should now use dynamic content from SharePoint trigger. Also be careful when modifying JSON – The editor itself is still not so intuitive to use…

The only trickier part is to form news abstract since probably you don’t want to view whole news content in adaptive card. In this case I’m using Flow expression to get first 300 character from news body and after that I’m adding ‘…’ through concat function. Also notice I’m using blog post body ‘Html to Text’ conversion result instead of actual html so full expression here is concat(substring(body(‘Html_to_text’),0,300), ‘…’). This step is only needed when we are using rich text or html formats within adaptive cards.

As a result whenever a new organizational news is published as a blog item in classic SharePoint Online I can get a direct message from Flow bot to my MS Teams client. Also I added action button to open actual news item if needed.

Through this approach you can actually get notification to Teams client from any of the SharePoint list based actions if needed to support your own or your teams work. With little bit different SharePoint trigger you can get the same result out either from classic publishing pages (in case your organizational news are based for them) or even from modern SharePoint news if your organization is already using them.

Let’s hope this post will give you ideas how to use flow and adaptive cards in real world scenarios. Now take advantage of your licenses and start using Flow 😉

Täydet hyödyt irti Microsoft Teamsistä työn käyttöliittymänä

Tällä viikolla Kööpenhaminassa järjestetyn varsin loistavan ESPC18-tapahtuman innoittamana ajattelin kertoa muutaman ajatuksen Teamsistä ja sen laajennettavuudesta.

Teknisesti Teamsin käyttöönottohan on aikalailla vaivaton. Mitään erityistä ei tarvitse tehdä ja lisenssien käyttöönoton jälkeen voi Teamsiä lähteä koeponnistamaan organisaatiossa sopivalla käyttäjäryhmällä. Koeponnistukseksi tämä myös lähes aina jää, jos asiaa ei suunnitella huolella. Käyttöönoton tuki (End user adoption) onkin modernin tiimityön ja ylipäätään Office 365 käyttöönottoprojektin keskeisin ja onnistumisen kannalta kriittisin osa-alue ja näin ollen moderni Office 365-käyttöönottoprojekti rakentuu pitkälti muutoksen tukemisen aiheiden ympärille. Organisaatiossa Office 365 ja erityisesti Teams ryhmätyön keskiössä tuovat organisaation työskentelykulttuuriin suuren muutoksen läpinäkyvyyden, avoimuuden, osallistamisen, saavutettavuuden ja ylipäätään päivittäisen työskentelyn muodossa.

Microsoft julkaisi tällä viikolla uuden Teams Adoption Hubin tukemaan nimenomaan Teams-käyttöönottojen suunnittelua.

Mitä Teams itseassa on?

Itse ajattelen Teamsiä ensisijaisesti työn käyttöliittymänä.

Teams kokoaa yhteen Office 365:en kaikki palvelut yhden käyttöliittymän ja/tai applikaation taakse lisäten mukaan vielä omat keskeiset ominaisuutensa eli keskustelut, helpon muokattavuuden, liitettävyyden muihin palveluihin sekä organisaation sidosryhmien liittämisen mukaan vieraskäyttäjinä.

Käyttöönoton yhteydessä tulee suunnitella ja määritellä seuraavia asioita tukemaan organisaation työtapojen muutosta (Adoption)

  • Mitä tiimejä ja kanavia luodaan?
  • Mitä välilehtiä ne sisältävät?
  • Miten näitä hyödynnetään organisaatiossa tehokkaasti?
  • Hallintamalli
  • Mahdollinen templatointi
  • Miten Teams muuttaa päivittäistä työskentelyä?
  • Pelikirja siitä, miten Teamsiä tulee käyttää

Teamsin toimintojen laajentaminen – Täysi hyöty irti Teamsistä työn käyttöliittymänä

Kun varsinainen käyttöönotto etenee voidaan alkaa miettiä, miten Teamsistä saataisiin enemmän hyötyjä irti erityisesti työn käyttöliittymän konseptin alla. Tällöin kuvaan astuvat laajennukset, joilla Teamsiin voidaan kytkeä lisää informaatiota organisaation muista järjestelmistä sillä ajatuksella, että kaikkeen tiimin kannalta tärkeään pääsee kiinni helposti yhdestä käyttöliittymästä. PowerApps ja Flow mahdollistavat yhä enemmän asioita, ja ne voidaan tuoda jatkossa yhä tiiviimmin tukemaan Teamsin laajennettavuutta.

Valmiilla palikoilla päästään usein varsin pitkälle. Usein käytetään välilehtiin lisättäviä laajennuksia ja erilaisia yhdistimiä. Yhteensä Teams tarjoaa jo yli 200 valmista laajennusta. Teamsin laajennusten osalta lähitulevaisuuden tärkeimpiä uudistuksia:

  • Dynamics App for MS Teams – Parantaa oleellisesti Teamsin ja Dynamicsin välistä vuorovaikutusta ja mahdollistaa myös Dynamicsin toimintojen tuomisen suoraan Teamsin käyttöliittymään. Katso Vesa Nopasen alustava katsaus Appsista täältä.
  • Tuki SharePoint Framework-pohjaisten (v1.7) webosien lisäämiseen suoraan Teamsin välilehtenä – Helpottaa käyttöä oleellisesti, aiemmin webosat tuli kierrättää SharePointin sivun kautta ja mahdollistaa uuden tyyppiset käyttöskenaariot. Katso Matti Paukkosen blogi aiheesta täältä.

Entä jos valmiit laajennukset eivät mahdollista organisaatiosi kannalta keskeisen ominaisuuden tuomista Teamsin käyttöliittymään? Ei hätää sillä Teams mahdollistaa jatkuvasti kehittyvät laajennusmahdollisuudet ja räätälöitävyyden organisaatioiden tarpeisiin. Tässä ESPC18-tapahtumasta Maarten Eekelsin varsin mainiosta Teams Deep Dive-sessiosta napattu yhteenveto tavoista joilla Teamsiä voidaan tällä hetkellä laajentaa.

Tärkeimpinä näistä:

  • Välilehtiä (Tabs) voidaan räätälöidä ja niihin voidaan rakentaa custom Appseja sekä jatkossa liittää suoraan SharePoint Framework -pohjaisia webosia, joiden avulla voidaan nostaa tietoa esiin vaikkapa MS Graph APIn kautta
  • Kustomoiduilla boteilla voidaan luoda toiminteita, joihin aiemmin tarvittiin monimutkaisia lomakkeita tai tietojen syöttämistä useaan järjestelmään. Miltäpä kuulostaisi uuden Tiimin tilaaminen tai kalenterin varauksen luonti botilla?
  • Kustomoiduilla konnektoreilla (Connectors) voidaan syöttää tietoa Teamsin kanaviin suoraan järjestelmistä, joihin valmista konnektoria ei ole saatavilla. Tällöin voidaan esim. organisaation räätälöidystä järjestelmästä syöttää muutoksia suoraan Teams-kanaviin

Yhteenvetona voisi sanoa, että moderni tiimityö ottaa suuria harppauksia eteenpäin mm. tässä blogissa mainittujen asioiden kautta. Mikäli Teams on jo käytössä organisaatiossasi voidaan kuvatuin tavoin tuoda merkittäviä etuja organisaation työskentelyyn ja mahdollistaa täysin uudentyyppisiä käyttötapauksia. Moderni ympäristö mahdollistaa jatkuvan parantamisen ja hyötyjen etsimisen nopean kehittymisen kautta. Jos ajatuksia heräsi asian tiimoilta, niin autamme Innofactorilla enemmän kuin mielellämme kaikissa aiheeseen liittyvissä kysymyksissä ja tarpeissa!

Edellytykset Office-dokumenttien yhtäaikaiselle muokkaamiselle ja synkronoinnille O365-ympäristössä

Olemme kuulleet viime aikoina paljon modernista ryhmätyöskentelystä O365-ympäristössä ja aihe on erittäin ajankohtainen. Innofactorilta Vesa on ollut aktiivinen mm. #TeamsTorstai-konseptin suhteen ja toisaalta esim. Sanna on ollut aktiivinen käyttöönoton tukemisessa ja kertoili viimeisimpänä blogiaiheenaan kuinka onnistua uuden järjestelmän käyttöönotossa (vaikkapa modernin ryhmätyön ja Teamsin) organisaatiossa.

Yksi modernin ryhmätyön kulmakivi eli Office-dokumenttien muokkaaminen ja erityisesti monen käyttäjän toimesta yhtä aikaa tapahtuva dokumenttien työstö on jäänyt ehkä pienemmälle huomiolle. Tämä on hyvin tyypillinen skenaario Teams-pohjaisessa työskentelyssä joka mahdollistaa hyvin helpon dokumenttien työstön, kommentoinnin ja samalla niistä keskustelun. Juuri tässä #Teams on itse asiassa parhaimmillaan monestakin syystä. Moni myös muistaa aiemmin koetut ongelmat OneDrive for Business synkronointi-clientin kanssa tilanteissa joissa OneDriven ja SharePoint-työtilojen tiedostot haluttiin ladata myös omalle koneelle esim. offline-työskentelyä varten. 

Nykyään modernit Office-työvälineet toimivat pääosin hyvinkin mallikkaasti ja dokumenttien muokkaaminen O365:ssa, myös yhtä aikaa muiden käyttäjien kanssa, on mutkatonta. Myöskin uusi OneDrive for Business synkronointi-client toimii vakaasti.

Mikäli tietyt perusasiat eivät ole kunnossa niin toki ongelmiin voidaan törmätä – yleisimpinä ongelmina mainittakoon mm. Office-dokumenttien avatuminen “vain luku”-tilaan tai pilvessä muokattavan dokumentin yhtäkkinen tallentamisen epäonnistuminen. 

Keräsin tähän neljä tärkeintä asiaa joilla varmistaa toimiva yhtäaikainen dokumenttien työstö (Co-Authoring) ja synkrointi lokaalisti O365-ympäristössä. Huomioi että asioiden korjaaminen vaatii admin-oikeudet koneellesi kohtien 1 ja 2 osalta joten ole tarvittaessa yhteydessä IT-osastoosi.

1) Varmista että käytössä on riittävän uusi Office 2016-client

Teamsin tai suoraan O365-ryhmän dokumenttikirjaston kautta voidaan Office-tiedostot avata ja niitä voidaan muokata Office-ohjelmistojen online-versioilla. Nämä online-versiot tukevat aina tiedostojen yhtäaikaista muokkausta kun se vaan muista tekijöistä johtuen on mahdollista. 

Mikäli käytät Offfice-client ohjelmaa esim. Excel 2016:ta tiedoston avaamiseen ja muokkaamiseen tulee varmistaa että se on riittävän uusi ja tukee yhtäaikaista muokkausta. Nyrkkisääntönä se että vasemmassa ylänurkassa tulee näkyä AutoSave-toiminto tilanteesta riippuen joko harmaana tai valkoisena. Tällöin tuettuna on AutoSave-ominaisuuksien lisäksi myös yhtäaikainen muokkaaminen.

Vinkkinä vihkiintyneemmille käyttäjille että myös Office 2016 clienteilla on omat päivityskanavat joilla voidaan päättää millä syklillä clientit päivittyvät ja tätä kanavaa voi tarvittaessa vaihtaa.

Lisätietoa täällä https://blogs.technet.microsoft.com/odsupport/2017/05/10/how-to-switch-channels-for-office-2016-proplus/

2) Varmista että käytössä on vain ja ainoastaan uusi Onedrive-synkronointi clientti

Vain uudempi OneDrive synkronointi-client on toimiva jos haluat synkronoida O365-tiedostot koneellesi. Koskee niin henkilökohtaista OneDrivea kuin Teamsin ja tätä kautta O365-ryhmien dokumenttikirjastoja joiden molempien synkronointi tapahtuu siis yhden ja saman clientin kautta.

Hyvin yleinen virhetilanne on että henkilökohtainen O365:n OneDrive synkronoidaan uudemmalla clientilla mutta koneella on asennettuna myös vanhempi client jonka kautta esim. O365-ryhmien tiedostot vahingossa synkronoidaan. Tästä aiheutuu paljon ongelmia.

Varmista siis että sinulla on käytössä vain uusi Onedrive-synkronointi-client ja että clientteja on asennettuna koneellesi varmasti vain yksi.

Tässä artikkelissa on loistava ohjeistus siitä miten käytössä olevan clientin saa varmistettua https://support.office.com/en-us/article/which-version-of-onedrive-am-i-using-19246eae-8a51-490a-8d97-a645c151f2ba

Lisäksi tässä ohjeistus miten siirtyä käyttämään vain uutta clienttia https://support.office.com/en-us/article/transition-from-the-previous-onedrive-for-business-sync-client-4100df3a-0c96-464f-b0a8-c20de34da6fa

3) Synkronoitavan dokumenttikirjaston asetukset (Teamsin ja O365-ryhmän dokumenttikirjasto)

Kun luot uuden Teamsin luo O365 taustalle myös modernin O365-ryhmän joka pohjimmiltaan on SharePoint-tiimisivusto. Tämä sivusto tarjoaa varsinaisen tallennuslokaation tiedostoille SharePointin dokumenttikirjaston ja siihen syntävän kansiorakenteen muodossa. Oletuksena kaikki asetukset ovat synkroinnin ja tiedostojen yhtäaikaisen muokkaamisen kannalta oletus-dokumenttikirjastossa oikein.

Yleisohje: Älä koske dokumentikirjaston vakioasetuksiin 🙂

Seuraavat asetukset dokumenttikirjastossa aiheuttavat tiedostojen synkronoitumisen lokaalisti vain luku-tyyppisenä sekä potentiaalisia ongelmia yhtäaikaiseen muokkaukseen:

  • Require checkout | Edellytä uloskuittausta: On luontevaa että mikäli ominaisuus on otettu käyttöön voi tiedostoa muokata vain yksi käyttäjä kerrallaan. Lisäksi tiedosto synkronoituvat lokaasti vain luku-tyyppisinä. Älä koskaan ota käyttöön modernissa O365-ryhmässä tai Teamsin dokumenttikirjastossa ellei ominaisuudelle ole erillistä painavaa perustetta
  • Require content approval | edellytä sisällön hyväksyntää: Aiheuttaa myöskin ongelmia. Älä koskaan ota käyttöön modernissa O365-ryhmässä tai Teamsin dokumenttikirjastossa ellei ominaisuudelle ole erillistä painavaa perustetta
  • Versioning | Versiointi: Käytä vain pääversiointia dokumenteille. Kaikki muut asetukset voivat aiheuttaa ongelmia.
  • Dokumenttikirjaston metatiedot: Myös modernit dokumenttikirjastot mahdollistavat metatietojen käytön ja uusia sarakkeita on helppo luoda. Metatiedot ovat kuitenkin harvoin aidosti tarpeellisia ajatellen että esim. tiimi, tiimin julkisuusasetus sekä tiimin kanava jo itsessään määrittevät sen mitä dokumentteja lokaatiossa työstetään. Jos kuitenkin päädyt käyttämään metatietoja älä määrittele niistä pakollisia. Muuten tiedostot synkronoidaan vain luku-tyyppisinä ja yhtäaikainen muokkaus voi olla ongelmissa.

4) Huomioi kaikki organisaation käyttäjät em. kohtien osalta

On tärkeää että kaikki organisaation käyttäjät käyttävät riittävän uusia Office 2016 clientteja ja että käytössä on uudempi OneDrive for Business synkronointi client. Yksikin käyttäjä joka esimerkiksi avaa muokattavan tiedoston vanhalla Office clientilla tai vanhalla mobiili-clientilla joka ei tue yhtäaikaista muokkausta aiheuttaa sen että tiedosto avautuu vain luku-tilaan kaikilla käyttäjillä myös tilanteessa jossa sinulla itselläsi olisi uudempi client.

—————————————————————————————————————

Näillä eväillä pitäisi päästä hyvään alkuun ja varmistua siitä että käyttäjien kokemat ongelmat O365-pohjaisen dokumenttien käsittelyn suhteen on minimoitu. Varmasti yksittäisiä virhetilanteita ilmenee kuten aina mutta ainakin perusteet ovat kunnossa.

—————————————————————————————————————

Tässä vielä muutamia hyviä linkkejä jos ongelmia ilmenee ja kaikki em. asiat on käyty jo läpi.

Office 2016 / Online Co-Authoring: https://support.office.com/en-us/article/collaborate-on-excel-workbooks-at-the-same-time-with-co-authoring-7152aa8b-b791-414c-a3bb-3024e46fb104#ID0EAABAAA=Windows

Troubleshoot Co-Authoring: https://support.office.com/en-gb/article/Troubleshoot-co-authoring-in-Office-bd481512-3f3a-4b6d-b7eb-ebf9d3626ae7?ui=en-US&rs=en-GB&ad=GB

 OneDrive read-only issues: https://techcommunity.microsoft.com/t5/OneDrive-for-Business/Onedrive-readonly-green-locks/td-p/39365