Aplicativo da Web para gerenciar a distribuição de software

9

Sou o cara de TI de uma pequena empresa de desenvolvimento de software. Temos software que pode ser baixado por clientes que adquiriram uma licença através do nosso site. Estou tentando encontrar uma solução para gerenciar melhor o processo de download do software. A cada nova versão, construímos para várias plataformas e configurações (totalizando cerca de 50 diferentes componentes para download individual). Cada cliente tem acesso apenas a um pequeno subconjunto desses componentes. Atualmente, estou "gerenciando" tudo isso com alguns scripts perl, mas é bem bruto.

Estou pensando em um aplicativo Web que permitiria aos clientes fazer login e visualizar os componentes para download que eles compraram. Não preciso de nada sofisticado para lidar com a compra do software por meio de nosso site ou algo assim. Pelo menos inicialmente, o acesso aos downloads individuais será gerenciado manualmente por cliente. Estou pensando em usar o módulo Project Drupal, mas seria necessário fazer algumas modificações pesadas para fazer o que precisamos. Existe algo mais adequado para isso?

Josh
fonte
Quais plataformas você está alvejando?
Richard June
No momento, nosso servidor da Web está executando Linux, e é a plataforma que eu gostaria de segmentar. Suponho que, se encontrasse um ótimo software construído no ASP.NET, consideraria configurar um servidor Windows para isso.
Josh
Também procurando por um aplicativo semelhante - a plataforma não é um problema - instalaremos um servidor para corresponder a um produto adequado. Adicionaram recompensas para incentivar as respostas.
Martin

Respostas:

3

Por que não o Django ?

Um modelo que consiste em todos os parâmetros (número da compilação, localização do sistema de arquivos, nome etc.) e usa o administrador interno para editar e adicionar esses objetos (ou fazê-lo programaticamente com um script de compilação). Estenda o objeto de usuário interno, agrupe algumas visualizações genéricas (object_detail, object_list) para exibir a (s) lista (s) de seus produtos etc. Uma união simples é tudo o que você precisa para exibir a lista de produtos por usuário, que é abstraída de um ORM decente (ou, use SQLAlchemy, se é essa a sua bagagem.)

Isso é apenas um argumento de como eu pessoalmente faria isso. O Django foi projetado para ser "pilhas incluídas", então você descobrirá que a maioria das coisas (tédio que você realmente não se importaria muito com este aplicativo, na verdade) está pronta. Autenticação de usuário, painel de administração etc.

É Python, então não tenho certeza se esse é o seu conjunto de habilidades. No entanto, acho que seria uma ferramenta sólida para o trabalho, dadas as informações fornecidas. Se você é um administrador de sistemas em tempo integral, recomendo aprendê-lo.

Sam Halicke
fonte
1
Eu segundo que, i tornou-se 2 x tão útil como um administrador, uma vez eu aprendi algumas python ... É uma linguagem poderosa que se encaixa para sysadmin extremamente bem .. +1
Arenstar
1

Você está procurando "software de gerenciamento de distribuição". Acho que a maioria das empresas de software lança seu próprio sistema ou usa um serviço de terceiros como o Share It ou o Kagi. Existem algumas ferramentas gratuitas como WebAuth ( http://bibledatabase.org/addon/sellsoft/index.htm ) e ferramentas pagas como a da TechSys ( http://www.tecsys.com/solutions/distribution-management /benefits.shtml ).

Uma pessoa mencionou qualquer ferramenta de comércio eletrônico que suporte downloads digitais, o que é outra possibilidade.

Acho que o problema de todas as soluções - mesmo as pagas - é que é como tentar matar uma mosca com uma espingarda. A aplicação da sua própria solução permite que ela seja totalmente integrada aos seus procedimentos de construção. Obviamente, outras ferramentas também podem ser ligadas, mas provavelmente não tão bem quanto algo feito sob medida.

bogeymin
fonte
Inesperadamente, as plataformas base do Windows não têm uma maneira padrão de instalar software no sistema operacional. As coisas evoluíram com os instaladores padrão (msi), mas ele não reconhece a rede e possui recursos limitados de script. O Windows não tem noção de um repositório de software, então você precisará baixar o software manualmente e instalá-lo. Talvez seja a hora da microsoft pensar sobre esse problema e resolvê-lo no Windows 8.
The Unix Janitor
1
Uma resposta sugeriu o Django, e se eu fosse construir um sistema desse tipo, isso é o que eu certamente usaria. O ORM do Django e a interface de administração rápida facilitariam o trabalho relativamente rápido dos principais requisitos de dados e o python é uma ferramenta poderosa e flexível a ser usada para automação e integração.
bogeymin
@ user37899 Embora nada disso esteja relacionado ao tópico, é claro que o Windows tem uma maneira padrão de instalar software (e tem uma desde 2000 e estava disponível para uso desde então no win95). O instalador do Windows é o instalador padrão que você mencionou como "msi". No que diz respeito a um repositório de software, consulte Visão geral da instalação de software de Diretiva de Grupo: technet.microsoft.com/en-us/library/cc738858(WS.10).aspx
Jim B
0

Se você usa o PHP, seria fácil desenvolver algo assim usando o codeigniter ou o Kohana.

A solução simples é que um banco de dados conteria todos os seus diferentes pacotes de software e URLs para esses pacotes. Em seguida, o nome de login ou cliente seria um link de 1 para muitos para os pacotes de software. Crie uma página de downloads e você pode mostrar a lista de pacotes vinculados a esse usuário.

Essa é a abordagem simples. O mais complexo / seguro seria garantir que o URL funcione apenas para o usuário conectado. E seria sensato garantir que o URL permaneça fixo para esse usuário. Não tenho muita certeza de como fazê-lo, para que o servidor da web lide com a transferência para obter melhor desempenho em vez do PHP, mas haverá uma maneira.

Matt
fonte
Obrigado pela sugestão, mas queremos especificamente comprar um produto, pois possuímos recursos de desenvolvimento da Web desprezíveis internamente.
Martin
Certo. Sugeri isso porque levaria apenas alguns dias para abrir um protótipo em funcionamento. Você pode gastar isso olhando ao redor. Eu não tinha certeza do quão experiente você é com a codificação básica.
Matt
0

Uma solução de comércio eletrônico que suporte produtos digitais como downloads seria bem adequada para esse propósito, eu acho.

Consulte http://en.wikipedia.org/wiki/Comparison_of_shopping_cart_software em soluções "Recursos gerais" com "Downloads digitais".

Soluções populares de comércio eletrônico que eu recomendaria são osCommerce, Magento e Spree. http://www.oscommerce.com/ http://www.magentocommerce.com/ http://spreecommerce.com/

O Magento tem uma extensão "Digital Downloads", mas custa US $ 500. http://www.magentocommerce.com/magento-connect/ITPDX+LLC/extension/1047/digital-download-enhancement/reviews

O Spree possui uma extensão "Downloadable" gratuita. http://spreecommerce.com/extensions/38-downloadable

turingmachine
fonte
0

Você pode usar um sistema de gerenciamento de conteúdo para controlar o acesso aos itens comprados. Afinal, é para isso que servem os CMSs.

Allen
fonte
0

Confira whmcs.

Possui um módulo de licenciamento - e muito barato para experimentar

www.WHMCS.com

É o que administra um grande número de organizações de hospedagem ... mas funciona bem para o que você está perguntando ...

Glenn Kelley
fonte