Aplikacja internetowa do zarządzania dystrybucją oprogramowania

9

Jestem informatykiem w małej firmie zajmującej się programowaniem. Mamy oprogramowanie do pobrania przez klientów, którzy zakupili licencję za pośrednictwem naszej strony internetowej. Próbuję znaleźć rozwiązanie, aby lepiej zarządzać procesem pobierania oprogramowania. W każdej nowej wersji mamy kompilacje dla różnych platform i konfiguracji (łącznie około 50 różnych komponentów do pobrania indywidualnie). Każdy klient ma dostęp tylko do niewielkiej części tych komponentów. Obecnie „zarządzam” tym wszystkim za pomocą niektórych skryptów Perla, ale jest to dość prymitywne.

Myślę o aplikacji internetowej, która umożliwiłaby klientom logowanie się i przeglądanie zakupionych komponentów do pobrania. Nie potrzebuję niczego wymyślnego do czynienia z zakupem oprogramowania za pośrednictwem naszej strony internetowej lub czegoś podobnego. Przynajmniej na początku dostęp do poszczególnych plików do pobrania będzie zarządzany ręcznie dla poszczególnych klientów. Zastanawiam się nad użyciem modułu Project Drupal, ale wymagałoby to poważnych modyfikacji, aby zrobić to, czego potrzebujemy. Czy jest na to coś lepszego?

Josh
źródło
Na jakie platformy celujesz?
Richard,
Na naszym serwerze internetowym działa obecnie Linux, więc to platforma, na którą chciałbym być ukierunkowany. Podejrzewam, że jeśli znalazłem świetne oprogramowanie wbudowane w ASP.NET, rozważę skonfigurowanie do tego serwera Windows.
Josh
Również szukamy podobnej aplikacji - platforma nie stanowi problemu - zainstalujemy serwer pasujący do odpowiedniego produktu. Dodałem nagrodę, aby zachęcić do odpowiedzi.
Martin

Odpowiedzi:

3

Dlaczego nie Django ?

Model składający się ze wszystkich parametrów (numer kompilacji, lokalizacja systemu plików, nazwa itd.) Oraz użyj wbudowanego administratora do edycji i dodawania tych obiektów (lub zrób to programowo za pomocą skryptu kompilacji). Rozszerz wbudowany obiekt użytkownika, zawiń kilka ogólnych widoków (obiekt_detal, lista_obiektu), aby wyświetlić listę (-y) twoich produktów itp. Proste połączenie jest wszystkim, czego potrzebujesz, aby wyświetlić listę produktów dla użytkownika, która jest streszczona za pomocą przyzwoity ORM (lub użyj SQLAlchemy, jeśli to twoja torba).

To tylko winda, jak osobiście bym to zrobił. Django ma być „dołączonymi bateriami”, więc przekonasz się, że większość rzeczy (tak naprawdę tak naprawdę nie obchodzi Cię ta aplikacja) wszystko jest gotowe. Uwierzytelnianie użytkownika, panel administracyjny itp.

To jest Python, więc nie jestem pewien, czy to twój zestaw umiejętności. Myślę jednak, że byłoby to solidne narzędzie do wykonania zadania, biorąc pod uwagę dostarczone informacje. Jeśli jesteś pełnoetatowym sysadminem, zdecydowanie polecam jego naukę.

Sam Halicke
źródło
1
Po drugie, stałem się 2 x tak przydatny jak administrator, kiedy nauczyłem się trochę Pythona ... Jest to potężny język, który bardzo dobrze pasuje do sysadmin .. +1
Arenstar
1

Szukasz „oprogramowania do zarządzania dystrybucją”. Myślę, że większość firm produkujących oprogramowanie wprowadza własny system lub korzysta z usług stron trzecich, takich jak Share It lub Kagi. Istnieje kilka bezpłatnych narzędzi, takich jak WebAuth ( http://bibledatabase.org/addon/sellsoft/index.htm ) oraz płatnych narzędzi, takich jak to od TechSys ( http://www.tecsys.com/solutions/distribution-management /benefits.shtml ).

Jedna osoba wspomniała o dowolnym narzędziu e-commerce, które obsługuje cyfrowe pobieranie, co jest kolejną możliwością.

Myślę, że problem wszystkich rozwiązań - nawet tych płatnych - polega na tym, że to tak, jakby próbować zabić muchę z pistoletu. Stworzenie własnego rozwiązania pozwala na jego ścisłą integrację z procedurami kompilacji. Oczywiście inne narzędzia można również ze sobą połączyć, ale prawdopodobnie nie tak dobrze, jak coś stworzonego na zamówienie.

bogeymin
źródło
Bezsprzecznie platformy bazowe systemu Windows nie mają żadnego standardowego sposobu instalowania oprogramowania w systemie operacyjnym. Sprawy ewoluowały w przypadku standardowych instalatorów (MSI), ale nie jest on świadomy sieci i ma ograniczone możliwości skryptów. Windows nie ma pojęcia o repozytorium oprogramowania, więc możesz ręcznie pobrać oprogramowanie i zainstalować je. Być może nadszedł czas, aby Microsoft pomyślał o tym problemie i rozwiązał go w systemie Windows 8.
The Unix Janitor
1
Jedna odpowiedź sugeruje Django, a gdybym miał zbudować taki system, z pewnością bym tego użył. ORM i szybki interfejs administracyjny Django umożliwiłyby stosunkowo szybką pracę z podstawowymi wymaganiami dotyczącymi danych, a Python jest potężnym i elastycznym narzędziem do automatyzacji i integracji.
bogeymin
@ user37899 Chociaż nic z tego nie jest związane z tym tematem, oczywiście system Windows ma standardowy sposób instalowania oprogramowania (i ma go od 2000 roku i od tego czasu był dostępny do użytku w Win95 w górę). Instalator Windows to standardowy instalator wymieniony jako „msi”. Jeśli chodzi o repozytorium oprogramowania, zobacz Omówienie instalacji oprogramowania zasad grupy: technet.microsoft.com/en-us/library/cc738858(WS.10).aspx
Jim B
0

Jeśli podoba ci się PHP, łatwo byłoby stworzyć coś takiego za pomocą Codeigniter lub Kohana.

Proste rozwiązanie polega na tym, że baza danych przechowuje wszystkie różne pakiety oprogramowania i adresy URL tych pakietów. W takim przypadku login lub nazwa klienta byłaby linkiem 1 do wielu linków do pakietów oprogramowania. Ulepsz stronę pobierania, aby wyświetlić listę pakietów powiązanych z tym użytkownikiem.

To proste podejście. Bardziej złożonym / bezpiecznym byłoby upewnienie się, że adres URL działa tylko dla zalogowanego użytkownika. Rozsądne byłoby upewnienie się, że adres URL pozostanie stały dla tego użytkownika. Nie jestem do końca pewien, jak to zrobić, aby serwer WWW obsługiwał transfer w celu uzyskania lepszej wydajności niż PHP, ale będzie na to sposób.

Matt
źródło
Dzięki za sugestię, ale szczególnie chcemy kupić produkt, ponieważ posiadamy własne zasoby do tworzenia stron internetowych.
Martin
Pewnie. Zasugerowałem to, ponieważ zebranie działającego prototypu zajęłoby tylko kilka dni. Możesz spędzić to na rozglądaniu się. Nie byłem pewien, jak dobrze rozumiesz podstawowe kodowanie.
Matt
0

Wydaje mi się, że rozwiązanie e-commerce obsługujące produkty cyfrowe jako pliki do pobrania byłoby odpowiednie do tego celu.

Zobacz http://en.wikipedia.org/wiki/Comparison_of_shopping_cart_software w sekcji „Funkcje ogólne” z „Pobraniami cyfrowymi”.

Popularne rozwiązania e-commerce, które poleciłbym to osCommerce, Magento i Spree. http://www.oscommerce.com/ http://www.magentocommerce.com/ http://spreecommerce.com/

Magento ma rozszerzenie „Pobieranie cyfrowe”, ale kosztuje 500 USD. http://www.magentocommerce.com/magento-connect/ITPDX+LLC/extension/1047/digital-download-enhancement/reviews

Spree ma bezpłatne rozszerzenie do pobrania. http://spreecommerce.com/extensions/38-downloadable

turingmachine
źródło
0

Możesz użyć systemu zarządzania treścią, aby kontrolować dostęp do zakupionych produktów. Po to właśnie są CMS-y.

Allen
źródło
0

Sprawdź whmcs.

Ma moduł licencyjny - i bardzo niedrogi do wypróbowania

www.WHMCS.com

To jest to, co prowadzi dużą liczbę organizacji hostingowych ... ale działa dobrze na to, o co prosisz ...

Glenn Kelley
źródło