Forum Discussion

powerbiexpert22's avatar
powerbiexpert22
Impactful Individual
1 year ago

report development end to end process

is below a typical process for BI report end to end development lifecycle?

 

1. Requirement Gathering ( Done by Business Analyst and Business Users with support of BI Lead)
  • KPIs and Dimensions confirmation, security , historical data etc  
2. Requirement Analysis ( Done by BI Lead and Developers)
  • Understanding of underlying Facts and Dimensions
  • Identification of reports columns mapping with database and documentation
3. Report Design (Done by BI Lead and Developers)
  • 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
5. Report Development  (Done by BI Lead and Developers)
  • Data Model, Dimensions and Measures implementaion
  • Charts and UI implementaion 
  • Implementation of report reatures, drill through and security etc
  • Unit Testing
6. UAT ( Done by Business users with support of BI Team)
  • Business Validation and Sign off
  • UAT log preparation
7. Production Deployment or Go-Live ( Business users and BI Team)
  • Workspaces, Gateways, Security and Schedule Refresh etc
  • Post deployment testing by business users with support of BI Team
8. Hyper Care (BI Team)
  • Support of reporting issues after Go Live 

2 Replies

  • Hi powerbiexpert22 

    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_g's avatar
    avishek_g
    Frequent 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: