IBM Business Intelligence (BI) Analyst Professional Certificate Capstone Project
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.
- ποΈ 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
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
classDiagram
class OLAPCubeManager
class ExecutiveReportGenerator
class KPIMonitor
class DataExtractor
class BusinessIntelligencePlatform
OLAPCubeManager --> OLAPCubeManager : uses
OLAPCubeManager --> ExecutiveReportGenerator : uses
OLAPCubeManager --> KPIMonitor : uses
- Python 3.12+
- pip (Python package manager)
# 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# Run the application
python src/main.py# 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=shortibm-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
| 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 |
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.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Gabriel Demetrios Lafis
- GitHub: @galafis
- LinkedIn: Gabriel Demetrios Lafis
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.
- ποΈ 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
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
- Python 3.12+
- pip (Python package manager)
# 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# Run the application
python src/main.py# 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=shortibm-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
| 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 |
ContribuiΓ§Γ΅es sΓ£o bem-vindas! Sinta-se Γ vontade para enviar um Pull Request.
Este projeto estΓ‘ licenciado sob a LicenΓ§a MIT - veja o arquivo LICENSE para detalhes.
Gabriel Demetrios Lafis
- GitHub: @galafis
- LinkedIn: Gabriel Demetrios Lafis