Segundo Davis (1994, p. 4), o desenvolvimento de um sistema de informação começa pelo usuário, quando ele verifica a necessidade deste sistema, como apoio na solução de um problema e aciona a área de informática da empresa, para o seu desenvolvimento.
Embora este seja um procedimento normal, atualmente as empresas estão partindo para uma atuação mais proativa e, portanto, os sistemas não têm início, somente, quando da existência de um problema, mas também, para aproveitar uma oportunidade. Neste sentido surge o analista de negócios, que segundo Saviani (1996), é o responsável pelo alinhamento da tecnologia da informação com o business core e a visão estratégica da organização.
Quando surge a demanda pelo desenvolvimento ou aquisição de um novo software, na verdade, já existe uma idéia inicial dos objetivos a serem alcançados e das necessidades a serem atendidas. O levantamento junto aos usuários do sistema é uma depuração e uma complementação destas informações, além de ser uma forma, também, de promover a participação dos usuários no projeto, visando o seu comprometimento. É muito importante que na definição dos objetivos e das informações de saída do sistema, seja feito, paralelamente, um estudo de viabilidade, ou seja, se existem as condições necessárias de infra-estrutura, se existem ou é possível se obter os dados necessários e se os usuários estão ou poderão ser preparados para as novas exigências. Finalmente, é necessário fazer uma análise se a estrutura formal da organização está em sintonia com o fluxo de dados e informações pretendido.
Segundo Cassarro (1999, p. 82),
todo e qualquer sistema, por mais ineficientemente que tenha sido desenvolvido, poderá vir a ser implantado e proporcionar algum resultado se os usuários envolvidos estiverem convencidos de que o mesmo é útil a eles e à empresa. Em contrapartida, por melhor que seja um sistema, ele estará fadado ao insucesso, se os usuários não estiverem conformes com o mesmo.
Quando do desenvolvimento de um sistema de informação deve-se levar em conta a estrutura da empresa e o tipo de gestão, para determinar o fluxo dos dados e das informações, os níveis de acesso e a filosofia funcional do próprio sistema, uma vez que este sistema deverá ser coerente com a filosofia funcional (maior ou menor centralização) e dos níveis de autoridade e responsabilidade da empresa.
De acordo com Davis (1994, p. 7-14), Stair (1998, p. 310-358), Laudon e Laudon (1998) e Rezende (2002, p. 49-57), o ciclo de desenvolvimento de um sistema, pode ser dividido em:
− Definição da necessidade do sistema: É o ponto de partida, ou seja, quando a organização detecta que existe um problema ou uma oportunidade e decide pelo projeto de um sistema de informação.
− Definição do problema ou oportunidade: É um ponto crucial no desenvolvimento de um sistema, pois, a sua correta identificação permite ao analista de sistemas definir, de forma adequada, os objetivos e a delimitação do sistema. Segundo Davis (1994, p. 9), “uma definição do problema, mal- entendida, praticamente garante que o sistema não vai resolvê-lo”.
− Estudo de viabilidade: Inicia quando da solicitação do desenvolvimento do sistema, para a área de informática. Ele é constituído do levantamento das virtudes e deficiências do sistema atual, das necessidades de funções adicionais e dos objetivos a serem alcançados. Em função destas informações são levantadas várias alternativas de solução, os recursos necessários para desenvolver cada uma delas e os custos e benefícios envolvidos na implantação do sistema. A partir disto, verifica-se quais são as alternativas viáveis e entre elas qual a mais adequada para a situação presente. Como resultado desta etapa obtém-se a resposta à pergunta: Será que vale a pena desenvolver um sistema informatizado para resolver o problema levantado?
− Análise do sistema: É a determinação do que precisa ser feito para resolver o problema e atingir os objetivos desejados. Segundo Stair (1998, p. 314), “a ênfase geral da análise é coletar dados sobre o sistema atual e os requisitos do novo sistema”. O principal produto desta fase é uma lista de requisitos, relacionamentos, fluxos de dados e informações.
− Projeto: É a determinação do que o sistema vai fazer e como vai fazer para resolver o problema e atingir o objetivo esperado. Segundo Stair (1998, p. 320), “os sistemas de informação devem ser projetados segundo duas dimensões: lógica e física”.
O projeto lógico descreve os requisitos funcionais, ele indica o que o sistema fará para atender os requisitos levantados na análise. O projeto lógico envolve a finalidade de cada elemento do sistema, sem considerar software e hardware. O projeto físico especifica as características dos componentes do sistema (software, hardware, banco de dados, rede e telecomunicações) necessários para colocar o projeto lógico em ação.
− Implementação: É a fase em que o sistema de informação é fisicamente criado. Nesta fase são codificados os programas ou escolhido, adquirido e instalado o software; atualizada a documentação; escolhido, adquirido e instalado o hardware e preparados e treinados os usuários do sistema.
− Testes: Os testes a serem efetuados, no sistema, são muito importantes para aumentar a confiança dos usuários. Desta forma os testes devem ser amplos e irrestritos e, tanto o seu planejamento quanto a sua execução, devem ter a
participação dos usuários. Segundo Stair (1998, p. 346), é necessário testar cada um dos subsistemas de forma individual (teste de unidade), o sistema como um todo (teste do sistema), o sistema frente a um grande volume de dados (teste de volume), o novo sistema em relação aos demais sistemas da empresa (teste de integração) e executar os testes solicitados pelos usuários (teste de aceitação). A etapa de testes, além de verificar a exatidão do sistema, serve, também, para verificar a sua performance nas futuras condições de operação e para dar um atestado de garantia de qualidade ao sistema que será colocado em operação. − Descrição de procedimentos: É muito importante que o novo sistema entre em
operação com os manuais de descrição dos procedimentos (manual do usuário) para apoiar os usuários na sua utilização. Apesar da sua importância é comum que os sistemas entrem em operação sem o seu manual ou com o manual já desatualizado, como é o caso dos pacotes de software, onde os manuais, em português ou na língua de origem do sistema, se referem, normalmente, a uma versão anterior. Isto se deve a dificuldade ou mesmo a falta de interesse dos analistas de sistemas na elaboração do manual do usuário. Outra questão a ser considerada é que para o manual se tornar mais compreensível, para o usuário, é fundamental que ele participe da sua elaboração. Desta forma, pelo menos, a linguagem do manual estará mais ao nível do usuário. A participação do usuário, na elaboração do manual, também, não é simples, à medida que ele tem as mesmas dificuldades do analista de sistemas, em relação a sua elaboração. O usuário quer ter o manual, mas a exemplo do analista de sistemas, também, diz não ter “tempo” para fazê-lo. A última questão a respeito é: tendo o manual, o usuário, irá consultá-lo?
− Conversão dos bancos de dados: Estando o sistema testado e aceito, resta a etapa de importação dos dados dos sistemas anteriores para o novo sistema, caso haja uma base de dados para ser importada e convertida. A base de dados anterior pode ser decorrente de um sistema manual ou informatizado. No segundo caso a conversão dos dados pode ser feita via programas de conversão e, portanto, torna-se mais viável. De qualquer forma, dificilmente, a base de dados do novo sistema será igual a do anterior e, portanto, em ambos os casos é necessário avaliar com cuidado, a real necessidade e a real importância, bem
como, os custos e benefícios envolvidos na importação.
− Instalação: Após a conclusão das etapas anteriores resta agora a instalação do novo sistema, ou seja, colocá-lo em operação no seu ambiente e infra-estrutura definitiva e liberá-lo para os usuários.
− Avaliação: Esta etapa, muitas vezes esquecida, é de fundamental importância, pois é na avaliação do sistema, após algum tempo de uso, que se verifica até que ponto foram atingidos os objetivos do sistema e, em caso de dificuldades, quais as ações corretivas que devem ser tomadas.