Qualidade nos nossos projetos

Qualidade nos nossos projetos

Um guia passo-a-passo de um QA da BySix

Cada membro da equipa é responsável por uma parte do desenvolvimento e o meu trabalho é garantir a qualidade. Se eu garantir qualidade em cada tarefa, irei fornecer qualidade no desenvolvimento e no projeto.

Para mim, estes são os passos mais importantes na garantia da qualidade:

 

1. ANÁLISE

 

Quando há novas tarefas, normalmente dedico tempo a observar onde cada tarefa será envolvida. Estas tarefas podem afetar desenvolvimentos anteriores e preciso pensar em todos os cenários possíveis para conseguir descobrir casos extremos. É como ter uma visão mais ampla do desenvolvimento.

 

2. PENSAMENTO

 

Com base na análise anterior, é hora de pensar nos cenários. Os cenários são diferentes uns dos outros e todos são importantes para garantir a qualidade do desenvolvimento.

 

3. DESENHO

 

Após analisar e pensar nos cenários, é hora de pensar nos casos de teste. Pode haver alguns casos de teste que posso reutilizar. Ter uma boa e organizada biblioteca de casos de teste é essencial para a otimização do tempo. Escrever novos casos é inevitável e eles são a parte mais importante da sua própria reutilização. Devem ser escritos de forma a serem o menos dependentes possível (para uma boa reutilização) e tão simples quanto possível, para que qualquer pessoa os possa executar.

 

4. EXECUÇÃO

 

Esta é a parte do processo que requer menos pensamento, é uma execução passo-a-passo. Trata-se de disciplina e de seguir o cenário tal como está. Olhando para trás no processo, todas as análises já foram feitas e aqui, trata-se apenas de execução.

 

5. COMUNICAÇÃO

 

Há qualidade em cada etapa do desenvolvimento. Comunicar com a equipa também faz parte da qualidade - identificar os cenários onde os requisitos não foram cumpridos e ajudar a resolver problemas com o desenvolvimento também fazem parte da qualidade.

 

Estes são os meus passos para garantir a qualidade nos projetos em que estou envolvido!

Como é que a IA está a revolucionar o desenvolvimento de software?
Como é que a IA está a revolucionar o desenvolvimento de software?

A Inteligência Artificial (IA) tem transformado várias indústrias, e a indústria do desenvolvimento de software não é exceção. Desde a automação de tarefas repetitivas até ao aumento da precisão dos testes de software, a IA desempenha um papel crucial em todas as fases do ciclo de vida do desenvolvimento de software. Este artigo explora como a IA está a revolucionar a indústria do desenvolvimento de software. Automação de codificação  Uma das áreas mais impactadas pela IA é a automação de codificação. Ferramentas de IA como o GitHub Copilot usam modelos de linguagem avançados para sugerir linhas de código ou até blocos inteiros de código aos desenvolvedores. Isto não só aumenta a eficiência, como também reduz a probabilidade de erros humanos. A capacidade da IA de analisar grandes bases de código e sugerir melhorias pode acelerar significativamente o processo de desenvolvimento. Testes de software inteligentes   Os testes de software são uma parte crucial do desenvolvimento, garantindo que os produtos são lançados sem erros. A IA está a revolucionar esta área ao automatizar a criação e execução de testes. Ferramentas de teste baseadas em IA podem gerar casos de teste, identificar bugs e até prever áreas suscetíveis a falhas. Além disso, podem adaptar-se e evoluir com o software, tornando os testes mais eficientes e eficazes. Manutenção preditiva   A IA pode prever quando e onde o software pode falhar, permitindo uma manutenção proativa em vez de reativa. Algoritmos de aprendizagem automática analisam padrões de uso e desempenho para identificar sinais de alerta antes que os problemas ocorram. Esta abordagem não só reduz o tempo de inatividade, como também minimiza os custos associados à manutenção de software. Desenvolvimento de software personalizado    A IA está a possibilitar a criação de software altamente personalizado e adaptável para atender às necessidades específicas dos utilizadores. Ao analisar grandes volumes de dados de utilizadores, a IA pode sugerir funcionalidades e melhorias que melhor atendam aos requisitos dos clientes. Este nível de personalização resulta em produtos mais eficazes e maior satisfação dos clientes. Assistentes virtuais para developers  Assistentes virtuais alimentados por IA, como chatbots de suporte técnico e assistentes de codificação, estão a ajudar os desenvolvedores a resolver problemas em tempo real. Estes assistentes podem responder a perguntas, sugerir soluções e até ajudar a depurar código, melhorando a produtividade e reduzindo o tempo necessário para resolver problemas. Análise de código e correção de erros  Ferramentas de análise de código baseadas em IA podem identificar padrões que indicam potenciais erros ou vulnerabilidades de segurança. Ao analisar grandes quantidades de código, estas ferramentas podem oferecer recomendações para otimizar o desempenho e a segurança. Além disso, a IA pode ajudar na depuração ao identificar a causa raiz dos problemas de forma mais eficiente do que os métodos tradicionais. Integração e entrega contínuas (CI/CD)   A IA está a otimizar as pipelines de CI/CD, tornando-as mais inteligentes e eficazes. Algoritmos de aprendizagem automática podem prever falhas de integração e sugerir correções antes que os problemas se tornem críticos. Isto resulta em ciclos de desenvolvimento mais rápidos e produtos de maior qualidade.   A Inteligência Artificial está a revolucionar a indústria do desenvolvimento de software de maneiras profundas e significativas. Ao automatizar tarefas, melhorar a precisão dos testes, prever falhas e personalizar produtos, a IA está a redefinir o que é possível no desenvolvimento de software. À medida que continuamos a explorar e expandir as capacidades da IA, podemos esperar ver ainda mais inovações que impulsionam a eficiência, a qualidade e a criatividade na indústria do desenvolvimento de software.

Leia mais
As diferenças entre nearshore, offshore, outsourcing e consultoria
As diferenças entre nearshore, offshore, outsourcing e consultoria

No atual ambiente empresarial, as empresas procuram frequentemente conhecimentos e serviços externos para aumentar a eficiência, reduzir custos e focar nas competências essenciais. Termos como nearshore, offshore, outsourcing e consultoria são frequentemente usados, mas referem-se a estratégias distintas. Com este artigo pretendemos clarificar estes conceitos e destacar as suas principais diferenças. Nearshore  O nearshore envolve a externalização de processos ou serviços empresariais para empresas em países próximos. O objetivo é tirar partido da proximidade geográfica, das semelhanças culturais e do alinhamento de fusos horários. Vantagens:     - Comunicação mais fácil devido a fusos horários semelhantes.     - Semelhanças culturais e linguísticas podem reduzir mal-entendidos.     - Tempos de viagem mais curtos para reuniões presenciais. Desvantagens:     - A redução custos pode ser menos significativas comparativamente à externalização offshore.     - Podem existir menos recursos disponíveis do que em locais offshore. Offshore  O offshore envolve a relocalização de processos ou serviços empresariais para empresas em países distantes, muitas vezes em diferentes continentes. A principal motivação é geralmente a redução de custos. Vantagens:     - Redução de custos significativa devido a menores custos laborais.     - Acesso a um maior leque de talentos e competências especializadas.     - Capacidade de operar 24 horas por dia devido a diferentes fusos horários. Desvantagens:     - Desafios de comunicação devido a diferenças de fuso horário e barreiras linguísticas.     - Potenciais diferenças culturais que podem afetar a colaboração.     - Tempos de viagem mais longos para reuniões presenciais. Outsourcing  O outsourcing é a prática de contratar organizações externas para lidar com certas funções ou serviços empresariais, podendo ser nearshore ou offshore. Vantagens:     - Foco nas atividades principais do negócio ao delegar funções não essenciais.     - Acesso a conhecimentos especializados e tecnologias avançadas.     - Flexibilidade em aumentar ou reduzir operações conforme necessário. Desvantagens:     - Potencial perda de controlo sobre as funções externalizadas.     - Preocupações com a qualidade se o fornecedor não cumprir as expectativas.     - Dependência do fornecedor externo para funções empresariais críticas. Consultoria  A consultoria envolve a contratação de especialistas externos para fornecer conselhos e soluções sobre desafios ou projetos empresariais específicos. Os consultores geralmente oferecem orientação estratégica em vez de apoio operacional contínuo. Vantagens:     - Acesso a conhecimentos especializados e melhores práticas.     - Perspetivas objetivas e novas sobre problemas empresariais.     - Modelos de envolvimento flexíveis (curto ou longo prazo). Desvantagens:     - Custos elevados para serviços de consultoria especializada.     - As recomendações podem nem sempre ser práticas ou viáveis de implementar.     - Risco de dependência de conselhos externos sem desenvolver capacidades internas. Overview  Compreender as diferenças entre nearshore, offshore, outsourcing e consultoria é essencial para tomar decisões informadas sobre como utilizar recursos externos de forma eficaz. Cada abordagem tem os seus benefícios e desafios únicos, e a escolha certa depende das necessidades e objetivos específicos do negócio.

Leia mais
Insights do CEO da BySix: orientar a empresa para o futuro
Insights do CEO da BySix: orientar a empresa para o futuro

Entrevista com Miguel Veloso, CEO da BySix 1. Quais são os principais objetivos que a BySix quer alcançar até o final de 2024?  Para nós existem objetivos intemporais e outros de curto e médio prazo. Começo por aqueles que são de curto e médio prazo. A BySix, desde o ano de 2023, tem-se vindo a reinventar, profissionalizar e capacitar nas áreas de gestão. Para isso, no início de 2023 fizemos um rebranding, começámos a trilhar o caminho para obtermos o certificado ISO9001 que atesta a capacidade de gestão e, consequentemente, a revisitar todos os processos de todas as áreas envolvidas no nosso negócio. Foi o ano de menor crescimento desde a nossa fundação, ligeiramente abaixo dos 50%, mas, ainda assim, superando as previsões traçadas durante o primeiro trimestre do ano. Para 2024 perspetivámos algo diferente, sendo que apostámos em áreas satélite, mas não menos importantes, do motor do nosso negócio, com a criação do departamento de marketing. Esta área veio-nos ajudar não só a divulgar a marca, mas também a estabelecê-la melhor no mercado, revisitando toda a nossa comunicação. Temos agora a possibilidade de comunicar melhor, ser mais claros e com a transparência do costume conseguirmos espelhar todo aquele que tem vindo a ser o nosso trabalho junto dos nossos parceiros. Estamos também a par da mudança de paradigma do mercado, os nossos clientes e potenciais clientes tornaram-se nos últimos anos muito mais minuciosos na escolha de parceiros e colaboradores, e nós acreditamos estar à altura do desafio que nos tem vindo a ser lançado, perspetivando encetar novas relações e continuar a crescer ao mesmo nível dos anos anteriores. Estando habituados a crescer todos os anos e, sendo taxativo, tenho de afirmar que esse tem de ser um dos objetivos intemporais da BySix. No entanto, não podemos querer apenas crescer, temos também de ter as fundações bem estabelecidas, para podermos fazê-lo sustentavelmente. 2. Quais são os principais mercados-alvo da BySix e como estão a ser abordados?  Alguns setores, como os da logística, automóvel e financeiro, foram pilares basilares na nossa fundação e crescimento. A BySix, com o seu imenso know-how acumulado nestas áreas, tem sido também parte integral do motor de várias empresas nesses mercados. Desde há uns anos, temos também vindo a abordar outros setores, e estamos a começar a sentir conforto a navegar neles em termos técnicos e de negócio. Desde 2022, fomos expandindo para e aprendendo mais sobre setores como os de retail, hospitality, telecomunicações e energia, chegando a 2024 com a certeza de que já somos também uma mais-valia para os parceiros com quem atuamos nessas áreas. Uma grande parte dos nossos serviços de desenvolvimento e consultoria são exportados (entre 80% a 90%), no entanto conseguimos aplicar grande parte da experiência que adquirimos em qualquer país, respeitando obviamente as nuances e as regras que cada país impõe. Teria todo o orgulho em afirmar o contrário – que 80% a 90% do nosso trabalho é desenvolvido a nível nacional – porque isso quereria dizer que faríamos parte do crescimento tecnológico nacional. A nossa abordagem continuará a ser a mesma: iremos trabalhar para abraçar os desafios em que tenhamos a certeza de que somos o parceiro ideal e uma mais-valia para o cliente e para o setor onde ele se insere, independentemente da sua nacionalidade e localização. Uma coisa é certa, seremos sempre transparentes e honestos, porque essa é a base de uma relação com qualidade e de longo prazo. 3. Quais são as principais diferenças da BySix em comparação com a concorrência?  A BySix pauta-se por uma cultura de proximidade e confiança. Parece apenas mais uma frase agradável de se ler e que toda a nossa concorrência utiliza, mas nós fomentamos realmente a proximidade entre todos os colaboradores, independentemente do seu nível hierárquico. Antes de fundar a BySix, estive envolvido em vários projetos internacionais, nos quais imperava a cultura nórdica, onde a exigência desde os aspetos técnicos aos de liderança era muita. No entanto, alguns dos vários pilares que os guiavam e que mais apreciei eram a confiança que depositam no trabalho do outro e a busca incessante pela evolução e aprendizagem. Se juntarmos à cultura nórdica o lado mais caloroso da cultura latina, ou seja, a empatia, a preocupação pelo próximo, a proximidade, o nosso lado destemido, acabamos por encontrar as bases que, na minha opinião, criam o lugar ideal para se trabalhar. Por isso, além da nossa extrema capacidade técnica, que é uma obrigação dada a essência da nossa empresa, a BySix distingue-se pela proximidade, confiança, autocrítica e destimidez – só assim conseguimos enfrentar com sucesso os desafios a que nos propomos, com a elevação que os nossos clientes e colaboradores exigem. 4. Como é que a BySix se tem adaptado às mudanças e tendências do mercado?  Nos últimos anos, provavelmente a maior alteração que observámos foi relativa ao equilíbrio entre a vida profissional e pessoal, e à exigência que isso acarreta não só em termos organizacionais, mas também a nível de segurança. Até 2019 todos os nossos colaboradores trabalhavam on-site, já com a facilidade e flexibilidade necessária para cooperarem remotamente mediante necessidade. Os anos de pandemia não trouxeram algo de novo para nós, no que toca ao regime de trabalho, e sentíamo-nos já preparados tanto para o trabalho remoto como híbrido, sendo que essa adaptação aconteceu de forma muito natural. Estipulámos, em concordância com as nossas equipas, que o trabalho híbrido é o que melhor se aplica à nossa realidade. Muitas vezes perguntam-me “e porque não remoto?” e a explicação é simples: queremos continuar a fomentar a nossa cultura, a trabalhar e a divertirmo-nos em conjunto. E, por isso, estarmos todos juntos uma a duas vezes por semana não significa necessariamente sacrificar o equilíbrio – significa sim ajudar a mantê-lo, porque, quer nós queiramos quer não, no trabalho também se criam amizades e essas são também uma ponte entre os campos pessoais e profissionais. 5. Em que áreas específicas da nossa operação vês maior necessidade de crescimento ou melhoria?  Não posso nem devo isolar uma área em específico. Temos a humildade necessária para afirmar que todas as áreas devem ser revistas, reinventadas e melhoradas, sempre que necessário, seja a nível de processos, a nível técnico ou mesmo em relação ao número de recursos humanos. O mercado de trabalho e o nosso setor estão em constante mutação. “Pequenas” novidades, como, por exemplo, o avanço significativo da inteligência artificial nos últimos anos, mudaram a nossa perspetiva de um momento para o outro, criando um número infindável de oportunidades a nível técnico, estrutural ou comportamental. Vou dar um pequeno exemplo: há uns anos nós tínhamos de fazer inúmeras validações técnicas, para primeira triagem, aos perfis de pessoas que se candidatavam às nossas vagas. Atualmente, toda a primeira linha de triagem é feita com inteligência artificial; a plataforma ATS que utilizamos atualmente transforma e analisa curriculums de candidatos automaticamente e isso facilita imenso o trabalho da equipa de recrutamento. Há, no entanto, algumas áreas identificadas onde queremos continuar a melhorar, como, por exemplo, no acompanhamento e retenção de talento. Não porque não o fazemos, mas porque num mercado competitivo como o nosso é necessário estar sempre na vanguarda, de maneira que todos os colaboradores façam este caminho em conjunto. Já não há o sentimento do “trabalho para a vida”, como antigamente, mas nós sabemos que o melhor ativo está dentro de portas e não lá fora.

Leia mais
Reforçar a cibersegurança corporativa: tendências e práticas
Reforçar a cibersegurança corporativa: tendências e práticas

No atual panorama digital, as ameaças cibernéticas estão a tornar-se cada vez mais sofisticadas e frequentes. Para as empresas, isto significa que as medidas de cibersegurança devem evoluir constantemente para proteger ativos críticos, dados sensíveis e a continuidade dos negócios. Neste artigo, exploramos tendências emergentes e práticas avançadas que estão a moldar a cibersegurança corporativa. Arquitetura de Confiança Zero (ZTA)  A Arquitetura de Confiança Zero é uma abordagem que assume que nenhuma entidade, interna ou externa, é confiável por padrão. Implementar ZTA envolve:     - Verificação contínua: O acesso é continuamente verificado em vez de apenas no ponto de entrada inicial.     - Micro-segmentação: Dividir a rede em segmentos menores para limitar o movimento lateral das ameaças.     - Controle de acesso rigoroso: Políticas baseadas em identidade e contexto, como localização e comportamento do utilizador. Inteligência Artificial e Aprendizagem Automática  A IA e a Aprendizagem Automática estão a revolucionar a forma como detetamos e respondemos a ameaças cibernéticas:     - Deteção de anomalias: Analisar grandes volumes de dados para identificar comportamentos incomuns.     - Resposta automatizada: Scripts automatizados para responder instantaneamente a incidentes comuns, reduzindo o tempo de reação.     - Análise preditiva: Prever potenciais vetores de ataque com base em padrões de ataques históricos. Segurança na Cloud  Proteger ambientes híbridos com a adoção crescente de soluções na nuvem, a proteção desses ambientes é crucial:     - Configurações seguras: Garantir que as configurações padrão da nuvem sejam alteradas para melhorar a segurança.     - Ferramentas CASB (Cloud Access Security Broker): Monitorizar e gerir o uso de serviços na nuvem para garantir conformidade e segurança.     - Criptografia de dados: Implementar criptografia tanto em trânsito como em repouso. Planos de Resposta e Recuperação de Incidentes  A preparação e a capacidade de resposta são críticas em caso de incidentes cibernéticos:     - Equipas de Resposta a Incidentes (IRT): Equipas dedicadas para lidar com violações de segurança e mitigar danos.     - Planos de Recuperação de Desastres (DRP): Procedimentos claros para restaurar operações críticas em caso de ataques significativos.     - Simulações e treinos: Realizar regularmente simulações de ataques para treinar a equipa e testar a eficácia dos planos de resposta. Conformidade e Regulamentos  As empresas devem estar cientes e em conformidade com os regulamentos de cibersegurança:     - GDPR, LGPD e outras leis: Adaptar políticas de privacidade e segurança para atender aos requisitos legais.     - Auditorias e avaliações regulares: Realizar avaliações periódicas para garantir conformidade contínua.   A cibersegurança corporativa não é apenas uma questão de tecnologia, mas também de estratégia e cultura organizacional. Adotar uma abordagem proativa e integrada pode ajudar as empresas a proteger-se contra ameaças. Invista em treinos, tecnologia avançada e políticas robustas para fortalecer a resiliência cibernética da sua organização.

Leia mais