Author Archives: Kim Barnes

MOST

MOST Analysis is performed during strategic analysis to evaluate an organisations overall strategy, the supporting activities and whether they are all in alignment.

These are the four tiers in MOST Analysis:

  • Mission: defines what business the organisation is in and what it is intending to achieve
  • Objectives: key goals against which the organisations achievement can be measured
  • Strategy: the medium to long-term approach chosen to achieve organisational objectives
  • Tactics: the short-term, operational plans and projects that will implement the strategy

With this understanding of the current internal environment, the MOST Analysis technique analyse an organisation from its business strategy through to the way in it is setting about tactically achieving it.

MOST

Now, let’s explain each of the factors with their purposes.

Mission: This is the most critical factor for an organization which defines its purpose and the goals it wants to achieve in the future. If the mission is specific, then it is easier to analyze and measure the remaining factors.

ObjectivesWe can consider objectives as a collection of goals which as an accumulated result in the mission of the organization. Moreover, Objectives must be S.M.A.R.T –

  • S- Specific
  • M-Measurable
  • A-Achievable
  • R-Realistic
  • T-Timely

Strategy: This is the steps or actions that an organization takes to achieve the objectives and finally to accomplish the mission. A strategy is a group of tactics.

Tactics: These are the discrete and straightforward methods which an organization follows to carry out the strategies.

From <https://www.whizlabs.com/blog/best-business-analysis-techniques/>

PESTLE

The strategic analysis technique called PESTLE evaluates external factors that could impact business performance. The acronym stands for six elements affecting business: political, economic, technological, environmental, legal, and sociological.

PESTLE analysis assesses the possible factors within each category, as well as their potential impact, duration of effect, type of impact (i.e., negative or positive), and level of importance.

This type of business analysis helps stakeholders manage risk, strategically plan and review business goals and performance, and potentially gain an advantage over competitors.

pestle-analysis-diagram

As citizen developers we will probably not be too involved at this level of analysis for most projects but it never hurts to understand how all these areas affect what the business is asking to be done.

This information is provided from the following resources:

https://www.whizlabs.com/blog/best-business-analysis-techniques/

https://www.lucidchart.com/blog/business-analysis-models

The 5 Whys

This deceptively simple technique can help you uncover a whole host of information and help you get at the actual problem the business is needing to be addressed. The process is simple to use. You simply ask why to every statement the business stakeholder is making regarding the issue at hand. Although the name is ‘5 whys’ it may take you less than 5 or many more than 5 to get at the heart of the problem.

5-why-with-girl

When to Use a 5 Whys Analysis

This technique can be used for troubleshooting, quality improvement, and problem solving, but it is most effective when used to resolve simple or moderately difficult problems.  If your problem is complex, this may not be the best technique to use because it does take you down a single or limited number of paths when you may need to consider multiple areas to solve the problem.

5 Whys does, however, partner well with other analysis techniques and is often used at the beginning of the analysis journey to help focus on where additional deep dives are needed.

 

Resources

https://www.mindtools.com/pages/article/newTMC_5W.htm

Analysis Overview

Analysis is the practice of enabling change in an organizational context, by defining needs and recommending solutions that deliver value to stakeholders. Analysis can be strategic or tactical in nature.  Strategic analysis is focused on the big picture while tactical analysis is focused on solving a specific problem or opportunity.

In this post we will be touch upon a variety of analysis techniques to help us understand what the need or problem is so that we can then determine the best way to solve it.  What is listed is by no means all possible analysis techniques but only those I have found useful in some way.

clipboard2

The foremost priority for any business analyst will be to try understanding following things

  • Understand what business does and how it does
  • Determine how to improve existing business processes
  • Identify the steps or tasks to support the implementation of new features
  • Design the new features to implement
  • Analyze the impact of implementing new features
  • Implement the new features

The mechanism to accomplishes these activities is through analysis techniques.  These techniques can be grouped as either strategic or tactical. Below is a breakdown of the two categories. The techniques lists are by no means an exhaustive list.

Business report

Strategic Techniques

Strategic Analysis defines opportunities, and develops business cases to initiate work.  From an Agile point of view this level of analysis defines problems and opportunities in terms of themes and business epics.   Performing business analysis at a strategic level requires a broad set of tools and techniques to ensure that work initiated from the defined business cases support the organization’s business goals and objectives.

This level of analysis really has nothing to do with software development so, as citizen developers, we are usually not involved in this level of analysis. Not being directly involved doesn’t mean we shouldn’t at least be aware of some of the techniques that can be used for this level of analysis.

Some of the most popular techniques are:

  • PESTLE
  • MOST
  • SWOT
  • Product Roadmaps
  • CATWOE
  • Brainstorming

 

person holding blue ballpoint pen on white notebook

Photo by Lukas on Pexels.com

Tactical Business Analysis

The primary focus of tactical business analysis is to clarify the business epics or business cases that were defined through strategic business analysis.  This form of analysis is to elicit stakeholder requirements based on the business case.  In agile methodology the analyst decomposes business epics into features which are further decomposed into user stories.  It is at this level of analysis the citizen developer is mostly involved.

Just as there are many ways to design a solution to a problem, there are many ways to learn about a problem.  Different ways or techniques will provide you with a different way to see the problem.  Sometimes it may take several techniques to understand the problem.

Some of the most popular techniques are:

  • The 5 Whys
  • Mind Mapping
  • Business Process Modelling
  • Entity Relationship Diagram
  • Non-Functional Requirements Analysis
  • Wireframes

Citizen Developers Wear Many Hats

As a citizen developer I may be called upon to wear many hats – analyst, designer, developer, tester, trainer.  Each hat requires its own set of skills and tools. In future posts we will explore each area in depth so you will have the tools you need to be a successful citizen developer.

wizardhat2

Analyst Hat

When wearing this hat, citizen developers work closely with business

partners and stakeholders to understand what the business needs to meet its goals and support its vision.  We also work closely with our technology partners in converting high level business initiatives into clear requirements that can be design, developed and implemented.

HatRed1

Designer Hat

When wearing this hat, citizen developers help determine the shape of the solution that will be developed and implemented.

hardhat

Developer Hat

When wearing this hat, citizen developers along with technology partners develop the solution.

BaseballCapBlackTester

Tester Hat

When wearing this hat, citizen developers test what has been

developed to be sure everything is working properly and meets the business’s needs.

 

Hat1

Trainer Hat

When wearing this hat, citizen developers provide training to their users on all the standard and custom functionality available.

 

 

 

Improving Lookup Search Results

Hi my fellow citizen developers.  Lookups are a great way to relate objects together but can lead to a bad user experience if the lookup search isn’t configured well.

In this post we will be looking at a simple example of using a lookup field to define the instructor for a class.  So below shows the instructor field where we enter the last name of the instructor to be assigned to the class.

LookupExample1

When we click on the lookup icon we see several results from our lookup search.  Unfortunately we have no additional information to determine which Ben Smith is the one we need to assign as the instructor.

LookupExample2

To help users find the right instructor we need to include additional information in the lookup search to help them choose.  To do that we need to modify the Search Layout on the object that is holding our instructor information.

LookupExample3

Go to the search layouts for the object you are using, in this case I am using Contact.  To help my users find the right contact record I am adding the contact’s title, department, reports to and email information in the Lookup Dialog.  So when a lookup search is done, more information is displayed.

LookupExample4

Now with this information my user should be able to select the correct contact to assign as instructor for the class.

Hope this helps you with your configuration setup and user experience design.

 

 

 

Using Salesforce to Manage Expectations

We all have expectations.  Some are little and some are not.  In the world of software development expectations can result in you being a hero or a failure.  So how can you make sure everyone is on the same page as the requested enhancement is developed and deployed and how can Salesforce support this process?

How to Manage Expectations

Do Not Make Assumptions

Each person is coming from a different set of skills and life experiences than your own.  Do not assume that they see things as you do. Meet with the business and tech team separately and together and make sure what is expected, how it might be accomplished, and most importantly… how success will be measured are discussed and agreed upon by all parties.

Communicate, Communicate, Communicate… and oh… Communicate

Communicate with the team frequently using different methods and formats.

Pushing Out the Information

One set of methods are of a category called “Push” where information is pushed to the stakeholders and team.

meeting1

Meetings
We all love meetings, right?  (eye roll)  Sometimes they can be useful if we keep them focused (e.g. have an agenda) and short (e.g. Use a parking lot to stay on point).

  • Daily Status Meeting – primarily useful with the development side of the team. Check in with everyone daily to see how things are progressing and to identify any issue that is stopping or hindering progress.  Try to keep these meetings short and sweet.
  • Weekly Stakeholder Status Meeting – primarily useful with the business side of the team. Provide updates to stakeholders on the progress of the work and discuss any identified issues or risks.

Reports

  • Status Report – weekly report that covers (1) what was done last week; (2) what is being done this week and next week; (3) open action items; (4) Timeline; (5) Budget; (6) current risks, constraints, assumptions
  • Executive Summary Report – similar to status report but at a much higher level of information and may only be needed every other week or so

Pulling Information from a Source

Another set of methods are of a category called “Pull” where stakeholders and team members go to a source and pull the information as needed.

screen-of-code1

Shared Enhancement lists

A list of enhancement requests (projects) which can be viewed by business users and technology team members provides all with clear understanding of the pipeline.

Shared To Do or Task List

A list of assigned tasks for an enhancement request or project provides everyone with a clearer view of how resources are aligned to the work and the level of effort needed to complete it.

Shared Issues, Assumptions, Risks, Constraints List

Every change comes with some assumptions, risks, constraints and capturing them in a shared list will help everyone have a clearer picture of the change.  Issues also can arise as the work progresses so having a shared list to capture these helps to provide transparency to all interested parties.

Push Back As Needed

Part of managing expectations is helping everyone understand what can be realistically achievable given the scope of the work, the timeframe to deliver and the available resources.  If the business wants more or wants to radically change the original request, have an honest discussion about what that would mean to the work already done and the expected completion time.

Using Salesforce to Manage Expectations

Capturing the Information

Capture Enhancement Requests

First thing you need is a way to capture change / enhancement requests.  I have found the easiest method is to use CASE and either provide users with a web page (web to case) or email address (email to case) for them to submit requests.

<Case Example 1>

Make sure your CASE includes fields to capture the following:

  • What problem are you trying to solve?
  • Why do you need to solve this problem?
  • Who is impacted by this problem?
  • How are they impacted by this problem?
  • When do you need this problem to be resolved?
  • Who from the business need to be involved in solving this problem?
  • What systems are affected by this problem?

This is not an exhaustive list of questions and you may have more that you normally use.  The idea is to make sure you capture all the information you need on the CASE as it will be the primary source of information for you and the team.

Capture Issues, Constraints, Assumptions, Dependencies

As mentioned earlier, everyone comes to a project with assumptions or pre-conceptions and these should be captured along with any identified constraints and dependencies.  Also as work is done issues do come up and need to defined in a place open to everyone on the team where they can be seen and worked.

I have played with these four categories of lists for years and currently use something I call “Considerations”.  By having one custom object called Considerations and then using record types for each (Issue, Constraint, Assumption, and Dependency) I can have a single place for all of the information without needing more than one custom object.  Win win in my book.

As an issue/constraint/assumption/dependency is identified, it becomes a consideration related to the case.

Capture Notes

As people are working on the case it is important that they document what they are doing, have done, plan to do, etc.  Also meeting minutes should be associated with the case.

Although Salesforce has a NOTES object, I find it difficult to use because I need to type my notes (meeting minutes, status, analysis, etc) which currently cannot be done on the standard NOTES object.  Never fear the Citizen Developer is here!  I created my own NOTEs object and related it to CASE so that all the great information is captured here.

Capture Tasks

Who is working on what can be easily tracked in Salesforce using activities (tasks) related to the case.  They can be simple tasks or have additional custom fields as needed.

Communicating from Salesforce

Now that you’ve put in place the structure and process to capture change/enhancement requests and all the related information, it is time to provide that great information to the world… or at least the stakeholders and team members.

Reporting

  • Status Report – create a report off of the Notes__c object for a specific case and schedule it to run weekly and be distributed to the project team and stakeholders (“push”) or have interested parties run the report as needed or subscribe to it (“Pull”).
  • Executive Summary Report – executive level reporting could be handled by a dashboard that is run weekly and sent out via email (“Push”), available for executives to run on demand (“Pull”) or (if you want to get fancy) a visualforce page that renders as a tricked out pdf that someone sends out (“push”) or available for executives to select (“Pull”).

Shared Lists

  • Current Assignments – Users can see who is working on what by running a report or by using a list view from Activities.
    • I found it great to create a visualforce page that displays activities and then create a set of list views to provide the information users would need to see
  • Request Pipeline – Users can see the pipeline by running reports or through list views on CASE. Using a set of statuses that have been clearly defined with all team members and stakeholders will provide everyone with an understanding of how many requests are in the pipeline and where each request’s place in the process currently is.
  • Issues/Assumptions/Constraints/Dependencies List – Users can see open issues/assumptions/constraints/dependencies for a case by accessing a related list. For me that is considerations but you could have a separate custom object for each type.

Summary

While some aspects of expectation management cannot be fully supported by Salesforce (not making assumptions, facilitating various meetings), several aspects can be supported very well as discussed in this post.  In my experience I have been able to manage and track several thousand change requests and keep the lines of communication open and humming using CASE and several custom objects (CONSIDERATIONS, NOTEs).

Question to You

How do you manage expectations?  Have you been able to use Salesforce for some of that work?

Resources