{"id":41257,"date":"2020-02-06T20:43:44","date_gmt":"2020-02-06T17:43:44","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/avtomaticheskaya-proverka-trebovanij-tz-v-proczesse-dinamicheskogo-modelirovaniya"},"modified":"2020-02-06T20:43:44","modified_gmt":"2020-02-06T17:43:44","slug":"avtomaticheskaya-proverka-trebovanij-tz-v-proczesse-dinamicheskogo-modelirovaniya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/avtomaticheskaya-proverka-trebovanij-tz-v-proczesse-dinamicheskogo-modelirovaniya","title":{"rendered":"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Continuando o tema <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/466215\/\">\"Quais s\u00e3o suas provas?\"<\/a><\/noindex>, vejamos o problema da modelagem matem\u00e1tica sob uma nova perspectiva. Depois de garantirmos que o modelo reflete a dura realidade da vida, podemos responder \u00e0 pergunta principal: \"o que exatamente temos aqui?\". Ao criar um modelo de um objeto t\u00e9cnico, geralmente queremos ter a certeza de que esse objeto atender\u00e1 \u00e0s nossas expectativas. Para isso, realizamos c\u00e1lculos din\u00e2micos dos processos e comparamos os resultados com os requisitos. Isso \u00e9 o que chamamos de g\u00eameo digital, prot\u00f3tipo virtual e outros termos da moda que na fase de projeto resolvem o desafio de garantir que obteremos aquilo que planejamos.<\/p>\n<p><\/p>\n<p>Como podemos rapidamente confirmar que nosso sistema \u00e9 exatamente aquilo que estamos projetando? Ele ir\u00e1 voar ou flutuar? E se voar, at\u00e9 que altura? E se flutuar, at\u00e9 que profundidade?<\/p>\n<p>\n<img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/e26c4b7db4ee148c73586124dacb6025.jpg\" style=\"display:block;margin: 0 auto;\" \/><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Este artigo aborda a automa\u00e7\u00e3o da verifica\u00e7\u00e3o do cumprimento dos requisitos de um edif\u00edcio t\u00e9cnico na cria\u00e7\u00e3o de modelos din\u00e2micos de sistemas t\u00e9cnicos. Vamos examinar um elemento do termo de refer\u00eancia para o sistema de arrefecimento por ar de uma aeronave.<\/p>\n<p><\/p>\n<p>Analisamos os requisitos que podem ser expressos numericamente e verificados matematicamente com base em um modelo de c\u00e1lculo espec\u00edfico. \u00c9 claro que isso \u00e9 apenas parte dos requisitos gerais para qualquer sistema t\u00e9cnico, mas \u00e9 precisamente na verifica\u00e7\u00e3o deles que gastamos tempo, nervos e dinheiro na cria\u00e7\u00e3o de modelos din\u00e2micos do objeto.<\/p>\n<p><\/p>\n<p>Ao descrever os requisitos t\u00e9cnicos em forma de documento, podemos destacar v\u00e1rios tipos de requisitos diferentes, cada um dos quais requer abordagens distintas para a forma\u00e7\u00e3o da verifica\u00e7\u00e3o autom\u00e1tica do cumprimento dos requisitos.<\/p>\n<p><\/p>\n<p>Por exemplo, consideremos um pequeno, mas real conjunto de requisitos:<\/p>\n<p>\n<i><\/p>\n<ol>\n<li> Temperatura do ar atmosf\u00e9rico na entrada do sistema de arrefecimento por ar:<br \/>\nem repouso - de menos 35 a 35 \u00baC,<br \/>\nem voo - de menos 35 a 39 \u00baC.<\/li>\n<li> Press\u00e3o atmosf\u00e9rica est\u00e1tica em voo - de 700 a 1013 hPa (de 526 a 760 mmHg).<\/li>\n<li> Press\u00e3o total do ar na entrada do coletor de ar do sistema de arrefecimento em voo - de 754 a 1200 hPa (de 566 a 1050 mmHg).<\/li>\n<li> Temperatura do ar de arrefecimento:<br \/>\nem repouso - n\u00e3o mais que 27 \u00baC, para os blocos t\u00e9cnicos - n\u00e3o mais que 29 \u00baC,<br \/>\nno voo \u2212 n\u00e3o mais que 25 \u00baC, para blocos t\u00e9cnicos \u2212 n\u00e3o mais que 27 \u00baC.<\/li>\n<li> Consumo de ar de refrigera\u00e7\u00e3o:<br \/>\nem repouso \u2212 n\u00e3o menos que 708 kg\/h,<br \/>\nno voo \u2212 n\u00e3o menos que 660 kg\/h.<\/li>\n<li> A temperatura do ar nos compartimentos de instrumentos \u2212 n\u00e3o mais que 60 \u00baC.<\/li>\n<li> A quantidade de umidade livre e finamente dispersa no ar de refrigera\u00e7\u00e3o \u2212 n\u00e3o mais que 2 g\/kg de ar seco.<\/li>\n<\/ol>\n<p> <\/i><\/p>\n<p>Mesmo nesse conjunto restrito de requisitos, podemos destacar pelo menos duas categorias que precisam ser tratadas de maneira diferente no sistema:<\/p>\n<p><\/p>\n<ul>\n<li> requisitos das condi\u00e7\u00f5es de opera\u00e7\u00e3o do sistema (itens 1-3);<\/li>\n<li> requisitos param\u00e9tricos do sistema (itens 3-7).<\/li>\n<\/ul>\n<p><\/p>\n<p><i>Requisitos das condi\u00e7\u00f5es de opera\u00e7\u00e3o do sistema<\/i><br \/>\nAs condi\u00e7\u00f5es externas para o sistema em desenvolvimento, durante a modelagem, podem ser definidas como condi\u00e7\u00f5es de contorno ou como resultado da opera\u00e7\u00e3o do sistema geral.<br \/>\nNa modelagem din\u00e2mica, \u00e9 necess\u00e1rio garantir que os modos de opera\u00e7\u00e3o definidos sejam cobertos pelo processo de modelagem.<\/p>\n<p><\/p>\n<p><i>Requisitos param\u00e9tricos do sistema <\/i><br \/>\nEsses requisitos representam par\u00e2metros fornecidos pelo pr\u00f3prio sistema. Durante a modelagem, podemos obter esses par\u00e2metros como resultados de c\u00e1lculos e garantir que os requisitos sejam atendidos em cada c\u00e1lculo espec\u00edfico.<\/p>\n<p><\/p>\n<h3>Identifica\u00e7\u00e3o e codifica\u00e7\u00e3o de requisitos<\/h3>\n<p><\/p>\n<p>Para facilitar o trabalho com os requisitos, as normas existentes recomendam atribuir um identificador a cada requisito. Ao atribuir identificadores, \u00e9 altamente desej\u00e1vel usar um sistema de codifica\u00e7\u00e3o unificado. <\/p>\n<p><\/p>\n<p>O c\u00f3digo do requisito pode ser simplesmente um n\u00famero, refletindo o n\u00famero sequencial do requisito, ou pode conter um c\u00f3digo do tipo de requisito, c\u00f3digo do sistema ou agregado ao qual se aplica, c\u00f3digo do par\u00e2metro, c\u00f3digo de localiza\u00e7\u00e3o e muito mais, que um engenheiro puder imaginar. (op\u00e7\u00e3o de uso de codifica\u00e7\u00e3o veja no artigo)<\/p>\n<p><\/p>\n<p>A tabela 1 apresenta um exemplo simples de codifica\u00e7\u00e3o de requisitos.<\/p>\n<p><\/p>\n<ol>\n<li> c\u00f3digo da fonte dos requisitos R- requisitos do TSD; <\/li>\n<li> c\u00f3digo tipo de requisitos E \u2013 requisitos \u2013 par\u00e2metros do ambiente externo, ou condi\u00e7\u00f5es de opera\u00e7\u00e3o;<br \/>\n S \u2014 requisitos garantidos pelo sistema;<\/li>\n<li> c\u00f3digo do estado da aeronave 0 \u2013 qualquer, G \u2013 em repouso, F \u2013 no voo;<\/li>\n<li> c\u00f3digo do tipo de par\u00e2metros f\u00edsicos T \u2013 temperatura, P \u2013 press\u00e3o, G \u2013 consumo, umidade H;<\/li>\n<li> n\u00famero sequencial do requisito.<\/li>\n<\/ol>\n<p><\/p>\n<table>\n<tr>\n<td><b>ID<br \/>\nRequisitos<\/b><\/td>\n<td><b>Descri\u00e7\u00e3o<\/b><\/td>\n<td><b>Par\u00e2metro<\/b><\/td>\n<\/tr>\n<tr>\n<td>REGT01<\/td>\n<td>A temperatura do ar atmosf\u00e9rico na entrada do sistema de refri\u00adgera\u00e7\u00e3o: em repouso \u2014 de menos 35\u00baC a 35\u00baC.<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>REFT01<\/td>\n<td>A temperatura do ar atmosf\u00e9rico na entrada do sistema de refrigera\u00e7\u00e3o: em voo \u2014 de menos 35\u00baC a 39\u00baC.<\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>REFP01<\/td>\n<td>A press\u00e3o est\u00e1tica do ar atmosf\u00e9rico em voo varia de 700 a 1013 hPa (de 526 a 760 mmHg).<\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>REFP02<\/td>\n<td>A press\u00e3o total do ar na entrada do sistema de refrigera\u00e7\u00e3o em voo varia de 754 a 1200 hPa (de 566 a 1050 mmHg).<\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RSGT01<\/td>\n<td>A temperatura do ar de refrigera\u00e7\u00e3o: em repouso, n\u00e3o deve exceder 27\u00baC. <\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RSGT02<\/td>\n<td>A temperatura do ar de refrigera\u00e7\u00e3o: em repouso, para blocos t\u00e9cnicos n\u00e3o deve exceder 29\u00baC. <\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RSFT01<\/td>\n<td>A temperatura do ar de refrigera\u00e7\u00e3o em voo n\u00e3o deve exceder 25\u00baC. <\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RSFT02<\/td>\n<td>A temperatura do ar de refrigera\u00e7\u00e3o: em voo, para blocos t\u00e9cnicos n\u00e3o deve exceder 27\u00baC. <\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RSGG01<\/td>\n<td>O fluxo de ar de refrigera\u00e7\u00e3o: em repouso, deve ser de pelo menos 708 kg\/h.<\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RSFG01<\/td>\n<td>O fluxo de ar de refrigera\u00e7\u00e3o: em voo, deve ser de pelo menos 660 kg\/h.<\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RS0T01<\/td>\n<td>A temperatura do ar nos compartimentos de equipamentos n\u00e3o deve exceder 60\u00baC. <\/td>\n<td> <\/td>\n<\/tr>\n<tr>\n<td>RSH01<\/td>\n<td>A quantidade de umidade livre de part\u00edculas finas no ar de refrigera\u00e7\u00e3o n\u00e3o deve exceder 2 g\/kg de ar seco.<\/td>\n<td> <\/td>\n<\/tr>\n<\/table>\n<p><\/p>\n<h3>Projeto do sistema de verifica\u00e7\u00e3o de requisitos.<\/h3>\n<p><\/p>\n<p>Para cada requisito de c\u00e1lculo, existe um algoritmo para avalia\u00e7\u00e3o da conformidade entre os par\u00e2metros calculados e os par\u00e2metros estabelecidos no requisito. No fundo, qualquer sistema de controle cont\u00e9m, por padr\u00e3o, algoritmos de verifica\u00e7\u00e3o de requisitos. Mesmo qualquer regulador os cont\u00e9m. Se a temperatura ultrapassar os limites, o ar-condicionado \u00e9 acionado. Assim, a primeira etapa de qualquer regula\u00e7\u00e3o \u00e9 a verifica\u00e7\u00e3o da conformidade dos par\u00e2metros com o requisito.<\/p>\n<p><\/p>\n<p>E como a verifica\u00e7\u00e3o \u00e9 um algoritmo, podemos utilizar os mesmos meios e ferramentas que usamos para criar programas de controle. Por exemplo, o ambiente SimInTech permite criar pacotes de projetos que cont\u00eam v\u00e1rias partes do modelo, realizadas como projetos separados (modelo do objeto, modelo do sistema de controle, modelo do ambiente, etc.).<\/p>\n<p><\/p>\n<p>O projeto de verifica\u00e7\u00e3o de requisitos torna-se, nesse caso, um projeto algor\u00edtmico e se conecta ao pacote do modelo. E, em modo de modelagem din\u00e2mica, realiza a an\u00e1lise de conformidade com os requisitos do termo de refer\u00eancia.<\/p>\n<p><\/p>\n<p>Um exemplo poss\u00edvel de como o projeto do sistema pode ser apresentado \u00e9 mostrado na Figura 1.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/e57fda1fb5b835a6ac961639db2b1749.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 1. Exemplo de apresenta\u00e7\u00e3o do projeto de verifica\u00e7\u00e3o. <\/i><\/p>\n<p><\/p>\n<p>Assim como para os algoritmos de controle, os requisitos podem ser apresentados na forma de um conjunto de folhas. Para facilitar o trabalho com algoritmos em ambientes de modelagem estrutural como SimInTech, Simulink e AmeSim, s\u00e3o usadas capacidades de cria\u00e7\u00e3o de estruturas em m\u00faltiplos n\u00edveis na forma de submodelos. Essa organiza\u00e7\u00e3o permite agrupar diferentes requisitos em conjuntos para simplificar o trabalho com o conjunto de requisitos, da mesma forma que \u00e9 feito para algoritmos de controle (veja a Fig. 2).<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/726ad4d5df1975131e71fc8a14ce71fe.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 2. Estrutura hier\u00e1rquica do modelo de verifica\u00e7\u00e3o de requisitos. <\/i><\/p>\n<p><\/p>\n<p>Por exemplo, no caso em quest\u00e3o, foram identificados dois grupos: requisitos para o ambiente e requisitos diretamente para o sistema. Portanto, \u00e9 utilizada uma estrutura de dados em dois n\u00edveis: dois grupos, cada um dos quais \u00e9 uma folha do algoritmo.<\/p>\n<p><\/p>\n<p>Para conectar os dados ao modelo, \u00e9 usada uma estrutura padr\u00e3o de forma\u00e7\u00e3o de banco de dados de sinais, na qual s\u00e3o armazenados dados para troca entre partes do projeto.<\/p>\n<p><\/p>\n<p>Durante a cria\u00e7\u00e3o e teste de software, esta base armazena leituras de sensores (an\u00e1logos aos sensores reais do sistema), que s\u00e3o utilizados pelo sistema de controle.<br \/>\n Para o projeto de teste, nesta mesma base de dados podem ser salvos quaisquer par\u00e2metros calculados no modelo din\u00e2mico, e dessa forma utilizados para verificar o cumprimento dos requisitos.<\/p>\n<p>\nO pr\u00f3prio modelo din\u00e2mico, neste caso, pode ser executado em qualquer sistema de modelagem matem\u00e1tica ou mesmo na forma de um programa execut\u00e1vel. A \u00fanica exig\u00eancia \u00e9 que existam interfaces de software para a emiss\u00e3o de dados de modelagem para o ambiente externo.<\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/ac56799b7a022325f72d0639cd85eba2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 3. Conex\u00e3o do projeto de verifica\u00e7\u00e3o com o modelo complexo. <\/i><\/p>\n<p><\/p>\n<p>Um exemplo de uma folha b\u00e1sica de verifica\u00e7\u00e3o de requisitos \u00e9 apresentado na figura 4. Do ponto de vista do desenvolvedor, ela representa um esquema de c\u00e1lculo comum, no qual o algoritmo de verifica\u00e7\u00e3o de requisitos \u00e9 apresentado graficamente.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/467f3217a65e0b4a1def034ce75c747e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 4. Folha de verifica\u00e7\u00e3o de requisitos. <\/i><\/p>\n<p><\/p>\n<p>As principais partes da folha de verifica\u00e7\u00e3o est\u00e3o descritas na figura 5. O algoritmo de verifica\u00e7\u00e3o \u00e9 formado de maneira an\u00e1loga aos esquemas de c\u00e1lculo dos algoritmos de controle. Na parte direita, h\u00e1 um bloco de leitura de sinais do banco de dados. Nesse bloco, ocorre o acesso ao banco de dados de sinais durante a modelagem.<\/p>\n<p><\/p>\n<p>Os sinais recebidos s\u00e3o analisados para calcular as condi\u00e7\u00f5es de verifica\u00e7\u00e3o dos requisitos. No caso em quest\u00e3o, \u00e9 feita uma an\u00e1lise da altitude para determinar a posi\u00e7\u00e3o da aeronave (se est\u00e1 estacionada ou em voo). Para esse objetivo, podem ser utilizados outros sinais e par\u00e2metros calculados pelo modelo.<\/p>\n<p><\/p>\n<p>As condi\u00e7\u00f5es de verifica\u00e7\u00e3o e os par\u00e2metros verificados s\u00e3o enviados para os blocos de verifica\u00e7\u00e3o padr\u00e3o, onde a an\u00e1lise desses par\u00e2metros \u00e9 realizada para verificar a conformidade com os requisitos estabelecidos. Os resultados s\u00e3o registrados em um banco de dados de sinais de forma que possam ser usados para a gera\u00e7\u00e3o autom\u00e1tica de uma lista de verifica\u00e7\u00e3o.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/1aa7778f56190bf51c112e29eab8a13c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 5. Estrutura da folha de c\u00e1lculo de verifica\u00e7\u00e3o de requisitos.<\/i><\/p>\n<p><\/p>\n<p>N\u00e3o \u00e9 necess\u00e1rio utilizar sinaliza\u00e7\u00f5es contidas no banco de dados como par\u00e2metros verificados, que s\u00e3o controlados pelos par\u00e2metros calculados durante o processo de modelagem. Nada impede que, dentro do projeto de requisitos, sejam realizados c\u00e1lculos adicionais, assim como calculamos as condi\u00e7\u00f5es de verifica\u00e7\u00e3o.<\/p>\n<p><\/p>\n<p>Por exemplo, tal requisito:<\/p>\n<p><\/p>\n<p> <i>O n\u00famero de ativa\u00e7\u00f5es do sistema corretor durante o voo at\u00e9 o destino n\u00e3o deve exceder 5, e o tempo total de opera\u00e7\u00e3o do sistema corretor n\u00e3o deve ultrapassar 30 segundos.<\/i><\/p>\n<p><\/p>\n<p>Nesse caso, um algoritmo contador de ativa\u00e7\u00f5es e tempo de opera\u00e7\u00e3o total \u00e9 adicionado ao esquema de c\u00e1lculo do projeto de requisitos.<\/p>\n<p><\/p>\n<h3>Bloco de verifica\u00e7\u00e3o de requisitos padr\u00e3o.<\/h3>\n<p><\/p>\n<p>Cada bloco de verifica\u00e7\u00e3o de requisitos \u00e9 destinado a calcular a execu\u00e7\u00e3o de um requisito de um tipo espec\u00edfico. Por exemplo, nos requisitos ambientais, h\u00e1 um intervalo de temperaturas de opera\u00e7\u00e3o do ar ambiente em solo e em voo. Este bloco deve receber como par\u00e2metro a temperatura do ar no modelo e determinar se esse par\u00e2metro cobre o intervalo de temperaturas definido.\n<\/p>\n<p>O bloco cont\u00e9m duas portas de entrada, param e condition.<\/p>\n<p><\/p>\n<p>Na primeira \u00e9 aplicado o par\u00e2metro verificado. Neste caso, \"Temperatura do ambiente externo\".<\/p>\n<p><\/p>\n<p>Na segunda porta \u00e9 aplicada uma vari\u00e1vel booleana \u2013 a condi\u00e7\u00e3o de execu\u00e7\u00e3o da verifica\u00e7\u00e3o.<\/p>\n<p><\/p>\n<p>Se o segundo ingresso receber TRUE (1), o bloco realiza o c\u00e1lculo da verifica\u00e7\u00e3o do requisito.<\/p>\n<p><\/p>\n<p>Se a segunda entrada recebe FALSE (0), as condi\u00e7\u00f5es de verifica\u00e7\u00e3o n\u00e3o s\u00e3o atendidas. Isso \u00e9 necess\u00e1rio para levar em conta as condi\u00e7\u00f5es de c\u00e1lculo. No nosso caso, essa entrada \u00e9 usada para ativar ou desativar a verifica\u00e7\u00e3o dependendo do estado do modelo. Se a aeronave durante a modelagem estiver no solo, os requisitos relacionados ao voo n\u00e3o s\u00e3o verificados e vice-versa \u2013 se a aeronave estiver em voo, os requisitos relacionados \u00e0 opera\u00e7\u00e3o em estacionamento n\u00e3o s\u00e3o verificados.<\/p>\n<p><\/p>\n<p>Essa entrada tamb\u00e9m pode ser utilizada ao configurar o modelo, por exemplo, na fase inicial do c\u00e1lculo. Quando o modelo \u00e9 ajustado ao estado desejado, os blocos de verifica\u00e7\u00e3o est\u00e3o desligados, mas assim que o sistema atinge o modo de opera\u00e7\u00e3o requerido, os blocos de verifica\u00e7\u00e3o s\u00e3o ativados.<\/p>\n<p><\/p>\n<p>Os par\u00e2metros deste bloco s\u00e3o:<\/p>\n<p><\/p>\n<ul>\n<li>condi\u00e7\u00f5es limites: limite superior (UpLimit) e limite inferior (DownLimit) das faixas a serem verificadas;<\/li>\n<li> tempo de espera requerido do sistema nas faixas limites (TimeInterval) em segundos;<\/li>\n<li>identificador do requisito ReqName;<\/li>\n<li>permitibilidade de ultrapassar o limite Out_range \u2013 uma vari\u00e1vel booleana que define se a sa\u00edda de um valor fora da faixa verificada \u00e9 uma viola\u00e7\u00e3o.<\/li>\n<\/ul>\n<p><\/p>\n<p>Em alguns casos, a sa\u00edda do valor verificado significa que o sistema tem margem e pode operar al\u00e9m da faixa de opera\u00e7\u00e3o. Em outros casos, a sa\u00edda significa que o sistema n\u00e3o \u00e9 capaz de manter os par\u00e2metros definidos dentro da faixa.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/3cd48fd6597d1ee11ecaea9931c3fbbb.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 6. Bloco t\u00edpico de verifica\u00e7\u00e3o de propriedade no diagrama e seus par\u00e2metros.<\/i><\/p>\n<p><\/p>\n<p>Como resultado do c\u00e1lculo deste bloco, \u00e9 gerada a vari\u00e1vel Result, que assume os seguintes valores:<\/p>\n<p><\/p>\n<ul>\n<li>0 \u2013 rNone, valor n\u00e3o definido;<\/li>\n<li>1 \u2013 rDone, requisito atendido;<\/li>\n<li>2 \u2013 rFault, requisito n\u00e3o atendido.<\/li>\n<\/ul>\n<p><\/p>\n<p>A imagem do bloco cont\u00e9m:<\/p>\n<p><\/p>\n<ul>\n<li> texto do identificador;<\/li>\n<li> displays num\u00e9ricos dos par\u00e2metros dos limites de medi\u00e7\u00e3o;<\/li>\n<li> identificador de cor do estado do par\u00e2metro.<\/li>\n<\/ul>\n<p><\/p>\n<p>Dentro do bloco pode haver um esquema l\u00f3gico de sa\u00edda bastante complexo.<\/p>\n<p>Por exemplo, para verificar a faixa de temperatura de trabalho do bloco mostrado na Figura 6, o esquema interno \u00e9 apresentado na Figura 7.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/9ce085c82417fdbc5230056de37af65a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 7. Esquema interno do bloco de determina\u00e7\u00e3o da faixa de temperaturas.<\/i><\/p>\n<p><\/p>\n<p>Dentro do bloco, o esquema utiliza propriedades definidas nos par\u00e2metros do bloco.<br \/>\nAl\u00e9m da an\u00e1lise da conformidade dos requisitos, o esquema interno do bloco cont\u00e9m um gr\u00e1fico necess\u00e1rio para a apresenta\u00e7\u00e3o dos resultados da simula\u00e7\u00e3o. Este gr\u00e1fico pode ser usado tanto para visualiza\u00e7\u00e3o durante o c\u00e1lculo quanto para an\u00e1lise dos resultados ap\u00f3s o c\u00e1lculo.<\/p>\n<p><\/p>\n<p>Os resultados do c\u00e1lculo s\u00e3o enviados para a sa\u00edda do bloco e simultaneamente registrados em um arquivo de relat\u00f3rio geral, que \u00e9 criado com base nos resultados de todo o projeto. (veja a Fig. 8)<\/p>\n<p><\/p>\n<p>Um exemplo de relat\u00f3rio gerado com base nos resultados da simula\u00e7\u00e3o \u00e9 um arquivo HTML, criado de acordo com um formato especificado. O formato pode ser ajustado de forma arbitr\u00e1ria para o formato aceito por uma organiza\u00e7\u00e3o espec\u00edfica.<\/p>\n<p><\/p>\n<p>Dentro do bloco, o esquema utiliza propriedades definidas nos par\u00e2metros do bloco.<br \/>\nAl\u00e9m da an\u00e1lise da conformidade dos requisitos, o esquema interno do bloco cont\u00e9m um gr\u00e1fico necess\u00e1rio para a apresenta\u00e7\u00e3o dos resultados da simula\u00e7\u00e3o. Este gr\u00e1fico pode ser usado tanto para visualiza\u00e7\u00e3o durante o c\u00e1lculo quanto para an\u00e1lise dos resultados ap\u00f3s o c\u00e1lculo.<\/p>\n<p><\/p>\n<p>Os resultados do c\u00e1lculo s\u00e3o enviados para a sa\u00edda do bloco e simultaneamente registrados em um arquivo de relat\u00f3rio geral, que \u00e9 criado com base nos resultados de todo o projeto. (veja a Fig. 8)<\/p>\n<p><\/p>\n<p>Um exemplo de relat\u00f3rio gerado com base nos resultados da simula\u00e7\u00e3o \u00e9 um arquivo HTML, criado de acordo com um formato especificado. O formato pode ser ajustado de forma arbitr\u00e1ria para o formato aceito por uma organiza\u00e7\u00e3o espec\u00edfica.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/8ff948417d799bce621e34c709154116.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 8. Exemplo de arquivo de relat\u00f3rio com os resultados da simula\u00e7\u00e3o.<\/i><\/p>\n<p><\/p>\n<p>Neste exemplo, a configura\u00e7\u00e3o do formato do relat\u00f3rio \u00e9 realizada diretamente nas propriedades do projeto, enquanto o formato na tabela \u00e9 definido como sinais globais do projeto. Neste caso, o SimInTech resolve automaticamente a configura\u00e7\u00e3o do relat\u00f3rio, e o bloco de grava\u00e7\u00e3o dos resultados no arquivo utiliza essas linhas para registrar no arquivo de relat\u00f3rio.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/bbe363bf1d81d00aebb67ca29a35811b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 9. Configura\u00e7\u00e3o do formato do relat\u00f3rio nos sinais globais do projeto.<\/i><\/p>\n<p><\/p>\n<h3>Uso de banco de dados de sinais para requisitos.<\/h3>\n<p><\/p>\n<p>Para automatizar o trabalho com as configura\u00e7\u00f5es de propriedades de cada bloco padr\u00e3o, uma estrutura t\u00edpica \u00e9 criada em um banco de dados de sinais. (veja a Fig. 10)<\/p>\n<\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/7e20a24ca5dadd2da6542325e964ec00.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 10. Exemplo de estrutura do bloco de verifica\u00e7\u00e3o de requisitos no banco de dados de sinais.<\/i><\/p>\n<p><\/p>\n<p>O banco de dados de sinais proporciona:<\/p>\n<p><\/p>\n<ul>\n<li> Armazenamento de todos os par\u00e2metros necess\u00e1rios dos requisitos do sistema.<\/li>\n<li> Visualiza\u00e7\u00e3o f\u00e1cil dos requisitos existentes no projeto a partir dos par\u00e2metros especificados e dos resultados atuais da simula\u00e7\u00e3o.<\/li>\n<li> Configura\u00e7\u00e3o de um bloco, ou grupo de blocos, usando uma linguagem de programa\u00e7\u00e3o de script. As altera\u00e7\u00f5es no banco de dados de sinais levam a mudan\u00e7as nos valores das propriedades do bloco no esquema.<\/li>\n<li> Armazenamento de descri\u00e7\u00f5es textuais, links para itens do documento de especifica\u00e7\u00e3o de requisitos ou identificadores no sistema de gest\u00e3o de requisitos.<\/li>\n<\/ul>\n<p><\/p>\n<p>As estruturas do banco de dados de sinais para requisitos podem ser facilmente configuradas para trabalhar com um sistema externo de gest\u00e3o de requisitos. O esquema geral de intera\u00e7\u00e3o com os sistemas de gest\u00e3o de requisitos est\u00e1 apresentado na Fig. 11.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do TFD durante a modelagem din\u00e2mica.\" src=\"\/wp-content\/uploads\/2020\/02\/3f6d67b8160255fd39d0d8bedf8be655.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 11. Esquema de intera\u00e7\u00e3o com o sistema de gest\u00e3o de requisitos.<\/i><\/p>\n<p><\/p>\n<p>A sequ\u00eancia de intera\u00e7\u00e3o do projeto de teste SimInTech com o sistema de gerenciamento de requisitos \u00e9 a seguinte:<\/p>\n<p><\/p>\n<ol>\n<li> O documento t\u00e9cnico \u00e9 dividido em requisitos.<\/li>\n<li> Os requisitos do documento t\u00e9cnico que podem ser verificados por meio da modelagem matem\u00e1tica de processos t\u00e9cnicos s\u00e3o destacados.<\/li>\n<li> Os atributos dos requisitos destacados s\u00e3o enviados para o banco de dados de sinais do SimInTech nas estruturas de blocos t\u00edpicos (por exemplo, temperatura m\u00e1xima e m\u00ednima).<\/li>\n<li> Durante o c\u00e1lculo, os dados da estrutura s\u00e3o enviados para os esquemas de c\u00e1lculo dos blocos, uma an\u00e1lise \u00e9 realizada e os resultados s\u00e3o salvos no banco de dados de sinais.<\/li>\n<li> Ap\u00f3s a conclus\u00e3o do c\u00e1lculo, os resultados da an\u00e1lise s\u00e3o transferidos para o sistema de gerenciamento de requisitos.<\/li>\n<\/ol>\n<p><\/p>\n<p>As etapas de trabalho com requisitos 3 a 5 podem ser repetidas durante o processo de design, quando ocorrem mudan\u00e7as na constru\u00e7\u00e3o e\/ou nos requisitos e, consequentemente, uma nova verifica\u00e7\u00e3o do impacto das altera\u00e7\u00f5es feitas \u00e9 necess\u00e1ria.<\/p>\n<p><\/p>\n<h3>Conclus\u00f5es.<\/h3>\n<p><\/p>\n<ul>\n<li> O prot\u00f3tipo do sistema criado proporciona uma redu\u00e7\u00e3o significativa no tempo de an\u00e1lise dos modelos existentes em rela\u00e7\u00e3o \u00e0 conformidade com os requisitos do documento t\u00e9cnico.<\/li>\n<li> A tecnologia de teste proposta utiliza modelos din\u00e2micos j\u00e1 existentes e pode ser usada at\u00e9 mesmo para quaisquer modelos din\u00e2micos, incluindo aqueles realizados fora do ambiente SimInTech.<\/li>\n<li> O uso da organiza\u00e7\u00e3o de dados em pacotes permite a cria\u00e7\u00e3o de pacotes de verifica\u00e7\u00e3o de requisitos, paralelamente ao desenvolvimento de modelos, ou mesmo o uso desses pacotes como documento t\u00e9cnico para o desenvolvimento de modelos.<\/li>\n<li> A tecnologia pode ser integrada com sistemas de gerenciamento de requisitos existentes sem custos significativos.<\/li>\n<\/ul>\n<p><\/p>\n<p>Para aqueles que chegaram at\u00e9 aqui, <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/be9qPox4AXk\">link para o v\u00eddeo com a demonstra\u00e7\u00e3o do funcionamento do prot\u00f3tipo.<\/a><\/noindex><\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/486336\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0442\u0435\u043c\u0443 \u00ab\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0448\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430?\u00bb, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b. \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u043c\u044b \u0443\u0431\u0435\u0434\u0438\u043b\u0438\u0441\u044c, \u0447\u0442\u043e \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0435\u0440\u043c\u044f\u0436\u043d\u043e\u0439 \u043f\u0440\u0430\u0432\u0434\u0435 \u0436\u0438\u0437\u043d\u0438, \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u043e\u043f\u0440\u043e\u0441: \u00ab\u0430 \u0447\u0442\u043e, \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043c\u044b \u0442\u0443\u0442 \u0438\u043c\u0435\u0435\u043c?\u00bb. \u0421\u043e\u0437\u0434\u0430\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u043c\u044b, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0445\u043e\u0442\u0438\u043c \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0448\u0438\u043c \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f\u043c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u044f\u0442\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":41258,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-41257","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0442\u0435\u043c\u0443 \u00ab\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0448\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430?\u00bb, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/avtomaticheskaya-proverka-trebovanij-tz-v-proczesse-dinamicheskogo-modelirovaniya\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u0422\u0417 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0442\u0435\u043c\u0443 \u00ab\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0448\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430?\u00bb, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/avtomaticheskaya-proverka-trebovanij-tz-v-proczesse-dinamicheskogo-modelirovaniya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-02-06T17:43:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-06T17:43:44+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Verifica\u00e7\u00e3o autom\u00e1tica dos requisitos do documento t\u00e9cnico durante a modelagem din\u00e2mica | ProHoster","description":"Continuando o tema \"Quais s\u00e3o suas evid\u00eancias?\", vamos olhar o problema da modelagem matem\u00e1tica por outro \u00e2ngulo.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/avtomaticheskaya-proverka-trebovanij-tz-v-proczesse-dinamicheskogo-modelirovaniya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u0422\u0417 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster","og:description":"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0442\u0435\u043c\u0443 \u00ab\u041a\u0430\u043a\u0438\u0435 \u0432\u0430\u0448\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430?\u00bb, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b.","og:url":"https:\/\/prohoster.info\/pt\/blog\/avtomaticheskaya-proverka-trebovanij-tz-v-proczesse-dinamicheskogo-modelirovaniya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-02-06T17:43:44+00:00","article:modified_time":"2020-02-06T17:43:44+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"41257","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:20:47","updated":"2022-10-01 02:07:44","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/41257","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=41257"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/41257\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/41258"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=41257"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=41257"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=41257"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}