Categories : All, Web & Desktop Application
The website is the Data Governance intranet portal. Data Governance is the practice of bringing clarity around data and ensuring that the right roles and responsibilities are captured and enforced. The Data Governance Portal website is the central tool supporting the data governance department. The core of the portal is the catalogue that holds those data items that have been brought under governance. The Portal allows all involved to search the catalogue and browse the information contained in terms of definitions, DQ standards and the associated data roles and responsibilities.The Data Governance Portal also supports the department in processing changes to data in a controlled and transparent manner.
Being a centralized data governance intranet portal, there are a few key considerations such as scalability, Persistence, robustness and transactions ACID property.
Data governance portal is centric to Catalogues. The data governance department aims to provide visibility around what data is being governed by maintaining and publishing a data governance catalogue. The catalogue will list all data items under governance, along with their associated meta- information. For each data set under governance, a number of information elements will be captured. Some of the information is mandatory, meaning that it must be captured in order for the data item to be brought under governance; other information might be optional or only be captured at a later stage.
For each catalogue item, there are components, governance roles, quality measures, access rights, governance type, quality reports, documents and privacy defined. For each catalogue, there are components defined, which actually defines the structure of the catalogue items, and based on that data will be stored for those Catalogue items. Components can be defined as primary components, mandatory components or normal components. Components of a catalogue item may create relationship with other catalogue components. Governance role can be defined across catalogue item as well as across catalogue item components.
Members can view or download data from the portal, based on their need. Members can subscribe to public catalogue items as an email or system. Subscribing parties get update of new changes or addition of data into catalogue item based on the type of subscription.
Practice of bringing clarity around data and ensuring that the right roles and responsibilities are captured and enforced. Also, processing changes to the data in a controlled and transparent manner was a challenge.
Scalability is a key consideration. One needs to envisage the number of catalogue items to grow to a thousand items across many different versions. More importantly the portal is likely to evolve into a data HUB with automated processes around sourcing (intake), transforming and distributing data.
Creating versions and reverting version is a key challenge of the project. All operations on catalogue are carried out on WC of the catalogue; once finalized, those changes to be frizzed and a new version can be created into the system. At any point of time, if needed, WC can be reverted to the latest version of the catalogue.
System should be easily configurable for different languages so there should be control to update the site labels and static contents in desired language. Please note that multi-lingual support here doesn’t mean that user will be able to switch to different languages. It will only be deployed for one particular language.
Ensuring more complex relation between the data and its consistency. Each entity or information is being used at various places and in conjunction with other information. Showing most relevant information at various places by clear way of presentation is the main challenge as almost all information is similar to the different entities.
|PHP (Server-side Language)||A suitable managed code development environment for handling the extensive project.|
|Red hat Linux||Sturdy and stable operating system with high level functionalities for online development.|
|MySQL Engine||Versatile, low-maintenance database management system. Cross-platform compatible database component of the LAMP platform.|
|Microsoft Visio||Integrated tool best suited for modular architecture and iterative development of software.|
|Subversion (SVN)||Ideal application providing stratified storage and back up of code files.|
|Symfony Framework||Symfony is a full-stack framework, a library of cohesive classes written in PHP.|
|Quality Assurance Testers||1|
The design approach was built around PHP 5 and MySQL SERVER 5 due to the social networking nature of the website. Modules like User Profiles, company profile, offering, requests,challenge, events, fund and circle were developed in PHP such that they can be executed directly from the UI layer. In order to most effectively access the database in an object-oriented context, an interface translating the object logic to the relational logic was used to communicate with the relational databases in an object-oriented manner. An intermediary abstraction layer was created for accessing data from the database. Triggers were used only for complex update and deletion of data from multiple tables and were entirely avoided with conditional syntax to ensure smooth performance of the website. The UI layer was kept free of any business logic with images, applications and data being called from their respective servers. Web usability guidelines were strictly followed during development and the interface was made easily navigable through judicious use of AJAX, CSS and HTML controls. The site was developed and fully functional within a span of 3 months.