quinta-feira, 23 de janeiro de 2014

Bom dia Galera!

Passando por aqui para atualizar as últimas informações sobre o nosso programa!

Terminamos a funcionalidade de Produtos por completo! Estamos realizando alguns testes para validar 100% a funcionalidade, mas pelo progresso que tivemos até agora, estamos com tudo Ok!

Agora, iremos partir para a última grande etapa: Vendas.
Talvez hoje ou amanhã já teremos algo para começar, dependendo do avanço...

Sucesso!

segunda-feira, 20 de janeiro de 2014

Bem vindo!

Este Blog tem como objetivo guardar todas as atualizações, desafios e desenvolvimentos relacionados ao programa de controle de estoque "Berry Stock Control" (o nome ainda pode ser modificado).

A necessidade das empresas atuais terem um sistema de controle de estoque, independente do(s) tipo(s) de produto(s) que as mesmas comercializam, deu inicio a ideia do projeto. 
Mas, se vocês pararem para pensar, esta ideia é realmente inovadora? De cara, parece que não.
O problema que enfrentamos hoje é a má qualidade dos softwares que desempenham esta função. Coisas básicas, como por exemplo, a data de aniversário de um cliente, não são tratadas da forma de gostaríamos (aceitando valores inesperados, ou até mesmo absurdos).

Uma pequena história para exemplificar: A ideia de começar com este projeto nasceu de uma necessidade de minha família. Meu pai está abrindo uma empresa, e me pediu para olhar alguns programas de controle de estoque que ele tinha achado. Pois bem, comecei a olhar os que ele tinha me passado.
O resultado que tive foi absurdamente frustrante: no primeiro que usei, fui direto nas "exceções" básicas que tratamos quando utilizamos qualquer programa, como por exemplo, colocar letras no lugar do preço do produto. Pra que... O primeiro programa já aceitou este tipo de dados e na hora de inserir no banco de dados, o mesmo travou e parou de funcionar (pra ver que nem existia um tratamento pós "submit" das informações). E a maior surpresa que tive é que este programa custava R$ 150,00!
O segundo, funcionava um pouco melhor. Já não aceitava algumas coisas "estranhas" como o que mencionei, porém quando fui cadastrar a idade do meu cliente, vi que o programa fazia um cálculo de quantos anos, meses e dias de vida o mesmo tinha. Poxa, que funcionalidade útil! Pena que o mesmo aceitava datas de nascimento como "Ano 3000", e o meu cliente ficava com -986 anos de vida... Pois é, mais uma frustração. E para me surpreender ainda mais, este programa custava R$ 400,00!

Com todos estes problemas e preços que não estavam a altura do trabalho, resolvi criar o meu próprio programa e mostrar para meus pais.
A ideia era que, como seria um trabalho próprio e que teria um inicio realmente do zero, todos os problemas casuais fossem tratados e funcionalidades que realmente agregassem valor fossem desenvolvidas.
Ao longo do desenvolvimento, tive ideias simples que achei muito promissoras! Outras, nem tanto. E assim a ideia foi tomando forma e crescendo...

Outro ponto muito importante que estamos visando é a flexibilidade do banco de dados utilizado na aplicação. Hoje, quase todos os programas "caseiros" que encontramos a venda na internet utilizam o Microsoft Access. E isso realmente me decepciona.
Em uma aplicação como esta, utilizar um banco de dados como o Access é como usar um elástico para matar um elefante.
Nossa aplicação estará preparada para suportar desde os bancos de dados não pagos (principal: PostgreSQL v9), como os pagos mais conceituados (principal: Oracle 11g).
Mas, qual a importância disso?
Bem, temos basicamente 3 respostas básicas para esta questão:
1º - Caso o cliente não tenha condições de pagar por um banco de dados de alto desempenho e disponibilidade (Oracle), temos a opção de um mais simples (porém, que desempenha seu papel muito bem): PostgreSQL;
2º - Preferência do cliente (as vezes o mais caro não é o melhor para você);
3º - Ambos os bancos podem ser instalados e configurados para serem acessados via internet. Isso quer dizer que, caso você tenha que vender algum produto fora de sua loja, poderá instalar o programa e o mesmo acessará o banco de dados via internet. Isso cria uma grande mobilidade e flexibilidade para o seu negócio!


Além da parte do banco de dados, o programa possui a sua parte lógica e o seu Front End (para os leigos, a tela de utilização) feitos na linguagem C# (do .NET, Microsoft).
O mesmo será um arquivo ".exe" para ser instalado no seu computador, sendo (até o momento) desenvolvido para funcionar na plataforma Windows 7. Ainda estamos testando o mesmo para a plataforma Windows 8, porém só iremos finalizar a homologação ao final do desenvolvimento (por questões internas).


Depois de explicar toda a parte de programação, chegamos a parte que interessa para o cliente: o embasamento do programa. 
Depois de pensarmos em como separaríamos os pilagres do programa, chegamos ao seguinte núcleo: "Cliente, Produto e Vendas". Cada um desses, a princípio, é totalmente customizável para nós, programadores. Isso quer dizer que, dependendo da origem e do embasamento de seu negócio, podemos adicionar funcionalidades e informações para ajudá-lo.
Para a nossa primeira versão, achamos que estes 3 pilares são o suficiente para suprir qualquer tipo de negócio.


Hoje, o programa está 60% concluído: toda a parte de clientes está pronta, e a finalização da parte dos produtos se aproxima.
A questão dos produtos foi algo desafiador para nós: queríamos implementar a funcionalidade de guardar fotos dos produtos para os nossos clientes. Este era um conhecimentos que não tínhamos previamente, o que gerou bastante estudo.


Por enquanto é isso. Queremos atualizar esta página diariamente (ou pelo menos tentar), para documentar todo o processo de desenvolvimento deste programa. Isso é importante tanto para nós, desenvolvedores (para controlarmos as nossas atividades e utilizar como um "diário de bordo"), como para vocês clientes (que ficam a par dos avanços e dificuldades que estamos enfrentando).

Obrigado a todos pelo apoio, e desculpe o texto gigastesco! Tentarei ser mais breve nas próximas postagens :)