12 de Março
Dicas
25 visualizações
Comentar (disqus)

O que o empreendedor precisa saber sobre software?

Presenciamos o surgimento de novas formas de impulsionar negócios, tal como aceleração de startups, com estratégias baseadas em tecnologia. O perfil empreendedor do século XXI procura proficiência nas mais diversas variáveis e restrições relacionadas ao seu negócio. Além de ter domínio do seu negócio, ele precisa investir em tecnologia, enquanto orientada a softwares. É possível então definir a noção mínima de softwares para o empreendedor que utiliza softwares como atividade-meio, considerando que não é exigido nenhum conhecimento aprofundado dos padrões ou técnicas envolvidos, mas a compreensão do impacto de cada fator na escolha de um software.

Natureza do software: Operacional ou Inovador

Luciano Cunha, mestrado em administração, realizou uma análise dos recursos de T.I. de 38 grandes empresas onde foi possível conceituar o foco em sistemas confiáveis como modo Fábrica (defensivos) e a busca por sistemas inovadores como modo Turnaround (ofensivos). A ambidestria (combinação de ambos os modos) é então nomeada por Modo Estratégico e reconhecida como “…um modo de atuação que pode influenciar positivamente o crescimento saudável das organizações.”

Sistema Operacional ou Inovador
Figura 1 – Sistema Operacional ou Inovador

Dashboards

Dashboard de sistema
Figura 2 – Dashboard de sistema

Painéis gráficos: A visão proporcionada pelo cruzamento de dados (sql) e a exploração de históricos com grandes quantidades de dados (big data) possibilita a geração de gráficos estatísticos. A partir da informação gerada, é possível realizar inferências e novos relatórios, caracterizando o conhecimento necessário para basear decisões. Dê preferência para softwares que entreguem os relatórios mais importantes em formato gráfico, com exportação total ou parcial em planilha.

API

Comunicação entre sistemas: A Interface de Programação de Aplicativos (API) é um canal de comunicação onde sistemas disponibilizam informações de seus bancos de dados em formatos de estruturas de dados para consumo em outros sistemas. Existem padrões para possibilitar dessa comunicação. As estruturas de dados são, na maioria, JSON e XML, seguindo especificações REST ou RESTful para identificar as URLs. Saiba mais no artigo RESTlike e RESTful.

Comunicação entre sistemas via API
Figura 3 – Comunicação entre sistemas via API

Escalabilidade

Escalabilidade de servidores de software
Figura 4 – Escalabilidade de servidores de software

Capacidade de expandir verticalmente e horizontalmente: estrutura de servidores para otimizar o processamento do sistema. Escalamos verticalmente ao otimizar uma máquina. Escalamos horizontalmente ao adicionar mais máquinas para processamento de uma mesma aplicação. Fornecedores da nuvem como Amazon, Digital Ocean e tantos outros já são preparados para fornecer escalabilidade vertical e horizontal por padrão.

Auditoria

Auditoria de sistemas, também conhecida por benchmark, é realizada por profissionais de desenvolvimento e infraestrutura para garantir a melhor performance em sistemas computacionais. Esse benchmark pode identificar falhas de segurança do sistema, prever um cenário de saturação, diminuir o downtime (indisponibilidade) e garantir o melhor custo/benefício em consumo de processamento do provedor.

Auditoria de software
Figura 5 – Auditoria de software

Linguagem de programação

Linguagem de programação de software
Figura 6 – Linguagem de programação de software

A(s) linguagem(ns) de programação de um sistema são definidas na fase de planejamento de acordo com a natureza desse sistema. Determinadas linguagens trabalham melhor a computação distribuída, outras respondem mais rápido a processamentos de uma biblioteca de algoritmos matemáticos, enquanto outras são suportadas no menor dos dispositivos. Ou seja, a escolha da linguagem é orientada à finalidade. Linguagens de programação transformam regras de negócio em código-fonte, de tal forma que os servidores possam suportar os usuários, armazenar, processar e exibir informações.

Banco de dados

Tão importante quanto as regras de negócio aplicadas na lógica de programação, é a estrutura que suporta a informação armazenada. Bancos de dados são ativos de valor que devem ser protegidos por firewalls e mecanismos de replicação. A má operação de um banco de dados pode levar a danos irreversíveis e grandes prejuízos.

Banco de dados de software
Figura 7 – Banco de dados de software

Internacionalização (i18n)

Internacionalização de software
Figura 8 – Internacionalização de software

Softwares utilizados em várias linguagens: Softwares utilizados em escala global adotam o inglês por padrão para desenvolvimento. No entanto, existem também projetos que estabelecem o suporte a multi-linguagem como requisito, considerando que nem todo operador do sistema é proficiente em inglês. Softwares com suporte i18n são codificados desde o início orientados a arquivos de linguagem, que facilitam a seleção de idioma para operação do software.

Pirataria

A utilização de software pirata é um cibercrime e deve ser uma prática banida da cultura de qualquer empresa. A fiscalização impõe multas severas que podem causar o fechamento do seu negócio. Apesar do aparente benefício oferecido por cópias-pirata de software, é uma atitude que desrespeita o trabalho dos fornecedores de software e expõe toda sua rede a riscos de scripts maliciosos.
Pirataria e Cybercrime
Figura 9 – Pirataria e Cybercrime

Peopleware

Peopleware
Figura 10 – Peopleware
O que o empreendedor realmente precisa saber sobre software, é que software é movido, é orientado por PEOPLEWARE: é programado por pessoas, para ser usado pessoas. Aqui cabe também discutir sobre a substituição de pessoas por máquinas (hardware e software), que deve ser encarada como necessária para a evolução do homem: aqui a máquina – que ocupa o lugar do ser humano para trabalhos repetitivos e pode até aprender e criar – permite com que o homem se dedique a trabalhos que exigem aplicação de astúcia, estratégia e tática, visão sistêmica e bom senso, que são os diferenciais do ser humano.
12 de Março
Dicas
25 visualizações
Comentar (disqus)
4 anos trabalhando em projetos PHP são base sólida para assimilação de outras linguagens e busca de novos desafios. Técnico em Informática, Graduado em Sistemas de Informação pela PUC Minas, criei projetos de sistemas web sob demanda para negócios variados. A criação de suportes para conciliação bancária e projetos EAD foram os projetos mais comuns desde então.