Skip to content

IBM Business Intelligence (BI) Analyst Professional Certificate Capstone Project

License

Notifications You must be signed in to change notification settings

galafis/ibm-business-intelligence-capstone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Ibm Business Intelligence Capstone

IBM Business Intelligence (BI) Analyst Professional Certificate Capstone Project

Python NumPy Pandas Plotly scikit--learn Streamlit License

English | PortuguΓͺs


English

🎯 Overview

Ibm Business Intelligence Capstone is a production-grade Python application complemented by CSS, HTML, SQL that showcases modern software engineering practices including clean architecture, comprehensive testing, containerized deployment, and CI/CD readiness.

The codebase comprises 1,490 lines of source code organized across 15 modules, following industry best practices for maintainability, scalability, and code quality.

✨ Key Features

  • πŸ—οΈ Object-Oriented: 6 core classes with clean architecture
  • πŸ“ Clean Architecture: Modular design with clear separation of concerns
  • πŸ§ͺ Test Coverage: Unit and integration tests for reliability
  • πŸ“š Documentation: Comprehensive inline documentation and examples
  • πŸ”§ Configuration: Environment-based configuration management

πŸ—οΈ Architecture

graph LR
    subgraph Input["πŸ“₯ Input"]
        A[Raw Data]
        B[Feature Config]
    end
    
    subgraph Pipeline["πŸ”¬ ML Pipeline"]
        C[Preprocessing]
        D[Feature Engineering]
        E[Model Training]
        F[Evaluation]
    end
    
    subgraph Output["πŸ“€ Output"]
        G[Trained Models]
        H[Metrics & Reports]
        I[Predictions]
    end
    
    A --> C --> D --> E --> F
    B --> D
    F --> G
    F --> H
    G --> I
    
    style Input fill:#e1f5fe
    style Pipeline fill:#f3e5f5
    style Output fill:#e8f5e9
Loading
classDiagram
    class OLAPCubeManager
    class ExecutiveReportGenerator
    class KPIMonitor
    class DataExtractor
    class BusinessIntelligencePlatform
    OLAPCubeManager --> OLAPCubeManager : uses
    OLAPCubeManager --> ExecutiveReportGenerator : uses
    OLAPCubeManager --> KPIMonitor : uses
Loading

πŸš€ Quick Start

Prerequisites

  • Python 3.12+
  • pip (Python package manager)

Installation

# Clone the repository
git clone https://github.com/galafis/ibm-business-intelligence-capstone.git
cd ibm-business-intelligence-capstone

# Create and activate virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

Running

# Run the application
python src/main.py

πŸ§ͺ Testing

# Run all tests
pytest

# Run with coverage report
pytest --cov --cov-report=html

# Run specific test module
pytest tests/test_main.py -v

# Run with detailed output
pytest -v --tb=short

πŸ“ Project Structure

ibm-business-intelligence-capstone/
β”œβ”€β”€ cognos_models/
β”œβ”€β”€ docs/          # Documentation
β”‚   β”œβ”€β”€ api_documentation.md
β”‚   β”œβ”€β”€ bi_architecture_guide.md
β”‚   β”œβ”€β”€ dashboard_design_guide.md
β”‚   β”œβ”€β”€ etl_best_practices.md
β”‚   └── user_guide.md
β”œβ”€β”€ powerbi_reports/
β”‚   └── financial_dashboard.pbix.txt
β”œβ”€β”€ sql/
β”‚   β”œβ”€β”€ datawarehouse/
β”‚   β”‚   β”œβ”€β”€ create_dimensions.sql
β”‚   β”‚   └── create_facts.sql
β”‚   └── create_datawarehouse.sql
β”œβ”€β”€ src/          # Source code
β”‚   β”œβ”€β”€ etl/
β”‚   β”‚   β”œβ”€β”€ extraction.py
β”‚   β”‚   └── run_etl_pipeline.py
β”‚   β”œβ”€β”€ kpi/
β”‚   β”‚   └── kpi_monitor.py
β”‚   β”œβ”€β”€ olap/
β”‚   β”‚   └── refresh_cubes.py
β”‚   β”œβ”€β”€ reporting/
β”‚   β”‚   └── generate_executive_reports.py
β”‚   β”œβ”€β”€ bi_platform.py
β”‚   └── main_platform.py
β”œβ”€β”€ tableau_workbooks/
β”œβ”€β”€ tests/         # Test suite
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ performance_test.py
β”‚   └── test_platform.py
β”œβ”€β”€ LICENSE
β”œβ”€β”€ README.md
└── requirements.txt

πŸ› οΈ Tech Stack

Technology Description Role
Python Core Language Primary
NumPy Numerical computing Framework
Pandas Data manipulation library Framework
Plotly Interactive visualization Framework
scikit-learn Machine learning library Framework
Streamlit Data app framework Framework
SQL 3 files Supporting
HTML 1 files Supporting
CSS 1 files Supporting

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ‘€ Author

Gabriel Demetrios Lafis


PortuguΓͺs

🎯 Visão Geral

Ibm Business Intelligence Capstone Γ© uma aplicaΓ§Γ£o Python de nΓ­vel profissional, complementada por CSS, HTML, SQL que demonstra prΓ‘ticas modernas de engenharia de software, incluindo arquitetura limpa, testes abrangentes, implantaΓ§Γ£o containerizada e prontidΓ£o para CI/CD.

A base de cΓ³digo compreende 1,490 linhas de cΓ³digo-fonte organizadas em 15 mΓ³dulos, seguindo as melhores prΓ‘ticas do setor para manutenibilidade, escalabilidade e qualidade de cΓ³digo.

✨ Funcionalidades Principais

  • πŸ—οΈ Object-Oriented: 6 core classes with clean architecture
  • πŸ“ Clean Architecture: Modular design with clear separation of concerns
  • πŸ§ͺ Test Coverage: Unit and integration tests for reliability
  • πŸ“š Documentation: Comprehensive inline documentation and examples
  • πŸ”§ Configuration: Environment-based configuration management

πŸ—οΈ Arquitetura

graph LR
    subgraph Input["πŸ“₯ Input"]
        A[Raw Data]
        B[Feature Config]
    end
    
    subgraph Pipeline["πŸ”¬ ML Pipeline"]
        C[Preprocessing]
        D[Feature Engineering]
        E[Model Training]
        F[Evaluation]
    end
    
    subgraph Output["πŸ“€ Output"]
        G[Trained Models]
        H[Metrics & Reports]
        I[Predictions]
    end
    
    A --> C --> D --> E --> F
    B --> D
    F --> G
    F --> H
    G --> I
    
    style Input fill:#e1f5fe
    style Pipeline fill:#f3e5f5
    style Output fill:#e8f5e9
Loading

πŸš€ InΓ­cio RΓ‘pido

Prerequisites

  • Python 3.12+
  • pip (Python package manager)

Installation

# Clone the repository
git clone https://github.com/galafis/ibm-business-intelligence-capstone.git
cd ibm-business-intelligence-capstone

# Create and activate virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

Running

# Run the application
python src/main.py

πŸ§ͺ Testing

# Run all tests
pytest

# Run with coverage report
pytest --cov --cov-report=html

# Run specific test module
pytest tests/test_main.py -v

# Run with detailed output
pytest -v --tb=short

πŸ“ Estrutura do Projeto

ibm-business-intelligence-capstone/
β”œβ”€β”€ cognos_models/
β”œβ”€β”€ docs/          # Documentation
β”‚   β”œβ”€β”€ api_documentation.md
β”‚   β”œβ”€β”€ bi_architecture_guide.md
β”‚   β”œβ”€β”€ dashboard_design_guide.md
β”‚   β”œβ”€β”€ etl_best_practices.md
β”‚   └── user_guide.md
β”œβ”€β”€ powerbi_reports/
β”‚   └── financial_dashboard.pbix.txt
β”œβ”€β”€ sql/
β”‚   β”œβ”€β”€ datawarehouse/
β”‚   β”‚   β”œβ”€β”€ create_dimensions.sql
β”‚   β”‚   └── create_facts.sql
β”‚   └── create_datawarehouse.sql
β”œβ”€β”€ src/          # Source code
β”‚   β”œβ”€β”€ etl/
β”‚   β”‚   β”œβ”€β”€ extraction.py
β”‚   β”‚   └── run_etl_pipeline.py
β”‚   β”œβ”€β”€ kpi/
β”‚   β”‚   └── kpi_monitor.py
β”‚   β”œβ”€β”€ olap/
β”‚   β”‚   └── refresh_cubes.py
β”‚   β”œβ”€β”€ reporting/
β”‚   β”‚   └── generate_executive_reports.py
β”‚   β”œβ”€β”€ bi_platform.py
β”‚   └── main_platform.py
β”œβ”€β”€ tableau_workbooks/
β”œβ”€β”€ tests/         # Test suite
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ performance_test.py
β”‚   └── test_platform.py
β”œβ”€β”€ LICENSE
β”œβ”€β”€ README.md
└── requirements.txt

πŸ› οΈ Stack TecnolΓ³gica

Tecnologia DescriΓ§Γ£o Papel
Python Core Language Primary
NumPy Numerical computing Framework
Pandas Data manipulation library Framework
Plotly Interactive visualization Framework
scikit-learn Machine learning library Framework
Streamlit Data app framework Framework
SQL 3 files Supporting
HTML 1 files Supporting
CSS 1 files Supporting

🀝 Contribuindo

ContribuiΓ§Γ΅es sΓ£o bem-vindas! Sinta-se Γ  vontade para enviar um Pull Request.

πŸ“„ LicenΓ§a

Este projeto estΓ‘ licenciado sob a LicenΓ§a MIT - veja o arquivo LICENSE para detalhes.

πŸ‘€ Autor

Gabriel Demetrios Lafis

About

IBM Business Intelligence (BI) Analyst Professional Certificate Capstone Project

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages