Extending SuccessFactors using MDF – developing the Asset Management System
SuccessFactors Metadata Framework (MDF)
SuccessFactors Metadata Framework (MDF) – is the new and upcoming Application Development Platform at SuccessFactors. Internally a number of SuccessFactors Applications like Employee Central, Time Off, and Position Management have been built on MDF. It has also been made available to external Customers and Partners who can use it to build their Customer Extensions.
In this blog we would like to share our experiences of building a sample application called “Asset Management System” through MDF. It should be noted that we didn’t have any prior knowledge of MDF before developing this application.
Asset Mangement System – Application Overview
Tracking and managing company assets (e.g. Laptops , Mobile etc) is a business process that is often done by IT departments using separate systems outside of core HCM. The challenge is that HR often has no visibility to asset management or has to have separate integrations built to the system with the end users having separate log-ins and user experiences.
Through this App we showcase how the SuccessFactors MDF can be used to build an asset management application within the core HCM solution without the support of IT, expensive integrations and give the all users a consistent user experience governed by flexible business rules.
Broad use case
- IT admin procures assets from the vendor
- Manager / Employee needs to fill up the Asset Request Form
- Asset Request needs to be approved by Manager
- IT admin fulfills the Asset Request by issuing from stock available
Leveraging SuccessFactors Metadata Framework (MDF) to build application extensions
MDF offers solutions for all the three tiers – Data Model, Business Logic, UI that make up an application extension.
- Using MDF we were able to quickly build the entities, entity relationships – the entire data model that was required for our Asset Management System
- MDF has an easy to use UI that allows us to define objects, individual fields, field data types, associations
- We do not have to map the entities to a physical data table any more. No reason to write a SQL Stored procedure or SQL query. MDF manages all of that for internally so all that we need to do is configure and define our objects. So we can define an entity and right the next minute start creating records for that entity
- Creating entity relationships is also pretty easy. Also the data model is extensible. Hence we could easily build and extend these relationships as you go
- Business Logic : Using MDF we could easily define the relevant logic, business validations, business processes through the Rules Engine and Workflow – including rules with multiple expressions
- Role Based Permissions (RBP) and Security
- Leveraging MDF and the Role Based Permissions (RBP) framework ,which is part of MDF ,we were easily able to achieve the required security and role permissions for the Asset Management application
- We also needed Approval Processes to be incorporated into the Asset Management app e.g. approval required from concerned manager for asset request . This was easily achieved using the MDF Workflow , which is completely configurable
- To provide the user interface(UI) for our Asset Management system -we could achieve it using the cool and simple Configurable UI. We could easily configure our UI Pages to display all the required information
- The Configurable UI is a simple to use UI Designer that let us drag and drop fields, arrange relevant fields together, define a cool UI layout. It allowed us to map the UI Controls to the entity fields without a single line of code
Highlights: key benefits from MDF in Asset Management System Application
We would like to highlight the following Key Benefits from developing Applications using MDF.
- Control – Configuration vs Code. No need to engage technical IT teams or vendors. HR Admins can build extensions themselves
- Speed & Quality – Savings in time, effort & money because through MDF the team can bypass the application development cycle. No technical testing required. Only functional testing needed
- Consistency in look and feel and behaviors since MDF is the same platform used by SuccessFactors internally for application development as well as provided to customers / partners for Customer Extensions
- Simplicity – Ease of maintenance. HR Admins can change their extensions to keep up with their changing business processes and use cases
- Future Proof – Incremental updates to the platform would not disrupt customer extensions
In a matter of 10 days the entire application – Asset Management System was built from scratch by a team of 3 members, and demoed at SAP flagship event of SAPPHIRE. All the team needed was a 1 day training on MDF and reference materials – MDF implementation guide and other online resources.
If this was developed with custom development, without MDF, it would have taken approximately 6 weeks (assuming that the team was new to this development environment). As such, the development time was reduced by 2 weeks using MDF, which is a significant reduction of about 67%.
- MDF is a complete application development platform that allowed us to build application extensions end to end, right from defining the objects to implementing the business logic to creating the UIs
- MDF is very intuitive and does not require any coding skills for development. As such, it is a good development platform whose time has come
- Any person with an initial MDF training and the MDF documentation ( like MDF Implementation Guide etc) can get on board and start building apps using MDF
- In conclusion MDF is a perfect platform to easily build and extend SuccessFactors applications