Full Sail Partners Blog | Peter Nuffer

Posts by Peter Nuffer:

7 Fundamentals for Success When Approaching Software Customization

Posted by Peter Nuffer on May 23, 2024

05-23-24 7 Fundamentals for Success with Software Customization - Banner

When considering an ERP system, a key challenge is ensuring that the chosen product not only supports your existing business processes but also offers enough extensibility to adapt to your evolving needs. Deltek Vantagepoint's open architecture provides a solution to this challenge by allowing you to effortlessly add fields to existing information sets in the native Hubs or create unique sets of records through User Defined Hubs with just a click of a button.

Moreover, the RESTful API offers easy access points for integration with other systems, while the consistency of the database design ensures that changes are made with stability in mind. Furthermore, the ability to schedule or trigger actions as simple as a column change or email alert, or as advanced as a stored procedure to manipulate data locally or webhook to an external application's webservice enabled platform, are all available within the Deltek Workflow engine.

With all the potential that Deltek Vantagepoint unlocks, when it comes to extending functionality through customized aspects, it's essential to build your project on a solid foundation for success. There are seven critical elements for approaching software customization to maximize your Deltek Vantagepoint system. Let’s delve into them here.

#1 Determine Whether There is a Need for Customization

It's the first thing to ask - do we really need this, or even better, is there a way to accomplish what we need natively in the Deltek Vantagepoint environment? Working with your Full Sail Partners consultant will help identify all the possibilities and leverage Deltek's existing features to their fullest potential.

#2 Gather Key Stakeholders

Making a software customization change for your business needs can often feel like venturing into the unknown. Your key project stakeholders are your ultimate end users – identify, cultivate, and leverage their needs and expectations. Identifying priorities early on enables your development team to create an actionable plan that has the most impact on the organization.

#3 Assign a Project Owner

Identifying a primary project owner is crucial for guiding your project to success. Be a “Leader of Change” in your organization by appointing the right captain to steer your ship on the correct course. The project owner acts as a representative for the overall stakeholders, providing visibility into day-to-day developments. Increased visibility helps identify and solve impediments quickly and fosters understanding between developers and stakeholders.

#4 Document Requirements

For many software customization projects, subject matter experts may not fully understand how extending the functionality of your Deltek system can benefit them, while your development and technology team needs to know what to deliver. Overcoming the technology-subject matter communications gap is essential. User stories complement business analysis techniques, making it easier to identify project requirements without adding extra effort. Focus on stakeholder requirements, needs, and goals for the solution, avoiding the trap of defining technical specifications.

#5 Define a Minimally Viable Product (MVP)

Identify the features you must have to see a return on investment. List out the must-haves from your requirements gathering and user stories to establish what is necessary to get organizational buy-in to the solution. Don’t be afraid to rough things up a bit – your end users won’t hesitate to critique the new system. Think outside the box and approach your solution from every possible angle. End users do unpredictable things, so it’s essential to anticipate their needs.

#6 Get to Work Stage Testing

Before releasing development efforts, your software customization should undergo a thorough testing process to ensure it works as intended. There are four main stages of testing: unit testing, integration testing, system testing, and acceptance testing. Keeping key stakeholders active and engaged during testing is crucial for detecting and fixing bugs, resulting in higher-quality software. Allow for internal testing to identify bugs and system flaws as early as possible from real-world usage.

#7 Plan the Release and Set Testing Guidelines

A successful software customization project requires careful planning for the release. Define a clear roadmap that outlines the timeline, milestones, and dependencies for the deployment of the customized solution. Ensure that all stakeholders are informed about the release plan and understand their roles and responsibilities. Regularly communicate progress updates and address any concerns to maintain alignment and momentum toward the release date.

Squeeze More Functionality out of Your Deltek Vantagepoint System

Now that you have reviewed the seven critical elements for approaching software customization to maximize your Deltek Vantagepoint system, are you ready to proceed? Full Sail Partners’ consultants are available to evaluate and discuss your needs. We can leverage our expertise in Blackbox Connector and our pre-built custom solutions to help you achieve your goals. Let us bridge the gap between what Deltek Vantagepoint offers and what you want your system to do.

 

New call-to-action

 

Overcoming Data Synchronization Challenges with APIs: A Guide for Professional Services Firms

Posted by Peter Nuffer on May 11, 2023

05-04-23 Overcoming Data Synchronization Challenges with APIs_Banner

In today's fast-paced business environment, organizations such as professional services firms rely on data synchronization between systems to ensure consistency and accuracy across different departments and teams. Getting this data from one system to another will require the use of an API. In this blog, we will explore the basics of APIs and how they play a crucial role in connecting systems for seamless data exchange.  

Here, also, we will discuss common pitfalls that organizations like professional services firms may face during the synchronization process. These include data mapping errors, lack of standardization, security concerns, and network reliability issues. So, let's dive into the world of APIs and learn how they can revolutionize your organization's data synchronization process!  

Why Synchronize Systems? 

Well, organizations such as professional services firms synchronize data between systems to ensure that the same data is available in multiple locations or systems. This can provide several benefits, including: 

  • Improved data accuracy: Synchronizing data between systems helps ensure that data is consistent and up to date across all systems. This can reduce errors and improve overall data accuracy. 
  • Improved efficiency: When data is synchronized between systems, it can reduce the amount of manual data entry required. This can save time and improve overall efficiency. 
  • Better decision-making: Synchronized data can help ensure that decision-makers have access to the most accurate and up-to-date information across all systems. This can improve the quality of decision-making and lead to better outcomes.
  • Better collaboration: When data is synchronized between systems, it can improve collaboration between teams or departments. This can help ensure that everyone has access to the same information and reduce misunderstandings or conflicts that can arise from using different data.
  • Data backup and recovery: Synchronizing data between systems can also help ensure that data is backed up and can be recovered in the event of a system failure or disaster. This can help organizations avoid data loss and minimize downtime. 

What is an API?  

This acronym that has been tossed around stands for Application Programming Interface. It is a set of protocols, routines, and tools for building software applications. An API specifies how software components should interact with each other, allowing different systems to communicate and exchange data seamlessly. In the realm of intersystem connectivity, an API functions like a door into an application for programming to perform automated routines.  

What are Endpoints and Methods?  

Let’s break down APIs even further: 

API Endpoints 

An API endpoint is a unique URL where a client can access a specific resource or perform a specific action within an API. In other words, it is the location where an API can be accessed over the internet. Endpoints are defined by the API provider and are usually documented for developers to know how to interact with the API. For example, if an API provides access to a list of products, the endpoint might be something like https://api.example.com/products. 

When an application/client sends a request to an endpoint, the API will process the request and send back a response containing the requested data or action. The response will usually be in a specific data format, such as JSON or XML, which the client can then process and use in their application. 

API endpoints are an essential part of building a RESTful API (Representational State Transfer), which is a common architecture style for building web APIs. They provide a clear and consistent way for clients to interact with an API and perform actions on specific resources. 

API Methods 

API methods, also known as HTTP methods or verbs, are the different types of requests that can be made to an API endpoint. Each method represents a different type of action that can be performed on a resource. The most common API methods are: 

  • GET: retrieves data from an API endpoint. This is the most common API method and is used to retrieve data like user profiles, product listings, and other resources. 
  • POST: submits data to an API endpoint to create or update a resource. This method is used to create new resources or update existing ones, like submitting a form or creating a new blog post. 
  • PUT: updates an existing resource with new data. This method is used to update an existing resource, like updating a user's profile information. 
  • DELETE: deletes a resource from an API endpoint. This method is used to delete a resource, like deleting a user account. 
  • PATCH: updates part of an existing resource with new data. This method is used to update a specific part of a resource, like changing a user's email address. 

API methods are typically used in conjunction with API endpoints to perform specific actions on resources. The appropriate method to use will depend on the type of action being performed and the resource being accessed. 

Revolutionize Data Synchronization with APIs 

With this quick introduction, you should hopefully now understand how APIs can revolutionize your organization's data synchronization process. Scoping an API integration project between any two systems requires careful planning, clear communication, and a focus on delivering business value. By following these best practices, organizations like professional services firms can increase the likelihood of a successful integration project and achieve their desired outcomes.  

 

New call-to-action

What’s New with the Blackbox Connector

Posted by Peter Nuffer on July 10, 2019

Blackbox Connector For several years, Full Sail Partners has offered a variety of Blackbox Connectors to integrate Deltek Vision and Vantagepoint with many different 3rd party software packages. There are solutions for marketing/business development, finance, project management and leadership. Depending upon their specific needs, our Blackbox Connectors have been able to help firms save much time and money. Now with advancements in our technology, we can provide even more benefit to our clients. Let’s check out what has happened with the Blackbox Connector to make it even better.

In the Beginning

The first version of the Blackbox Connector necessitated facilitating structured point to point connectors with rigid workflows for operations that could not be modified if requirements fell outside of the predefined workflow steps. Changes were difficult and required developers to rewrite code on an instance by instance basis making customizations expensive for clients. Although the benefits of the Blackbox Connectors were worth the effort to clients, extending functionality or changing the manner in which data was transferred and specific actions in any given step was not as simple as we would have liked.

New Advancements in the Blackbox Connector

Version two (V2) has been crafted as a working tool set to allow developers to work with customers and their user story to rapidly build customer connections and workflows that meet the specifications of the individual organization’s requirements. Let’s say for example, connecting Deltek Vision and Concur, a client wishes to have additional steps taken to populate other list objects, or that in a Constant Contact campaign, a client would like to include additional customized data points held in custom grids or fields to facilitate the population routines of information in Constant Contact from Deltek Vision or in Deltek Vision from Constant Contact. The updated platform accommodates for customized mapping, transformation and translation so that data can flow between systems seamlessly and natively in near real-time.

Continued Benefit from Using a Blackbox Connector

V2 of the Blackbox Connector opens the doorway to enterprise class customizations to existing connectors as well as the development of new connectors. We can now quickly respond to changes to Deltek, for example, the upgraded Vision product, Vantagepoint, with painless transitions and minimized service interruption. Furthermore, as new versions of products become available, V2 will easily enable us to provide clients with whatever capabilities they desire keeping them running efficiently and successfully.

New Call-to-action

Deltek Vision Customization: Knowing the Right Questions to Ask

Posted by Peter Nuffer on December 14, 2012

When a request for a custom solution is received, be it a report, workflow, or external data automation, many clients are surprised the first items we review are the standard functions available in the particular system they are looking to customize.  “Are you trying to talk us out of having you perform the programming work?” I had one client ask me incredulously, after I had shown her a way to accomplish getting the information she had wanted in a custom report within the native Vision Reporting system. 

My response is always the same.  We would love to work with your firm on a custom initiative; however our top priority as your Consultant is to ensure that you receive the best value for any work we perform.  There are times where custom programming is going to be the best path forward, but if we can accomplish the same (or relatively the same) results natively, in less time – you’re going to be happier as our client, and we may have an opportunity to work with you on a customization effort that will truly be valuable for your organization in the future.  As your consultant, we are ultimately advocates and partners in helping you be successful and getting the most out of your system. 

Sometimes the native functionality is not quite enough for an organization and so customization is the right step to make. In some circumstances, it’s natural to start to look at custom programming to help overcome those hurdles. Those might include:

  • Cultural requirements in the organization to have data represented a certain way
  • Manual processes require a tremendous amount of repetitive effort
  • It takes two or more reports to get one set of information the organization requires
  • Additional systems that are used in the organization may require a duplication of effort
  • Information is stored in house and in the cloud, and you wish to simplify the effort of keeping these separate silos of data up to date
  • Aesthetics of a particular report or information set may not match with the firms brand or be overly complex for the information needed 

checkbox, Deltek Vision CustomizationWhen evaluating if engaging a consultant on a custom programming effort makes sense for your firm, here are some key questions to ask your internal team:

  • Have we identified the motivating factors for requiring the custom programming effort?  
  • How much time is spent manually today to get our desired result?
  • How much of this time will be saved by incorporating the custom programming?
  • Have we explored the native Vision system capabilities and found we cannot reproduce what we need?
  • Have we considered how close we can get using the native capabilities in Vision and can we operate within those parameters, or is this a definitive organization need?

As you embark on asking a colleague or consultant to customize your system, here are some questions to ask prior to having them moving forward:

  • Do you have advanced knowledge of Transact SQL?
  • Have you worked with the structure of the Vision database and functionality of the Vision application?  (I can’t emphasize this point enough!)
  • In developing this report, will we be able to reconcile the custom work to native Vision reports? (Whether through a single report or a combination of multiple reports)
  • Is there a way to already accomplish something similar with the native functionality of Vision?
  • Do you have experience writing web services for Deltek Vision and <Insert Your Cloud Application Here>?
  • I have an example of what I’m looking for, do you see any issues with providing it in this format or with this information and do you have any suggestions for how we may be able to do this more effectively.  

Our library of custom solutions continues to grow every day. Some of these solutions can be purchased at a flat fee and utilized as is or further customized.  This is a great way to minimize costs and get results quickly.  We welcome you to reach out and find out if something similar has already been created. We are committed to helping you find the right solution to fit your unique needs.

Deltek Vision Timesheet Customization Solution

Latest Posts