Strategic goal planning and management are no longer a linear journey

Strategic goal planning and management are no longer a linear journey

This article is contributed. See the original author and article here.

In past roles, I spent hundreds of hours with colleagues developing our annual strategic plan. We created committees, subcommittees, and teams to identify priorities and initiatives grounded to the organization’s mission and vision. We would ambitiously set our goals for the year and even identify success metrics. While intentions were good, our strategic outcomes always fell short.


 


Why? This conventional approach took too long, lacked accountability and the rigid planning cycle inhibited our ability to adapt to changing organization needs and shifting priorities. We got stuck in the “set and forget” cycle of setting goals at the beginning of the year and never knowing if our everyday activities at the individual contributor and team levels even rolled up to those institutional goals.


 


At Microsoft we recognize a defined set of corporate goals not only instills a sense of purpose, accountability, and agility but also helps companies mitigate uncertainty.


 


How do we escape the organizational goal-setting rut?


 


In today’s environment when organizations are required to operate faster and more efficiently, having an adaptable goal planning and management processes are essential. Microsoft Viva Goals is a goal management solution that helps ease goal planning and management. Viva Goals helps companies escape the goal-setting rut with capabilities to communicate goals across the organization, measure progress, and realign priorities as needed.


 


CAI, a global consulting firm, shared how Microsoft Viva Goals helped boost their business agility and enable operational alignment by streamlining its goal planning and management processes. Historically CAI relied on disparate Excel spreadsheets, making it difficult to align strategies across the company. Viva Goals provided them with one centrally managed solution that readily supported an adaptable goal setting strategy. With Viva Goals, CAI was able to move away from Excel spreadsheets and a conventional, linear approach.


 



“We don’t create a traditional business plan now. We use Viva Goals with our customer-facing project teams to manage progress, align strategy, and create accountability to high-level objectives.”


– Richard Tree: Chief Operating Officer, CAI



 


Today they are successfully setting business goals, objectives and key results (OKRs) and aligning teams to organizational priorities while at the same time delivering consistent and high-quality services to their customers. They are able to stay agile and responsive to their customers’ needs by modernizing their approach to goal setting.


 


Read more about CAI’s Viva Goals journey to learn how they were able to boost business agility and operational alignment by adoption an OKR framework.


 


Bridging the gap between goal setting strategy and execution


 


Another issue companies face in their goal setting journey is a disconnect between strategy and execution. Commonly, corporate goals are set at the leadership level and not communicated to business units and teams within a company. This makes it hard for individuals to know if their work is impacting the company’s bottom line.


 


To bridge this gap and help break the “set and forget” cycle, Viva Goals enables leaders to send regular updates across the organization, teams, and even individual views. With better transparency, internal teams are able to align priorities so they can achieve results together.


 


Tamara blog_Viva Goals SS .png


 


Microsoft customer, OC Tanner, discussed their journey from goal setting strategy to successful execution with Viva Goals. Regarded as a manufacturing leader and pioneer of the employee recognition industry, they realized that to maintain their leadership position, they needed clear and concise goals communicated across the organization. They chose Viva Goals to help them focus on the most critical priorities.


 



“Viva Goals helps us keep OKRs established and aligned for the appropriate planning periods and creates visibility across the entire team.”


– Jason Andersen: Vice President of Product, O.C. Tanner



 


Today OC Tanner incorporates OKRs into all planning and collaborative processes. Viva Goals also plays a key role in their semiannual and quarterly planning processes, which have helped to align everyone on their tasks and ensure their work is laddering up to the big picture. In short, OC Tanner successfully bridged the gap between strategy and execution with Viva Goals.


 


Read more about how OC Tanner was able to create “unity in focus” with
Viva Goals.


 


Adapting a continuous goal-management framework


 


Consistent with my own planning experience described in the introduction, many organizations find goal setting arduous. To help better understand the goal setting challenges, Microsoft commissioned a study by Forrester Consulting, 2023 State Of Goal Setting Report.


 


One of the findings Forrester reported was that although goal setting provides structure and a common vision, the lack of organization wide visibility to corporate goals can hinder teams from meeting their goals. In addition, Forrester also reported that company leaders who regularly revisit and set goals to align with the rhythm of business, were not doing so at other levels of the organization. This also results in employees feeling disconnected and unmotivated with the goal setting process.


 


At Microsoft, we believe a continuous goal-setting planning lifecycle is an important component to success. The continuous planning cycle involves shorter planning cycles, ability to measure and report progress, analyze performance using scenario-based models, adjust priorities as needed, and repeat for the next evaluation cycle. This approach allows companies to make necessary adjustments to meet their corporate goals and help keep everyone focused on the right work.


 


The continuous planning lifecycle V2.jpg


 


Viva Goals provides companies with the tools to define agile processes and framework for planning, measuring, analyzing and adjusting priorities as needed. With the ability to connect to the project management and data tools employees use regularly, such as Azure Dev Ops, Microsoft Project, Microsoft Planner and Power BI, Viva Goals can provide visibility into how progress on daily work is impacting goals.


 


Using next generation AI from Copilot, Viva Goals helps power organizations to streamline the entire goal management process from start to finish. Whether it be quarterly or monthly planning cycles, Viva Goals enables companies to readily measure, analyze and adjust goals on a regular basis. For more information on how Viva Goals supports continuous planning lifecycle, watch Viva Goals video.


 


Aligning OKRs across the organization leads to stronger engagement and motivation


 


In July 2023 we hosted a Viva Goals webinar, “Where are we going?”: How to chart your Viva Goals journey, where we asked more than 100 participants what their biggest goal setting challenge was. Not surprisingly, alignment was the top answer.


 


Tamara blog_Wordbloud black.png


Sample responses from participants in our July 2023 webinar


 


In our experience it’s not just getting alignment at the onset of the goal setting process, it’s also maintaining alignment across the organization. Microsoft customer, Svea Solar, relies on Viva Goals to help employees connect to the company’s founding purpose from the moment they are hired.


 



“We use Viva Goals to demystify what’s important for each function and get people up to speed faster.”


– Wilhelm Kugelberg: Strategy & Business Development Manager, Svea Solar



 


Sharing corporate goals provides new hires understand with what they need to do and, more importantly, why their work is important. Svea Solar quickly noticed that aligning employees on OKRs from the moment they are hired, led to stronger engagement and motivation to focus on the right things.


 


Consistent with Svea Solar’s experience, at Microsoft we also recommend a top-down alignment for stronger impact. Just as important is cross-functional alignment within and across groups to help reduce redundancies as well as leverage the power of meaningful collaboration to achieve operational excellence.


 


Read more about how Viva Goals helped Svea Solar achieve more and drive efficiency by defining distinct goals.


 


Viva Goals empowers teams


 


Effective goal setting not only can lead to stronger alignment, but also empowers teams to work together for greater impact. Goal setting requires commitment, communication, and top-down alignment. In addition, it also requires communication and transparency so employees at all levels understand their contributions and impact.  Viva Goals provides companies with the capabilities to be successful in their goal setting journey.


 


For successful adoption across your organization here are some best practices we have learned in our own journey:



  • Get executive buy-in to the process and commitment to provide clarity on vision and overall objectives.

  • Identify OKR champions to scale to and coach individual teams for consistent quality standard. At Microsoft, our OKR champions helped ensure a reasonable number of OKRs are selected for each team which fostered teams to focus on a few items for stronger impact.

  • Develop and manage organizational OKRs as an outcome of continuous strategic planning cycles and not as a separate, distinct activity. At Microsoft, our OKR champions meet monthly to share best practices and ensure teams are creating clear OKRs on high-level objectives.

  • Adjust OKRs and priorities on a regular basis with dynamic goal-management practices.

  • Provide visibility at all levels so leadership team can see progress towards objectives and individual contributors have visibility into how their work contributes to objectives.


 


To better support your goal setting journey, technology plays a key role in helping to ease the process. Viva Goals provides visibility into organization objectives, enables transparency for both leaders and individual contributors, offers a dashboard to readily measure progress, and integrates with Microsoft ecosystem tools such as Teams, Outlook, PowerBI, Excel and PowerPoint, for easier communication, reporting, and integration.


 


For questions on Viva Goals, leave us a comment or question below. We are happy to answer your questions on Viva Goals.


 


For more information on Viva Goals, check out these resources


 



Discover the Future of Data Engineering with Microsoft Fabric for Technical Students & Entrepreneurs

Discover the Future of Data Engineering with Microsoft Fabric for Technical Students & Entrepreneurs

This article is contributed. See the original author and article here.

Microsoft Fabric is an all-in-one analytics solution for enterprises that covers everything from data movement to data science, Real-Time Analytics, and business intelligence . It offers a comprehensive suite of services, including data lake, data engineering, and data integration, all in one place. This makes it an ideal platform for technical students and entrepreneurial developers looking to streamline their data engineering and analytics workflows.



High-Level Overview of Microsoft Fabric


Microsoft Fabric brings together new and existing components from Power BI, Azure Synapse, and Azure Data Factory into a single integrated environment.  These components are then presented in various customized user experiences. Fabric brings together experiences such as Data Engineering, Data Factory, Data Science, Data Warehouse, Real-Time Analytics, and Power BI onto a shared SaaS foundation.

Fabric.png


This integration provides several advantages :



  • An extensive range of deeply integrated analytics in the industry.

  • Shared experiences across experiences that are familiar and easy to learn.

  • Developers can easily access and reuse all assets.

  • A unified data lake that allows you to retain the data where it is while using your preferred analytics tools.

  • Centralized administration and governance across all experiences.



Benefits of Learning and Using Microsoft Fabric


Learning and using Microsoft Fabric can provide numerous benefits. Here are a few key ones:
Simplicity: With Fabric, you don’t need to piece together different services from multiple vendors. Instead, you can enjoy a highly integrated, end-to-end, and easy-to-use product that is designed to simplify your analytics needs.
Efficiency: Fabric allows creators to concentrate on producing their best work, freeing them from the need to integrate, manage, or understand the underlying infrastructure that supports the experience.
Scalability: Microsoft Fabric is a powerful platform that offers scalability, resilience, simplified development, fault tolerance, and support for microservices, making it an ideal choice for businesses aiming to stay agile and competitive in today’s digital landscape.



Microsoft Learn Resources for Microsoft Fabric


Microsoft Learn offers a variety of resources to help you get started with Microsoft Fabric. Here are a few key ones:



  1. Get started with Microsoft Fabric – Training: This learning path includes 11 modules that cover everything from an introduction to end-to-end analytics using Microsoft Fabric to administering Microsoft Fabric.

  2. Microsoft Fabric documentation: This comprehensive documentation provides an overview of Microsoft Fabric, its capabilities, and how to use it.

  3. Learn Live: Get started with Microsoft Fabric: Online Webinars and On Demand series showcasing Microsoft Fabric

  4. Get started documentation: This page provides a variety of documentation to help you get started with Microsoft Fabric.

  5. Exam DP-600: Implementing Analytics Solutions Using Microsoft Fabric (beta) – Certifications | Microsoft Learn This exam will be available in January 2024. This exam measures your ability to accomplish the following technical tasks: plan, implement, and manage a solution for data analytics; prepare and serve data; implement and manage semantic models; and explore and analyze data.


In conclusion, Microsoft Fabric is a game-changing platform that brings together a variety of Azure tools and services under one unified umbrella. Its core features empower businesses and data professionals to make smarter, data-driven decisions.

So, whether you’re a technical student looking to expand your skillset or an entrepreneurial developer aiming to streamline your data workflows, Microsoft Fabric is definitely worth considering.

Lesson Learned #456: Invalid Key Column Type Error in Azure SQL Database DataSync

This article is contributed. See the original author and article here.

One such error for Azure SQL Database users employing DataSync is: “Database provisioning failed with the exception ‘Column is of a type that is invalid for use as a key column in an index.” This article aims to dissect this error, providing insights and practical solutions for database administrators and developers.


 


Understanding the Error:


 


This error signifies a mismatch between the column data type used in an index and what is permissible within Azure SQL DataSync’s framework. Such mismatches can disrupt database provisioning, a critical step in synchronization processes.


 


Data Types and Index Restrictions in DataSync:


 


Azure SQL Data Sync imposes specific limitations on data types and index properties. Notably, it does not support indexes on columns with nvarchar(max)that our customer has. Additionally, primary keys cannot be of types like sql_variant, binary, varbinary, image, and xmlWhat is SQL Data Sync for Azure? – Azure SQL Database | Microsoft Learn


 


Practical Solutions:


 



  1. Modify Data Types: If feasible, alter the data type from nvarchar(max) to a smaller variant .

  2. Index Adjustments: Review your database schema and modify or remove indexes that include unsupported column types.

  3. Exclude Problematic Columns: Consider omitting columns with unsupported data types from your DataSync synchronization groups.


 


 

Windows Containers on AKS Customer Stories

Windows Containers on AKS Customer Stories

This article is contributed. See the original author and article here.

We have published a new page on Azure to highlight Windows Container customer stories on AKS with M365 (supporting products like Office and Teams), Forza (XBOX Game Studios), Relativity and Duck Creek


 


If you are looking for a way to modernize your Windows applications, streamline your development process, and scale your business with Azure, you might be interested in learning how other customers have achieved these goals by using Windows Containers on Azure Kubernetes Service (AKS). 


 


Fady_Azmy_0-1701382958318.png


 


 


Windows Containers on AKS is a fully managed Kubernetes service that allows you to run your Windows applications alongside Linux applications in the same cluster, with seamless integration and minimal code modifications. Windows Containers on AKS offers a number of benefits, such as: 



  • Reduced infrastructure and operational costs 

  • Improved performance and reliability 

  • Faster and more frequent deployments 

  • Enhanced security and compliance 

  • Simplified management and orchestration 


 


Stay tuned for new stories that will be published soon, featuring customers from new industries and with new scenarios using Windows Containers. 


 


In the meantime, we invite you to check out the Windows Container GitHub repository, where you can find useful resources, documentation, samples, and tools to help you get started. You can also share your feedback, questions, and suggestions with the Windows Container product team and the community of users and experts. 

Azure Managed Lustre with Automatic Synchronisation to Azure BLOB Storage

Azure Managed Lustre with Automatic Synchronisation to Azure BLOB Storage

This article is contributed. See the original author and article here.

Introduction


This blog post walks through how to setup an Azure Managed Lustre Filesystem (AMLFS) that will automatically synchronise to an Azure BLOB Storage container. The synchronisation is achieved using the Lustre HSM (Hierarchical Storage Management) interface combined with the Robinhood policy engine and a tool that reads the Lustre changelog and synchronises metadata with the archived storage. The lfsazsync repository on GitHub contains a Bicep template to deploy and setup a virtual machine for this purpose.


 



Disclaimer: The lfsazsync deployment is not a supported Microsoft product you are responsible for the deployment and operation of the solution. There are updates that need applying to AMLFS that will require a Support Request to be raised through the Azure Portal. These updates could effect the stabaility of AMLFS and customer requiring the same level of SLA should speak to their Microsoft representative.



Initial Deployment


The following is required before running the lfsazsync Bicep template:



  • Virtual Network

  • Azure BLOB Storage Account and container (HNS is not supported)

  • AMLFS deployed without HSM enabled


The lfsazsync repository contains a test/infra.bicep example to create the required resources:


 


lfsazsync-prerequisite.jpg


 


To deploy, first create a resource group, e.g.



TODO: set the variables below
resource_group=
location=
az group create –name $resource_group –location $location

 


Then deploy into this resource group:



az deployment group create –resource-group $resource_group –template-file test/infra.bicep

 



Note: The bicep file has parameters for names, ip ranges etc. that should be set if you do not want the default values.



 


Updating the AMLFS settings


Once deployment is complete, navigate to the Azure Portal, locate the AMLFS resource and click on “New Support Request”. The following shows the suggested request to get AMLFS updated:


 


amlfs-support-request.jpg


 


The lctl commands needed are listed here.


 


Deploying Azure BLOB Storage Synchronisation


The lfsazsync deployment sets up a single virtual machine for all tasks. The HSM copytools could be run on multiple virtual machines to increase transfer peformance. The bandwidth for archiving and retrieval is constrained to approximately half the network bandwidth available to the virtual machine. It is important to note that the same network will be utilized for both accessing the Lustre filesystem and accessing Azure Storage. This should be considered when deciding the virtual machine size. The virtual machine sizes and expected network performance is available here.


 


The Bicep template has the following parameters:


 























































Parameter Description
subnet_id The ID of the subnet to deploy the virtual machine to
vm_sku The SKU of the virtual machine to deploy
admin_user The username of the administrator account
ssh_key The public key for the administrator account
lustre_mgs The IP address/hostname of the Lustre MGS
storage_account_name The name of the Azure storage account
storage_container_name The container to use for synchonising the data
storage_account_key A SAS key for the storage account
ssh_port The port used by sshd on the virtual machine
github_release Release tag where the robinhood and lemur will be downloaded from
os The OS to use for the VM (options: ubuntu2004 or almalinux87)

 


The SAS key can be generated using the following Azure CLI command:



# TODO: set the account name and container name below
account_name=
container_name=

start_date=$(date -u +”%Y-%m-%dT%H:%M:%SZ”)
expiry_date=$(date -u +”%Y-%m-%dT%H:%M:%SZ” –date “next month”)

az storage container generate-sas
–account-name $account_name
–name $container_name
–permissions rwld
–start $start_date
–expiry $expiry_date
-o tsv


 


The following Azure CLI command can be used to get the subnet ID:



# TODO: set the variable below
resource_group=
vnet_name=
subnet_name=

az network vnet subnet show –resource-group $resource_group –vnet-name $vnet_name –name $subnet_name –query id –output tsv


 


The following Azure CLI command can be used to deploy the Bicep template (as an alterative to setting environment variables, the parameters could be set in a parameters.json file):



# TODO: set the variables below
resource_group=
subnet_id=
vmsku=”Standard_D32ds_v4″
admin_user=
ssh_key=
lustre_mgs=
storage_account_name=
storage_container_name=
storage_sas_key=
ssh_port=
github_release=”v1.0.1″
os=”almalinux87″

az deployment group create
–resource-group $resource_group
–template-file lfsazsync.bicep
–parameters
subnet_id=”$subnet_id”
vmsku=$vmsku
admin_user=”$admin_user”
ssh_key=”$ssh_key”
lustre_mgs=$lustre_mgs
storage_account_name=$storage_account_name
storage_container_name=$storage_container_name
storage_sas_key=”$storage_sas_key”
ssh_port=$ssh_port
github_release=$github_release
os=$os


 


After this call completes the virtual machine will be deployed although it will take more time to install and import the metadata from Azure BLOB storage into the Lustre filesystem. The progress can be monitored by looking at the /var/log/cloud-init-output.log file on the virtual machine.


 


Monitoring


The install will set up three systemd services for lhsmd, robinhood and lustremetasync. The log files are located here:



  • ‘lhsmd’: /var/log/lhsmd.log

  • ‘robinhood’: /var/log/robinhood*.log

  • ‘lustremetasync’: /var/log/lustremetasync.log


 


Default archive settings


The synchronisation parameters can be controlled through the Robinhood config file, /opt/robinhood/etc/robinhood.d/lustre.conf. Below are some of the default settings and their locations in the config file:


 




















































Name Default Location
Archive interval 5 minutes lhsm_archive_parameters.lhsm_archive_trigger
Rate limit 1000 files lhsm_archive_parameters.rate_limit.max_count
Rate limit interval 10 seconds lhsm_archive_parameters.rate_limit.period_ms
Archive threshold last modified time > 30 minutes lhsm_archive_parameters.lhsm_archive_rules
Release trigger 85% of OST usage lhsm_archive_parameters.lhsm_release_trigger
Small file release last access > 1 year lhsm_archive_parameters.lhsm_release_rules
Default file release last access > 1 day lhsm_archive_parameters.lhsm_release_rules
File remove removal time > 5 minutes lhsmd.lhsmd_remove_rules

 


To update the config file, edit the file and then restart the robinhood service, systemctl restart robinhood.


The lustremetasync service is processing the Lustre ChangeLog continuously. Therefore, actions will happen immediately unless there is a lot of IO all at once where it may take a few minutes to catch up. The following operations will be handled:


 




  • Create/delete directories


    Directories are created in BLOB storage as an empty object with the name of the directory. There is metadata on this file to indicate that it is a directory. The same object is deleted when removed on the filesystem.




  • Create/delete symbolic links


    Symbolic links are create in BLOB storage as an empty object with the name of the symbolic link. There is metadata on this file to indicate that it is a symbolic link and this contains the path that it is linking to. The same object is deleted when removed on the filesystem.




  • Moving files or directories


    Moving files or directories requires everything being moved to be restored to the Lustre filesystem. The files are then marked as dirty in their new location and the existing files are deleted from BLOB storage. Robinhood will handle archiving the files again in their new location.




  • Updating metadata (e.g. ownership and permissions)


    The metadata will only be updated for archived files that isn’t modified. Modified files will have the metadata set when Robinhood updated the archived file.




 


References