Custo de Desenvolvimento de Software: O Que Você Precisa Saber
Custo de desenvolvimento de software refere-se ao investimento necessário para criar, testar e implementar um software, incluindo mão de obra, tecnologia e infraestrutura.
Você já parou para pensar no custo de desenvolvimento de software?
Nesse post, vamos explorar os fatores que influenciam esses custos, desde a escolha da equipe de desenvolvimento até as tecnologias a serem utilizadas.
Se você é de uma empresa de médio ou grande porte, ou está à frente de uma startup, entender esses custos pode fazer toda a diferença na hora de planejar suas soluções tecnológicas. Prepare-se para descobrir como otimizar seu investimento e garantir que cada centavo vale a pena!
Os principais fatores que impactam o custo na criação de software
Quando falamos sobre o custo de desenvolvimento de software, é vital compreender que vários elementos podem influenciar esse investimento. Desde a concepção inicial até a entrega final, cada fase traz consigo desafios e requisitos que podem alterar significativamente o valor total do projeto.
Complexidade do Projeto
A complexidade do software que se deseja criar é um dos fatores mais impactantes. Projetos mais complexos geralmente exigem mais tempo e recursos. Por exemplo, um software para empresas que integra múltiplos sistemas e bases de dados demanda uma abordagem mais elaborada do que uma aplicação simples. Assim, a programação personalizada e o planejamento detalhado são cruciais para garantir que todas as funcionalidades sejam atendidas.
Escolha da Tecnologia
A tecnologia utilizada no desenvolvimento de software também pesa no custo. Algumas linguagens de programação e frameworks podem ser mais caros do que outros, seja pela necessidade de habilidades especializadas ou pela infraestrutura necessária para suportá-los. Optar por soluções em tecnologias amplamente adotadas pode reduzir custos, mas pode não atender a todas as necessidades específicas do projeto.
Equipe Envolvida
Outra consideração importante é a equipe de desenvolvimento. O custo pode variar dependendo da experiência e do tamanho da equipe. Uma consultoria em TI com profissionais altamente qualificados pode oferecer soluções mais rápidas e eficientes, mas geralmente a um custo mais elevado. Além disso, a colaboração entre desenvolvedores, designers e especialistas em testes de qualidade é essencial para garantir que o produto final atenda às expectativas.
Metodologia de Desenvolvimento
A metodologia escolhida para o desenvolvimento ágil do software também impacta o custo. Metodologias ágeis podem permitir uma entrega mais rápida de funcionalidades e adaptação a mudanças, mas podem exigir mais iterações e, consequentemente, mais investimento. Por outro lado, abordagens tradicionais podem ter um custo inicial menor, mas podem resultar em atrasos e revisões dispendiosas.
Testes e Garantia de Qualidade
Os testes de qualidade são uma parte crítica do processo de desenvolvimento. Um bom plano de testes pode evitar retrabalhos e problemas futuros no software. A implementação de QA automatizado pode aumentar o custo inicial, mas é um investimento que pode resultar em economia a longo prazo, já que reduz o tempo de depuração de código e melhora a eficiência do processo.
Suporte e Manutenção
Finalmente, o suporte pós-lançamento e a manutenção contínua devem ser considerados. O custo de manter um software atualizado, corrigir bugs e implementar novas funcionalidades pode ser significativo. Portanto, é essencial planejar esses aspectos desde o início para garantir que o software sem falhas continue a atender às necessidades dos usuários.
Em resumo, entender os fatores que influenciam o custo de desenvolvimento de software é fundamental para tomar decisões informadas e garantir o sucesso do projeto. Avaliar cuidadosamente cada um desses aspectos pode ajudar a encontrar o equilíbrio entre custo e qualidade, resultando em soluções tecnológicas eficazes e sustentáveis para empresas e startups.
Como escolher a equipe ideal para otimizar seu investimento em desenvolvimento
Para alcançar o sucesso em um projeto de desenvolvimento de software, a escolha da equipe certa é fundamental. A equipe não apenas influencia a qualidade do produto final, mas também impacta diretamente no custo de desenvolvimento de software. Portanto, é essencial considerar alguns pontos-chave ao montar sua equipe.
Defina suas necessidades
Antes de mais nada, é importante ter clareza sobre o que você precisa. Pergunte-se: qual será o escopo do projeto? Quais funcionalidades são essenciais? Uma análise detalhada ajudará a identificar as habilidades necessárias na equipe. Isso pode incluir desde programação personalizada até a implementação de soluções em tecnologia para empresas.
Busque especialistas
Uma vez que você tenha uma ideia clara do que precisa, comece a procurar profissionais que tenham experiência nas áreas desejadas. Se o seu projeto envolve integração de sistemas ou desenvolvimento ágil, por exemplo, busque pessoas que tenham um histórico comprovado nessas áreas. Profissionais com experiência em consultoria em TI podem trazer insights valiosos para otimizar processos e minimizar riscos.
Considere a diversidade de habilidades
Ter uma equipe diversificada em termos de habilidades pode ser um grande diferencial. Combine desenvolvedores com expertise em diferentes linguagens de programação, designers de interface, e especialistas em testes de qualidade e QA automatizado. Essa diversidade não só enriquece o processo criativo, mas também ajuda a evitar falhas que podem ser comuns em projetos complexos.
Foque na comunicação
A comunicação é um fator crucial para o sucesso do projeto. Escolha uma equipe que seja capaz de se comunicar de forma eficaz, compartilhando ideias e feedbacks de maneira aberta. Isso é especialmente importante em projetos de desenvolvimento de software, onde pequenas falhas na comunicação podem resultar em grandes problemas. Uma boa comunicação também facilita a depuração de código e a resolução de problemas.
Realize testes constantes
Uma equipe que valoriza os testes de qualidade e a QA automatizado é essencial para garantir que o produto final esteja livre de falhas. Ao integrar uma cultura de testes desde o início do projeto, você não só economiza tempo, mas também reduz o custo total do projeto a longo prazo. A implementação de testes regulares ajuda a identificar e corrigir problemas antes que se tornem mais sérios.
Escolha uma abordagem flexível
Por fim, considere uma abordagem flexível no desenvolvimento. Equipes que utilizam metodologias ágeis têm a capacidade de se adaptar rapidamente a mudanças e feedbacks, o que é crucial em um ambiente dinâmico de soluções para startups. Essa flexibilidade pode resultar em um produto final mais alinhado com as necessidades do cliente e, consequentemente, em um melhor retorno sobre o investimento.
A escolha da equipe ideal é um passo decisivo para otimizar seu investimento em desenvolvimento de software. Ao seguir essas diretrizes, você estará mais preparado para enfrentar os desafios que surgirem e alcançar os resultados desejados.
Comparando modelos de precificação: qual o melhor para sua necessidade?
Entendendo os Modelos de Precificação
Quando se trata de desenvolvimento de software, a escolha do modelo de precificação pode impactar significativamente o resultado do projeto. Existem diferentes abordagens, e cada uma tem suas particularidades que podem atender a diferentes necessidades. É fundamental compreender essas opções para escolher a que mais se alinha aos seus objetivos e orçamento.
Modelos Comuns de Precificação
- Preço Fixo: Ideal para projetos bem definidos, onde o escopo é claro desde o início. Com esse modelo, você paga um valor fixo pelo projeto completo. Isso pode trazer segurança financeira, mas é importante considerar que mudanças no escopo podem acarretar custos adicionais.
- Por Hora: Este modelo é mais flexível e permite que você pague apenas pelo tempo efetivamente trabalhado. É uma boa opção para projetos em que o escopo pode mudar ao longo do tempo, mas é necessário ter um controle rigoroso sobre as horas gastas.
- Valor por Resultado: Aqui, o pagamento é baseado nos resultados alcançados. Esse modelo pode ser vantajoso para startups que buscam soluções escaláveis e eficientes, pois garante que você pagará apenas quando os objetivos forem atingidos.
Considerações na Escolha do Modelo
Ao escolher um modelo de precificação, é crucial considerar fatores como a natureza do projeto, a experiência da equipe e a possibilidade de alterações no escopo. Se você busca uma equipe de programação personalizada com expertise em QA automatizado e testes de qualidade, a escolha por um modelo que permita flexibilidade pode ser mais vantajosa. Além disso, a confiança na equipe de consultoria em TI pode influenciar na decisão, já que uma boa comunicação pode minimizar riscos e garantir um fluxo de trabalho mais eficiente.
A Importância da Transparência
Independentemente do modelo escolhido, a transparência entre você e a equipe de desenvolvimento é fundamental. Isso se aplica tanto ao preço quanto aos prazos de entrega. A clareza nas expectativas ajuda a evitar mal-entendidos e garante que todos estejam alinhados em relação ao progresso do projeto. Além disso, ao optar por soluções em desenvolvimento ágil, você permite que a equipe se adapte rapidamente às suas necessidades, resultando em um produto final mais alinhado ao que você realmente deseja.
Decidindo com Base em Sua Necessidade
Ao final, a escolha do modelo de precificação deve ser guiada por suas necessidades específicas. Avalie cuidadosamente o escopo do seu projeto, as capacidades da equipe e os possíveis desafios. Com um entendimento claro dos diferentes modelos e uma comunicação eficaz, você estará em uma posição melhor para fazer uma escolha que não apenas atenda ao seu orçamento, mas que também garanta a entrega de um software sem falhas que atenda às suas expectativas e objetivos de negócios.
O que é MVP e como ele pode reduzir seu custo de desenvolvimento
Entendendo o MVP
O MVP, ou Produto Mínimo Viável, é uma estratégia essencial no mundo do desenvolvimento de software. Ele representa a primeira versão de um produto que contém apenas as funcionalidades essenciais para atender as necessidades básicas dos usuários. A ideia central é lançar rapidamente um produto funcional no mercado, permitindo que a equipe de desenvolvimento receba feedback real dos usuários e faça melhorias contínuas.
Como o MVP impacta os custos
Um dos principais benefícios de adotar a abordagem do MVP é a redução significativa no custo de desenvolvimento de software. Ao focar apenas nas funcionalidades essenciais, as empresas podem evitar gastos desnecessários com recursos que talvez não sejam valorizados pelos usuários finais. Isso se traduz em:
- Menos tempo de desenvolvimento: Com um escopo reduzido, a equipe pode se concentrar no que realmente importa, acelerando o processo de entrega.
- Testes de qualidade mais focados: Ao implementar o MVP, é possível realizar testes de qualidade mais direcionados, garantindo que o produto inicial funcione adequadamente antes de adicionar novas funcionalidades.
- Feedback ágil: A interação com os usuários permite identificar rapidamente quais funcionalidades são realmente desejadas, evitando retrabalho e desperdício de recursos.
A importância de iterar com base no feedback
Após o lançamento do MVP, as empresas têm a oportunidade de coletar dados e feedback dos usuários para moldar as próximas etapas do desenvolvimento de software. Essa abordagem iterativa ajuda a evitar erros comuns, como o desenvolvimento de funcionalidades que não atendem às expectativas dos clientes. Além disso, com o uso de QA automatizado e depuração de código, a equipe pode garantir que o software evolua sem falhas, melhorando continuamente a experiência do usuário.
O papel da consultoria em TI
Para maximizar os benefícios do MVP e garantir um processo de programação personalizada eficiente, muitas empresas optam por contar com consultoria em TI. Esses especialistas ajudam a definir as funcionalidades essenciais e a planejar as iterações futuras, sempre com um olhar atento ao custo de desenvolvimento de software. Além disso, a consultoria pode auxiliar na escolha das melhores ferramentas e tecnologias, otimizando ainda mais o processo.
Conclusão sobre a abordagem MVP
Em um mundo onde a agilidade e a adaptação são fundamentais, adotar a estratégia do MVP não é apenas uma escolha inteligente, mas uma necessidade para empresas que buscam se destacar. Ao focar no que realmente importa e iterar com base no feedback, é possível não apenas reduzir os custos, mas também criar produtos que realmente atendam às necessidades dos usuários.
Tendências atuais que podem influenciar o custo de desenvolvimento de software
Nos últimos anos, o cenário do desenvolvimento de software passou por transformações significativas, moldadas por novas tecnologias e pelas demandas do mercado. Essas mudanças não apenas impactam a forma como os projetos são gerenciados, mas também têm um efeito direto no custo de desenvolvimento. Compreender essas tendências é essencial para qualquer empresa que busca otimizar seus investimentos em soluções tecnológicas.
Adoção de metodologias ágeis
As metodologias ágeis, como Scrum e Kanban, têm ganhado destaque por sua flexibilidade e capacidade de adaptação. Essa abordagem permite que as equipes reajam rapidamente às mudanças nas necessidades do cliente. Embora o investimento inicial possa ser alto, a longo prazo, a eficiência gerada pode reduzir custos, uma vez que falhas podem ser detectadas e corrigidas mais rapidamente. Essa agilidade também contribui para a entrega de software sem falhas, o que é crucial para a satisfação do cliente.
Automação de processos
Outro fator relevante é a automação, que tem se tornado uma tendência crescente. Ferramentas de QA automatizado e testes de qualidade são essenciais para garantir que o produto final atenda aos padrões desejados. A automação não só acelera o processo de desenvolvimento, mas também minimiza erros, reduzindo, assim, os custos associados à depuração de código e retrabalho.
Integração de sistemas
A integração de sistemas é uma necessidade crescente à medida que as empresas buscam soluções que funcionem de forma coesa. Essa prática pode demandar um investimento inicial maior, especialmente se a empresa precisar de consultoria em TI para garantir que todas as partes do sistema se comuniquem eficientemente. No entanto, uma boa integração pode resultar em operações mais suaves e redução nos custos operacionais a longo prazo.
Programação personalizada
Cada vez mais, empresas estão se voltando para a programação personalizada para atender a necessidades específicas. Embora isso possa aumentar o custo inicial, o investimento se justifica pela criação de soluções sob medida que atendem exatamente às demandas do negócio. Essa personalização também pode resultar em melhorias significativas na eficiência e produtividade.
Foco em segurança
Com o aumento das ameaças cibernéticas, a segurança se tornou uma prioridade no desenvolvimento de software. Implementar medidas de segurança desde o início do processo de desenvolvimento pode elevar o custo, mas é um passo necessário para evitar gastos futuros com violações de dados e reparos. A segurança deve ser uma parte integrante da estratégia de desenvolvimento ágil, garantindo que o software não apenas funcione bem, mas também proteja os dados dos usuários.
Desenvolvimento remoto
A pandemia acelerou a tendência do trabalho remoto, o que afetou o custo do desenvolvimento de software de diversas maneiras. Por um lado, a possibilidade de contratar talentos globais pode reduzir custos, mas, por outro, pode haver desafios em termos de comunicação e gestão de equipes. O equilíbrio entre a eficiência do trabalho remoto e a qualidade do produto final é crucial para manter os custos sob controle.
Foco em experiência do usuário (UX)
Por fim, a experiência do usuário tornou-se um diferencial competitivo importante. Investir em design e pesquisa de UX pode aumentar o custo inicial, mas o retorno sobre esse investimento se traduz em maior satisfação do cliente e, consequentemente, em maiores receitas. Um software que oferece uma experiência agradável e intuitiva tende a manter os usuários engajados, reduzindo a taxa de abandono.
Considerações finais
Diante de tantas nuances, é evidente que as tendências atuais influenciam diretamente o custo de desenvolvimento de software. A adoção de práticas modernas e a busca por excelência em cada etapa do processo são fundamentais para garantir que o investimento traga os resultados esperados, resultando em soluções para startups e empresas consolidadas que estão prontas para enfrentar os desafios do futuro.
Como planejar um orçamento eficiente para o desenvolvimento de software
Planejar um orçamento eficiente para o desenvolvimento de software é essencial para garantir que sua ideia saia do papel e se torne uma realidade. Para isso, é necessário considerar diversos aspectos que podem impactar diretamente nos custos e na viabilidade do projeto. Um bom planejamento começa pela definição clara dos objetivos e funcionalidades que você deseja implementar. Isso ajuda a evitar gastos desnecessários e surpresas ao longo do caminho.
Identificando as Necessidades do Projeto
Antes de qualquer coisa, é importante entender o que realmente você precisa. Faça uma lista das funcionalidades essenciais que seu software deve ter. Isso pode incluir desde a interface do usuário até integrações com outros sistemas. Quanto mais clara for essa lista, mais fácil será para a equipe entender o escopo do projeto e oferecer estimativas realistas de custo. Além disso, considere a importância de realizar uma consultoria em TI para ajudar a refinar essas necessidades.
Avaliação da Equipe de Desenvolvimento
A escolha da equipe que irá atuar no projeto é um fator crucial para o sucesso e para a otimização do investimento. Existem diversas empresas de tecnologia e profissionais freelancers que oferecem serviços de programação personalizada. Avalie a experiência e a expertise dos candidatos em relação ao seu tipo de projeto. Uma equipe bem treinada e com experiência em desenvolvimento ágil pode acelerar o processo e reduzir custos com retrabalho.
Considerando os Testes e a Qualidade
Não adianta ter um software incrível se ele não for testado adequadamente. Incluir testes de qualidade desde o início do desenvolvimento é fundamental. Invista em testes de qualidade e em QA automatizado, pois isso pode evitar problemas futuros que geram custos adicionais. A depuração de código também deve ser uma prioridade, garantindo que o produto final seja robusto e livre de falhas.
Orçamento Flexível e Gestão de Mudanças
Um bom orçamento deve ser flexível o suficiente para acomodar mudanças que podem surgir durante o desenvolvimento. Às vezes, novas ideias ou melhorias podem ser identificadas, e é importante ter uma margem para isso. Portanto, reserve uma parte do orçamento para possíveis ajustes e inovações que possam surgir ao longo do processo. Essa abordagem não apenas ajuda a manter o controle financeiro, mas também garante que o software atenda às necessidades reais do usuário.
Monitoramento e Avaliação Contínua
Após iniciar o projeto, o monitoramento contínuo dos gastos em relação ao orçamento definido é essencial. Utilize ferramentas de gestão para acompanhar o progresso e os custos em tempo real. Isso possibilita fazer ajustes quando necessário e evitar que o projeto saia do controle financeiro. Lembre-se de que o custo de desenvolvimento de software pode variar, e estar atento a isso é fundamental para o sucesso do seu investimento. Além disso, não hesite em buscar soluções em tecnologia para empresas que possam agregar valor ao seu projeto.
Conclusão
Ao planejar um orçamento para o desenvolvimento de software, é fundamental ter uma visão holística do projeto, considerando desde a definição de necessidades até a escolha da equipe. Com um planejamento cuidadoso, você poderá otimizar seus recursos e garantir que sua solução atenda às expectativas, mantendo a qualidade e a funcionalidade necessárias.
Erros comuns que aumentam o custo de desenvolvimento e como evitá-los
No cenário atual de desenvolvimento de software, muitas empresas enfrentam o desafio de gerenciar os custos de maneira eficaz. Compreender os erros mais frequentes nesse processo é essencial para garantir um investimento inteligente e evitar surpresas financeiras. Vamos explorar algumas das armadilhas mais comuns e como você pode se proteger delas.
Falta de planejamento adequado
Um dos principais erros é a ausência de um planejamento sólido. Muitas vezes, as empresas começam o projeto sem uma visão clara do que desejam alcançar. É crucial definir metas e escopos detalhados antes de iniciar qualquer tarefa. A realização de reuniões de alinhamento com a equipe de consultoria em TI pode ajudar a esclarecer os objetivos e expectativas.
- Dica: Use ferramentas de gestão de projetos para visualizar o progresso e ajustar o planejamento quando necessário.
Ignorar a importância dos testes
Outro erro que pode elevar os custos é negligenciar os testes de qualidade. A falta de um processo de QA automatizado pode resultar em falhas no software que, posteriormente, exigem retrabalho e correções dispendiosas. Investir em uma fase de testes robusta, incluindo testes de qualidade e depuração de código, é fundamental para evitar problemas futuros.
- Dica: Integre testes contínuos ao longo do processo de desenvolvimento para identificar erros precocemente.
Comunicação ineficaz entre as partes envolvidas
A comunicação clara entre a equipe de desenvolvimento e os stakeholders é vital. Quando as expectativas não são bem comunicadas, há um risco maior de mal-entendidos que podem levar a retrabalhos. Realizar reuniões regulares e utilizar plataformas de comunicação eficiente pode minimizar esse risco.
- Dica: Crie um canal dedicado para feedback e atualizações de progresso, garantindo que todos estejam na mesma página.
Subestimar a importância da manutenção
Após o lançamento do software, a manutenção é essencial. Ignorar esse aspecto pode resultar em custos elevados a longo prazo. Implementar um plano de manutenção desde o início e considerar atualizações regulares ajudará a manter o software em alta performance.
- Dica: Reserve uma parte do orçamento para manutenção e melhorias contínuas.
Escolha inadequada de tecnologia
A escolha da tecnologia errada pode impactar significativamente os custos. Tecnologias desatualizadas ou inadequadas podem levar a um aumento nos gastos com programação personalizada e integração de sistemas. Avaliar as melhores opções tecnológicas disponíveis e escolher ferramentas que se alinhem com as necessidades do projeto pode evitar problemas futuros.
- Dica: Consulte especialistas em soluções em tecnologia para empresas para garantir a melhor escolha tecnológica.
Falta de flexibilidade no processo de desenvolvimento
Um erro comum é a rigidez no processo de desenvolvimento. O mercado está em constante mudança, e a capacidade de adaptação é crucial. Métodos como o desenvolvimento ágil permitem ajustes rápidos conforme novas necessidades surgem, evitando despesas desnecessárias com mudanças de escopo.
- Dica: Adote uma abordagem ágil que permita iterações frequentes e adaptações rápidas.
Não considerar a experiência do usuário
Por último, mas não menos importante, desconsiderar a experiência do usuário (UX) pode resultar em custos elevados. Um software que não atende às necessidades dos usuários provavelmente enfrentará baixa adoção e exigirá revisões substanciais. Investir em pesquisa de usuário e testes de usabilidade desde o início é fundamental para criar soluções que realmente entreguem valor.
- Dica: Realize entrevistas e colete feedback dos usuários durante todo o processo de desenvolvimento.
Ao evitar esses erros comuns, sua empresa pode otimizar o custo de desenvolvimento de software e garantir que os projetos sejam entregues dentro do prazo e orçamento. Uma abordagem proativa e atenta aos detalhes pode transformar desafios em oportunidades de crescimento e inovação.
O papel do suporte e manutenção no custo total do software
Quando falamos sobre o custo de desenvolvimento de software, é fundamental não apenas focar na criação inicial do sistema, mas também considerar o suporte e a manutenção que acompanham essa jornada. Afinal, um software bem-sucedido vai além de ser apenas uma ferramenta; ele precisa ser sustentado ao longo do tempo para garantir que continue a atender às necessidades dos usuários e do mercado.
A importância do suporte contínuo
Após o lançamento de um software, muitos desafios surgem, e é nesse momento que o suporte se torna essencial. Problemas podem aparecer e as expectativas dos usuários podem mudar. Um suporte eficiente não apenas resolve questões pontuais, mas também ajuda a identificar melhorias que podem ser implementadas. Isso se traduz em um aumento na satisfação do cliente e, consequentemente, em uma maior retenção de usuários.
Manutenção como parte do ciclo de vida do software
A manutenção deve ser encarada como uma continuidade do desenvolvimento de software. Ela envolve atualizações regulares, correções de bugs, e a implementação de novas funcionalidades. As empresas que ignoram essa etapa correm o risco de perder usuários para concorrentes que oferecem soluções mais robustas e atualizadas. Portanto, o planejamento de um orçamento deve incluir esses custos recorrentes, que são parte integral do ciclo de vida do software.
Impacto no custo total
Os custos com suporte e manutenção podem representar uma parcela significativa do custo de desenvolvimento de software. Ao planejar, é importante considerar:
- Testes de qualidade: Investir em QA automatizado e em uma equipe de testes garante que o software funcione corretamente antes de ser entregue ao cliente.
- Depuração de código: Corrigir falhas rapidamente é crucial para manter a performance do software e evitar custos adicionais com insatisfações.
- Atualizações e melhorias: Incorporar feedback dos usuários e adaptar o software às novas tecnologias é vital para a longevidade da solução.
Planejamento estratégico
Para otimizar o custo total, é essencial que as empresas de tecnologia adotem uma abordagem proativa. A consultoria em TI pode ser uma aliada nesse processo, ajudando a estabelecer um plano de manutenção que se encaixe no orçamento e nas expectativas de crescimento. Além disso, a implementação de soluções em programação personalizada permite que cada funcionalidade do software seja ajustada às necessidades específicas dos usuários, minimizando a necessidade de retrabalho e, consequentemente, os custos.
Em um ambiente de desenvolvimento ágil, a comunicação constante entre as equipes de desenvolvimento e suporte é fundamental. Essa colaboração garante que todos estejam alinhados e que o software evolua de forma eficiente, reduzindo o tempo e os recursos gastos em correções e ajustes.


