Forum Discussion
report development end to end process
is below a typical process for BI report end to end development lifecycle?
- KPIs and Dimensions confirmation, security , historical data etc
- Understanding of underlying Facts and Dimensions
- Identification of reports columns mapping with database and documentation
- Wireframes creation
- Technical Design Document
4. Environment Set up ( Done by Power BI Admin)
- Worskpace and Pipeline set up of DEV, UAT and Prod, access control etc
- Gateway setup
- Data Model, Dimensions and Measures implementaion
- Charts and UI implementaion
- Implementation of report reatures, drill through and security etc
- Unit Testing
- Business Validation and Sign off
- UAT log preparation
- Workspaces, Gateways, Security and Schedule Refresh etc
- Post deployment testing by business users with support of BI Team
- Support of reporting issues after Go Live
2 Replies
- Ritaf1983Super User
Yes, the process you've outlined is quite typical for the **end-to-end development lifecycle of a BI report**. Here's an overview of each stage and its alignment with common practices:
1. **Requirement Gathering**
- **Involves:** Business Analysts, Business Users, BI Lead
- **Key Activities:** Confirming KPIs, dimensions, security requirements, and historical data needs. This is essential for setting clear goals for the report.
- **Best Practices:** Ensure all stakeholders are aligned, with well-defined metrics and data sources.2. **Requirement Analysis**
- **Involves:** BI Lead, Developers
- **Key Activities:** Understanding the underlying facts and dimensions, mapping report columns to the database, and documenting the structure. This step ensures a clear alignment between the data model and business requirements.
- **Best Practices:** Collaborate with data engineers and database administrators to ensure correct data structures are in place.3. **Report Design**
- **Involves:** BI Lead, Developers
- **Key Activities:** Creating wireframes, developing the Technical Design Document (TDD), and detailing how the report should be structured visually and technically.
- **Best Practices:** Use wireframes to get early buy-in from business stakeholders before development begins.4. **Environment Setup**
- **Involves:** Power BI Admin
- **Key Activities:** Setting up workspaces and pipelines for DEV, UAT, and Prod environments, configuring gateways, and controlling access.
- **Best Practices:** Ensure environments are well-defined, with roles and permissions managed for security and governance.5. **Report Development**
- **Involves:** BI Lead, Developers
- **Key Activities:** Building the data model (facts and dimensions), implementing measures, charts, and other report features, configuring drill-through, row-level security (RLS), and conducting unit testing.
- **Best Practices:** Apply best practices for data modeling (e.g., star schema), optimize DAX for performance, and build intuitive UI/UX elements for the report.6. **UAT (User Acceptance Testing)**
- **Involves:** Business Users, BI Team
- **Key Activities:** Business validation and sign-off, UAT log preparation. This step ensures the business requirements are met and validated by end users.
- **Best Practices:** Document all issues and feedback from business users and perform iterative improvements based on testing results.7. **Production Deployment or Go-Live**
- **Involves:** Business Users, BI Team
- **Key Activities:** Deploying the report to production, configuring workspaces, gateways, security, and schedule refresh settings. Post-deployment testing ensures the report functions as expected in the live environment.
- **Best Practices:** Carefully plan deployment to minimize downtime and ensure smooth transitions, often starting with a soft launch.8. **Hyper Care**
- **Involves:** BI Team
- **Key Activities:** Offering support for any reporting issues that arise after go-live. Monitoring the performance and accuracy of reports during this phase helps ensure long-term success.
- **Best Practices:** Track usage metrics and user feedback to improve the report post-deployment and address any unforeseen issues.### Observations:
- The lifecycle you provided covers the essential steps.
- Some organizations may integrate additional steps, such as **Data Validation** and **Performance Tuning** at different stages.
- The involvement of specific roles (e.g., Business Analyst, BI Lead, Admins, Developers, Business Users) reflects best practices for a well-coordinated development process.If my answer was helpful please give me a Kudos and accept as a Solution.
- avishek_gFrequent Visitor
Hello Your process flow is correct. Below are also some of the other points I want to highlight:
The development lifecycle is divided into several stages to ensure thorough planning, development, and deployment:
- Requirement Elicitation Workshop: Gather initial requirements from stakeholders.
- Requirement Analysis and Documentation: Analyze and document requirements, followed by data profiling and sign-off.
- Wireframe Creation: Develop low-fidelity visual representations of the solution.
- Development: Build the Minimum Viable Product (MVP) and iterate based on feedback.
- Deployment: Finalize and deploy the product after thorough testing.
Following activites enable the infrastructure for starting and continuing with the development:
1. Infrastructure Setup
Power BI Workspace Creation:
workspace creation with specific details such as workspace names and user permissions.
MS Teams and SharePoint:
Create an MS Teams group for internal stakeholders and set up a structured folder system for requirement documentation, development documentation, data sources, and PBIX archives.
Data Source Service Accounts:
Request read-only access to Data Warehouse and other data sources and set up Power BI gateways for any on-prem servers used as a source.
Power Automate/App Credentials:
Develop workflows applicable for data refresh if Power BI's native scheduling is not suitable for the desired refresh cadance.
Set up Azure DevOps/GitHub Repository:
Set up Azure DevOps or GitHub repository to be used for version controlling and cloning them them in the respective developers' local dirctories.
Set-up Azure DevOps/Jira Board for Project Tracking:
Setting up a Canban or a Scrum board for daily project activity tracking.
2. Agile Development Cycle
The framework follows an agile development cycle, emphasizing iterative development, continuous feedback, and regular updates. Key components include:
- Sprint Backlog: Maintain a backlog of tasks and features for each sprint.
- Business Specifications and Development Documentation: Document business requirements and development processes.
- Testing and Feedback: Conduct regular testing and incorporate user feedback.
3. Table Naming Conventions
To maintain consistency and clarity, the framework specifies detailed naming conventions for tables and measures:
- Staging Tables: Prefix with STAGING_ followed by the table content and source abbreviation.
- Fact and Dimension Tables: Use FACT_ and DIM_ prefixes for fact and dimension tables, respectively.
- Calculated Tables: Prefix with CT_ followed by the table content.
- Measures: Use descriptive names indicating the KPI, calculation, and usage.
4. Linting Standards
The framework enforces strict linting standards for writing DAX expressions:
- Naming Conventions: Follow a consistent naming pattern for measures and variables.
- Comments and Annotations: Include relevant comments and break down nested DAX into readable lines.
- Folder Structure: Organize measures into appropriate folders within measure tables.
5. Data Model and Design Standards
- Each KPI or functionality should have its own ER diagram, illustrating the flow of filter context.
- The design template and color palette adhere to corporate standards, ensuring a consistent and professional look.
6. Documentation
Comprehensive documentation is crucial for maintaining clarity and facilitating future updates. Key documents include:
- Requirement Elicitation Document: Captures initial requirements and is signed off before development.
- Data Profiling Document: Details the schema, keys, granularity, and other data characteristics.
- Wireframe: Provides a visual representation of the solution.
- Product and Sprint Backlog: Lists development tasks and features.
- Data Ingestion Document: Describes the data ingestion strategy.
- User Guides: Provide instructions for using the product.
- Maintanence Document: Documenting steps for activities to be continued during product's lifetime such as adding, removing users etc.
- Test Scenarios and Results: Document test cases and outcomes.
Specimen of Requirement Elicitaiton Document:
Specimen of Data Profile Doc: