Publicado em 19/08/2015
Autora: Carolina Gontijo Hamdan Coutinho (carolgontijo@gmail.com)
Gerente de Processos, atua na área de processo há mais de 5 anos, formada em Engenharia de Telecomunicações para Universidade FUMEC, Pós-Graduada em Engenharia de Software pela Universidade Estácio de Sá e em Gestão de Negócios com ênfase em Engenharia de Produção pelo IETEC.
Resumo
Este artigo trata a importância do conceito e das práticas de engenharia de requisitos voltada para o processo de construção de software para o controle de chão de fábrica orientado ao processo fabril de organizações manufatureiras de pequeno e médio porte, ou seja, o uso das técnicas de engenharia de requisitos para o desenvolvimento de um sistema de controle de chão de fábrica que se adapte às particularidades do processo industrial, permitindo uma comunicação clara entre negócio, processos e o desenvolvimento do software.
Introdução
As organizações de manufatura têm voltado muito a sua atenção para a busca por melhoria continua de processos que satisfaçam seus clientes e suas necessidades e as tornem mais competitivas frente ao mercado. Nesse contexto, a área de Tecnologia de Informação ganhou destaque com o desenvolvimento de sistemas que auxiliam a atingir esses objetivos. No chão de fábrica frequentemente são identificados problemas como falta de controle sobre o processo produtivo, estoque e o fluxo de materiais. Em algumas empresas, a solução para estes desafios está no desenvolvimento de um software especialmente projetado para essa finalidade. Neste artigo são apresentados o conceito e as práticas de engenharia de requisitos voltada para o processo de construção de software para o controle de chão de fábrica orientado ao processo fabril de organizações manufatureiras de pequeno e médio porte, ou seja, o uso das técnicas de engenharia de requisitos para o desenvolvimento de um sistema de controle de chão de fábrica que se adapte às particularidades do processo industrial, permitindo uma comunicação clara entre negócio, processos e o desenvolvimento do software.
Uma indústria é formada por diversos setores e cada um destes possui a sua respectiva função, que em conjunto, desenvolvem o chamado produto final. De uma forma geral, a setor produtivo da indústria, também chamado de chão de fábrica ou produção é responsável por 90% da industrialização do produto final e por isso, é considerando um setor de extrema importância na organização. O “coração” de um sistema de produção é seu subsistema de transformação, em que trabalhadores, matérias-primas e maquinas são utilizados para transformar insumos em produtos e serviços.
Diante dessa realidade, as organizações investem cada vez mais no processo produtivo. Os investimentos vão desde melhorias do processo, como por exemplo, a reengenharia, introdução de sistemas integrados de gestão, certificações ISO (International Standart Organization), adoção de filosofias como Lean Manufacturing, 5s, Six Sigma até melhorias nas condições e ambiente de trabalho, tudo isso visando beneficiar a qualidade do produto final.
Com a globalização e atualmente com a invasão de produtos chineses no mercado a competitividade industrial se tornou uma realidade e juntamente com ela seus reflexos. Na indústria mundial essa competitividade teve impacto principalmente nas áreas de planejamento, programação e controle da produção, pois são nessas áreas que ainda mora a fragilidade industrial, principalmente no que tange a programação de produção. Os softwares existentes para realizar a programação e controle de produção em sua maioria são genéricos, ou seja, programados para atender qualquer tipo de indústria, não leva em conta as particularidades da produção. Outro fator é que os softwares em sua maioria são voltados para organizações de grande porte.
Um software para controle de chão de fábrica deve ser composto de vários módulos e tratar os diversos tipos de informação presentes no ambiente industrial em que será implantado. A principal função de um software para controlar chão de fábrica é o tratamento das informações principais do processo produtivo, como por exemplo, a quantidade final de produto acabado que concluiu com sucesso o processo, os tempos de ciclo de cada produto, a rastreabilidade de cada produto na linha de produção, o registro da ocorrência de erros durante o processo produtivo, o registro de reparos de produtos danificados, entre outros. Sendo assim, desenvolver um software para controle de chão de fábrica é consequentemente gerar melhorias no processo produtivo, e isso é o ponto chave para que a organização controle a produção de forma eficaz.
No entanto, é um problema para o desenvolvedor do sistema de chão de fábrica tratar com o desconhecimento da mão de obra envolvida nas ações de planejamento, programação e controle da produção, que na maioria das vezes não possuem um conhecimento amplo e profundo sobre o assunto de forma a contribuir para o levantamento de requisitos para o desenvolvimento do sistema. Esse conhecimento limitado dos envolvidos acaba dificultando o desenvolvimento de soluções adequadas às exigências do mercado e da própria organização, o que leva a equipe de desenvolvimento perder parte do tempo de desenvolvimento gerenciando o problema. Outro ponto importante e que não deve ser deixado de lado é que para alcançar os objetivos pretendidos as mudanças serão inevitáveis e para que elas ocorram, quase sempre é necessário investimento.
Este artigo relata uma prática que demonstra a possibilidade da transformação de requisitos e regras de negócio a partir do modelo do processo produtivo da organização e que estes serão a base dos requisitos para o desenvolvimento de sistema. Como objeto de estudo, foi considerado o desenvolvimento de um sistema responsável por realizar o controle de chão de fábrica de uma indústria de médio porte.
Engenharia de Requisitos
Quando se trata de processo de desenvolvimento software, a Engenharia de Requisitos é uma fonte de engenharia de software que começa durante a atividade de especificação e continua durante a atividade de modelagem. Para o sucesso do desenvolvimento de qualquer software é fundamental que haja uma compreensão completa dos requisitos de software que depende diretamente da realização de uma comunicação eficaz. Para o sucesso da engenharia de requisitos deve-se aplicar um processo iterativo de análise do problema, documentação das observações resultantes e verificação acerca da precisão de entendimento e depende diretamente da realização de uma comunicação eficaz. Diante disto, considera-se a modelagem de processos de negócio como técnica para facilitar a comunicação entre operação e analistas.
A engenharia de requisitos orientada ao modelo de negócio tem uma abordagem diferente do conceito tradicional, pois leva em consideração o negócio para o qual sistema será desenvolvido. Levantar os requisitos baseando-se no modelo de negócio da organização em questão é uma forma de ajudar na compreensão do ambiente organizacional pelos envolvidos e fornecer recursos para a levantamento e adequação dos requisitos baseados nos objetivos da organização. O desenvolvimento de requisitos baseado no modelo de negócio deve ter seu embasamento no mapeamento da estrutura da organização a fim de englobar todos os processos de níveis macro de acordo com as estratégias da organização. Na Figura 01 observa-se as atividades de Desenvolvimento de Requisitos e Gerência de Requisitos.
Figura 01: Processo de Engenharia de Requisitos. Fonte: WIEGERS (2003)
Os requisitos podem ser classificados nas seguintes categorias:
– Requisitos Funcionais: Definem as funções que o sistema deve satisfazer.
– Requisitos Não Funcionais: São relativos a restrições e aspectos de qualidade, tais como (performance, usabilidade, confiabilidade, segurança, escalabilidade, portabilidade).
– Requisitos Organizacionais: Envolvem as metas da empresa, suas políticas internas e estratégicas, estilo de gestão, posição no mercado.
Processos da Engenharia de Requisitos
Não há que se falar em produto de software sem antes levantar algumas questões como: o que deverá ser feito?, qual será o custo estimado?, o que deverá ser atendido?, quem são e quantos serão os envolvidos?. No entanto, responder a essas questões não é fácil. Para resolver essas questões, a Engenharia de Requisitos introduz processos com a finalidade de cobrir todas as atividades envolvidas na descoberta, documentação e evolução dos requisitos para um sistema.
Figura 02: Processo de Engenharia de Requisitos. Fonte: SOMMERVILE (2007)
Objetivos e Classificação dos Requisitos
Os requisitos têm por objetivo: estabelecer e estar conforme o especificado pelo cliente e equipe envolvida no projeto; deixar claro como e o que o sistema irá operar; os desenvolvedores devem ter uma visão concreta do sistema a ser desenvolvido; delimitar o sistema; planejar o desenvolvimento do sistema; e, fornecer subsídios para que o custo e o tempo de desenvolvimento do sistema sejam estimados o mais próximo do real. Os requisitos são classificados como funcionais, não funcionais, de domínio, do usuário e do sistema. Mas algumas destas classes ainda apresentam uma subclassificação. Uma breve descrição destas categorias é apresentada no que se segue.
Processo de desenvolvimento de software
O processo de criação de um software é um conjunto de atividades, tais como o levantamento de requisitos com as partes envolvidas, desenvolvimento, a administração ou manutenção, a compra ou contrato, que levam enfim ao produto final. É importante salientar que o processo de desenvolvimento de software deve ser documentado desde o início e conter na sua documentação pelo menos as seguintes informações: como será o produto final a ser desenvolvido; quais os passos serão adotados; os envolvidos diretos e indiretos, os insumos que serão utilizados e os resultados esperados. Os processos de software são inumeráveis, e não existe um processo ideal. Cada organização desenvolve uma abordagem diferente para o seu processo de software. No que tange a evolução do processo de desenvolvimento de software, é importante salientar que essa evolução ocorre para explorar a capacidade das pessoas em uma organização e as características específicas dos sistemas que estão sendo desenvolvidos. No caso de alguns sistemas, como os sistemas críticos, é necessário um processo de desenvolvimento mais estruturado. Nos sistemas de negócio, com requisitos que mudam rapidamente, um processo que seja mais flexível e/ou mais ágil costuma ser mais eficaz. Em empresas de pequeno e médio porte é possível que cada pessoa envolvida no processo seja responsável por decisões técnicas ou administrativas no desenvolvimento do software e o conhecimento individual precisa ser compartilhado. Para tanto, o conhecimento individual necessita ser explicitamente capturado e processado de maneira correta no momento de levantar os requisitos.
Desenvolver um software de acordo com os moldes da organização requer envolvimento pleno da equipe com as estratégias da organização, o desenvolvimento de software é um fenômeno que deve alinhar-se à estratégia empresarial. O que reforça a ideia de que processo de desenvolvimento de software é complexo, gerenciável, estratégico para as organizações, e que deve estar em plena interação com a gestão da organização.
Software de chão de fábrica
Independente do negócio da organização os sistemas de informação possuem uma base comum entre eles, como por exemplo, o gerenciamento de grandes volumes e variedades de informação, processamentos complexos, integração de tecnologias e foco principal na qualidade, produtividade e competitividade organizacional. O software de chão de fábrica é fundamental ao funcionamento do processo produtivo, e também para análise de determinado período em que existiu produção. É um sistema de informação industrial que tem por objetivo a aquisição e tratamento de informações referentes à produção. O ponto inicial do processo ocorre no momento em que as ordens de produção são imputadas no sistema, que ocorre no momento do planejamento da produção baseado na demanda da organização. A partir deste ponto são geradas e controladas pelo sistema as ordens de produção que são como um controle para a produção, indicando a matéria prima a ser utilizada, as quantidades a serem produzidas e o tempo de processamento. Durante a produção são coletadas informações inerentes ao processo produtivo, como por exemplo o cadastro de tempos e indicadores de desempenho como a produtividade e ocupação. Os dados obtidos pelo software de chão de fábrica contribuem para engenharia e planejamento de produção, possibilitando, que o planejamento antecipe problemas que podem vir a ocorrer durante o processo produtivo de um determinado produto, impactando no prazo de entrega ao cliente.
Planejamento e Controle da Produção
O planejamento e controle da produção baseia-se em um processo utilizado no gerenciamento das atividades do processo produtivo e pode ser visto como uma função de apoio e coordenação das atividades do processo produtivo, de forma que o planejamento possa ser atendido dentro do prazo e nas quantidades estabelecidas. Assim, entende-se que é função do planejamento e controle da produção assegurar o cumprimento do escopo planejado a partir da aplicação eficiente dos recursos de produção. É importante ressaltar que é objetivo do planejamento e controle da produção garantir que a capacidade disponível e a capacidade necessária estejam equilibradas entre si de forma a atender a produção planejada. Sendo assim, após identificar-se a capacidade necessária para atender à demanda da organização, o que deve ocorrer no momento do planejamento, cabe ao mesmo decidir como proceder de acordo com as políticas internas da organização.
Mensuração do desenvolvimento do software
A palavra mensuração no caso deste artigo é utilizada no contexto de medição de processos. Segundo o padrão 1061 do IEEE, métrica de qualidade de software é uma função que descreve uma unidade de software numericamente. O valor calculado pode ser interpretado como um meio pelo qual os atributos de qualidade do software são preenchidos. Uma métrica de software é qualquer tipo de mensuração que diz respeito a um sistema de software, um processo ou à documentação correspondente. Assim sendo, para o desenvolvimento do sistema de chão de fábrica para a Empresa A, foi necessário mensurar as rotinas, processos, reter e propagar as experiências adquiridas com o setor de produção e operações, trabalhar esses conhecimentos individuais em conjunto com novas informações e tecnologias disponíveis.
Durante o processo de mensuração é imprescindível a formulação de todos os processos, através da coleta, tratamento e o compartilhamento das informações do processo produtivo. Essas ações motivam e ajudaram no desenvolvimento do software de maneira a evitar o retrabalho, pois os requisitos são corretamente levantados, analisados e considerados. Porém, é de suma importância ponderar o que é indispensável, o que é necessário e o que não tem valor naquele momento, além de avaliar a capacidade da equipe de coletar, processar e utilizar todas as informações. É imprescindível buscar eliminar e filtrar o excesso e/ou falta de informações, descartando as que não tinham significado e relevância para o processo produtivo. A informação correta e suficiente é o elemento que mais contribui para a mensuração do desenvolvimento do software, pois ela comanda as atividades dos processos. Sendo assim, a fase de mensuração é indispensável, uma vez, que é nesse momento que a equipe mensura o desenvolvimento do software de maneira a averiguar que os requisitos entregues estavam de acordo com as demandas do software de chão de fábrica e que os mesmos foram apresentados de forma coesa, completa e possui a qualidade necessária e exigida pela organização.
Desenvolvimento do Software
Para desenvolver um software de chão de fábrica para empresas de pequeno e médio porte, considerando suas peculiaridades, entende-se que deve ser observada a existência de diversos tipos de informações inerentes ao processo produtivo da organização e o seu desenvolvimento deverá considerar as seguintes informações:
– Informações de Produtos: são informações de identificação e descrição dos produtos em termos de projetos e lista de materiais.
– Informações de Processo: São informações referentes ao processo produtivo, número de série, planejamento da produção, processos de manufatura, atividades e operações. Estas informações descrevem como produzir determinado produto.
– Informações de Recursos: São informações referentes à utilização de máquinas, equipamentos e recursos humanos, incluindo sua capacidade produtiva e disponibilidade.
– Informações de Planejamento: São informações de planejamento de curto, médio e longo prazo, bem como estoques e cronogramas de produção. Pode-se então saber quando cada matéria prima deve ser comprada, e quando e em que quantidade cada produto deve ser produzido.
– Informações de Produção ou Informações de chão-de-fábrica: São informações do dia-a-dia da produção, armazenando variáveis de processo, status de equipamentos, alocação de recursos, quantidade de produtos por ordem de produção, quantidade de produtos efetivamente produzidos, informações de estoque de produtos acabados e todas as informações provenientes do processo produtivo em si.
– Informações Administrativas: São informações de custo de matéria prima, dados de fornecedores e clientes, ordens de produção e centros de custo.
O levantamento de requisitos para desenvolver um sistema de chão de fábrica deve considerar a existência de diversos tipos de informações, desde a geração de número de série por ordem de produção, até informações como a quantidade total de produtos produzidos em um determinado período de tempo. Com base nisso, inicia-se o levantamento de requisitos para o desenvolvimento de um sistema completo que deve armazenar todas as informações presentes no ambiente da Organização. Para o levantamento dos requisitos sugere-se utilizar algumas técnicas de elicitação: Entrevistas; Oficinas; Reuniões de Brainstorming; Prototipação; Análise de documentação existente; Análise de sistemas existentes; e, Observação de pessoas trabalhando. Com base nisso podem obtém-se as seguintes funcionalidades para o software:
– Conter as informações de maneira integral do estoque: Controlar recebimento, armazenamento, posição, retirada e expedição de tudo que compõe o estoque.
– Controlar a ordem de produção: Controlar de forma integral a ordem de produção do produto, de forma que a separação de material e entrega do mesmo na produção seja controlada sistematicamente.
– Gerar numeração de série: Todo produto produzido deve ter seu número de série gerado e controlado pelo sistema.
– Conter as informações de produtos: identificação e descrição dos produtos, incluindo as informações de engenharia e o controle de cada versão do produto.
– Conter as informações de processo: São as informações referentes ao processo produtivo, atividades e operações. Estas informações descrevem como e quando os produtos foram produzidos.
– Conter as informações de recursos: armazena as informações referentes à utilização de máquinas, equipamentos e recursos humanos, incluindo sua capacidade produtiva e disponibilidade.
– Conter informações de Produção: armazenar as variáveis de processo, status de equipamentos, alocação de recursos, quantidade de produtos encomendadas, quantidade de produtos efetivamente produzidos, informações de estoque de produtos acabados e todas as informações provenientes do processo produtivo em si.
E assim, de acordo com os requisitos levantados inicia-se o desenvolvimento e a implantação do software de chão de fábrica. Apesar de não ser objeto desse artigo, é importante frisar que durante e após o desenvolvimento do software deve existir fases de ensaios/testes do sistema em desenvolvimento e que as mesmas são de extrema importância, pois o sistema irá operar o coração da Organização.
O Quadro 1 indica algumas das funcionalidades do sistema de chão de fábrica desenvolvido sob as premissas supracitadas.
Funcionalidades Sistema Chão de Fábrica |
Sistema de chão de fábrica controla toda a ordem de produção. Desde a solicitação de separação de materiais de acordo com a posição/quantidade até a entrega do produto acabado para armazenamento/expedição. |
Controle total da produção e rastreabilidade dos semi-acabados por número de série. |
Geração e controle de número de série via sistema. |
Todos os testes são computados por número de série. |
Todas as falhas são registradas por número de série. |
Reparos são executados e registrados pelo número de série do equipamento. |
Todo o material do estoque, seja matéria-prima, semi-acabado ou produto final possuí código único que nunca se repete e por esse número acontece todo o rastreio do material. |
Quadro 1: Funcionalidades do Software Chão de Fábrica
Ao final da implantação do sistema de chão de fábrica é possível deduzir que o desenvolvimento baseado no levantamento de requisitos de acordo com o processo produtivo funciona e evita retrabalho. No Quadro 2 são enumeradas as melhorias e ganhos da implantação do sistema de chão de fábrica desenvolvido baseado nos requisitos levantados de acordo com o processo fabril.
Melhoria | Ganho |
Sistema de chão de fábrica controla toda a ordem de produção, desde a separação de materiais de acordo com a posição que contém a menor quantidade do item a ser separado até a entrega do semi-acabado de volta ao estoque. | Ganho de tempo e mobilidade dentro estoque. Diminuição do retrabalho e da entrega de material para produção em excesso ou em falta. Redução de nas discrepâncias dos materiais solicitados pela ordem de produção e materiais entregues a linha de produção. |
Controle total da produção e rastreabilidade dos semi-acabados por número de série. | Redução para 0% nas discrepâncias da quantidade solicitada pela Ordem e produção e a quantidade de produto acabado entregue para o estoque. |
Todo o material do estoque, seja matéria-prima, semi-acabado ou produto final possuí código único que nunca se repete e por esse número acontece todo o rastreio do material. | Visibilidade real do estoque. Diminuição da discrepância entre estoque sistêmico x estoque físico, o que significa ganho monetário para a organização, pois o valor de ativo referente ao estoque passa a ser contabilizado de forma real. |
Quadro 2: Ganhos obtidos com o desenvolvimento do sistema de chão de fábrica
Os ganhos com um desenvolvimento de um sistema baseado nos requisitos da organização são valiosos não somente pelo valor em dinheiro que se ganha, mas também por gerar investimentos e melhorias no processo fabril, aquisição de novos equipamentos, treinamentos, etc. Outro ponto importante é que o valor gasto com o desenvolvimento do sistema não supera os benefícios gerados pelo mesmo. De maneira geral, resultados alcançados com o desenvolvimento são positivos, a implantação deve seguir um modelo simples, ser simplificado na sua adaptação, e os mais simples detalhes devem ser observados, é importante salientar que a simplicidade deve estar sempre dentre as prioridades na implantação de software. Outro ponto que deve ser ressaltado é como que o levantamento de requisitos baseado no processo de negócios, para o desenvolvimento de sistemas, é altamente eficaz quando conduzido em conjunto com todos os envolvidos em casos quando é necessária a construção de um sistema que dê apoio a partes dos processos modelados nesta arquitetura.
Conclusão
O objetivo desse artigo foi o de analisar as práticas de engenharia de requisitos voltada para o processo de construção de um software para o controle de chão de fábrica orientado ao processo fabril da Empresa A, de forma que o mesmo fosse desenvolvido de forma a atender as demandas da organização e trazer benefícios para a mesma. Desta forma, seria possível ter um sistema de controle de chão de fábrica totalmente desenvolvido de acordo com os processos produtivos da organização. A utilização da prática de levantamento de requisitos de acordo com o processo produtivo para o desenvolvimento do sistema trouxe resultados satisfatórios para a empresa. Além do desenvolvimento ter acontecido de forma satisfatória e em tempo adequado, o sistema deu visibilidade ao processo produtivo, reduzindo tempo de separação de material, envio de material nas quantidades corretas para a linha de produção, armazenamento de forma organizada de matéria-prima, semi-acabados e produto final no estoque e controle da produção de forma a ter uma visão completa do que está na linha de produção. Como este artigo é resultado de um estudo de caso específico da Empresa A, não é garantida a extensão dos resultados obtidos com essa prática para uma situação mais genérica. No entanto, este artigo é mais um indício que o investimento em T.I dentro das empresas, principalmente no chão de fábrica, pode trazer resultados significativos. Como sugestão de futuros trabalhos, pode-se considerar a integração do modelo proposto com os diversos pacotes de software que fazem parte do processo produtivo, considerando as opções disponíveis no mercado. A ampliação do modelo considerando linhas flexíveis de manufatura.
É importante concluir que enquanto o desenvolvimento de software puro e simples leva à geração de um conjunto de requisitos básicos do processo, o desenvolvimento baseado nos requisitos do modelo de negócio da organização é uma maneira de formalizar os processos de forma a evitar retrabalho e permite a geração de vários conjuntos de requisitos de sistema com níveis de mecanização variados. A escolha de como os requisitos levantados serão implementados é um passo importante e formal do processo produtivo e não depende apenas dos propósitos da organização, mas também dos processos a que deverão ser aplicados, sendo levado em consideração uma série de fatores como as políticas organizacionais, custos, processo produtivo, produto a ser produzido, os envolvidos no processo, restrições legais e tecnológicas.
Referências Bibliográficas
CHIAVENATO, I. Introdução a Teoria Geral da Administração. 7ed. Rio de Janeiro: Elsevier, 2003.
FAVARETTO, F. Uma contribuição ao processo de gestão da produção pelo uso da coleta automática de dados de chão de fábrica. Tese (Doutorado em Engenharia Mecânica) – Escola de Engenharia de São Carlos. USP, São Paulo, 2001.
FORTULAN, M.R. O chão de fábrica e o gerenciamento da produção com ênfase no gerenciamento de ferramentas. Dissertação (Mestrado em Engenharia Mecânica) – Escola de Engenharia de São Carlos. USP, São Paulo, 1996.
IEEE 1061. IEEE Standard for a Software Quality Metrics Methodology, Institute of Electrical and Electronics Engineers, The Institute of Electrical and Electronics Engineers, Inc., NY, 1998.
JAMIL, G. L. Repensando a TI na empresa moderna: atualizando a gestão com a tecnologia da informação. Rio de Janeiro: Axcel Books do Brasil, 2001.
PRESSMAN, R. S. Engenharia de software. 6. ed. São Paulo: Mc Graw Hill,2006.
REZENDE, D. A.; ABREU, A. F. Tecnologia da informação aplicada a sistemas de informação empresariais. 3. ed. São Paulo: Atlas, 2003.
RUSSOMANO, V. H.. Planejamento e controle da produção. 6.ed. São Paulo: Pioneira, 2000.
SOMMERVILLE, I. Engenharia de software. 8. ed. São Paulo: Pearson Addison Wesley, 2007
KOTONYA, G.; SOMMERVILLE, I. Requirements Engineering: Processes and Techniques. UK: John Wiley & Sons, 1998.
WIEGERS, K. Software requirements. 2. ed. EUA: Microsoft Press, 2003.
Ainda não recebemos comentários. Seja o primeiro a deixar sua opinião.
Deixe uma resposta