FAQ perguntas e respostas


Sistema de gestão empresarial (ERP), com uso via navegador web, através de acesso restrito seguro, com acesso para cada conselho regional de farmácia de somente seus dados cadastrados e que permite o gerenciamento das informações relacionadas a esses conselhos.

Utilizando sistemas de software livre, tanto para o ambiente de servidor, quanto para as tecnologias de desenvolvimento (linguagens de programação e banco de dados). A adoção de plataformas livres e abertas, cujas principais características são o compartilhamento do código-fonte e a independência de empresas que licenciam a propriedade intelectual do software, possibilita simplificar o desenvolvimento de novas aplicações, que não precisam ser programadas a partir do zero e sem grandes custos de terceiros. Essa vantagem tem um impacto significativo na racionalização dos investimentos e na diminuição da duplicação de esforços. Além de um maior número de desenvolvedores pode ser capaz de identificar e corrigir inconsistências ou bugs (falhas) em menos tempo.

Esse sistema de gestão das informações relacionadas aos processos utilizados nos CRFs, organizados em módulos, como cadastro, atendimento, fiscalização, cobrança, relatórios gerenciais, entre outros.
Totalmente online, com acesso seguro criptografado (SSL), similar ao que é utilizado pelos grandes portais de informação atuais (Facebook, Twitter, Google Plus, etc) e sistemas bancários. Com acesso restrito diferenciado por CRF, onde cada um visualizará somente os seus dados.

Essa característica, de desenvolvimento de sistemas online, já não é algo tão "moderno" ou mesmo "futurístico", ou seja, não é uma tendência de mercado, é uma realidade.
Permite o uso pelos conselhos regionais sem a necessidade de investimento pesado em infra-estrutura, bastando apenas que cada regional (ou seccional) tenha acesso à internet.

Área de acesso restrito para acesso via navegador web para os profissionais inscritos nos conselhos regionais, permitindo que os mesmos possam alterar alguns de seus dados do registro, visualizem as informações dos seus protocolos e visualizem os seus débitos registrados, para que possam imprimir.

Vantagem que fundamenta a construção do sistema é a grande facilidade de acesso aos dados e relatórios, permitindo ao CFF (e CRF's) ter informações padronizadas e centralizadas em tempo real, bastando para isso ter algum dispositivo (computador, notebook, tablet ou até mesmo smartphone) com acesso à internet.

Uso de tecnologias atuais e em evolução constante: Apresentação de dados (front-end): HTML, CSS, Bootstrap;
Processamento e efeitos de tela: JavaScript, Ajax, jQuery;
Integração de dados: JSON, CSV, XML;
Programação dinâmica e banco de dados: PHP e MySQL;
Totalmente orientado a objetos;
Código HTML separado do código de programação PHP;
Metodologia de camadas – MVC;
Uso de mapeamento objeto-relacional (ORM) para banco de dados;
Desenvolvimento contínuo e escalável, ou seja, permite a ampliação e melhorias de forma fácil;

HTML (abreviação para a expressão inglesa HyperText Markup Language, que significa Linguagem de Marcação de Hipertexto) é uma linguagem de marcação utilizada na construção de páginas na Web. Documentos HTML podem ser interpretados por navegadores. A tecnologia é fruto da junção entre os padrões HyTime e SGML.
HyTime é um padrão para a representação estruturada de hipermídia e conteúdo baseado em tempo. Um documento é visto como um conjunto de eventos concorrentes dependentes de tempo (como áudio, vídeo, etc.), conectados por hiperligações. O padrão é independente de outros padrões de processamento de texto em geral.
SGML é um padrão de formatação de textos. Não foi desenvolvido para hipertexto, mas tornou-se conveniente para transformar documentos em hiper-objetos e para descrever as ligações.

Fonte: HTML

Cascading Style Sheets (CSS) é uma linguagem de folhas de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação, como HTML ou XML. O seu principal benefício é a separação entre o formato e o conteúdo de um documento.
Em vez de colocar a formatação dentro do documento, o desenvolvedor cria um link (ligação) para uma página que contém os estilos, procedendo de forma idêntica para todas as páginas de um portal. Quando quiser alterar a aparência do portal basta portanto modificar apenas um arquivo.
Com a variação de atualizações dos navegadores (browsers) como Internet Explorer que ficou sem nova versão de 2001 a 2006, o suporte ao CSS pode variar. O Internet Explorer 6, por exemplo, tem suporte total a CSS1 e praticamente nulo a CSS2. Navegadores mais modernos como Google Chrome e Mozilla Firefox tem suporte maior, inclusive até a CSS3, ainda em desenvolvimento.
A interpretação dos navegadores pode ser avaliada com o teste Acid2, que se tornou uma forma base de revelar quão eficiente é o suporte de CSS, fazendo com que a nova versão em desenvolvimento do Firefox seja totalmente compatível a ele assim como o Opera já é. O Doctype informado ou a ausência dele determina o quirks mode ou o strict mode modificando o modo como o CSS é interpretado e a página desenhada.

Fonte: CSS

É uma linguagem de programação interpretada[2] . Foi originalmente implementada como parte dos navegadores web para que scripts pudessem ser executados do lado do cliente e interagissem com o usuário sem a necessidade deste script passar pelo servidor, controlando o navegador, realizando comunicação assíncrona e alterando o conteúdo do documento exibido.
É atualmente a principal linguagem para programação client-side em navegadores web. Começa também a ser bastante utilizada do lado do servidor através de ambientes como o node.js. Foi concebida para ser uma linguagem script com orientação a objetos baseada em protótipos, tipagem fraca e dinâmica e funções de primeira classe. Possui suporte à programação funcional e apresenta recursos como fechamentos e funções de alta ordem comumente indisponíveis em linguagens populares como Java e C++.

Fonte: JavaScript

É uma biblioteca JavaScript cross-browser desenvolvida para simplificar os scripts client side que interagem com o HTML.[1] Ela foi lançada em dezembro de 2006 no BarCamp de Nova York por John Resig. Usada por cerca de 77% dos 10 mil sites mais visitados do mundo, jQuery é a mais popular das bibliotecas JavaScript.[2] [3]
jQuery é uma biblioteca de código aberto e possui licença dual, fazendo uso da Licença MIT ou da GNU General Public License versão 2.[4] A sintaxe do jQuery foi desenvolvida para tornar mais simples a navegação do documento HTML, a seleção de elementos DOM, criar animações, manipular eventos e desenvolver aplicações AJAX. A biblioteca também oferece a possibilidade de criação de plugins sobre ela. Fazendo uso de tais facilidades, os desenvolvedores podem criar camadas de abstração para interações de mais baixo nível, simplificando o desenvolvimento de aplicações web dinâmicas de grande complexidade.

Fonte: JQuery

Bootstrap é o mais popular framework HTML, CSS, e JS para desenvolvimento de projetos responsivo e focado para dispositivos móveis na web.

Fonte: BootStrap

PHP (um acrônimo recursivo para "PHP: Hypertext Preprocessor", originalmente Personal Home Page) é uma linguagem interpretada livre, usada originalmente apenas para o desenvolvimento de aplicações presentes e atuantes no lado do servidor, capazes de gerar conteúdo dinâmico na World Wide Web.[2] Figura entre as primeiras linguagens passíveis de inserção em documentos HTML, dispensando em muitos casos o uso de arquivos externos para eventuais processamentos de dados. O código é interpretado no lado do servidor pelo módulo PHP, que também gera a página web a ser visualizada no lado do cliente. A linguagem evoluiu, passou a oferecer funcionalidades em linha de comando, e além disso, ganhou características adicionais, que possibilitaram usos adicionais do PHP, não relacionados a web sites. É possível instalar o PHP na maioria dos sistemas operacionais, gratuitamente. Concorrente direto da tecnologia ASP pertencente à Microsoft, o PHP é utilizado em aplicações como o MediaWiki, Facebook, Drupal, Joomla, WordPress, Magento e o Oscommerce.

Fonte: PHP

O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface. É atualmente um dos bancos de dados mais populares[1] , com mais de 10 milhões de instalações pelo mundo.[2]
Entre os usuários do banco de dados MySQL estão: NASA, Friendster, Banco Bradesco, Dataprev, HP, Nokia, Sony, Lufthansa, U.S. Army, U.S. Federal Reserve Bank, Associated Press, Alcatel, Slashdot, Cisco Systems, Google, entre outros.[3]

Fonte: MySQL

Ajax (acrônimo em língua inglesa de Asynchronous Javascript and XML[1] , em português "Javascript e XML Assíncrono") é o uso metodológico de tecnologias como Javascript e XML, providas por navegadores, para tornar páginas Web mais interativas com o usuário, utilizando-se de solicitações assíncronas de informações. Foi inicialmente desenvolvida pelo estudioso Jessé James Garret e mais tarde por diversas associações. Apesar do nome, a utilização de XML não é obrigatória (JSON é frequentemente utilizado) e as solicitações também não necessitam ser assíncronas[2].
A XMLHttpRequest tem um papel importante na técnica de desenvolvimento web Ajax para se comunicar com os scripts do lado do servidor.

Fonte: Ajax

JSON (com a pronúncia ['dʒejzən], J-son em inglês, (Jay-son)), um acrônimo para "JavaScript Object Notation", é um formato leve para intercâmbio de dados computacionais. JSON é um subconjunto da notação de objeto de JavaScript, mas seu uso não requer JavaScript exclusivamente.[1] [2] O formato JSON foi originalmente criado por Douglas Crockford e é descrito no RFC 4627. O media-type oficial do JSON é application/json e a extensão é .json.
A simplicidade de JSON tem resultado em seu uso difundido, especialmente como uma alternativa para XML em AJAX. Uma das vantagens reivindicadas de JSON sobre XML como um formato para intercâmbio de dados neste contexto, é o fato de ser muito mais fácil escrever um analisador JSON. Em JavaScript mesmo, JSON pode ser analisado trivialmente usando a função eval(). Isto foi importante para a aceitação de JSON dentro da comunidade AJAX devido a presença deste recurso de JavaScript em todos os navegadores web atuais.

Fonte: JSON

Os arquivos Comma-separated values também conhecido como CSV, são arquivos de formato regulamentado pelo RFC 4180 que faz uma ordenação de bytes ou um formato de terminador de linha.[1] Ele comumente usado em softwares offices, tais como o Microsoft Excel e o LibreOffice Calc.[2] [3]

Fonte: CSV

XML (eXtensible Markup Language) é uma recomendação da W3C para gerar linguagens de marcação para necessidades especiais.[3]
É um dos subtipos da SGML (acrônimo de Standard Generalized Markup Language ou Linguagem Padronizada de Marcação Genérica) capaz de descrever diversos tipos de dados. Seu propósito principal é a facilidade de compartilhamento de informações através da internet.
Entre linguagens baseadas em XML incluem-se XHTML (formato para páginas Web), RDF, SDMX, SMIL, MathML (formato para expressões matemáticas), NCL, XBRL, XSIL e SVG (formato gráfico vetorial). A principal característica do XML, de criar uma infraestrutura única para diversas linguagens, é que linguagens desconhecidas e de pouco uso também podem ser definidas sem maior trabalho e sem necessidade de ser submetidas aos comitês de padronização.

Fonte: XML

A orientação a objetos é um modelo de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos.

Em alguns contextos, prefere-se usar modelagem orientada ao objeto, em vez de programação. De fato, o paradigma "orientação a objeto", tem bases conceituais e origem no campo de estudo da cognição, que influenciou a área de inteligência artificial e da linguística, no campo da abstração de conceitos do mundo real. Na qualidade de método de modelagem, é tida como a melhor estratégia para se eliminar o "gap semântico", dificuldade recorrente no processo de modelar o mundo real do domínio do problema em um conjunto de componentes de software que seja o mais fiel na sua representação deste domínio. Facilitaria a comunicação do profissional modelador e do usuário da área alvo, na medida em que a correlação da simbologia e conceitos abstratos do mundo real e da ferramenta de modelagem (conceitos, terminologia, símbolos, grafismo e estratégias) fosse a mais óbvia, natural e exata possível.

Na programação orientada a objetos, implementa-se um conjunto de classes que definem os objetos presentes no sistema de software. Cada classe determina o comportamento (definido nos métodos) e estados possíveis (atributos) de seus objetos, assim como o relacionamento com outros objetos. C++, C♯, VB.NET, Java, Object Pascal, Objective-C, Python, SuperCollider, Ruby e Smalltalk são exemplos de linguagens de programação orientadas a objetos. ActionScript, ColdFusion, Javascript, PHP (a partir da versão 4.0), Perl (a partir da versão 5) e Visual Basic (a partir da versão 4) são exemplos de linguagens de programação com suporte a orientação a objetos.

Fonte: OOP

Model-view-controller (MVC), em português modelo-visão-controlador, é um padrão de arquitetura de software (design pattern) que separa a representação da informação da interação do usuário com ele. O modelo (model) consiste nos dados da aplicação, regras de negócios, lógica e funções. Uma visão (view) pode ser qualquer saída de representação dos dados, como uma tabela ou um diagrama. É possível ter várias visões do mesmo dado, como um gráfico de barras para gerenciamento e uma visão tabular para contadores. O controlador (controller) faz a mediação da entrada, convertendo-a em comandos para o modelo ou visão. As ideias centrais por trás do MVC são a reusabilidade de código e separação de conceitos.

Fonte: MVC

Mapeamento objeto-relacional (ou ORM, do inglês: Object-relational mapping) é uma técnica de desenvolvimento utilizada para reduzir a impedância da programação orientada aos objetos utilizando bancos de dados relacionais. As tabelas do banco de dados são representadas através de classes e os registros de cada tabela são representados como instâncias das classes correspondentes.

Com esta técnica, o programador não precisa se preocupar com os comandos em linguagem SQL; ele irá usar uma interface de programação simples que faz todo o trabalho de persistência.

Não é necessária uma correspondência direta entre as tabelas de dados e as classes do programa. A relação entre as tabelas onde originam os dados e o objecto que os disponibiliza é configurada pelo programador, isolando o código do programa das alterações à organização dos dados nas tabelas do banco de dados.

A forma como este mapeamento é configurado depende da ferramenta que estamos a usar. Como exemplo, o programador que use Hibernate na linguagem Java pode usar arquivos XML ou o sistema de anotações que a linguagem providencia. Em outros casos o mapeamento é feito diretamente no código, através de herança de classes especiais como é o caso do ORM do Django e do SqlAlchemy na linguagem Python. Algumas ferramentas gráficas podem ser usadas para gerar o código que representa o modelo do banco, como o ORM Pony também da linguagem Python.

Fonte: Mapeamento objeto-relacional (ORM)

Planejamento de recurso corporativo[1] (em inglês Enterprise Resource Planning - ERP) é um sistema de informação que integra todos os dados e processos de uma organização em um único sistema. A integração pode ser vista sob a perspectiva funcional (sistemas de finanças, contabilidade, recursos humanos, fabricação, marketing, vendas, compras etc) e sob a perspectiva sistêmica (sistema de processamento de transações, sistemas de informações gerenciais, sistemas de apoio a decisão, etc).[2]

O ERP é uma plataforma de software desenvolvida para integrar os diversos departamentos de uma empresa, possibilitando a automação e armazenamento de todas as informações do negócio.

ERP é a espinha dorsal dos negócios eletrônicos, uma arquitetura de transações que liga todas as funções de uma empresa, por exemplo, de processamento de pedido de vendas, controle e gerenciamento de estoque, planejamento de produção e distribuição e finanças.[3]

Fonte: ERP ( Enterprise Resource Planning )