Posted on

CICD – Castrol for DevOps

We started 2018 with multiple deployments during regular business hours for one of our clients – the same client that used to send out multiple emails to their users about system outage for a big bang deployment during off hours having their entire team in office for smoke testing …. A scenario that today seems prehistoric even though a few years old !

 

Welcome to the world of DevOps – continuing from our previous post on this topic ensure to put some Castrol on your engine or in tech speak – CICD on your deployment pipe.

Continuous Integration refers to a software development practice where programmers integrate and check-in their code frequently.

Continuous Delivery refers to a software development discipline where you build software in such a way that it can be released to production at any time.

Continuous Deployment means that every change you make gets automatically deployed through a deployment pipeline. This term is often confused with “Continuous Delivery”.

 

Traditionally we have seen that teams are more focused during Go Live ! In fact I can tell that apart from a few, most folks that will be affected due to the solution are not involved (or care much) till it is Live. One solution to this problem is to go live often … this solution is a challenge using traditional Big Bang GO Live model. It can be implemented by

  1. Reducing the feature list that it included in each release
  2. Automating the release process

You can get an idea of the first point outlined in this blog post.

The second point is where CICD is used.

There are MANY tools available that can get this done but in the end you need to ensure it is acceptable with your change control team (Audit, compliance, ‘server guys’ ! Etc…)

As we help our clients move to the cloud leveraging the container based deployments and transferring the compliance risks to the cloud service providers like Microsoft and Amazon we work with solutions that have ample support and integrate with the development tools. During our Microsoft Gold Certification we validated our CICD process using Azure. It integrates very well Visual Studio and deployments are permission controlled for each environments.

System Requirements for deploying an agent on Windows

To build your code or deploy your software you need at least one agent. When your build or deployment runs, the system begins one or more jobs. An agent is install-able software that runs one build or deployment job at a time.

There are two types of agents: Hosted Agents and Private Agents.

Hosted Agents: If you’re using Team Services, you have the option to build and deploy using a hosted agent. When you use a hosted agent, maintenance and upgrades are taken care of by the Teams Service. So for many teams this is the simplest way to build and deploy. The hosted agents are there in the hosted pool. If you need to run more than one job at a time, you’ll need to get more concurrent pipelines.

Private Agents: An agent that you set up and manage on your own to run build and deployment jobs is a private agent. You can use private agents in Team Services or Team Foundation Server (TFS). Private agents give you more control to install dependent software needed for your builds and deployments. After you’ve installed the agent on a machine, you can install any other software on that machine as required by your build or deployment jobs.

Before creating and deploying your agent, make sure that your machine is prepared with the Windows system prerequisites:

  • Windows 10 and Beyond (64-bit): No known system prerequisites are known at this time.
  • Windows 7 to Windows 8.1, Windows Server 2008 R2 SP1 to Windows Server 2012 R2 (64-bit): PowerShell 3.0 or higher
  • Visual Studio: Even though not technically required by the agent, many build scenarios require Visual Studio installed to get all the tools. It is recommended that you install Visual Studio 2015 or higher in your machine.

Prepare Permissions to Register Agent

Decide which user account you’re going to use to register the agent.

  1. Point your web browser to the visual studio URL: https://<your company>.visualstudio.com/ and key in the login credentials.
  1. From your home page, mouse-over your profile. Go to your security details.
  1. Create a personal access token (PAT) by clicking on “Add” under Personal Access Tokens:
  1. Key in the description, set “Expires In” option to 1 year and select <company> as “Accounts”.
  1. For the scope select “Agent Pools (read, manage)” and make sure all the other boxes are cleared.
  1. Click on “Create Token“.
  1. Copy the token that is generated and keep it in a notepad. You will use this token when you configure the agent.

 

Download and configure your agent

  1. Point your web browser to the teams services URL: https://<your company>.visualstudio.com/_admin/_AgentPool and click on “New Pool”.

 

  1. Key in pool name and click “Ok”.
  1. The pool thus created appears under the All Pools In this case we’ve created a new pool – Exigent-FJC.

 

  1. Select the pool name i.e. Exigent-FJC, and click Download Agent.
  1. On the Get agent dialog box, Windows remain selected by default.

 

  1. Click the Download button
  1. Follow the instructions on the page.

 

Creating Build Definition

A build definition is the entity through which you define your automated build process.

  1. In Team Explorer, select the project for which you want to create a new build definition. In this case we’ve selected– “MSTN”.
  1. Select “Build & Release” hub in your Team services project. The Builds tab will remain selected by default. Create a new definition by clicking on “New“.

 

  1. Start with an empty process.
  1. Specify whatever Name you want to use. For the Default agent queue, select Hosted.
  1. Click Save & queue, and then click Save.

 

Creating Tasks

A task is the building block for defining automation in a build definition. In the build definition, you compose a set of tasks, each of which performs a step in your build. The task catalogue provides a rich set of tasks for you to get started.

Different sets of tasks have to be created for Azure and non-Azure servers. Let us first understand the tasks to be created for Azure servers.

On the Tasks tab, click Add Task, and add the following tasks with their respective sets of parameters:

  1. NuGet restore: Click the —- category, click the NuGet restore task, and then click

 

  • Enter display name.

 

  • Path to Publish: Path to the folder or file you want to publish. The path must be a fully qualified path or a valid path relative to the root directory of your repo. Enter the following path: **/*.sln
  • Feeds to use: select the option “Feed(s) I selected here”.
  • Checkmark the option “Use packages from NuGet.org
  • Click on “Save & Queue” to save the task.
  • Visual Studio Build: Go to Build category, click the Visual Studio Build task, and then click

 

  • Enter the display name as you want it to be.

 

  • Solution: If you want to build a single solution, click the … button and select the solution. If you want to build multiple solutions, specify search criteria. You can use a single-folder wildcard (*) and recursive wildcards (**). For example, ***.sln searches for all .sln files in all subdirectories. Make the sure the solutions you specify are downloaded by this build definition.
  • Visual Studio Version: select Visual Studio 2015.
  • MSBuild Arguments: pass additional MSBuild arguments as shown in the screen shot above.
  • Platform: Specify the platform you want to build.
  • Configuration: Specify the configuration you want to build such as debug or release.
  • Once done, click on “Save & Queue” to save the task.
  • Index Sources & Publish Symbols: Go to Build category, click the Index Sources & Publish Symbols task, and then click

 

 

  • Path to publish symbols: If you want to publish your symbols, specify the path to the SymStore file share. This is an optional field. If you leave this argument blank, your symbols will be source indexed but not published.
  • Search pattern: Specify search criteria to find the .pdb files in the folder that you specify in Path to symbols folder argument. You can use a single-folder wildcard (*) and recursive wildcards (**). For example, **bin***.pdb searches for all .pdb files in all subdirectories named bin.
  • Path to symbols folder: The path to the folder you want to search for symbol files. If you leave it blank, the path used is Build.SourcesDirectory.
  • Once done, click on “Save & Queue” to save the task.
  • Publish Build Artifacts: Go to the Utility category, click the Publish Build Artifacts task, and then click

 

 

  • Enter the display name.
  • Path to publish: Path to the folder or file you want to publish. The path must be a fully qualified path or a valid path relative to the root directory of your repo. Typically you’ll specify $(Build.ArtifactStagingDirectory).
  • Artifact name: Specify the name of the artifact. For example: drop.
  • Artifact Type: Choose server to store the artifact on your Team Foundation Server.
  • Click on “Save & Queue” to save the task.

 

Creating Releases in Release Management

A release is the package or container that holds a versioned set of artifacts specified in a release definition. It includes a snapshot of all the information required to carry out all the tasks and actions in the release definition – like the environments, the task steps for each one, the values of task parameters and variables, and the release policies such as triggers, approvers, and release queuing options.

Releases can be created from a release definition in several ways:

  • By a continuous deployment trigger that creates a release when a new version of the source build artifacts is available.
  • By using the Release command in the UI to create a release manually from the Releases tab or the Builds tab.
  • By sending a command over the network to the REST interface.

Whatever be the approach of creating a release definition, please understand that the action of creating a release does not mean that it will automatically or immediately start a deployment.

Here, we’ll discuss creating release definition by continuous deployment trigger.

  • To create a release definition, choose Create Release Definition from the Release drop-down list.

 

  1. Start with an empty definition.

 

  1. Click Next. The project and build definition for which the release is being created will be selected by default. Click Create.

 

  1. Give your Release definition a name by clicking on the edit icon and click on Save.

 

  1. Once you save a release definition it shows up in the list of all Release Definitions.

 

Adding Environment

An environment is a logical and independent entity that represents where you want to deploy a release generated from a release definition. Dev, QA and Prod are some good examples of release environment. As new builds are produced, they can be deployed to Dev. They can then be promoted to QA, and finally to Prod. At any time, each of these environments may have a different release (set of build artifacts) deployed to them.

A release definition, by default, contains a single environment. You can however, configure additional to represent the target server(s) or locations where you will deploy your app.

  1. To create a new environment, edit the release definition. In this case, let’s edit MSTN Release.

 

  1. Click on Add environment and choose Create new environment.

 

  1. In the Add new environment dialog select a template for the new environment to automatically add appropriate tasks, or create an empty environment with no default tasks.

 

  1. Select the pre-deployment approval and trigger settings for the new environment. You can quickly select users or groups as pre-deployment approvers by typing part of the name.

 

  1. Choose Create and then edit the new environment name as required.

You can define approvers for each environment. When a release is created from a release definition that contains approvers, the deployment stops at each point where approval is required until the specified approver grants approval or rejects the release (or re-assigns the approval to another user).

 

 

You can define pre-deployment approvers, post-deployment approvers, or both for an environment.

The Automatic option allows you to approve a deployment automatically. When you select the Specific Users option, you can select one or more approvers for an approval step. You can add multiple approvers for both pre-deployment and post-deployment settings.

When you add multiple approvers, you can control how they can approve the deployment. The options are:

  • All users in any order: Choose this option if you want sign-off from a set of users, all of them must approve, and it does not matter in what order they approve.
  • All users in sequential order: Choose this option if you want sign-off from a set of users, all of them must approve, and you want them to approve in the specified order. For example, the second user can approve only after the first user approves, and so on.
  • Any one user: Choose this option if you want sign-off from only one of a set of users. When any one of the users approves, the release moves forward.

You can also specify account (user) groups as approvers. When a group is specified as an approver, only one of the users in that group needs to approve in order for the release to move forward.

After you have created and configured your environments, add tasks to them.

 

Adding Tasks

Select an environment in the definition and choose Add tasks.

 

By default, the task selector shows tasks generally used in a release definition. More tasks are available in the other tabs of the Task catalogue dialog. Add the following release tasks with their respective sets of parameters:

 

  • Azure App Service Deploy: Go to Deploy category, click the Azure App Service Deploy task, and then click

  

  • Click on the edit icon to enter your preferred display name.

 

  • Azure Subscription: Select the AzureRM Subscription. If none exists, then click on the Manage link, to navigate to the Services tab in the Administrators panel. In the tab click on New Service Endpoint and select Azure Resource Manager from the dropdown.
  • App Service Name: Select the name of an existing AzureRM Web Application. Enter the name of the Web App if it was provisioned dynamically using the Azure PowerShell task and AzureRM PowerShell scripts.
  • Deploy to Slot: Select the option to deploy to an existing slot other than the Production slot. Do not select this option if the Web project is being deployed to the Production slot. The Web App itself is the Production slot.
  • Virtual Application: Specify the name of the Virtual Application that has been configured in the Azure portal. The option is not required for deployments to the website root. The Virtual Application should have been configured prior to deploying the Web project to it using the task.
  • Package or Folder: Location of the Web App zip package or folder on the automation agent or on a UNC path accessible to the automation agent like, \BudgetITWebDeployFabrikam.zip. Predefined system variables and wild cards like, $(System.DefaultWorkingDirectory)***.zip can be also used here.

 

  • Visual Studio Tests: Go to the Test category, click the Visual Studio Test task, and then click

 

 

  • Test Assembly: Use this to specify one or more test file names from which the tests should be picked.
  • Paths are relative to the ‘Search Folder’ input.
  • Multiple paths can be specified, one on each line.
  • Uses the minimatch patterns

 

For example: To run tests from any test assembly that has ‘test’ in the assembly name, ***test*.dll. To exclude tests in any folder called obj, !**obj**.

 

  • Test Filter Criteria: Filters tests from within the test assembly files. For example, “Priority=1 | Name=MyTestMethod”. This option works the same way as the console option /TestCaseFilter of vstest.console.exe
  • Run Settings File: Path to a runsettings or testsettings file can be specified here. The path can be to a file in the repository or a path to file on disk. Use $(Build.SourcesDirectory) to access the root project folder.
  • Override TestRun Parameters: Override parameters defined in the TestRunParameters section of the runsettings file. For example: Platform=$(platform);Port=8080 Click here for more information on overriding parameters.
  • Code Coverage Enabled: If set, this will collect code coverage information during the run and upload the results to the server. This is supported for .Net and C++ projects only. Click here to learn more about how to customize code coverage and manage inclusions and exclusions.
  • Run in Parallel: If set, tests will run in parallel leveraging available cores of the machine. Click here to learn more about how tests are run in parallel. 
  • Cloud-based Web Performance Test: Go to the Test category, click the Cloud-based Web Performance Test task, and then click Add

 

 

  • Enter the display name.
  • VS Team Service Connection: It is the name of a Generic Service Endpoint that refers to the Team Services account you will be running the load test from and publishing the results to. Since it’s an optional field you may leave it blank.
  • Website URL: Enter the URL of the app to test.
  • Test Name: Enter a name for this load test. This particular name is used to identify it for reporting and for comparison with other test runs.
  • User Load: The number of concurrent users to simulate in this test. Select a value from the drop-down list.
  • Run Duration (sec): The duration of this test in seconds. Select a value from the drop-down list.
  • Load Location: The location from which the load will be generated. Select a global Azure location, or Default to generate the load from the location associated with your Team Services account.
  • Run load test using: Select “Automatically provisioned agents” if you want the cloud-based load testing service to automatically provision agents for running the load tests. The application URL must be accessible from the Internet.

Alternatively, select “Self-provisioned agents” if you want to test applications behind the firewall. You must provision agents and register them against your Team Services account when using this option.

  • Fail test if Avg. Response Time (ms) exceeds: Specify a threshold for the average response time in milliseconds. If the observed response time during the load test exceeds this threshold, the task will fail.

Once done, click on “Save” to save the tasks and the release definition.

Cloning Environment

A release definition often contains several environments such as development, testing, QA, and production. Typically, all these environments are fundamentally similar, and the techniques used to set up and deploy to each one are the same with the exception of minor differences in configuration for each environment and task (such as target URLs, service paths, and server names).

After you have added an environment to a release definition and configured it by adding tasks and setting the properties for each one, clone it to create another environment within the same definition. Select the environment you want to clone in the environments column, open the Add environment list, and choose Clone selected environment.

 

The cloned environment has the same tasks, task properties, and configuration settings as the original. The Add new environment dialog that opens lets you change the pre-deployment approval and trigger settings for the cloned environment.

Release Triggers

You can configure when releases should be created through release triggers in a release definition.

 

With certain types of artifacts specified in a release definition, enable Continuous deployment.

 

This setting instructs Release Management to create new releases automatically when it detects new artifacts are available. At present this option is available only for Team Foundation Build artifacts and Git-based sources such as Team Foundation Git, GitHub, and other Git repositories.

If you have linked multiple Team Foundation Build artifacts to a release definition, you can configure continuous deployment for each of them. In other words, you can choose to have a release created automatically when a new build of any of those artifacts is produced. You can further choose to create the release only when the build is produced by compiling code from certain branches (only applicable when the code is in a Team Services or a TFS Git repository) or when the build has certain tags.

You can also choose to have a release created automatically based on a schedule. When you select this option, you can select the days of the week and the time of day that Release Management will automatically create a new release. You can configure multiple schedules as required.

You can also combine the two automated settings and have releases created automatically either when a new build is available or according to a schedule.

See these steps in action here: 

 

 

 

Blog post by: Sam Banerjee. Reach Sam @ sam@medullus.com

Sam ensures Medullus’s drumbeat of execution is in rhythm (heads Operations!) – an IT professional with a myriad of experience across various platforms and domains with significant knowledge in the design, implementation and testing of various systems for organizations as ADP, Bristol-Myers Squibb & Ross Stores. With a Masters in Computer Science from SUNY, Sam leads the Tech innovations within Medullus (Artificial Intelligence, BlockChain, Mobility, BI).

Posted on

Demystifying Microsoft Gold Certification

Microsoft Gold Partner Medullus

Why we got Gold Certified

Certification gives a company much more than ‘bragging rights’  – more so if the path to achieving the certification includes a combination of examinations that team members need to clear along with existing clients validating the services of the team and a cost (investment) that the company need to make.

Microsoft Gold Certification fits the checklist above. There are various competencies that a company can chose to specialize in – we chose Application Development.

The ever-changing technology gamut is a constant challenge for anyone looking to design the next solution that he / she is tasked with.

Microsoft’s Gold Certification in Application Development encompasses a broad array of specialization, which ensures that the fundamentals are in place and the building blocks of any solution is as per best practices.

 

How we got Gold Certified

During our monthly company huddle in September, we announced to the team that we would need to be gold Certified in Microsoft’s Application Development area by end of the year. This will be a logical next step to our DevOps initiative taken earlier (read about my post on Road to DevOps ).

  • We listed the team members and the exam(s) each of them will need to clear
  • We pointed them to the study materials
  • We listed our existing clients that can give us the required testimonials
  • We put the $$ in our budget

Using methods of constant touch, encouragement and feedback from the programmers, we were able to clear the certification a week before! We worked with Microsoft to attain the proper procedures and in Feb, we were able to announce the following in our Monthly huddle.

Medullus Road to Microsoft Gold

 

Some of the Challenges we had to overcome

We are spread across a few locations with our Sales office in NY, Operations in NJ and development in Kolkata, India.  Communication within the company was not a challenge as we have been able to leverage collaboration tools like Slack and MS Teams well over time (Have you read Tej’s post on this topic yet ? – if not, here you go). The Challenge was working with Microsoft’s outsourced vendor Pearson VUE and ensuring that our members from all locations are working towards the same Company Certification. We had to document all incident ticket notes and enable that exams were registered and taken under the same company umbrella.

Another hurdle we faced was lack of proper communication on product version on which some exam questions will be based off, we took to the online community and Forums to get help – (if you are stuck on this please reach out to info@medullus.com or comment here and we will be glad to knowledge share).

Finally listing the company to the pinpoint – Microsoft has this ‘Work or School’ vs ‘Personal’ distinction (which in my mind is not required) – we worked with Microsoft Help (they are really good!) to make the required corrections and finally see.

Medullus Achieves Microsoft Gold Certification

 

Where Next

As we continue investing in our Labs doing some innovations in the Finance and Buying Group domain, using Blockchain and AI we will ensure to enforce most of the checklist items recommended by Microsoft, as they should be the basic building blocks for any solution.  Currently we are trying to work thru the latency effects of blockchain – as we push the limits of that technology we are constantly checking to ensure that security (and anonymity) is not compromised. The clearing of a few ‘difficult’ examination during the certification has put a ‘nitro boost’ in confidence for our team and we plan to leverage that even more as we march ahead …

 

 

Blog post by: Sam Banerjee. Reach Sam @ sam@medullus.com

Sam ensures Medullus’s drumbeat of execution is in rhythm (heads Operations!) – an IT professional with a myriad of experience across various platforms and domains with significant knowledge in the design, implementation and testing of various systems for organizations as ADP, Bristol-Myers Squibb & Ross Stores. With a Masters in Computer Science from SUNY, Sam leads the Tech innovations within Medullus (Artificial Intelligence, BlockChain, Mobility, BI).

Posted on

Collaborate online or your co-op will lose its competitive edge

The Social Co-op

The social collaboration

There are several types of co-ops and member-owned organizations – buying or purchasing groups, food co-ops, housing co-ops, consumer co-ops are among the most popular. But one thing that connects the dots among all these types of co-ops is that co-ops exist as a means to bring businesses, entities, people and groups together to leverage their collective buying or selling power. The word that resonates among these organizations is “collective” and the only way individuals, groups and entities can come together to create this entity is through collaboration.

In the years leading up to social networking, organizations were primarily communicating and through traditional media like phones, emails and collaboration was primarily done through business meetings, lunches, dinners, road shows, business conventions, trade shows and the likes. While these channels still exist and are extremely successful in fostering the “collaborative co-op”, the day-to-day collaboration across all parties of a co-op is happening over the wire and through the digital world. Gone are the days where contracts are drawn up once a year and negotiated at national account meetings or, strategic discussions are held at board rooms twice a year. Businesses are eroding their walls and being more flexible in how they transact with each other on a daily and sometimes even on an hourly basis. And while email became the go-to collaboration tool, inboxes started filling up quickly and important communication got lost under the rubble – we have all known this phenomenon called “email hell” where we spend most of our day trying to figure who to answer to when and spend hours unarchiving mailboxes to find a 1st draft of a contract where we had some good ideas that are missing on the final version!

And this is where “social” collaboration comes in. Social media has taken over the way we communicate. There are millions of hours of research into who this media is good or bad for society and business in general. But the point that resonates is that it is here to stay and businesses will have to figure out how to use this effectively so that they can control the dialog before the dialog controls them and their ecosystem. So how can the “collaborative co-op” build upon this new way of transacting business and use it to their advantage?

 

The problem with Facebook & LinkedIn Groups

One quick way to build a social collaboration channel is through a Facebook group or a LinkedIn group. Both are free and is quite easy to setup. There are many online posts about how to use Facebook & LinkedIn groups for business – I personally recommend the post from Social Media Examiner for Facebook– you can read it here. For LinkedIn, you can check out the post from Buffer App by clicking here.

However, for a co-op there are some very unique collaboration channels. First, suppliers and co-op employees need to collaborate in a space where members may or may not have access. A lot of these collaborations could be about rebates programs, co-op growth programs through sponsorships and promotions and contracts for products and services. In some cases, a select few members (board, national accounts committee or special committees) might be part of specific collaboration channel.

Second, members and co-op employees need private spaces and collaboration channels to discuss membership topics, co-op by-laws, growth and penetration into new and existing markets or just day to day trade and business.

Third, members and vendors should find “safe spaces” where they can collaborate freely about specials, promotions and contracts with the co-op’s ability to moderate and administer as it feels necessary.

Finally, there should be the main “social floor” where everyone collaborates and discusses industry news, co-op news or anything that anyone wants to share with the group.

Where traditional social channels fail is that these channels are not designed to foster all of these types of co-op collaborations under one umbrella where all discussions, posts, videos, pictures, files and social interaction across public and private groups can be managed. A simple collaboration channel where a vendor announces a new product to the entire membership but discusses annual contracts only with the co-op employees cannot be done easily with social channels available today and in most cases it cannot be done at all – maybe if your co-op owned LinkedIn!

 

The Social Co-op Network

This is where a social network design and implemented with a co-op’s business model in mind, can be one of the most important tools of your group. Here are the elements of the social network.

Vendors & Members should have the ability to create their own company pages with as many sub-pages, posts, videos, photos as they like – just as in Facebook or LinkedIn you can create your own company’s page. As the co-op you should be able to manage and create these pages on behalf of your members and vendors as well just in case they do not have the time to do so. In either case, it should be extremely easy to do – if you know how to use a word processing software (like Word or Pages) you should be able to build your company’s pages.

Vendors should be able to promote their products and services to the members with the co-op moderating and administering these promotions. These promotions could in the form of posts, videos or training webinars.

Members should be able to communicate with vendors, collaborate with other members and discuss in forums within the social network.

Members should be able to inquire about different products and services and vendors and co-op employees should have the ability to help members with these inquiries.

Vendors should be able to get reports about who has visited their pages, inquired about products and services they market and also get sales leads through the channels.

There should be options to build sub-groups with select members, vendors, contacts or any combination of users across all organizations (vendor, member and co-op). These may or may not have the co-op as the moderator but the co-op should have the ability to administer them as needed.

There needs to the “co-op general wall” where any member, vendor or co-op can post comments, links, videos, photos, articles or a simple thought-of-the-day with the ability to like, comment, share or simply view.

As the social network gets more traction and more data is entered the network should have the intelligence to show trending topics, discussions, have the ability to do profile completeness scores to promote more interactions and collaborations and create a more connected co-op.

 

Where can you start

At Medullus we have helped buying groups, purchasing co-ops and member-owned organizations become more connected and interactive through our proprietary “social co-op” software. We are happy to discuss with you and learn your co-ops structure, collaborative environments and interactions. Why not reach out to us to join in on the conversation and collaboration?

 

 


Blog post by: Roni Banerjee. Reach Roni @ roni@medullus.com

Roni heads Marketing & Sales for Medullus and is the Practice Lead for Blockchain Solutions. Roni has nearly 20 years of CIO/CTO experience with orgs across industries. Roni architected the world’s 1st true purchasing group ERP/BPM system for a billion $ org. Roni has implemented large workflow systems, recently for a public-traded pharma. Roni holds an MBA from Warwick Business School in the UK and several certification in PM, Agility, Blockchain and software.

Posted on

Unleashing the full potential of Shared Services

Unleashing the full potential of Shared Services

Shared service centers are used for the purposes of driving efficiency by managing common activities centrally to eliminate redundancy across the organization and leverage economies of scale. In the Finance world, the most common activities that are handled via shared services are accounts payable, collections, invoicing, account reconciliations, etc. – in a way even centralized corporate functions like tax, treasury, legal, etc. are shared services!

Even though most organizations have shared services within Finance these days, very few shared services appear to be truly optimizing their full potential! This lack of optimization can either be a result of sub optimal scope or sub optimal processes!

Sub optimal scope and sub optimal processes

Sub optimal scope refers to cases where some but not all activities that can be centralized are being managed by shared services or else even though activities are centralized, all business units are not covered – some units continue to perform the activities locally. Sub optimal processes refer to scenarios where the shared services processes are not being run in the most efficient manner, either in terms of execution or in terms of the fact that they do not eliminate various redundancies – process redundancies, systemic redundancies or data redundancy …. They are NOT Lean!

Most of the issues related to optimizing shared services stem from the fact that various business units and operational components do not operate on a standard platform – managing processes for entities operating on different ERP systems poses the biggest challenge – this issue is further magnified in case of companies that grow through acquisitions as integrating platforms is by far the biggest challenge for them!

In many cases data is exchanged through manual and/or semi-automated means – like exchange of data dumps, periodic file imports. In some cases, the shared service teams end up working in multiple systems to run their processes. In many cases, even where system integrations do exist, these are often discrete and “band aid” type connections that need to be managed individually and need extensive maintenance!

Shared Services Performance Objectives - McKinsey

Let us look at a few best practices we have implemented to alleviate some of these challenges and improve the effectiveness of financial shared services towards our LeanCash™ approach

Shared services are not always deeply integrated with inbound and outbound processes

Shared Services Integrations

The key is real time (or near real time) integration across disjoined systems and platforms to deliver seamless connectivity and exchange of information. Shared services have a bunch of stakeholders and it is essential that they have seamless integration with all of them, both on the inbound and outbound sides to operate effectively. To list a few of the relevant stakeholders:

  • BU’s and organizational components they service – to collect POs/invoices/vendor and customer details/contracts – to convey communicate payment schedules, I/Co accounting entries
  • Treasury – related to payment processes and cash forecasts
  • Banks – related to transactional processes
  • Vendors and customers – to resolve disputes, update payment instructions
  • Accounting teams and organizational GL systems – accounting entries related to shared processes

Central Data Management is key to a successful shared services implementation

Shared Services - Central Database Management

Considering the volume of data that flows in and out of a centralized shared service function, it is essential to maintain a central data repository that acts as the “single source of truth”. This facilitates efficient reconciliation of transactions across platforms and eliminates differences across various organizational ledgers.

Efficient File Mapping

As multiple platforms are integrated, it is essential to back that up with efficient file mapping/conversion routines on the inbound side as well as reverse mapping on the outbound side to enable seamless exchange of information across systems by standardizing data sets from multiple systems and platforms. This almost acts like an interpreter translating data and information across systems that speak different languages, so that they all have the same understanding!

Centralized Process Hub

Shared Services - Centralized Process Hub

In a complex setup described above with multiple interfaces, it is essential that the functional shared service folks are able to run and manage the processes in a simple manner oblivious to the intricate system architecture. This can be accomplished by providing a user friendly front end/interface that works like a turnkey setup to ensure transparency across complex system connections – think of it almost like a cockpit that allows pilots to operate a plane effectively without needing to know everything in detail about the build!

Shared Services - Arthur AndersonOrganizing a financial shared services operation using these key factors can almost enable them to leverage to a large extent the benefits of serving an organization that is on a common integrated ERP like SAP or Oracle!

Geek Speak

APIs – the secret sauce for integrations

  • Given the number of APIs we’ve exposed and consumed from various systems over the past decade or so has enabled us to maintain best practices and define standards in the API world. We use open source and secure platforms like https://swagger.io/ to test APIs with various IT teams.
  • We rub some DevOps monitoring tool <Road to DevOps series> to ensure the APIs are ‘healthy’
  • Logging all API requests (in and out) with timestamps enable us to stay on top of compliance and security

Legacy Integrations

We maintain systems that are ‘old’ but stable (when was the last time you heard a security breach on an AS400 system?!) – File mappings, EDI, SWIFT, XML and other formats are essential and we know a thing or two coz we’ve seen a thing or two or as the insurance commercial will put it here — https://vimeo.com/150181996

 

 

 

 

Medullus LeanCash™ is a tried-and-tested solution that draws upon lean concepts to streamline Corporate Treasury by eliminating waste in processes and functions which helps to manage liquidity and risks in the most optimal way. 

Our products and services are geared towards making improvements in Treasury & Finance processes to bring big gains with minimal impact. The low hanging fruit is sometimes difficult to find in a large organization with myriad of processes and systems. Take the 1st step in identifying these high value/low risk improvements – get your LeanCash score, benchmark against other organizations that have obtained their score and improved them. It does not cost anything to find out where you are as compared to industry-best-practices! 

Start here

 

 


Blog post by: Tejnain Singh. Reach Tej @ tsingh@medullus.com

Tej is a seasoned treasury and finance professional with over 17 years of extensive experience across organizations like GE, Deloitte, SABIC and Valeant Pharma. He has held senior positions in treasury operations and cash management and has led multiple strategic initiatives in the areas of payment automation, treasury system implementations, business process simplification and shared financial services among many others. Tej is a Chartered Accountant from India.

Posted on

Treasury and the mobile revolution

Treasury and mobile apps

Corporates are yet to embrace mobility

These days’ mobile apps seem to be everywhere – there are apps for just about anything! However, a closer look at the mobile revolution would show that the majority of apps are geared towards P2P and B2P segments – B2B apps are few and far between and it seems that this technology is yet to catch the attention of corporates in a big way. There are some mobile options available today for use by corporate executives for business purposes – but for the most part these are either generic apps that are rolled out across multiple clients (one size fits all model!) which limits their functionality or else these are desktop apps that have been retrofitted for mobile use which makes them cumbersome and not easy to use.

Many tech pundits argue that in the not so distant future, mobile technology is expected to make PCs obsolete and redundant – this may be true, but treasury (and finance) seem to be a long way away from getting there! For this to even come close to becoming a reality in this domain, the entire ecosystem needs to start moving in this direction – key treasury and cash management products like TMS systems, FX trading platforms, etc. need to be built with mobile access as a prime design feature!

5 areas for mobile adoption in treasury & finance without big disruptions

LeanCash Mobile - TemenosDespite, the challenges addressed in the preceding paragraph, we feel there is still considerable scope in leveraging custom built mobile apps for various treasury and finance functions to streamline and make their operations Lean. Let us look at some areas where mobile solutions can be used effectively.

Approvals

There are a bunch of approvals that treasury and finance executives are required to process on a day to day basis – FX trade approvals, payment approvals, bank account administration approvals, workflow approvals, etc. In many cases these approval requirements tend to become process bottlenecks especially when senior executives are traveling. Mobile apps can greatly simplify the process by securely integrating with key finance and treasury systems and platforms to enable approvals through mobile devices.

KPIs & Dashboard

Another strong use case for mobile apps is in the area of treasury and finance executives being able to access their dashboard and key KPI’s over their mobile devices – this can be especially useful for real time reports and decision making where such solutions can empower executives to stay informed and take decisions while on the move! This can be accomplished either by integrating an already existing reporting solution with the mobile app or else developing a mobile centric reporting and BI solution (See LeanCash™ reporting solutions)

Manage Workflow

Integrated apps can allow users to manage all aspects of their workflows from mobile devices – view workflow status, take action on workflows and tasks, assign new tasks and view all reports associated with workflows. This, again can be accomplished either by integrating with an already existing workflow management and BPM solution or else developing a mobile centric or mobile friendly workflow/BPM solution (See LeanCash™ workflow and BPM solutions)

Alerts and Notifications

LeanCash Mobile Alerts & NotificationsMobile apps can also be a powerful tool for receiving real time alerts and notifications. These alerts could pertain to multiple functional areas and/or process updates – new approval requests, updated report availability, key market updates, workflow updates, etc. The mobile apps can be integrated with the key treasury and finance platforms and processes to enable seamless real time alerts and notifications. These alerts can be fully customized to suit the executive and organizational requirements – definition of who receives what alerts, level of alerts, notification options, privacy settings, etc.

eWallets/Digital Wallets

As digital wallets/e-wallets are gaining traction amongst corporate users, this is another application that can be integrated very effectively within the custom built app. Integrating eWallets with custom built mobile apps is relatively much simpler since this technology has been developed with mobile access as a key factor.

 

We expect the use of mobile apps in the finance and treasury space to continue to evolve in the coming years, but it’s still not too early to start using this technology to add substantial value to key activities – this utility is only expected to grow as the ecosystem evolves and over time more and more functions can be integrated with mobile apps.

Medullus Geek Speak

A picture is worth ….  Let us send you the Sales Order!

LeanCash Mobile Notifications

Our LeanCash™ Notification engine relies on Microsoft’s Cloud enabled APIs to deliver important messages on your palm …. Swipe Left to approve / Reject with comments!

 

LeanCash Mobile - BI at a glance

BI at a glance provides the key metrics you need on the go !

 

 

 

 

Medullus LeanCash™ is a tried-and-tested solution that draws upon lean concepts to streamline Corporate Treasury by eliminating waste in processes and functions which helps to manage liquidity and risks in the most optimal way. 

Our products and services are geared towards making improvements in Treasury & Finance processes to bring big gains with minimal impact. The low hanging fruit is sometimes difficult to find in a large organization with myriad of processes and systems. Take the 1st step in identifying these high value/low risk improvements – get your LeanCash score, benchmark against other organizations that have obtained their score and improved them. It does not cost anything to find out where you are as compared to industry-best-practices! 

Start here

 

 


Blog post by: Tejnain Singh. Reach Tej @ tsingh@medullus.com

Tej is a seasoned treasury and finance professional with over 17 years of extensive experience across organizations like GE, Deloitte, SABIC and Valeant Pharma. He has held senior positions in treasury operations and cash management and has led multiple strategic initiatives in the areas of payment automation, treasury system implementations, business process simplification and shared financial services among many others. Tej is a Chartered Accountant from India.

Posted on

Optimized (and Lean) Payment Processes

Medullus LeanCash™ payment automation solutions

The electronic payments revolution is underway!

Electronic payments have been around for over a couple of decades and almost every organization globally from Fortune 500 corporations to small mom and pop shops use electronic payments for sending and receiving business payments. Despite the exponential growth of electronic payments, US continues to remain one of the largest users of checks – demonstrating that there still exists a large potential for further consolidation! Banks are introducing new payment products that is further fueling the electronics payment footprint – the biggest and by far the most successful of these initiatives has been SEPA payments across the Eurozone – back in the US, same day ACH is a relatively new product that is slowly gaining traction as a viable alternative to ACH and wire payments.

In terms of how organizations use and make electronic payments, there is a whole spectrum of how manual or automated these processes are depending on the size and systems footprint of organizations – starting with payments made manually over bank proprietary electronic banking platforms on the one end to fully automated SWIFT enabled solutions on the other end.

LeanCash -

Payments Automation - Volante

Existing payments automation systems are mostly inefficient or under-utilized

Some level of automation around payment processes is quite common these days across organizations of different sizes – most commonly for treasury and/or A/P and A/R processes. However, a closer look at these automation processes throws up many inefficiencies and waste in terms of design, structure and application.

  • Multiple, fragmented payment processes and payment related systems
  • Lack of standardization in file formats and connection protocols – ERP, TMS and in-house systems generating different payment formats and connecting to banks in a multitude of ways
  • Multiple connections to from different components within the organization to the same banks
  • Lack of central visibility to all payments and associated processes
  • Processes based primarily on bank proprietary formats and connections – making companies very dependent on their present banking providers
  • Redundant teams managing and monitoring disparate payment related processes
  • Legacy and native systems with unsupported enhancements – making the system rigid and non-scalable
  • Using outdated file formats that create limitations on data that can be transmitted and received Vs using SWIFT XML formats like ISO XML20022 that are more scalable and flexible

Why more organizations are moving towards payment hubs to bridge the gaps

To address the inefficiencies addressed above, organizations are moving towards adopting payment hub models – payment hubs were originally used by banks to centralize their payment messaging, but are now being increasingly used by corporations similar goals.

Payments Automation - McKinseyPayment hubs act as the focal point that centralizes the receipt and transmission of all payment and financial messages in and out of the organization regardless of payment type, format or geographic location.

  • On the enterprise side it integrates with various disparate payment and cash management systems that include ERP systems, A/P systems, A/R systems and treasury workstations to receive payment files and information for transmission to banks and transmit information and data received from banks such as electronic bank statements, payment confirmations, lockbox data etc.
  • On the outbound side it connects with various banking partners globally to transmit payment files and receive electronic bank statements, lockbox data, payment confirmations/acks, rejection notifications, etc.
  • By virtue of enabling enterprise wide centralization, payment hubs are able to optimize payment processes by eliminating waste and redundancy and streamlining and standardizing payments processing across all enterprise applications, payment types and banks.

Medullus LeanCash™ payment automation solutions

As part of our LeanCash™ offering set intended to streamline treasury and finance function, we offer a full service turnkey virtual payment hub development and setup to ensure maximum optimization of your enterprise wide payment processes. Some of the features of our solution includes:

  • Seamless Integration with multiple internal systems and platforms associated with payment and cash management processes and with external providers such as banks, credit card processing vendors and other payment solutions providers – all major connection types and protocols such as FTP, AS1, AS2, AS3, AS4, HTTPS, EBICS (Euro) supported
  • File Mapping & Exchange through our “drag-n-drop” interface – supported formats include standards like EDI, XML and SWIFTNet formats including ISO XML 20022 – custom bank proprietary formats also supported. Efficient file mapping structures allow companies to combine and normalize financial messaging from across disparate systems.
  • SWIFTNet Compliant connections and protocols fully supported
  • Collaborative Implementations including coordination with banks to develop and test file formats and connections as well as working with internal IT teams to ensure compliance with policies and guidelines
  • Alerts and Notifications to control and monitor processes – rejection notifications, payment processed notification, missing bank statements, etc.
  • Inbuilt Controls and Intelligence to spot and flag evident anomalies like duplicate payments or payment files, suspicious payments, etc.
  • Reporting Module and Data Archives to keep track of historic activity and run metrics to measure performance indicators – this can be used to measure internal payment processes as well as measure performance of banks related to payment processes.
  • LeanCash™ Payment Hub Command Center – user friendly and streamlined central front end to monitor and control all enterprise wide payment processes in one place – this allows efficient management of all the connections and enables organizations to build centralized expertise to manage these processes

Check out the Geek Speak section of our blog Unleashing the full potential of Shared Services to see how we use APIs for system integrations.

To conclude, our LeanCash™ payment hub acts as a single gateway for all payment and cash management processes across the organization to increase efficiency, eliminate redundancies, improve control over funds by providing a central view of cash flows and mitigating risks associated with these processes. Also, last but not the least, using the centralized scalable payment hub model makes these processes bank-agnostic to a large degree – reducing dependency on particular banks and their processes!

 

 

 

Medullus LeanCash™ is a tried-and-tested solution that draws upon lean concepts to streamline Corporate Treasury by eliminating waste in processes and functions which helps to manage liquidity and risks in the most optimal way. 

Our products and services are geared towards making improvements in Treasury & Finance processes to bring big gains with minimal impact. The low hanging fruit is sometimes difficult to find in a large organization with myriad of processes and systems. Take the 1st step in identifying these high value/low risk improvements – get your LeanCash score, benchmark against other organizations that have obtained their score and improved them. It does not cost anything to find out where you are as compared to industry-best-practices! 

Start here

 

 


Blog post by: Tejnain Singh. Reach Tej @ tsingh@medullus.com

Tej is a seasoned treasury and finance professional with over 17 years of extensive experience across organizations like GE, Deloitte, SABIC and Valeant Pharma. He has held senior positions in treasury operations and cash management and has led multiple strategic initiatives in the areas of payment automation, treasury system implementations, business process simplification and shared financial services among many others. Tej is a Chartered Accountant from India.

Posted on

Case Study: Is your current process of requesting a Bank Guarantee as simple as ordering a pizza online?

Bank Guarantee Pizza

In one of my previous blogs, I had spoken about how Treasury departments are being forced to position themselves as internal service departments that add value to the broader organization rather than existing as black boxes within Finance to perform a set of specialized functions in relative isolation!

Background of the organization

In this blog, I will talk about how we recently helped the treasury department of a corporate client to better collaborate with and service the regional finance teams.

Some quick facts to give perspective before we dive into the solution:

  • The company had a strong global presence and various local subsidiaries were importing goods for which Letters of Credit, SBLC and Bank Guarantees frequently needed to be issued
  • The process of managing these instruments was run locally by regional finance teams, but these were against delegation of a master limit that was centrally managed by treasury
  • They were a highly leveraged company because of which Treasury kept a tight control on all credit instruments to ensure compliance with debt covenants

The problems

  • The local finance teams were often complaining that treasury’s involvement in the process was acting as a bottleneck and making the process inefficient – adversely impacting procurement and production cycles!
  • Treasury did not have an effective way of keeping track of updated statuses of these instruments – number and $ value of outstanding instruments, amounts drawn under active L/C, etc. This also posed a challenge in validating charges associated with these instruments as these were paid centrally from the treasury budget
  • The controllership team did not have a “single source of truth” for disclosure of such instruments in the disclosures for contingent liabilities.
  • The SOX auditors also expressed concerns around proper transparency in the process – since there wasn’t a seamless trail to link each individual instrument to the underlying approvals and the associated documentation.

The Solution – “I Need It”

To provide a solution for the client, we used our integrated business process management platform “I Need It”. Let’s briefly speak about the various integrated functionalities of the platform and how they were used in this situation.

Workflow Management

Workflow Management - AIIMThe first (and the most critical!) step was to design a streamlined and efficient workflow to be used to manage the requisition, approval and execution processes. A quick look at some of the value added features that the I Need It workflow functionality offers.

  • Collaborative design – we worked closely with various functional stakeholders in the process to design the structure and flow for the workflow as well as the data elements to be incorporated. Internal policies, guidelines on roles and responsibilities, approval matrices are also incorporated within the
  • Smart forms – intuitive and interactive input screens that ensure a simple and delightful user experience while ensuring and enforcing completeness and quality of input data and documents. Some of the key components include conditional logic and data validation.
  • SSO enablement – access to the workflows (and platform) was integrated with the standard Single Sign On platform being used by the client.
  • Audit Trail – each workflow is backed by a detailed log of every action along the way – which can be traced all the way to the associated records and document sets
  • Inbuilt communication channelsproviding an efficient and trackable platform for stakeholders to seek information and/or provide updates amongst each other
  • Alerts and notifications – programmable alerts and notifications to alert relevant users on new workflows, action updates, overdue workflows, etc.

Reporting database

The I Need It platform comes with an integrated reporting solution that provides visibility into various components related to the underlying processes.

  • Our client was able to run various reports around L/C, SBLC and Bank Guarantees – list of all outstanding instruments at any point of time (grouped by region, currency, bank, etc.), periodic activity metrics – # of L/C, BG issued by quarter, etc. These reports can be customized to serve different groups – treasury, controllership, technical accounting, internal audit, etc.
  • The reporting database also provides reports highlighting performance metrics for the underlying processes – average lead time for treasury approvals, end to end cycle time metrics, etc.

As a side note, if needed, our solution can also run more advanced reports, like performing quarter end marked to market valuations for these instruments using market data feeds – we had proposed this to our client in this case but this wasn’t a requirement for them!

Integrated document management system

The solution also offers a fully integrated document library that stores various documents collected and generated within the underlying processes – and each document can be linked back to the original workflow(s). Documents are well catalogued using relevant tags making it easy to search and retrieve documents as and when needed.

Collaboration tools

The I Need It solution also comes with a bunch of collaboration tools – couple of items that we implemented for our client:

  • At the end of the month, local finance managers were required to provide a confirmation on outstanding L/C, B/G, SBLC as well as provide updates on utilized/unutilized portion of their open L/C. This was accomplished by creating a submission form – this form pulled data directly from the Reporting database to display the relevant records that local finance managers would use to confirm and update details – these submissions are automatically associated with the original records that are updated.
  • Treasury is also using the platform to collect feedback from the local finance team, so they can better serve the needs of their internal customers and track/improve their processes. This is done via a feedback form provided to applicants and functional approvers at the end of each workflow where users rate their satisfaction levels on a scale of 1 to 5 – in addition once a year a survey is sent to all finance leads seeking inputs and suggestions to improve the process. Outputs from these feedback tools are meaningfully analyzed and presented by the reporting module.

Collaboration & Bank Guarantee

Smart and intuitive Front End and Mobile access

The various functionalities of the platform – workflows, approvals, reports, documents – are accessible from an easy to use standardized front end. The idea is to have a central place from where all the processes and functionalities can be accessed – convenience, transparency and a delightful user experience. In addition, this front end also acts as a Treasury portal where everyone comes for all their Treasury needs – and also a bulletin board where Treasury can publish updates or resources like currency rate charts, interest rate charts for business users to access and download!

Last, but not the least by any means – all of these features and processes can be accessed via a custom built mobile app that is extremely user friendly and as secure as using any desktop device.

Medullus Geek Speak

  • Windows Active Directory was the Identity Service Provider (IdP) and SAML 2.0 was used as security token for the SSO portion
  • This solution is designed on Microsoft stack using MVC design pattern and SQL database – the entire solution was hosted on the Amazon cloud (AWS)
  • All interactions with the database was via WebAPI which we exposed for other applications for integration purposes
  • Currently we are working on some AI algorithms to reduce the wait times (see how we leveraged AI for our LeanCash™ forecasting solution)
  • Agile development with DevOps (CICD) rubbed on it is enabling us to deliver smaller changes quickly in production – this enabled the client to get a best ROI.

iNeedIT

iNeedIt – a LeanCash™ solution for workflow management

iNeedIT™ is highly scalable and customizable

Even though the solution addressed in this blog refers to a specific implementation we did for a client around their L/C, B/G, SBLC, the I Need It platform is extremely flexible and scalable to be able to handle a host of other internal and external processes and collaboration protocols – using all the above mentioned features.

To list out a few other use cases we have implemented for other clients:

  • Bank account administration processes and records maintenance – please see my blog Integrated Bank Admin solutions
  • Cross functional processes include funding requests from business units, FX trade requests, dividends and capital contributions requiring treasury and tax approvals, etc.
  • Internal treasury processes such as payment approvals, FX trade approvals that are often handled via signed paper forms
  • External collaboration processes with parties like banks that are standard and repeatable in nature ex. Payment queries, details on unidentified transactions 

     

     

    Medullus LeanCash™ is a tried-and-tested solution that draws upon lean concepts to streamline Corporate Treasury by eliminating waste in processes and functions which helps to manage liquidity and risks in the most optimal way. 

    Our products and services are geared towards making improvements in Treasury & Finance processes to bring big gains with minimal impact. The low hanging fruit is sometimes difficult to find in a large organization with myriad of processes and systems. Take the 1st step in identifying these high value/low risk improvements – get your LeanCash score, benchmark against other organizations that have obtained their score and improved them. It does not cost anything to find out where you are as compared to industry-best-practices! 

    Start here

     

     


    Blog post by: Tejnain Singh. Reach Tej @ tsingh@medullus.com

    Tej is a seasoned treasury and finance professional with over 17 years of extensive experience across organizations like GE, Deloitte, SABIC and Valeant Pharma. He has held senior positions in treasury operations and cash management and has led multiple strategic initiatives in the areas of payment automation, treasury system implementations, business process simplification and shared financial services among many others. Tej is a Chartered Accountant from India.

Posted on

How LeanCash™ workflow solutions can streamline your processes

LeanCash - Workflow Management

Continuing with our LeanCash™ series, in this blog we will explore the inefficiencies within various internal and external collaboration processes within treasury – and how we can help streamline these using our LeanCash™ Workflow Management offering.

Problems and inefficiencies with treasury & finance process management

Treasury departments along with other corporate finance functions such as tax and financial shared services act as internal service organizations responsible for managing various processes within their functional areas on behalf of the entire organization.

We notice numerous inefficiencies in how these processes are being managed in many organizations – to mention a few:

  • Workflow Management - Industry NewsInefficient collaboration protocols – most organizations use manual modes of communication and collaboration across groups to manage these processes – which is error prone, slow and hard to keep track of as compared to an automated trackable workflow solution. To give a simple example – a business in Australia needs a corporate guarantee that has been requested by a vendor – the local finance manager emails the Treasurer – after no response for a week he follows up and the Treasurer then forwards request to his Assistant Treasurer – the AT sets up a call with the local FM to get more details around the request – a few emails and phone calls later, finally the corporate guarantee is issued in 2-3 weeks!
  • Inefficient records and controls – another key inefficiency that is commonly noticed is the lack of audit trails for such processes as well as robust records around such processes. This often becomes an issue from a SOX compliance point of view. Continuing with our example from the previous bullet – this refers to the lack of a comprehensive list of all corporate guarantees as well as a seamless association to a particular request associated with each corporate guarantee!

What is the LeanCash™ workflow management solution

Our LeanCash™ Workflow/BPM solution addresses these inefficiencies in addition to providing various other value added features.

  • Efficient workflow design – the workflow is designed in collaboration with key stakeholder as well as in line with internal approval guidelines to ensure the most efficient and compliant flow.
  • Smart forms – intuitive and interactive input screens that ensure all relevant information is collected upfront from the appropriate sources to avoid wastage through back and forth communications. Additionally, conditional logic and data validation (including ability to integrate with internal databases) options help control quality and validity of information being input – to ensure things get done “first time right”!
  • Audit Trail – each workflow is backed by a detailed log of every action along the way – which can be traced all the way to the associated records and document sets.
  • Alerts and notifications – programmable alerts and notifications to alert relevant users on new
  • workflows, action updates, overdue workflows, etc.
  • Integrated data lake and reporting – the workflows are fully integrated with an inbuilt data lake that records all data pertaining to the workflows as well as the underlying records. Robust reporting module enables variety of reporting options from the internal data set – which enables efficient storage and retrieval of relevant records as well as performance metrics related to workflows.
  • Integrated document management system – includes fully integrated document library that stores various documents collected and generated within the underlying processes – and each document can be linked back to the original workflow(s). Documents are well catalogued using relevant tags enabling efficient storage and retrieval.
  • LeanCash Workflows - PWCSmart and intuitive Front End – The various functionalities of the solution – workflows, approvals, reports, documents – are accessible from an easy to use standardized front end. This provides an efficient platform for teams to efficiently manage all their processes from one place.
  • Mobile access – all features and processes can be accessed via a custom built mobile app that is extremely user friendly and as secure as using any desktop device – ensuring efficient access to all the functionalities across devices.

This solution can be used just as effectively for managing, tracking and controlling internal functional processes in addition to cross functional and external processes. As an example, Treasury can use this solution to manage internal approval processes such as payment approval forms, FX trade authorizations, etc.

 

 

 

 

Medullus LeanCash™ is a tried-and-tested solution that draws upon lean concepts to streamline Corporate Treasury by eliminating waste in processes and functions which helps to manage liquidity and risks in the most optimal way. 

Our products and services are geared towards making improvements in Treasury & Finance processes to bring big gains with minimal impact. The low hanging fruit is sometimes difficult to find in a large organization with myriad of processes and systems. Take the 1st step in identifying these high value/low risk improvements – get your LeanCash score, benchmark against other organizations that have obtained their score and improved them. It does not cost anything to find out where you are as compared to industry-best-practices! 

Start here

 

 


Blog post by: Tejnain Singh. Reach Tej @ tsingh@medullus.com

Tej is a seasoned treasury and finance professional with over 17 years of extensive experience across organizations like GE, Deloitte, SABIC and Valeant Pharma. He has held senior positions in treasury operations and cash management and has led multiple strategic initiatives in the areas of payment automation, treasury system implementations, business process simplification and shared financial services among many others. Tej is a Chartered Accountant from India.

Posted on

“Green Workflows” & the Responsible Treasury

“Green Workflows” & the Responsible Treasury

The paper problem is not getting smaller!

With so much focus in recent years on saving our planet, there is a conscious effort by individuals and corporates to cut down on use of paper to reduce deforestation which is one of the main environmental problems. Shoppers are switching to reusable bags, newspapers are going digital, service providers are using paperless documents – the list goes on and on. However, despite the electronic revolution, we are still a long way from eliminating paper from our day to day lives in a big way – in fact, demand for paper is expected to double before 2030!

Let’s take a look at a few facts to highlight the magnitude of the issue:

  • It takes an average of 5 liters of water to produce one piece of A4 paper.
  • 93% of paper comes from trees.
  • 14% of all global wood harvest is used to make paper
  • 50% of the waste of businesses is composed of paper.
  • Every tree produces enough oxygen for 3 people to breathe.

Why is paper still a big part of organizational processes

The use of paper is ingrained within organizational processes – be it for maintaining records, recording internal approvals, documenting legal agreements, invoicing – the list is limitless. Traditional audit and forensic investigation methods have always followed the “paper trail” – basically sifting through documents to link associated records that tell the full story of a transaction or event!

Most jurisdictions have laws around retention periods for all business documents that can range from 7 to 10 years. This gave birth to a whole new industry that caters to the demand for document storage solutions – their services range from filing and cataloging documents, transporting documents from clients, storing documents in warehouses, retrieval of documents and finally securely destroying documents. Therefore, in addition to the natural resources that are expended in manufacturing the paper, many other (wasted) resources are spent in organizing, transporting, storing and destroying paper documents.

Green Workflow - global forecast

In recent years, a lot of the document storage solutions have evolved into electronic storage, but the problem with these is that the underlying documents are still paper. The idea is basically to scan paper documents and store them electronically, such that they can be retrieved later when needed. Though this saves on physical storage and makes it somewhat easier to retrieve documents, it consumes tremendous disk storage and isn’t really an ideal solution.

How can treasury and finance processes go green

The real solution lies in redesigning entire processes such that all recording and documentation is done electronically so that the need for paper can be eliminated altogether (for the most part!). Let’s discuss some of the key attributes that these electronic processes need to possess to be able to replace paper altogether.

  • Signatures – one of the main reason paper documents have been hard to replace is due to the ability for them to be signed by individuals that proves beyond a reasonable doubt their agreement, acceptance, acknowledgement or approval and is enforceable in a court of law. Similarly, digital alternatives need to be as reliable and as difficult (if not more!) to fake. Digital signatures and secure logins are popular solutions being used for this today – the security and encryption for such applications need to be robust enough for the associated records and documents to be enforceable as legally binding.
  • Audit trail – various electronic records should be linked to related documents and records and the sequence of events must be retrievable, so that any transaction can be researched or audited at a future point in time. In other words there must exist a robust electronic trail structure that can replace the need for a paper trail.
  • Secure storage and accessibility – since all electronic records are store on disk storage, there must be a system for security and access controls to reflect the sensitivity of the documents and records. In case of physical documents, regular documents might be stored in drawers, but highly sensitive documents would be store in a safe which is accessible only by a select few – an electronic records and documents system must be able to replicate a similar security structure!
  • Referenced libraries – electronic libraries must have the ability to efficiently catalog and file documents and records, such that they can be retrieved at a later point easily and quickly.

Roadblocks to going green

Most modern day electronic processing solutions do offer some or all of these features and are generally more efficient than the paper based processes, so to a large extent there is also a mindset issue that needs to be overcome before we can eliminate use of paper. In addition, there is often the upfront cost of implementing automated solutions that can act as a deterrent for many organizations – paper based processes are cheaper to get started with even though in the long run they prove much more cumbersome and resource intensive than their electronic alternatives!

Roadblocks to going green

 

How the Medullus LeanCash™ Solution gets you to a Greener Treasury

Our LeanCash™ offering “I Need It” is an integrated workflow and business process management solution geared towards corporate treasury and finance teams – it can handle internal and external processes and collaboration protocols and manages all supported processes in a totally paperless way.

  • Access controls include secure login, optional dual factor authentication, ability to integrate with internal single sign on platform of the organization and periodic forced password resets.
  • Each workflow is backed by a detailed log of every action along the way – which can be traced all the way to the associated records and document sets
  • Inbuilt robust reporting platform that that provides visibility into various components related to the underlying processes.
  • Integrated document management system that stores various documents collected and generated within the underlying processes – each document can be linked back to the original transaction or event. Documents are well catalogued using relevant tags making it easy to search and retrieve documents as and when needed.

Ideal candidates for using I Need It would be cross functional and intra-functional processes in treasury and finance such as bank administration, funding approvals, requesting bank guarantees/letters of credit, FX trade requests and many more.

Medullus Geek Speak

Technical ArXamarinchitecture of our Lean Cash solutions are nimble … they are modular and API driven. This helps user requests to be render quickly – which saves energy (and not to mention frustration!). Although we use plug and play solutions which are generic, we use our years of programming knowledge to cut the excess code that is not required.

For example – we use Xamarin for our mobility solutions – it is a part of Microsoft’s visual studio suite and it delivers forms for iOS, Android and  Windows platforms. If your user bases are iPhone users only then our LeanCash™ Team will only deliver the iOS portion of the code – easy to maintain, quicker to render and overall a greener solution !

 

We at Medullus are doing our bit to save our planet!

 

 

 

 

 

Medullus LeanCash™ is a tried-and-tested solution that draws upon lean concepts to streamline Corporate Treasury by eliminating waste in processes and functions which helps to manage liquidity and risks in the most optimal way. 

Our products and services are geared towards making improvements in Treasury & Finance processes to bring big gains with minimal impact. The low hanging fruit is sometimes difficult to find in a large organization with myriad of processes and systems. Take the 1st step in identifying these high value/low risk improvements – get your LeanCash score, benchmark against other organizations that have obtained their score and improved them. It does not cost anything to find out where you are as compared to industry-best-practices! 

Start here

 

 


Blog post by: Tejnain Singh. Reach Tej @ tsingh@medullus.com

Tej is a seasoned treasury and finance professional with over 17 years of extensive experience across organizations like GE, Deloitte, SABIC and Valeant Pharma. He has held senior positions in treasury operations and cash management and has led multiple strategic initiatives in the areas of payment automation, treasury system implementations, business process simplification and shared financial services among many others. Tej is a Chartered Accountant from India.

Posted on

Enhanced Cash Forecasting using Artificial Intelligence

Enhanced Cash Forecasting using AI

The problems of cash forecasting

The ability to accurately forecast future cash inflows and outflows has always been one of the biggest challenges for treasurers and finance professionals the world over. The situation has been further exacerbated by the tightening of capital markets in the last decade which has made cash a scarcer resource!

In this blog, we will explore how one of the hottest emerging technology in recent years – Artificial Intelligence – is being leveraged to improve this process.

Problem components of cash forecasting

There are various key drivers of cash flows, but many of the large ticket items like CAPEX, business development, debt servicing, etc. are planned well in advance and generally easier to forecast several weeks out. The biggest challenge is with operational flows – by far the biggest drivers of cash – which are often volatile and hard to forecast with any reasonable accuracy beyond a couple of weeks! This volatility and uncertainty is because more often than not, these flows are influenced by external and/or macroeconomic factors that are outside of the organization’s control!

The biggest conflict is between shared service teams that are unable to commit to firm forecasts typically beyond 4-6 weeks out and treasury departments that generally like to have an average of 3-6 months’ view on cash so they can plan capital position efficiently!

AI driven solutions for cash forecasting problems

So what role can Artificial Intelligence (AI) play in solving this puzzle?

The key element is DATA – using various data points over multiple periods to try to forecast future events – following the popular maxim “The best predictor of future behavior is … past behavior“!

Most manual or semi-automated forecasting models use limited data points and are also influenced by the sentiments of the individuals creating and using the forecasts – and with employees leaving or changing roles, a lot of the intelligence in the process is reset!

With the computing power of today’s computers, AI models are able to slice, dice and analyze large volumes of relevant data efficiently and effectively to create more effective and data driven forecasting models – and the data adds over time making models increasingly intelligent.

Let us take a quick look at some of the main data points that would be relevant in this scenario:

  • Internal data – this would include items like sales data, purchase history, committed orders, cash cycles, payment history of customers, etc.
  • Market data – this could include macroeconomic indicators, industry specific factors, currency rates, etc.
  • Stakeholder data – this could include credit ratings of key stakeholders, stock prices of critical supply chain partners

The above list is merely indicative – our AI solutions assimilate many more data points within the models!

AI driven solutions for cash forecasting problems

The various specified data points are blended together to run complicated and complex computations to factor in seasonal swings, identify and adjust any aberrations – all with an aim to provide more accurate data driven forward looking views!

Before concluding, I would like to state that AI systems are not intelligent enough (not yet at least!) to replace human intelligence, but exist to serve and assist humans in making more informed decisions based on facts.

At the end of the day, AI systems are merely computational tools and do exactly what they are programmed to do! What data points to use – how to use them – what to output – is all driven by the functional procAI and its potential to transform businesses - SAPess owners. You get to decide how intelligent your AI system is and you get to define what intelligence means for you!

Moreover, even though numbers don’t lie, a successful professional with years of experience can often see things that sometimes gets hidden or doesn’t show up in the data – computers still haven’t developed a sixth sense! Many AI models actually have inbuilt functionalities to add specific manual adjustments or override some components of the calculated logic. Bottom line is that the onus is eventually on the subject matter experts to interpret the AI results and decide how it is used!

To sum up, the use of AI on treasury and finance is still evolving, but there is a tremendous potential for its use especially in cases where data and past behavior can be analyzed to provide views on future behavior.

 

Techno Functional Speak

LeanCash AI Engine for Cash Flow

The AI algorithm is a rule-based system developed with the particular firm and industry in mind. The statement of changes in cash flow & market conditions provides another accounting model that has been used by teams to optimize cash flow. The format of this statement can be modified for decision-making purposes. For example, the changes can be grouped by changes in assets, liabilities, stockholders’ equity, cash inflows, and discretionary and nondiscretionary cash outflows. Placing the assets in these categories allows the system to make recommendations based on the information that describes that category of outflows. As with the ratios, the actions and the parameters on which the parameters are based are a function of the firm’s policies and unique needs. Accordingly, LeanCash™ Algorithms would have to be adapted to the unique situation.

 

 

 

Medullus LeanCash™ is a tried-and-tested solution that draws upon lean concepts to streamline Corporate Treasury by eliminating waste in processes and functions which helps to manage liquidity and risks in the most optimal way. 

Our products and services are geared towards making improvements in Treasury & Finance processes to bring big gains with minimal impact. The low hanging fruit is sometimes difficult to find in a large organization with myriad of processes and systems. Take the 1st step in identifying these high value/low risk improvements – get your LeanCash score, benchmark against other organizations that have obtained their score and improved them. It does not cost anything to find out where you are as compared to industry-best-practices! 

Start here

 

 


Blog post by: Tejnain Singh. Reach Tej @ tsingh@medullus.com

Tej is a seasoned treasury and finance professional with over 17 years of extensive experience across organizations like GE, Deloitte, SABIC and Valeant Pharma. He has held senior positions in treasury operations and cash management and has led multiple strategic initiatives in the areas of payment automation, treasury system implementations, business process simplification and shared financial services among many others. Tej is a Chartered Accountant from India.