[{"data":1,"prerenderedAt":787},["ShallowReactive",2],{"navigation_docs":3,"-atividades-atv-03-requisitos":252,"-atividades-atv-03-requisitos-surround":782},[4,96,189],{"title":5,"icon":6,"path":7,"stem":8,"children":9},"⚙️ Engenharia de Software","i-lucide-book-open","\u002Fengenharia-software","1.engenharia-software",[10,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92],{"title":5,"path":7,"stem":11},"1.engenharia-software\u002Findex",{"title":13,"path":14,"stem":15},"📋 Plano de Ensino e Aplicações","\u002Fengenharia-software\u002Fengenharia-software-aplicacoes","1.engenharia-software\u002F01.engenharia-software-aplicacoes",{"title":17,"path":18,"stem":19},"Cap 01: Introdução e Natureza do Software","\u002Fengenharia-software\u002Fcap-01","1.engenharia-software\u002F02.cap-01",{"title":21,"path":22,"stem":23},"Cap 02: Modelos de Processo de Software","\u002Fengenharia-software\u002Fcap-02","1.engenharia-software\u002F03.cap-02",{"title":25,"path":26,"stem":27},"Cap 03: As Atividades do Processo","\u002Fengenharia-software\u002Fcap-03","1.engenharia-software\u002F04.cap-03",{"title":29,"path":30,"stem":31},"Cap 04: Metodologias Ágeis","\u002Fengenharia-software\u002Fcap-04","1.engenharia-software\u002F05.cap-04",{"title":33,"path":34,"stem":35},"Cap 05: Fundamentos de Requisitos","\u002Fengenharia-software\u002Fcap-05","1.engenharia-software\u002F06.cap-05",{"title":37,"path":38,"stem":39},"Cap 06: Elicitação e Levantamento","\u002Fengenharia-software\u002Fcap-06","1.engenharia-software\u002F07.cap-06",{"title":41,"path":42,"stem":43},"Cap 07: Especificação de Requisitos (ERS)","\u002Fengenharia-software\u002Fcap-07","1.engenharia-software\u002F08.cap-07",{"title":45,"path":46,"stem":47},"Cap 08: Validação e Gestão","\u002Fengenharia-software\u002Fcap-08","1.engenharia-software\u002F09.cap-08",{"title":49,"path":50,"stem":51},"Cap 09: Fundamentos da Modelagem","\u002Fengenharia-software\u002Fcap-09","1.engenharia-software\u002F10.cap-09",{"title":53,"path":54,"stem":55},"Cap 10: Diagrama de Casos de Uso (Conceitos)","\u002Fengenharia-software\u002Fcap-10","1.engenharia-software\u002F11.cap-10",{"title":57,"path":58,"stem":59},"Cap 11: Casos de Uso (Prática e Relações)","\u002Fengenharia-software\u002Fcap-11","1.engenharia-software\u002F12.cap-11",{"title":61,"path":62,"stem":63},"Cap 12: Diagrama de Classes (Conceitos)","\u002Fengenharia-software\u002Fcap-12","1.engenharia-software\u002F13.cap-12",{"title":65,"path":66,"stem":67},"Cap 13: Herança e Polimorfismo","\u002Fengenharia-software\u002Fcap-13","1.engenharia-software\u002F14.cap-13",{"title":69,"path":70,"stem":71},"Cap 14: Diagrama de Sequência","\u002Fengenharia-software\u002Fcap-14","1.engenharia-software\u002F15.cap-14",{"title":73,"path":74,"stem":75},"Cap 15: Diagramas Dinâmicos (Estados e Atividades)","\u002Fengenharia-software\u002Fcap-15","1.engenharia-software\u002F16.cap-15",{"title":77,"path":78,"stem":79},"Cap 16: Qualidade de Software (SQA)","\u002Fengenharia-software\u002Fcap-16","1.engenharia-software\u002F17.cap-16",{"title":81,"path":82,"stem":83},"Cap 17: Estratégias de Teste","\u002Fengenharia-software\u002Fcap-17","1.engenharia-software\u002F18.cap-17",{"title":85,"path":86,"stem":87},"Cap 18: Manutenção e Evolução","\u002Fengenharia-software\u002Fcap-18","1.engenharia-software\u002F19.cap-18",{"title":89,"path":90,"stem":91},"Cap 19: Gerência de Configuração (SCM)","\u002Fengenharia-software\u002Fcap-19","1.engenharia-software\u002F20.cap-19",{"title":93,"path":94,"stem":95},"Cap 20: Conclusão e Próximos Passos","\u002Fengenharia-software\u002Fcap-20","1.engenharia-software\u002F21.cap-20",{"title":97,"icon":98,"path":99,"stem":100,"children":101},"🛠️ Atividades","i-lucide-wrench","\u002Fatividades","2.atividades",[102,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185],{"title":103,"path":99,"stem":104},"📋 Orientações Gerais","2.atividades\u002Findex",{"title":106,"path":107,"stem":108},"📅 Cronograma","\u002Fatividades\u002Fcronograma","2.atividades\u002F01.cronograma",{"title":110,"path":111,"stem":112},"✏️ Atividade 01: Escopo e Personas","\u002Fatividades\u002Fatv-01-escopo","2.atividades\u002F02.atv-01-escopo",{"title":114,"path":115,"stem":116},"⚙️ Atividade 02: Processos de Software","\u002Fatividades\u002Fatv-02-processos","2.atividades\u002F03.atv-02-processos",{"title":118,"path":119,"stem":120},"📋 Atividade 03: Engenharia de Requisitos","\u002Fatividades\u002Fatv-03-requisitos","2.atividades\u002F04.atv-03-requisitos",{"title":122,"path":123,"stem":124},"📝 Atividade 04: User Stories e Backlog","\u002Fatividades\u002Fatv-04-backlog","2.atividades\u002F05.atv-04-backlog",{"title":126,"path":127,"stem":128},"🎭 Atividade 05: Casos de Uso (UML)","\u002Fatividades\u002Fatv-05-casos-uso","2.atividades\u002F06.atv-05-casos-uso",{"title":130,"path":131,"stem":132},"🖼️ Atividade 06: Prototipagem e Wireframes","\u002Fatividades\u002Fatv-06-prototipagem","2.atividades\u002F07.atv-06-prototipagem",{"title":134,"path":135,"stem":136},"🏛️ Atividade 07: Diagrama de Classes (UML)","\u002Fatividades\u002Fatv-07-classes","2.atividades\u002F08.atv-07-classes",{"title":138,"path":139,"stem":140},"🔀 Atividade 08: Diagrama de Sequência (UML)","\u002Fatividades\u002Fatv-08-sequencia","2.atividades\u002F09.atv-08-sequencia",{"title":142,"path":143,"stem":144},"🧪 Atividade 09: Qualidade e Testes","\u002Fatividades\u002Fatv-09-testes","2.atividades\u002F10.atv-09-testes",{"title":146,"path":147,"stem":148},"🏁 Atividade 10: Projeto Integrador Final","\u002Fatividades\u002Fatv-10-projeto-final","2.atividades\u002F11.atv-10-projeto-final",{"title":150,"path":151,"stem":152},"📊 Atividade 11: Diagrama de Atividades (UML)","\u002Fatividades\u002Fatv-11-atividades","2.atividades\u002F12.atv-11-atividades",{"title":154,"path":155,"stem":156},"🔄 Atividade 12: Diagrama de Transição de Estados (UML)","\u002Fatividades\u002Fatv-12-estados","2.atividades\u002F13.atv-12-estados",{"title":158,"path":159,"stem":160},"🏗️ Atividade 13: Arquitetura de Software e Padrões","\u002Fatividades\u002Fatv-13-arquitetura","2.atividades\u002F14.atv-13-arquitetura",{"title":162,"path":163,"stem":164},"🌐 Atividade 14: Modelagem de APIs REST e Swagger","\u002Fatividades\u002Fatv-14-apis-swagger","2.atividades\u002F15.atv-14-apis-swagger",{"title":166,"path":167,"stem":168},"🌿 Atividade 15: GitFlow e Trabalho Colaborativo","\u002Fatividades\u002Fatv-15-gitflow-colaboracao","2.atividades\u002F16.atv-15-gitflow-colaboracao",{"title":170,"path":171,"stem":172},"🚀 Atividade 16: Pipelines de CI\u002FCD com GitHub Actions","\u002Fatividades\u002Fatv-16-pipelines-cicd","2.atividades\u002F17.atv-16-pipelines-cicd",{"title":174,"path":175,"stem":176},"🐳 Atividade 17: Containerização de Ambientes com Docker","\u002Fatividades\u002Fatv-17-conteineres-docker","2.atividades\u002F18.atv-17-conteineres-docker",{"title":178,"path":179,"stem":180},"🔒 Atividade 18: Segurança no Desenvolvimento e OWASP","\u002Fatividades\u002Fatv-18-seguranca-devsecops","2.atividades\u002F19.atv-18-seguranca-devsecops",{"title":182,"path":183,"stem":184},"📈 Atividade 19: Métricas de Software, Estimativas e DORA","\u002Fatividades\u002Fatv-19-metricas-estimativas","2.atividades\u002F20.atv-19-metricas-estimativas",{"title":186,"path":187,"stem":188},"🏆 Atividade 20: Projeto Final Avançado (Fase 2)","\u002Fatividades\u002Fatv-20-projeto-final-avancado","2.atividades\u002F21.atv-20-projeto-final-avancado",{"title":190,"icon":191,"path":192,"stem":193,"children":194},"🖼️ Galeria de Projetos Integradores","i-lucide-image","\u002Fprojetos-integradores","3.projetos-integradores",[195,197,207,216,225,234,243],{"title":190,"path":192,"stem":196},"3.projetos-integradores\u002Findex",{"title":198,"path":199,"stem":200,"children":201},"🅿️ Projeto 01: Gestão de Estacionamentos","\u002Fprojetos-integradores\u002Fpi-01-gestao-estacionamentos","3.projetos-integradores\u002F01.pi-01-gestao-estacionamentos\u002Findex",[202,203],{"title":198,"path":199,"stem":200},{"title":204,"path":205,"stem":206},"README","\u002Fprojetos-integradores\u002Fpi-01-gestao-estacionamentos\u002Freadme","3.projetos-integradores\u002F01.pi-01-gestao-estacionamentos\u002F2.readme",{"title":208,"path":209,"stem":210,"children":211},"🔐 Projeto 02: Gerador de Senhas","\u002Fprojetos-integradores\u002Fpi-02-gerador-senhas","3.projetos-integradores\u002F02.pi-02-gerador-senhas\u002Findex",[212,213],{"title":208,"path":209,"stem":210},{"title":204,"path":214,"stem":215},"\u002Fprojetos-integradores\u002Fpi-02-gerador-senhas\u002Freadme","3.projetos-integradores\u002F02.pi-02-gerador-senhas\u002F2.readme",{"title":217,"path":218,"stem":219,"children":220},"🍣 Projeto 03: Pedidos Restaurante","\u002Fprojetos-integradores\u002Fpi-03-pedidos-restaurante","3.projetos-integradores\u002F03.pi-03-pedidos-restaurante\u002Findex",[221,222],{"title":217,"path":218,"stem":219},{"title":204,"path":223,"stem":224},"\u002Fprojetos-integradores\u002Fpi-03-pedidos-restaurante\u002Freadme","3.projetos-integradores\u002F03.pi-03-pedidos-restaurante\u002F2.readme",{"title":226,"path":227,"stem":228,"children":229},"📱 Projeto 04: Empréstimos Dispositivos","\u002Fprojetos-integradores\u002Fpi-04-emprestimos-dispositivos","3.projetos-integradores\u002F04.pi-04-emprestimos-dispositivos\u002Findex",[230,231],{"title":226,"path":227,"stem":228},{"title":204,"path":232,"stem":233},"\u002Fprojetos-integradores\u002Fpi-04-emprestimos-dispositivos\u002Freadme","3.projetos-integradores\u002F04.pi-04-emprestimos-dispositivos\u002F2.readme",{"title":235,"path":236,"stem":237,"children":238},"📦 Projeto 05: Gestão de Estoque","\u002Fprojetos-integradores\u002Fpi-05-gestao-estoque","3.projetos-integradores\u002F05.pi-05-gestao-estoque\u002Findex",[239,240],{"title":235,"path":236,"stem":237},{"title":204,"path":241,"stem":242},"\u002Fprojetos-integradores\u002Fpi-05-gestao-estoque\u002Freadme","3.projetos-integradores\u002F05.pi-05-gestao-estoque\u002F2.readme",{"title":244,"path":245,"stem":246,"children":247},"🛵 Projeto 06: Aplicativo de Delivery","\u002Fprojetos-integradores\u002Fpi-06-delivery","3.projetos-integradores\u002F06.pi-06-delivery\u002Findex",[248,249],{"title":244,"path":245,"stem":246},{"title":204,"path":250,"stem":251},"\u002Fprojetos-integradores\u002Fpi-06-delivery\u002Freadme","3.projetos-integradores\u002F06.pi-06-delivery\u002F2.readme",{"id":253,"title":118,"body":254,"description":776,"extension":777,"links":778,"meta":779,"navigation":485,"path":119,"seo":780,"stem":120,"__hash__":781},"docs\u002F2.atividades\u002F04.atv-03-requisitos.md",{"type":255,"value":256,"toc":755},"minimark",[257,260,265,269,296,298,302,309,312,322,324,328,331,336,350,355,373,377,379,383,386,452,456,459,463,557,561,576,578,582,588,614,618,621,623,627,630,649,651,655,671,673,677,751],[258,259],"hr",{},[261,262,264],"h2",{"id":263},"objetivo-da-aula","🎯 Objetivo da Aula",[266,267,268],"p",{},"Ao final desta atividade, você será capaz de:",[270,271,272,285,293],"ul",{},[273,274,275,276,280,281,284],"li",{},"Diferenciar ",[277,278,279],"strong",{},"Requisitos Funcionais (RF)"," (O que o sistema faz) de ",[277,282,283],{},"Requisitos Não-Funcionais (RNF)"," (Como o sistema se comporta).",[273,286,287,288,292],{},"Redigir requisitos com alto rigor técnico utilizando o padrão de escrita: ",[289,290,291],"em",{},"\"O sistema deve...\"",".",[273,294,295],{},"Aplicar uma matriz de priorização de requisitos (Essencial, Importante, Desejável).",[258,297],{},[261,299,301],{"id":300},"o-cenário-prático-seu-desafio","🏢 O Cenário Prático (Seu Desafio)",[266,303,304,305,308],{},"Na ",[277,306,307],{},"TecProExpress",", após o seu time decidir utilizar a metodologia ágil (Atividade 02), a diretoria começou a bombardear a equipe com ideias para o novo App de Rastreamento. O diretor de Vendas quer que o App tenha \"um mapa bem bonito e rápido\". O diretor de Logística quer \"um botão de pânico para o motorista\".",[266,310,311],{},"Ouvindo essas demandas soltas, os desenvolvedores não sabem o que programar primeiro, nem como medir se o mapa é \"bonito e rápido\" o suficiente.",[313,314,315],"blockquote",{},[266,316,317,318,321],{},"\"Seu desafio é atuar como ",[277,319,320],{},"Engenheiro de Requisitos",". Você deve traduzir as falas confusas e abstratas da diretoria em Requisitos Funcionais e Não-Funcionais matemáticos, testáveis e priorizados, criando a lista mestra que o time de desenvolvimento vai usar para trabalhar.\"",[258,323],{},[261,325,327],{"id":326},"fundamentos-a-teoria-traduzida","🧠 Fundamentos: A Teoria Traduzida",[266,329,330],{},"A Engenharia de Requisitos é a arte de extrair a verdade. Se o requisito for mal escrito, o programador criará o código errado.",[332,333,335],"h3",{"id":334},"funcional-vs-não-funcional","Funcional vs Não-Funcional",[270,337,338,344],{},[273,339,340,343],{},[277,341,342],{},"Funcional (RF):"," É uma ação. É um botão que você clica, uma tela que abre, um cálculo que é feito. (Ex: \"O sistema deve calcular o frete\").",[273,345,346,349],{},[277,347,348],{},"Não-Funcional (RNF):"," É a infraestrutura, a performance, a segurança. Você não clica num RNF, você o sente. (Ex: \"O cálculo do frete deve ser respondido em menos de 2 segundos\").",[351,352,354],"h4",{"id":353},"visualizando-a-lógica","📊 Visualizando a Lógica",[356,357,360,363,364,368,369,372],"callout",{"color":358,"icon":359},"success","i-lucide-lightbulb",[277,361,362],{},"Dica:"," Use sempre o padrão \"O sistema deve ",[365,366,367],"span",{},"AÇÃO"," quando ",[365,370,371],{},"CONDIÇÃO","\". Nunca use adjetivos (bonito, rápido, seguro), use métricas exatas!",[374,375],"mermaid",{"code":376},"flowchart LR\n    A[\"Fica abstrata do cliente:\u003Cbr\u002F>'O app tem que ser seguro'\"] --> B{\"Filtro do Engenheiro\"}\n    B --> C[\"RNF01: O sistema deve exigir\u003Cbr\u002F>uma senha de 8 caracteres\u003Cbr\u002F>alfanuméricos no login.\"]\n",[258,378],{},[261,380,382],{"id":381},"exemplo-guiado","📖 Exemplo Guiado",[266,384,385],{},"Abaixo, veja como categorizar e escrever requisitos de forma profissional.",[387,388,389,406],"table",{},[390,391,392],"thead",{},[393,394,395,400,403],"tr",{},[396,397,399],"th",{"align":398},"left","Passo",[396,401,402],{"align":398},"Fala do Cliente",[396,404,405],{"align":398},"Tradução da Engenharia",[407,408,409,424,438],"tbody",{},[393,410,411,415,418],{},[412,413,414],"td",{"align":398},"01",[412,416,417],{"align":398},"\"Quero cadastrar meus clientes.\"",[412,419,420,423],{"align":398},[277,421,422],{},"RF01:"," O sistema deve permitir o cadastro de clientes contendo Nome, CPF e Endereço.",[393,425,426,429,432],{},[412,427,428],{"align":398},"02",[412,430,431],{"align":398},"\"O mapa tem que carregar rápido.\"",[412,433,434,437],{"align":398},[277,435,436],{},"RNF01:"," O mapa de rastreio deve ser renderizado em no máximo 3 segundos após o clique.",[393,439,440,443,446],{},[412,441,442],{"align":398},"03",[412,444,445],{"align":398},"\"Tem que rodar no celular de todo mundo.\"",[412,447,448,451],{"align":398},[277,449,450],{},"RNF02:"," O sistema deve ser responsivo e suportar os sistemas Android 10+ e iOS 14+.",[351,453,455],{"id":454},"priorização-moscow-dos-requisitos-da-tecproexpress","📊 Priorização MoSCoW dos Requisitos da TecProExpress",[374,457],{"code":458},"flowchart TD\n    subgraph MUST [Must Have - Essencial]\n        M1[\"RF01: Login do Motorista\"]\n        M2[\"RF02: Listar Entregas do Dia\"]\n    end\n    subgraph SHOULD [Should Have - Importante]\n        S1[\"RF03: Roteirização Automática\"]\n    end\n    subgraph COULD [Could Have - Desejável]\n        C1[\"RF04: Som ao atribuir carga\"]\n    end\n    MUST --> SHOULD --> COULD\n\n    style MUST fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px\n    style SHOULD fill:#e1f5fe,stroke:#0288d1,stroke-width:2px\n    style COULD fill:#fffde7,stroke:#fbc02d,stroke-width:2px\n",[332,460,462],{"id":461},"️-estrutura-de-documentação-de-requisitos","🛠️ Estrutura de Documentação de Requisitos",[464,465,470],"pre",{"className":466,"code":467,"language":468,"meta":469,"style":469},"language-markdown shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Lista de Requisitos (App Rastreio Express)\n\n## Requisitos Funcionais (RF)\n| ID | Descrição | Prioridade |\n| :--- | :--- | :--- |\n| RF01 | O sistema deve permitir que o motorista faça login via CPF e Senha. | Essencial |\n| RF02 | O sistema deve listar as entregas do dia em ordem de distância. | Importante |\n| RF03 | O sistema deve emitir um som quando um novo pacote for atribuído. | Desejável |\n\n## Requisitos Não-Funcionais (RNF)\n| ID | Categoria | Descrição |\n| :--- | :--- | :--- |\n| RNF01 | Performance | A listagem de entregas deve carregar em \u003C 2 segundos. |\n| RNF02 | Segurança | As senhas devem ser criptografadas em BCrypt no banco. |\n","markdown","",[471,472,473,480,487,493,499,505,511,517,523,528,534,540,545,551],"code",{"__ignoreMap":469},[365,474,477],{"class":475,"line":476},"line",1,[365,478,479],{},"# Lista de Requisitos (App Rastreio Express)\n",[365,481,483],{"class":475,"line":482},2,[365,484,486],{"emptyLinePlaceholder":485},true,"\n",[365,488,490],{"class":475,"line":489},3,[365,491,492],{},"## Requisitos Funcionais (RF)\n",[365,494,496],{"class":475,"line":495},4,[365,497,498],{},"| ID | Descrição | Prioridade |\n",[365,500,502],{"class":475,"line":501},5,[365,503,504],{},"| :--- | :--- | :--- |\n",[365,506,508],{"class":475,"line":507},6,[365,509,510],{},"| RF01 | O sistema deve permitir que o motorista faça login via CPF e Senha. | Essencial |\n",[365,512,514],{"class":475,"line":513},7,[365,515,516],{},"| RF02 | O sistema deve listar as entregas do dia em ordem de distância. | Importante |\n",[365,518,520],{"class":475,"line":519},8,[365,521,522],{},"| RF03 | O sistema deve emitir um som quando um novo pacote for atribuído. | Desejável |\n",[365,524,526],{"class":475,"line":525},9,[365,527,486],{"emptyLinePlaceholder":485},[365,529,531],{"class":475,"line":530},10,[365,532,533],{},"## Requisitos Não-Funcionais (RNF)\n",[365,535,537],{"class":475,"line":536},11,[365,538,539],{},"| ID | Categoria | Descrição |\n",[365,541,543],{"class":475,"line":542},12,[365,544,504],{},[365,546,548],{"class":475,"line":547},13,[365,549,550],{},"| RNF01 | Performance | A listagem de entregas deve carregar em \u003C 2 segundos. |\n",[365,552,554],{"class":475,"line":553},14,[365,555,556],{},"| RNF02 | Segurança | As senhas devem ser criptografadas em BCrypt no banco. |\n",[351,558,560],{"id":559},"detalhamento-da-documentação","🔍 Detalhamento da Documentação:",[270,562,563,570],{},[273,564,565,566,569],{},"A ",[277,567,568],{},"Prioridade"," salva projetos. Se o prazo apertar, o time corta os requisitos \"Desejáveis\" para garantir que o \"Essencial\" suba para produção.",[273,571,572,575],{},[277,573,574],{},"Categorias de RNF:"," Podem ser de Performance, Segurança, Usabilidade ou Tecnológicas.",[258,577],{},[261,579,581],{"id":580},"️-prática-obrigatória-1-a-lista-de-requisitos","🛠️ Prática Obrigatória 1: A Lista de Requisitos",[266,583,584,587],{},[277,585,586],{},"Cenário:"," O projeto semestral da sua equipe (criado na Atividade 01).",[589,590,591,597,602,608],"ol",{},[273,592,593,594,292],{},"Crie uma tabela com pelo menos ",[277,595,596],{},"10 Requisitos Funcionais (RF)",[273,598,593,599,292],{},[277,600,601],{},"5 Requisitos Não-Funcionais (RNF)",[273,603,604,605,292],{},"Utilize estritamente a nomenclatura formal (RF01, RNF01) e o padrão de escrita ",[289,606,607],{},"\"O sistema deve\"",[273,609,610,611,292],{},"Para os Funcionais, indique se a prioridade é: ",[289,612,613],{},"Essencial, Importante ou Desejável",[332,615,617],{"id":616},"resultado-esperado-para-sua-referência","🏁 Resultado Esperado (Para sua Referência)",[266,619,620],{},"Duas tabelas organizadas e limpas, sem ambiguidades, onde qualquer programador saberia exatamente o que fazer ao lê-las.",[258,622],{},[261,624,626],{"id":625},"instruções-de-entrega-microsoft-teams","📤 Instruções de Entrega (Microsoft Teams)",[266,628,629],{},"Após validar suas documentações técnicas:",[589,631,632,643,646],{},[273,633,634,635,638,639,642],{},"Salve o arquivo de documentação com o nome ",[471,636,637],{},"Atividade_03.md"," na pasta ",[471,640,641],{},"es-atv-03-requisitos\u002F"," do seu repositório GitHub.",[273,644,645],{},"Certifique-se de fazer o commit e push para o repositório público.",[273,647,648],{},"Submeta o link do seu repositório no Microsoft Teams para avaliação do professor.",[258,650],{},[261,652,654],{"id":653},"checkpoint-de-lógica","💡 Checkpoint de Lógica",[356,656,659,662,663,666,667,670],{"color":657,"icon":658},"primary","i-lucide-megaphone",[277,660,661],{},"Importante:"," ",[277,664,665],{},"Reflexão Profissional:","\nImagine que você escreveu o seguinte requisito: ",[289,668,669],{},"\"RF04: O sistema deve ter uma tela de relatórios legais\"",". Durante a entrega, o cliente recusou o sistema dizendo que o relatório não era \"legal\" o suficiente. Como engenheiro, onde esteve o erro e como você reescreveria esse requisito para se proteger de recusas futuras? 🧠🛡️",[258,672],{},[261,674,676],{"id":675},"rubrica-formativa-de-avaliação","📊 Rubrica Formativa de Avaliação",[387,678,680,681,680,701],{"style":679},"width:100%; border-collapse: collapse; font-family: sans-serif; margin: 20px 0; border: 1px solid #ddd; box-shadow: 0 4px 8px rgba(0,0,0,0.1);","\n  ",[390,682,683,684,680],{},"\n    ",[393,685,687,688,687,692,687,695,687,698,683],{"style":686},"background-color: #2c3e50; color: white;","\n      ",[396,689,691],{"style":690},"padding: 12px; border: 1px solid #ddd; text-align: left;","Critério de Avaliação",[396,693,694],{"style":690},"Insuficiente (0% - 40%)",[396,696,697],{"style":690},"Regular (41% - 70%)",[396,699,700],{"style":690},"Excelente (71% - 100%)",[407,702,683,703,683,720,683,735,680],{},[393,704,687,706,687,711,687,714,687,717,683],{"style":705},"background-color: #f8f9fa;",[412,707,709],{"style":708},"padding: 10px; border: 1px solid #ddd;",[277,710,279],{},[412,712,713],{"style":708},"Menos de 10 RFs ou formulados de maneira ambígua.",[412,715,716],{"style":708},"10 RFs formulados mas com falhas na padronização 'O sistema deve'.",[412,718,719],{"style":708},"Pelo menos 10 RFs perfeitamente numerados (RF01..RF10) com priorização (Essencial\u002FImportante\u002FDesejável).",[393,721,687,722,687,726,687,729,687,732,683],{},[412,723,724],{"style":708},[277,725,283],{},[412,727,728],{"style":708},"Menos de 5 RNFs ou sem distinção entre qualidade\u002Fdesempenho.",[412,730,731],{"style":708},"5 RNFs definidos com medição subjetiva.",[412,733,734],{"style":708},"Pelo menos 5 RNFs numerados (RNF01..RNF05) abrangendo Performance, Segurança e Usabilidade.",[393,736,687,737,687,742,687,745,687,748,683],{"style":705},[412,738,739],{"style":708},[277,740,741],{},"Entrega no GitHub",[412,743,744],{"style":708},"Entrega fora da pasta ou repositório inacessível.",[412,746,747],{"style":708},"Arquivo entregue mas sem tabela Markdown adequada.",[412,749,750],{"style":708},"`Atividade_03.md` em `es-atv-03-requisitos\u002F` com Markdown impecável.",[752,753,754],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":469,"searchDepth":482,"depth":489,"links":756},[757,758,759,764,770,773,774,775],{"id":263,"depth":482,"text":264},{"id":300,"depth":482,"text":301},{"id":326,"depth":482,"text":327,"children":760},[761],{"id":334,"depth":489,"text":335,"children":762},[763],{"id":353,"depth":495,"text":354},{"id":381,"depth":482,"text":382,"children":765},[766,767],{"id":454,"depth":495,"text":455},{"id":461,"depth":489,"text":462,"children":768},[769],{"id":559,"depth":495,"text":560},{"id":580,"depth":482,"text":581,"children":771},[772],{"id":616,"depth":489,"text":617},{"id":625,"depth":482,"text":626},{"id":653,"depth":482,"text":654},{"id":675,"depth":482,"text":676},"Bem-vindo a mais uma etapa da sua jornada no curso de Gestão de TI \u002F Desenvolvimento de Sistemas. Hoje vamos mergulhar em conceitos que conectam a teoria técnica diretamente com o padrão de excelência da indústria, aprendendo a redigir o contrato técnico que guiará todos os programadores. 🛡️🧩","md",null,{},{"title":118,"description":776},"3cNFXz6X3WpfCi4Xv47-vQwaJjNT-64zDC-T8fWFpQ8",[783,785],{"title":114,"path":115,"stem":116,"description":784,"children":-1},"Bem-vindo a mais uma etapa da sua jornada no curso de Gestão de TI \u002F Desenvolvimento de Sistemas. Hoje vamos mergulhar em conceitos que conectam a teoria técnica diretamente com o padrão de excelência da indústria, definindo as engrenagens de como a sua equipe vai trabalhar. 🛡️🧩",{"title":122,"path":123,"stem":124,"description":786,"children":-1},"Bem-vindo a mais uma etapa da sua jornada no curso de Gestão de TI \u002F Desenvolvimento de Sistemas. Hoje vamos mergulhar em conceitos que conectam a teoria técnica diretamente com o padrão de excelência da indústria ágil, mudando o foco do \"O Quê\" para o \"Por Quê\". 🛡️🧩",1788375143763]