Stela Laboratório de Inovação III Aulas Aula 10
Como tirar o projeto do papel?
Implantar o negócio começa por implantar o sistema: planejamento, banco de dados e roteiro até o ar.
Transformar o canvas em backlog, modelar o banco de dados e montar o roteiro de implementação do sistema do grupo.
Pesquisar como se formaliza uma empresa de tecnologia e trazer o canvas e o planejamento do grupo à mão.
Participação na atividade. É a base de tudo o que vem até a apresentação final.
Como vai ser o encontro
Vocês já têm canvas, termo de abertura, cronograma e relatório. Agora o projeto vira sistema de verdade.
Feedback das entregas do 1º bimestre
R1A devolutiva da professora sobre o que foi entregue no Loop e no README.md. Anotem o que ajustar.
Do canvas ao backlog
R2Cada bloco do canvas vira requisito, e cada requisito vira tarefa no GitHub.
Modelagem do banco de dados
R3Entidades, atributos e relacionamentos, e o primeiro script SQL do projeto.
Roteiro de implementação
R4O que fica pronto em cada semana até a apresentação final.
Quatro peças para tirar o projeto do papel
Do canvas ao backlog
O canvas diz o que o negócio faz. O backlog diz o que o sistema precisa ter para isso acontecer.
Escreva cada necessidade como uma história de usuário: "Como [quem], quero [o quê] para [por quê]". Cada história vira uma issue no repositório do grupo, com responsável e prazo.
| No canvas | No sistema |
|---|---|
| Segmentos de clientes | cadastro e login de clientes |
| Proposta de valor | as funcionalidades principais |
| Canais | site, app, notificações |
| Fontes de receita | pedidos, planos, pagamentos |
| Atividades-chave | telas de gestão para a equipe |
Modelando o banco de dados
Antes de criar tabelas, descubra as entidades do negócio (cliente, produto, pedido…), os atributos de cada uma (nome, preço, data…) e como elas se relacionam.
Um cliente faz vários pedidos, mas cada pedido é de um cliente só: isso é um relacionamento um para muitos, e vira uma chave estrangeira.
Dica: desenhem o modelo no Whiteboard antes de escrever o SQL. Mudar um desenho custa um minuto; mudar um banco com dados custa uma noite.
1CLIENTE PEDIDO2id (PK) ──1───N── id (PK)3nome cliente_id (FK)4email valor5 criado_em67// um cliente, vários pedidos
Do modelo ao SQL
Cada entidade vira uma tabela com CREATE TABLE. A chave primária (PRIMARY KEY) identifica cada linha. A chave estrangeira (FOREIGN KEY) liga uma tabela à outra.
Guardem tudo num arquivo banco.sql no repositório do grupo: assim qualquer pessoa da equipe recria o banco igualzinho, no XAMPP ou em qualquer MySQL.
Cuidado: crie primeiro a tabela que é referenciada (cliente) e depois a que referencia (pedido). Na ordem contrária, o MySQL reclama.
1CREATE TABLE cliente (2 id INT AUTO_INCREMENT PRIMARY KEY,3 nome VARCHAR(100) NOT NULL,4 email VARCHAR(120) UNIQUE5);67CREATE TABLE pedido (8 id INT AUTO_INCREMENT PRIMARY KEY,9 cliente_id INT NOT NULL,10 valor DECIMAL(10, 2),11 criado_em DATETIME12 DEFAULT CURRENT_TIMESTAMP,13 FOREIGN KEY (cliente_id)14 REFERENCES cliente(id)15);
Desenvolver e implantar
Com o banco pronto, o sistema ganha corpo com o que vocês estão vendo na Web II: PHP conversando com o MySQL para cadastrar, listar, alterar e apagar dados (o famoso CRUD).
Implantar é fazer o sistema funcionar fora do computador de quem programou: ambiente configurado, banco criado pelo banco.sql, dados de teste e um README que explica como rodar.
E o empreendimento? Formalização, equipe, capital e lançamento continuam no plano de negócio. O sistema funcionando é a prova de que a ideia para em pé.
| Etapa | Pergunta que o grupo responde |
|---|---|
| Planejar | quais histórias entram primeiro? |
| Modelar | quais tabelas e relacionamentos? |
| Desenvolver | quem faz qual tela e qual CRUD? |
| Testar | funciona com dados de verdade? |
| Implantar | outra pessoa consegue rodar? |
A planilha que virou banco de dados
Uma loja de bolos fictícia controlava encomendas numa planilha compartilhada. Com 300 clientes, começaram os problemas: duas pessoas editando ao mesmo tempo, o mesmo cliente cadastrado três vezes com nomes diferentes e pedidos sem dono.
A dona decidiu levar tudo para um sistema com banco de dados: cada cliente uma vez só, cada pedido ligado a um cliente.
Para discutir em grupo
- Que tabelas o banco da loja precisa? Qual é a chave de cada uma?
- Como a chave estrangeira impede um pedido sem cliente?
- Que problema da planilha de vocês o banco de dados resolve?
Caso fictício, criado para a aula.
Mão na massa: o roteiro de implementação do grupo
Em grupo, no Loop e no repositório do projeto. Vão marcando os passos: o que vocês marcarem fica salvo neste navegador.
Um projeto, várias áreas
Engenharia
O modelo do banco é a planta do sistema: ninguém levanta parede antes de desenhar a casa.
Matemática
Tabelas e relacionamentos vêm da teoria dos conjuntos. E os pedidos guardados no banco viram, nas aulas 13 a 15, o fluxo de caixa da planilha.
Arte
Nome, marca e telas também fazem parte da implantação. O cliente compra com os olhos primeiro.
Terminou antes? Tem mais.
Escrevam a consulta SQL que mostra o total vendido por cliente, do maior para o menor
(dica: JOIN, SUM, GROUP BY e ORDER BY). Esse número
vai direto para a análise financeira.
Para estudar e praticar
Site da Web II: PHP e banco de dados
A disciplina irmã deste semestre. PHP com MySQL é a dupla que vai rodar o sistema de vocês.
Tutorial de SQL
CREATE TABLE, INSERT, SELECT e JOIN, com exemplos para testar no navegador.
Apoio ao empreendedor
Para a pesquisa do "antes da aula": formalização, tipos de empresa e os passos para abrir um negócio.
EmpreendedorismopesquisaGerência de projetos
HELDMAN, Kim. Elsevier, 2009. Escopo, cronograma e riscos, para o roteiro do grupo.
LivroleituraRoteiro no Loop e banco.sql no repositório
Até o fim da aula. Na próxima aula, o plano de negócio ganha a pesquisa de mercado.