Trilha de Especialização Pedagógica — Curso 25: Sistemas Desktop com Python & POO
- Módulo Principal: 📚 Sistemas com Python
- Catálogo de Projetos: 🏗️ Projetos Práticos
- Especificação Geral: 🚀 Trilha Evolutiva em 4 Fases (Intermediário)
- ➡️ Relatório de Complexidade (este documento): Matriz Comparativa de Projetos Intermediários
Este relatório apresenta o ranqueamento formal por nível de dificuldade e complexidade arquitetural dos 10 projetos integradores da Trilha Python, desenhados para servir de base direta para Projetos Integradores Universitários (PIs), Trabalhos de Conclusão de Curso (TCCs) e ações de Curricularização da Extensão Universitária.
A matriz pedagógica assegura:
@dataclass, Enum, Type Hints estritos (PEP 484/585) e arquitetura em camadas (MVC / DAO)..txt com delimitadores, .csv, .json) para banco relacional SQLite3 com transações ACID, culminando em persistência híbrida com documentos NoSQL (TinyDB/MongoDB).A trilha cobre a espinha dorsal dos cursos de Ciência da Computação, Engenharia de Software, Sistemas de Informação e Análise e Desenvolvimento de Sistemas (ADS):
graph LR
subgraph DCNs ["Competências Universitárias Desenvolvidas"]
C1["Algoritmos & Estruturas de Dados"] --> P1["Nível 1: Fundamentos (P01 e P02)"]
C2["Engenharia de Requisitos & POO"] --> P2["Nível 2: Modelagem (P03, P04 e P05)"]
C3["Bancos de Dados Relacionais & NoSQL"] --> P2
C4["Padrões de Arquitetura & Máquinas de Estado"] --> P3["Nível 3: Domínio Complexo (P06 e P07)"]
C5["Sistemas Operacionais & Concorrência (Threads)"] --> P4["Nível 4: Engenharia Avançada (P08, P09 e P10)"]
C6["Interação Humano-Computador (IHC) & DevOps"] --> P4
end
graph TD
subgraph Cenarios ["Aplicações no Comércio e Serviços do Interior"]
C1["Comércio de Varejo\nMercadinhos, padarias, quitandas, açougues"]
C2["Agronegócio & Veterinária\nCasas de ração, lojas agropecuárias, granjas, silos"]
C3["Serviços & Oficinas\nAutoelétricas, mecânicas, marcenarias, serralherias"]
C4["Setor Público & Comunitário\nBibliotecas municipais, escolas, postos de saúde"]
C5["Tecnologia Regional\nISPs de fibra óptica locais, suporte de TI, contabilidades"]
end
graph TD
subgraph N1 ["Nível 1: Fundamentos & Transição Inicial (Complexidade: ★☆☆☆☆ a ★★☆☆☆)"]
P1["1. To-Do List Persistência Comparada (P02)\n.txt vs SQLite | Tkinter Treeview"]
P2["2. Processador de Arquivos em Lote (P01)\nCSV/Excel ETL | MVC | CustomTkinter"]
end
subgraph N2 ["Nível 2: Modelagem Relacional & NoSQL Documental (Complexidade: ★★☆☆☆ a ★★★☆☆)"]
P3["3. Gestor de Cantina / Comércios\nJSON -> SQLite + TinyDB | Streamlit Web"]
P4["4. Biblioteca Comunitária & Acervo\nTXT -> SQLite (1:N, N:N) + NoSQL | CustomTkinter"]
P5["5. Clínica Veterinária & Pet Shop\nJSON -> SQLite + Prontuário NoSQL | CustomTkinter"]
end
subgraph N3 ["Nível 3: Máquinas de Estado, SLA & Conciliação (Complexidade: ★★★★☆)"]
P6["6. Patrimônio de TI & HelpDesk\nJSON -> SQLite + NoSQL Polimórfico | Kanban Streamlit"]
P7["7. Gestor Financeiro & Orçamentos\nJSON/OFX -> SQLite + Metas NoSQL | CustomTkinter"]
end
subgraph N4 ["Nível 4: Concorrência, Telemetria & Distribuição (Complexidade: ★★★★½ a ★★★★★)"]
P8["8. Dashboard Analítico Concorrente (P03)\nSQLite + Worker Threads | Matplotlib + CustomTkinter"]
P9["9. Telemetria IoT & Energia em Tempo Real\nTime-Series SQLite + Threads Async | Streamlit/Flet"]
P10["10. Automação Comercial com Executável (P04)\nSQLite Embutido | PyInstaller .exe + Inno Setup"]
end
N1 ==> N2 ==> N3 ==> N4
style N1 fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
style N2 fill:#fffde7,stroke:#fbc02d,stroke-width:2px
style N3 fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
style N4 fill:#fce4ec,stroke:#c2185b,stroke-width:2px
| Rank | Projeto Integrador | Transição de Paradigma | Persistência (Fase 1 $\rightarrow$ Final) | Interface | Aplicação no Interior / Pequenas Cidades | Disciplinas Atendidas | Complexidade |
|---|---|---|---|---|---|---|---|
| 01 | To-Do List Comparativo (P02) | Procedural puro $\rightarrow$ POO Dataclasses | .txt (pipes) $\rightarrow$ SQLite3 |
Desktop: Tkinter ttk.Treeview |
Pequenas marcenarias, serralherias, oficinas de costura | Lógica de Prog., Banco de Dados I | ★☆☆☆☆ (1/5) |
| 02 | Processador de Arquivos (P01) | Scripts de parsing $\rightarrow$ POO MVC | Arquivos .csv, .txt, .json |
Desktop: CustomTkinter | Escritórios de contabilidade do interior, despachantes | Algoritmos, Engenharia de Software | ★★☆☆☆ (2/5) |
| 03 | Gestor de Cantina / Varejo | Lógica de vendas $\rightarrow$ POO Entidades | vendas.json $\rightarrow$ SQLite + TinyDB |
Web: Streamlit | Mercadinhos de bairro, padarias, quitandas, controle de fiado | POO, Modelagem de Banco, IHC | ★★☆☆☆ (2.5/5) |
| 04 | Biblioteca Comunitária | Regras sequenciais $\rightarrow$ POO Temporal | emprestimos.txt $\rightarrow$ SQLite + TinyDB |
Desktop / Cross: CustomTkinter / Flet | Bibliotecas municipais, escolas locais, acervos de ONGs | Modelagem Relacional, NoSQL | ★★★☆☆ (3/5) |
| 05 | Clínica Veterinária / Pet Shop | Dicionários aninhados $\rightarrow$ POO 1:N / N:N | agenda.json $\rightarrow$ SQLite + TinyDB/Mongo |
Desktop: CustomTkinter (Abas) | Casas de ração, lojas agropecuárias, clínicas veterinárias | Banco de Dados II, POO Avançada | ★★★☆☆ (3.5/5) |
| 06 | Patrimônio TI & HelpDesk | Dicionários de tickets $\rightarrow$ POO Máquina Estados | chamados.json $\rightarrow$ SQLite + NoSQL |
Web: Streamlit (Kanban) | Provedores regionais de internet (ISPs), lojas de informática | Engenharia de Software, Governança TI | ★★★★☆ (4/5) |
| 07 | Gestor Financeiro Pessoal | Balanço simples $\rightarrow$ POO Financeiro | financas.json $\rightarrow$ SQLite + TinyDB |
Desktop: CustomTkinter + Gráficos | MEIs locais, produtores rurais familiares, autônomos | Análise Financeira, Algoritmos ETL | ★★★★☆ (4/5) |
| 08 | Dashboard Concorrente (P03) | Cálculos síncronos $\rightarrow$ POO Multithreading | SQLite3 + Cache em Memória | Desktop: CustomTkinter + Matplotlib | Cooperativas agrícolas, cerealistas, distribuidores locais | Sistemas Operacionais, Threads, BI | ★★★★½ (4.5/5) |
| 09 | Telemetria IoT & Energia | Polling simples $\rightarrow$ POO Ingestão Assíncrona | log.csv $\rightarrow$ SQLite (Time-Series) + NoSQL |
Web / Cross: Streamlit / Flet | Granjas avícolas, estufas agrícolas, silos de secagem de grãos | IoT, Time-Series, Sistemas Concorrentes | ★★★★★ (5/5) |
| 10 | Automação Executável (P04) | Script isolado $\rightarrow$ Arquitetura Corporativa | SQLite Embutido + .ini/.yaml |
Desktop Nativo: CustomTkinter + .exe |
Lojas de materiais de construção, autopeças, oficinas | DevOps Desktop, Arquitetura de Software | ★★★★★ (5/5) |
sistemas_python_02_todolist_sqlite)|) em tarefas.txt para uma arquitetura orientada a objetos com @dataclass Tarefa, Enum e TarefaRepository em SQLite.AUTOINCREMENT e controle transacional do SQLite.sistemas_python_01_desktop_poo)str.split() para uma arquitetura MVC desacoplada com classes Parser, ValidadorSchema e interface Desktop em CustomTkinter.UnicodeDecodeError) e validação de regras de negócio em lote.vendas.json para tabelas normalizadas (clientes, produtos, pedidos, itens_pedido) no SQLite, integrando com TinyDB para armazenar snapshots imutáveis de recibos de venda.emprestimos.txt para modelo relacional com integridade referencial 1:N e N:N, com cálculo temporal de multas por atraso e tags NoSQL dinâmicas.agenda.json para relacionamentos complexos Tutor $\rightarrow$ Animais $\rightarrow$ Consultas em SQLite, combinando com NoSQL para armazenar prontuários clínicos flexíveis com laudos, sintomas e vacinas.chamados.json para uma máquina de estados finita em POO (Aberto $\rightarrow$ Em Atendimento $\rightarrow$ Aguardando Peça $\rightarrow$ Concluído), com controle de SLA e fichas técnicas de hardware polimórficas em NoSQL.financas.json para modelo relacional financeiro com conciliação automática de extratos bancários de cooperativas de crédito (.ofx/.csv) e metas financeiras em TinyDB.sistemas_python_03_dashboard_analitico_threads)threading), filas thread-safe (queue.Queue) e consultas analíticas otimizadas em SQLite.FigureCanvasTkAgg com atualização fluida sem travar a interface.log.csv para ingestão assíncrona contínua de dados de sensores, armazenamento de séries temporais (Time-Series) em SQLite com índices e detecção estatística de anomalias em NoSQL.sistemas_python_04_automacao_pyinstaller)RotatingFileHandler) e banco SQLite embutido..exe com PyInstaller (.spec), instalador com assistente no Windows via Inno Setup e Splash Screen nativa.pie title Distribuição de Tecnologias de Interface
"CustomTkinter (Desktop Moderno)" : 5
"Streamlit (Web Dashboard)" : 3
"Tkinter / ttk (Desktop Clássico)" : 1
"Flet (Cross-Platform)" : 1
pie title Distribuição dos Mecanismos de Persistência
"Híbrido: SQLite3 Relacional + NoSQL (TinyDB/Mongo)" : 5
"SQLite3 Relacional Puro (ACID / DAO)" : 3
"Arquivos Planos / ETL (CSV, JSON, Excel, OFX)" : 2
A matriz dos 10 projetos integradores atende perfeitamente ao duplo propósito:
| ⬅️ Ver Trilha Evolutiva em 4 Fases | 📚 Voltar ao Módulo Sistemas com Python | 🏠 Página Inicial do Portal |