

Business Analysis (BA) tasks are what a Business Analyst does. There are a number of pathways to become a certified Business Analyst. I chose to get trained in Business Analysis to become a Certified Business Analyst Professional (CBAP).
Business Analysis (BA) tasks are what anyone in an organisation does that creates solutions to bring about change based on determining business needs. With the training I received, I learnt all the necessary tools and techniques to understand business needs. Armed with these techniques, I can elicit information from various people in the business (stakeholders) to identify gaps. The solution would eventually cover those gaps through a roadmap of one to several changes that need to be implemented.
It is a common misconception with ‘senior’ management and executives that they need to hire a ‘proper’ Business Analyst (BA) to get the work of a BA done.
Perhaps a feel-good factor? Let’s expand on this. Demanding workloads may warrant organisations to look outside to tap into resources with BA skills. It is important to note that external BAs, in most circumstances, lack corporate knowledge to effectively design solutions to solve business problems from the get-go. However, the good news is that a ‘proper’ BA’s main skillset is to elicit information – draw out business needs from a variety of techniques that are an essential part of the business analysis training.
External BA resources do not necessarily have the lenses that internal resources already have. External business analysts should be almost fearless to ask the ‘hard questions’ and dig deep into areas that need addressing. By this I mean constraints, pitfalls and limitations to achieving any business objective that the resource is engaged to address.
Ideally, a BA needs to have several discussions and workshops with various teams, individuals and divisions in an organisation to be effective and draw out the business context of a solution design.
There are two important ingredients for a Business Analyst to be effective:
If budgets don’t allow, I would encourage Upper Management to look at harnessing existing Resources within their organisation to perform some of the leg work before engaging an external Business Analyst. Never ignore the value of acquired corporate knowledge of your staff. Create a system or a programme to aggregate input from internal resources as a start. This would help define a problem. Problem definition is the first step in determining business need. Once a problem is defined (using internal resources), a gap analysis can be performed with a skilled BA that you may consider engaging.
What is essential here is to pay attention to the type of people available that have all the necessary skills and touch points to draw up the gap analysis on a business problem, solved by an appropriate, contextual business solution.
Here are some broad needs of businesses:
New service offerings
New product design
Efficiencies in operations, human resources, finance, supply chain, etc.
Innovation throughout the organisation
Organisational culture change
Business repositioning
Business growth
I am a member of the International Institute of Business Analysis – a Canadian non-profit professional association formed in 2003 with the purpose of supporting and promoting the discipline of business analysis. If you are interested, you can read more on the CBAP Certification here:
https://www.iiba.org/certification/iiba-certifications/cbap/
This is an interesting talk on AI during the World Artificial Intelligence Conference in Shanghai where Elon Musk speaks facts, figures and rational approaches, despite his visionary approach to going to Mars.
The best way to predict the future is to create it – Elon Musk.
The first thing is to try to create the future. People don’t try – that’s the main thing. Try the future. Don’t worry about making mistakes.
Errors and mistakes are the best assets for humans.
There is a bit of locking horns here. Jack Ma has some points worth considering too but he contradicts himself.
Earlier this year, Microsoft Press published two eBooks as part of a series of SharePoint hybrid eBooks.
I authored the first book – ‘Planning and Preparing for SharePoint Hybrid’ (ISBN 9781509302420) which introduces Microsoft’s cloud services – Office 365 and Azure along with the benefits and scenarios of SharePoint hybrid that help business transform their environments to innovate and harness the power of the cloud. Bill Baer, senior product manager (SharePoint), Microsoft wrote the foreword for this book. Neil Hodgkinson did a fantastic job in standing as the technical reviewer for this eBook.
The first two chapters sets the stage for the eBook series. It introduces the reader to the core cloud services and gets you all familiar with the terms and technology behind SharePoint hybrid.
The third chapter “Architecture, authentication, and authorization”, lays the foundation for Identity Management in SharePoint hybrid. It also aids Architects, IT Professionals and Developers to plan out their SharePoint hybrid infrastructure.
Chapter four is for IT Professionals to get down and dirty into checking and cleaning up their environment to be cloud-compatible and free from error.
Chapter five is about configuring synchronized user identities with password hash. Users will be able to experience a same sign-on (same password as their on-premises) but will have to type in their credentials to access cloud services.
The last chapter, gives you configuration guidance on Active Directory Federation Services (AD FS) for a single sign-on experience for your users. In this instance, users, from within the organization, will have a seamless experience accessing SharePoint online and on-premises resources.
I recommend that you download and read this free eBook. It provides the necessary ingredients for a SharePoint hybrid environment.
The second eBook – ‘Configuring Microsoft SharePoint Hybrid Capabilities’ (ISBN 9781509302437) was a team effort between Neil Hodgkinson, Manas Biswas, and myself. It was great to work with them on this eBook.
Forewords by By Jeff Teper, corporate vice president, Microsoft OneDrive and SharePoint and the second foreword by Seshadri Mani, principal program manager, Office 365 SharePoint, Microsoft Corporation.
This nine chapter eBook walks you through configuring the common SharePoint hybrid scenarios.
Chapter one starts off with an overview of the SharePoint hybrid capabilities and the Azure S2S trust configuration.
Chapter two is about configuring hybrid search. Neil and Manas are gurus in SharePoint search and hybrid search!
Chapter three, “Business Connectivity Services hybrid”, provides you with step by step instructions to configure what is currently the most complex scenario in SharePoint hybrid. To my knowledge, this was the first end-to-end BCS hybrid guide that has clear steps with figures to help you along the way.
Chapter four, “Additional hybrid solutions”, covers the configuration of additional hybrid solutions bundle that comprises of Hybrid OneDrive for Business and Hybrid Sites Features which includes the following: Site following , Hybrid profiles , and the Extensible hybrid app launcher.
Chapter five, “Microsoft Office 365 hybrid extranet and advanced sharing”, discusses and helps you plan for extranet sharing and taking your collaboration beyond your organizations borders.
Chapters six, seven and eight are great resources for IT Pros to learn whats involved in the on-going maintenance, best practices and management of a SharePoint hybrid environment.
Lastly, chapter nine is on Microsoft SharePoint hybrid and cybersecurity. My personal favourite where we covered SharePoint hybrid and cybersecurity concerns. This chapter is aimed at IT Security folk and IT Pros to consider the planning around risk management and threat management in a hybrid context. It is a great resource to discuss with your upper management and manage the risk profile in adopting SharePoint hybrid.
A big thank you to Rosemary Caperton (Microsoft), and Microsoft LeX for your support. Thanks to Dianne Russell and Bob Russell – awesome editors who kept the momentum going and worked around our schedules.
Thanks to Kim Spilker from Microsoft Press for publishing these books on the MS Press Blog.
The gold master of SharePoint 2016 is here! The most stable, high performing and superior SharePoint version known so far…. SharePoint 2016 is now in release to manufacturing (RTM).
I am keen to hear about the future of SharePoint in the ‘future of SharePoint event’. Learn more in the SharePoint Server 2016 reviewer’s guide or download a trial of the RTM version. SharePoint Server 2016 will be generally available in the Microsoft Volume Licensing Service Center in early May.
Read more here:
https://blogs.office.com/2016/03/14/sharepoint-2016-rtm-and-the-future-of-sharepoint-event
Microsoft listens and responds to suggestions to improve SharePoint at https://sharepoint.uservoice.com
Don’t forget to view and vote on my requests here: https://sharepoint.uservoice.com/users/68116428-jeremy-taylor
Microsoft has released Cumulative Update (CU) 7 for App Fabric 1.1 – KB3092423. The fine SharePoint folk out there know App Fabric as the SharePoint Distributed Cache. It is an important prerequisite that SharePoint 2013 & SharePoint 2016 require prior to installation. In fact, SharePoint security, performance and some social features heavily rely on the Distributed Cache working properly.
Cumulative Update 7 for App Fabric 1.1 has a fix for intermittent crashes and unexpected behaviour when managing the service.
Microsoft has reported the following three issues have been fixed with this Cumulative Update 7.
CU 7 is a requirement for SharePoint 2016. This is what I got when I tried to install SharePoint 2016:
App Fabric Cumulative Update 7 fixes the following issues:
Issue 1
The AppFabric Caching service crashes intermittently with the following exception:
{System.Runtime.CallbackException: Async Callback threw an exception. —> System.NullReferenceException: Object reference not set to an instance of an object.
at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result)
at System.ServiceModel.Channels.CommunicationObject.EndOpen(IAsyncResult result)
at Microsoft.ApplicationServer.Caching.WcfServerChannel.OnOpen(IAsyncResult result)
at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
— End of inner exception stack trace —
at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
at System.Runtime.AsyncResult.AsyncCompletionWrapperCallback(IAsyncResult result)
at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
Issue 2
Note – May not apply in SharePoint as we use Stop-SPDistributedCacheServiceInstance –Graceful to gracefully stop a cache host.
When you run the Stop-CacheHost AppFabric PowerShell command together with the -Graceful switch (in SharePoint, we use), you can’t stop the cache host, and you receive the following error message:
Exception type: System.Collections.Generic.KeyNotFoundException
Message: The given key was not present in the dictionary.
InnerException: <none>
StackTrace (generated):
SP IP Function
000000001F28DAA0 000007FEF611C96F mscorlib_ni!System.Collections.Generic.Dictionary`2[[System.__Canon, mscorlib],[System.Boolean, mscorlib]].get_Item(System.__Canon)+0x4098ff
000000001F28DAD0 000007FF007A860B Microsoft_ApplicationServer_Caching_Management!Microsoft.ApplicationServer.Caching.AdminApi.CacheAdmin.GetNoOfNodesInServiceState(System.Collections.Generic.List`1<Microsoft.ApplicationServer.Caching.IHostConfiguration> ByRef, Microsoft.ApplicationServer.Caching.AdminApi.ProgressDelegate, Microsoft.ApplicationServer.Caching.AdminApi.ServiceStatus)+0xfb 000000001F28DBD0 000007FF007A83F1 Microsoft_ApplicationServer_Caching_Management!
Issue 3
Note – May not apply to how we work in SharePoint as we use Add-SPDistributedCacheServiceInstance to register a Cache host.
When you run the Register-CacheHost AppFabric PowerShell command, the command fails, and you receive the following error message:
Register-CacheHost : ErrorCode<PortAlreadyInUseError>:SubStatus<ES0001>:TCP port 22234 is already in use.
Note This failure generally occurs if the cache ports are bound to any IP address.
Source: https://support.microsoft.com/en-us/kb/3092423#/en-us/kb/3092423
To check AppFabric version on your server, run this in PowerShell:
(Get-ItemProperty "C:\Program Files\AppFabric 1.1 for Windows Server\PowershellModules\DistributedCacheConfiguration\Microsoft.ApplicationServer.Caching.Configuration.dll" -Name VersionInfo).VersionInfo.ProductVersion
So how do you go about applying Cumulative Updates to the SharePoint Distributed Cache (App Fabric 1.1)?
I have documented the manual steps here as there are many misleading blog posts out there. Feel free to copy this article and use this in your organisations Standard Operating Procedure (SOP) documents: http://www.jeremytaylor.net/2015/09/17/how-to-patch-sharepoint-distributed-cache-the-proper-way/
AppFabric 1.1 CU versions index:
RTM: 1.0.4632 (29-Nov-2011)
CU1: 1.0.4639 (20-Feb-2012) – KB2671763
CU2: 1.0.4644 (29-May-12) – KB2716015
CU3: 1.0.4652.2 (27-Nov-2012) – KB2787717
CU4: 1.0.4653.2 (28-Mar-2013) – KB2800726
CU5: 1.0.4655.2 (03-Mar-2014) – KB2932678
CU6: 1.0.4656.2 (27-Feb-2015) – KB3042099
CU7: 1.0.4657.2 (01- Sept-2015) – KB3092423
SharePoint 2013 runs a service called the SharePoint Distributed Cache. The underlying application is Microsoft App Fabric. You may be running an old version of App Fabric and it needs your attention now!
An unpatched Distributed Cache may be the cause of a lot of your SharePoint farms performance issues.
The problem: A lot of blogs have misleading and wrong information on how to properly patch the SharePoint Distributed Cache. Following them will only cause you more issues down the track. Out of frustration, I have documented the steps on how to patch the SharePoint Distributed Cache the proper “manual” way with manual checks. If you follow these steps, you will have zero down time and hopefully a better performing SharePoint 2013 farm if you were on a very early App Fabric CU.
Which AppFabric / Distributed Cache CU do I install?
My advice is to generally update AppFabric with the latest providing it fixes issues that you are currently facing. Also, ensure that there are no obvious regressions with it by doing some research on the Internet. To determine the latest App Fabric Cumulative Update, http://www.jeremytaylor.net/tag/cumulative-updates+appfabric
Here are the steps on how to patch the SharePoint Distributed Cache:
1. Take stock of your Distributed Cache servers
Get-SPServiceInstance | ? {($_.service.tostring()) -eq "SPDistributedCacheService Name=AppFabricCachingService"} | select Server, Status
2. Ensure that Microsoft .NET Framework 4.5 is installed
Regedit: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
Ensure the version contains “4.5.xxx”. E.g. 4.5.51209
3. Remove server from the load balancer if applicable.
4. Shutdown the service instance on one machine
Add-pssnapin Microsoft.SharePoint.PowerShell
Stop-SPDistributedCacheServiceInstance –Graceful
Remove-SPDistributedCacheServiceInstance
(wait for a few minutes after running this cmd)
5. Run this to check what SharePoint thinks the list of Distributed Cache servers are:
Get-SPServiceInstance | ? {($_.service.tostring()) -eq "SPDistributedCacheService Name=AppFabricCachingService"} | select Server, Status
6. Patch AppFabric 1.1
Manually run the Cumulative update file. E.g. AppFabric-KB3042099-x64-ENU.exe
It should generate a log file here for troubleshooting purposes if required:
C:\ProgramData\Microsoft\E-Business Servers Updates\Updates\Uninstall<number>\Setup.log
7. Check version number
Running the below command should display the desired version level.
(Get-ItemProperty “C:\Program Files\AppFabric 1.1 for Windows Server\PowershellModules\DistributedCacheConfiguration\Microsoft.ApplicationServer.Caching.Configuration.dll” -Name VersionInfo).VersionInfo.ProductVersion
8. Apply the Background Garbage collection fix
Skip this step only if the Background Garbage collection fix has been already configured on all SharePoint Distributed cache servers.
To enable the fix, go to the following folder:
%ProgramFiles%\AppFabric 1.1 for Windows Server\
Open notepad and edit DistributedCacheService.exe.config
Paste in the following between the </configSections> and <dataCacheConfig> settings in the file:
<appSettings>
<add key=”backgroundGC” value=”true”/>
</appSettings>
Example:
</configSections>
<appSettings>
<add key=”backgroundGC” value=”true”/>
</appSettings>
<dataCacheConfig>
Don’t try it any other way as you will have issues starting the Distributed Cache service.
9. Post-patch operations
1. Some additional checks:
No need to restart AppFabric Caching Service in Windows Services as it should be in the disabled state – since we removed this CacheHost from the Cache Cluster.
2. Reset IIS by running: iisreset /noforce
3. Start the service instance
Run:
Add-pssnapin Microsoft.SharePoint.PowerShell
Add-SPDistributedCacheServiceInstance
Get-SPServiceInstance | ? {($_.service.tostring()) -eq "SPDistributedCacheService Name=AppFabricCachingService"} | select Server, Status
Use-CacheCluster
Get-CacheHost
10. Add back the server in the load balancer
11. Restart from 1 on the next machine
12. Don’t forget the rest of your SharePoint farm has AppFabric installed by default (even though not running). AppFabric on those servers need to be updated too without stopping or starting any services.
For this, run steps 6, 7 & 8 above.
SharePoint Server 2016 Beta 2 (2nd Preview)
Download SharePoint Server 2016 Beta 2 here: https://www.microsoft.com/en-us/download/details.aspx?id=49961
Product key for SharePoint Server 2016 1st preview: NQGJR-63HC8-XCRQH-MYVCH-3J3QR
This gives you a 180 day trial.
Review SharePoint Server 2013 (also applies to SharePoint 2016) system requirements
SharePoint Server 2016 Beta 1 (1st Preview)
Download the SharePoint Server 2016 Preview here: http://www.microsoft.com/en-us/download/details.aspx?id=48712
Not that you would want to spend time on an older preview but its there for reference purposes.
Product key for SharePoint Server 2016 1st preview: NQTMW-K63MQ-39G6H-B2CH9-FRDWJ
This gives you a 180 day trial.
Here are the new SharePoint Server 2016 features that were discussed at Microsoft Ignite Conference, Chicago in May 2015. Since SharePoint 2016 is almost a year away and its still in early development stages, the features and specifics here might change.
I’d like to highlight the major points based on what Bill Baer (Microsoft) presented at Microsoft Ignite 2015.
Slides