PDA

Visualizza la versione completa : Reingegnerizzazione del software: scegliere la tecnologia giusta


pishta
19-09-2014, 14:29
Salve a tutti, introduco un argomento che non tratta nello specifico di programmazione ma non sapervo dove postarlo. Descriverò il problema non entrando troppo nello specifico.

Abbiamo un software gestionale vb6 vecchio e scritto male. Dobbiamo reingegnerizzarlo e vorremmo farlo usando un linguaggio per il web.

Vorremmo anche dare la possibilità agli utenti di poterlo usare da tablet. Per questo abbiamo pensato di avere un server che fornisca le funzionalità e poi di volta in volta sviluppare una gui ad esempio per un dispositivo android, uno per apple e un'interfaccia web.

Secondo voi qual è la migliore tecnologia/architettura in questo senso?

C, Java, PHP.....?

Grazie.

giannino1995
19-09-2014, 14:47
Penso che tu debba dire esattamente cosa fa questo software altrimenti è difficile risponderti. Supponendo un gestionale semplice senza opzioni particolarmente impegnative ti consiglierei PHP oppure JAVA. Tra i 2, personalmente, credo che ti troveresti meglio con PHP. Per la GUI ti consiglio di usare CSS ed HTML. Ovviamente valuta anche i linguaggi di casa Microsoft ovvero attendi che coloro che usano quei linguaggi rispondano a questa discussione. Tutto ciò, ovviamente, dopo aver cercato bene sul web che non esista già un software di questo tipo rilasciato come CMS free o a pagamento perché al 99.99% dei caso rischieresti di inventare l'acqua calda.
C ovviamente te lo sconsiglio! :eek:

pishta
19-09-2014, 15:00
Penso che tu debba dire esattamente cosa fa questo software altrimenti è difficile risponderti.


non vorrei entrare nello specifico perché è un gestionale che non fa altro che lettura e scrittura di dati sul database.

- Registrazione anagrafica cliente
- registrazione dati di alcune indagini che vengono fatte sul cliente
- calcoli di elaborazione
- presentazione di risultati in base ai calcoli fatti
- presentazione mediante diagrammi dell'andamento storico



Non ci sono componenti hardware.

pishta
19-09-2014, 15:02
L'unica peculiarità che vorremmo mantenere è questa: Io sviluppo le funzionalità sul server (web services?) e poi di volta in volta vorrei sviluppare un'interfaccia in base alle esigenze.

Oggi ad esempio potrei sviluppare una GUI per android, domani per IOS ecc...

Ma la logica implementativa come anche il database vorrei rimanesse sul server.

giannino1995
19-09-2014, 15:03
Per rispondere alla tua discussione ti consiglio: HTML5 CSS3 PHP ZEND FRAMEWORK 2 JAVASCRIPT Almeno 1 libro e tanto esercizio per ognuno di essi! Fino al CSS3 forse te la cavi con manuali in italiano poi devi acquistare libri in inglese o in tedesco. Attendi comunque qualche esperto, io sono un principiante come te su questo forum.
Ciao
Gianni

Scara95
19-09-2014, 15:13
Considera principalmente i linguaggi conosciuti dal tuo team di sviluppatori. Detto questo potresti considerare Mono come vm cross platform e quindi usare vb.net (che è comunque diverso da vb). (puoi anche usare un qualsiasi altro linguaggio .NET)
Per le informazioni su mono e le tecnologie supportate puoi visitare il loro sito: mono-project.com

alka
19-09-2014, 18:03
Abbiamo un software gestionale vb6 vecchio e scritto male. Dobbiamo reingegnerizzarlo e vorremmo farlo usando un linguaggio per il web.


Dire linguaggio per il Web è un po' generico e, sostanzialmente, tutti quelli esistenti vanno bene con queste premesse.

Gli sviluppatori di cui disponi conoscono già uno o più linguaggi?
Quali sono?

denis76
19-09-2014, 21:46
Mah.
Io userei AS400 e cobol.

Xaratroom
20-09-2014, 13:01
Dire linguaggio per il Web è un po' generico e, sostanzialmente, tutti quelli esistenti vanno bene con queste premesse.
Gli sviluppatori di cui disponi conoscono già uno o più linguaggi?
Quali sono?
Inoltre quali sono le infrastrutture già presenti in azienda? Avete previsto l'acquisto di strumenti software o hardware? Che budget? Che tempistiche?
Le modifiche vanno effettuate anche a livello di database, o potete riutilizzare quello esistente (e quindi risparmiarvi la migrazione dei vecchi dati)?

Se lavorate in ambiente Microsoft, io vi consiglio di restare in ambiente Microsoft. Potreste orientarvi sul framework ASP.NET MVC. Utilizzando un toolkit client side, come foundation o bootstrap, potreste facilmente realizzare interfacce responsive... In alternativa non ci metti nulla a realizzare degli Endpoint con le Web Api (native del framework).

paolino_delta_t
21-09-2014, 11:19
Io direi che la cosa fondamentale è porsi due domande:

1. che conoscenze hanno gli sviluppatori che ci dovranno lavorare
2. quali e quante funzionalità sono implementabili attraverso servizi web ( a volte si hanno spiacevoli sorprese dopo settimane di lavoro )

Detto questo, i linguaggi per questo tipo di applicazioni sono in genere: java, php, python, c#, ruby, javascript/node.js, per le applicazioni massicciamente multithreaded si stanno imponendo go ed erlang.

Loading