Tuesday, April 14, 2015

Você conhece a diferença entre Software e Sistema? - Profissionais TI





Olá, pessoal, tudo certo?



Desde quando iniciei a minha carreira no ramo de programação,

sempre observei que alguns desenvolvedores

dizem “software” enquanto outros dizem “sistema”. A

princípio, eu pensava que os dois termos eram idênticos, mas,

na verdade, existe uma diferença! Acompanhe o artigo e

saiba quando estes termos devem ser empregados de forma

adequada.




"http://s.profissionaisti.com.br/wp-content/uploads/2014/04/duvida-desenvolvedor-software.jpg"

alt="Imagem via Shutterstock" width="580" height="300">


Imagem via
"http://www.shutterstock.com/pt/pic-128395133/stock-photo-young-man-with-laptop-has-an-idea.html"

target="_blank">Shutterstock





“Eu tenho um sistema de controle de estoque desenvolvido em

Delphi…”




Quem já não ouviu uma frase parecida? Ela parece não ser

ambígua. Ao ouvirmos, sabemos claramente que o desenvolvedor

possui uma aplicação que controla estoques. Neste contexto,

simplesmente interpretamos a palavra “sistema” como “software”,

sem sabermos que são significados relativamente

diferentes. Sem mais delongas, já vou apresentar as definições

a seguir.



Escrevemos linhas de código na nossa ferramenta de

desenvolvimento e compilamos os arquivos para gerar um

executável, certo? Esse executável (também conhecido como

"http://www.profissionaisti.com.br/2013/12/artefatos-e-ferramentas-scrum/">

artefato) é o que chamamos de software. Em

outras palavras, é o programa que será instalado no computador

do usuário e disponibilizado para uso. Mas não é só isso! O

termo “software” ainda engloba os arquivos que serão

distribuídos com o executável, como bibliotecas, banco de

dados, demais arquivos de configuração e, claro, a documentação

do programa.



Um sistema, por sua vez, é um conjunto de

softwares que se interagem para atingir um objetivo em comum.

Portanto, quando mencionamos “sistema”, estamos nos referindo a

uma solução abrangente que envolve várias partes interligadas,

oferecendo um composto de funcionalidades para

"Levantamento de Requisitos: Você sabe o que é?" href=

"http://www.profissionaisti.com.br/2011/06/levantamento-de-requisitos-voce-sabe-o-que-e/">

atender as necessidades do usuário.



Ainda não ficou claro? Sem problemas. Vamos partir para os

exemplos e analogias!
"http://www.andrecelestino.com/wp-includes/images/smilies/icon_smile.gif"

alt=":)">



Considere um leitor de DVD de um computador. Esse hardware, por

si só, não faz nada. Para que ele funcione apropriadamente, é

necessário conectá-lo à placa-mãe para a transferência de

dados. Da mesma forma, a placa-mãe deve estar conectada à placa

de vídeo para exibir as imagens. Logo, as partes envolvidas

nessa funcionalidade formam um sistema, no qual poderíamos

definir, por exemplo, como “sistema de reprodução de DVDs”. Já

o programa que você utiliza para abrir o DVD, este sim é o

software.



Observe que um sistema não compreende somente a parte lógica

(software), mas também as partes físicas (hardware). Se uma

empresa de desenvolvimento fornece um leitor de certificados

digitais junto com um software para gerenciá-los, então é

correto afirmar que a empresa provê um sistema de gerenciamento

de certificados digitais. Por outro lado, supondo que o cliente

já tenha um leitor de certificados digitais, a empresa, então,

forneceria apenas o software de gerenciamento, e não o sistema.



Além disso, é bom ressaltar que um sistema também pode

abranger recursos humanos, ou seja, pessoas que estão

diretamente relacionadas à aplicação, como uma equipe de

suporte residente.



Bom, agora fica fácil entender o motivo pelo qual o Windows ou

o Linux são conhecidos como Sistemas

Operacionais
, não é? O Windows fornece uma gama de

softwares (navegador de pastas, bloco de notas, calculadora,

gravador de som…) e controladores de hardware (gerenciador de

dispositivos de áudio, vídeo, mouse, teclado…), formando um

sistema útil para várias finalidades operacionais.



Quando você acessa o Windows Explorer, por exemplo, o

software se encarrega de exibir as unidades de disco

disponíveis, bem como as unidades removíveis e as pastas da

rede. Para obter essas informações, o Windows Explorer interage

com os controladores de hardware do sistema.



Pense no software como um guitarrista. Sozinho, o músico

apenas toca um instrumento, mas, em uma banda, que

seria o sistema, ele interage com outros instrumentistas,

produzindo músicas.



Mais um exemplo prático? Vamos nessa!



Imagine que o representante de uma empresa de desenvolvimento

esteja vendendo um produto:




“Nós temos um software para gestão de atendimento ao

consumidor que permite registrar reclamações, dúvidas e

sugestões, além de disponibilizar uma tela para

visualizar o histórico…”




Perfeito! Eis que ele complementa:




“… e também fornecemos um hardware que se comunica com os

terminais telefônicos para registrar automaticamente as

ligações recebidas.”




Opa… parou! Agora ele está apresentando uma solução mais ampla,

ou seja, um sistema!



A partir do momento que algo é incorporado no software, seja um
WebService, um módulo Mobile, um gerador

de relatórios ou um token, a solução se transforma

em um sistema.



Então é errado dizer que estou distribuindo um sistema quando,

na realidade, só tenho um software?



Não. Se a sua solução consiste em apenas um software, não há

objeções em representá-lo como um sistema. Porém, se você

oferecesse vários aplicativos que trabalham em conjunto, então

é errado defini-los meramente como um software.



Bom, leitores, espero ter esclarecido essa diferença!

Caso queiram complementar algo, deixem um comentário! Abraços!




0 comments:

Post a Comment