sviluppo software su misura

Quando serve lo sviluppo software su misura

Perché un’applicazione su misura?

Esistono fondamentalmente due casi per cui un Cliente ricorre allo sviluppo software su misura: far evolvere un’applicazione esistente oppure crearne una nuova.

Far evolvere un’applicazione con lo sviluppo software su misura

Nel primo caso, il nostro Cliente ha già un’applicazione che ha soddisfatto i suoi bisogni. Con tale applicazione ha lavorato per lungo tempo e ha sempre risolto i suoi problemi. Ora, però, deve modificarla per adeguarla alle sue nuove esigenze ma non può. Le ragioni di tale impossibilità di modifica possono essere molte: si tratta di un prodotto commerciale destinato ad un mercato di massa e il produttore non prevede la possibilità, non è più disponibile chi l’ha realizzata, non è nata per funzionare come il Cliente desidera, è rimasta incompleta e ancora per altre ragioni.

In questo caso il nostro Cliente cosa può fare? Dipende da una condizione: possiede i sorgenti dell’applicazione oppure non li possiede. I sorgenti sono il codice in cui è stato scritto il programma, il software, che fin qui abbiamo chiamato “applicazione”.

Se il nostro Cliente possiede il codice sorgente (cosa che accade di rado ma, talvolta è possibile, specie se il software che si vuole far evolvere è il risultato di un progetto “fallito” o “incompleto”, ossia di un progetto in cui lo sviluppo del software non ha prodotto un programma come il Cliente desiderava), i nostri esperti possono esaminarlo e decidere se è possibile modificarlo (possono esistere ragioni tecnico-economiche che lo sconsigliano) oppure se bisogna procedere senza modificarlo, ricadendo, in tal caso, nella situazione in cui non si hanno i sorgenti.

Se è possibile modificarlo, allora i nostri sviluppatori lo adegueranno alle richieste del Cliente.

Se il nostro Cliente non ha il codice sorgente o non è ragionevole modificarlo, allora si dovrà studiare una soluzione alternativa allo sviluppo software su misura.

I nostri esperti, in quest’ultimo caso, analizzano la situazione con estrema attenzione e, in genere, propongono una tra due possibili soluzioni: integrare o fare un porting.

Integrare significa scrivere una nuova applicazione che si interfacci con quella già esistente in modo da implementarne gli aspetti mancanti.

Porting significa, invece, riscrivere l’applicazione in una nuova tecnologia (ad esempio in un nuovo linguaggio di programmazione o in un nuovo sistema operativo) prendendo quella esistente come modello di funzionamento e mantenendo, per quanto possibile, la base dati esistente.

In entrambi i casi i nostri esperti valuteranno sia gli aspetti tecnici sia quelli economici, cercando contemporaneamente di conservare gli investimenti fatti dal nostro Cliente e di soddisfare le sue esigenze di modifica del software.

Quali applicazioni siamo in grado di sviluppare?

I nostri team di sviluppo hanno la capacità di sviluppare numerosi tipi di applicazioni. Di seguito ne riportiamo un elenco sintetico con relativa descrizione.

In primo luogo, sviluppiamo applicazioni Web di qualsiasi dimensione, ossia in grado di servire pochi utenti, decine, centinaia o anche migliaia. Visitando il link sullo sviluppo di applicazioni Web potete ottenere ulteriori informazioni su cosa sono e come funzionano.

Siamo perfettamente in grado di realizzare applicazioni Desktop, ossia installabili su singolo PC. Tali applicazioni sono in genere destinate o ad un utilizzo in piccole realtà (es. gestionali utilizzati da un singolo utente), oppure ad essere la parte client di un sistema client-server con thick-client, ossia con un client che richiede un’installazione.

I quest’ultimo caso è però più opportuno parlare di applicazioni client-server che di applicazioni Desktop.

Quando sviluppiamo applicazioni client-server possiamo farlo, di nuovo, sia per un numero di utenti molto limitato, sia per casi in cui tale numero è molto elevato.

Chi ci chiede di sviluppare applicazioni Desktop, spesso punta a realizzare un proprio prodotto da poter vendere sul mercato di massa. Altri ci chiedono invece di sviluppare applicazioni client-server perché desiderano operare in rete ma con interfacce utente anche molto evolute e con forte integrazione con i sistemi operativi delle macchine su cui girano.

Per tutti e tre i casi (Web, Desktop e client-server) siamo in grado di sviluppare App per dispositivi mobili (Mobile Apps) da utilizzarsi su smartphone, tablet e anche PC. In particolare siamo in grado di realizzare App Ibride (Hybrid Apps), ossia che funzionano, senza modifiche, su sistemi molto diversi tra loro quali Windows, Linux, Android e iOS, e realizziamo App Progressive (Progressive Apps) che, man mano che vengono utilizzate, diventano sempre più capaci di lavorare in locale, riducendo la necessità di collegarsi con un server.

La grande esperienza dei nostri esperti analisti spazia attraverso numerosi campi, rendendoci idonei a realizzare software su misura nei contesti più disparati. In particolare, siamo esperti nella realizzazione di software nei settori seguenti:

  • gestionale generico (contabilità, magazzino, vendite, acquisti)
  • manutenzione (di veicoli, di macchinari, di impianti e via dicendo fino al facility amangement)
  • logistica (sia dei trasporti che della manutenzione, inclusa la reverse logistics)
  • controllo di produzione (per la gestione di sistemi produttivi di qualsiasi tipo, sia alimentari che non)
  • agricoltura e zootecnia, sia convenzionali che biologiche
  • prenotazioni e gestione di risorse soggette a prenotazioni (posti letto, aule formative, sale riunioni, veicoli, …)
  • gestione scolastica (sia per istituti di piccole che di grandi dimensioni)
  • moda (gestione sartorie, gestione negozi abbigliamento, …)
  • fitness ed estetica (gestione palestre, gestione saloni di bellezza, gestione SPA, …)
  • professionisti (gestione studio legale, CRM, …)
  • gestione ospedaliera e gestione studi medici
  • gestione proprietà immobiliari
  • gestione ristoranti e alberghi
  • gestione progetti
  • gestione reclami e segnalazioni
  • gestione sistemi di gestione (per ISO 9001, 14001, 27001, 18001, 45001, GDPR, D.Lgs. 231/01, …)
  • ingegneria logistica in settori particolari (es. logistica militare o aeromobili / aeronavigabilità)

Grazie alla nostra vasta esperienza, siamo in grado di supportare il nostro Cliente nella progettazione e nello sviluppo software su misura per le sue reali necessità. Sempre per lo stesso motivo, siamo in grado di identificare rapidamente le soluzioni applicative corrette, giungendo alla meta in tempi brevi, con conseguente risparmio di tempo e denaro da parte del Cliente.

La proprietà intellettuale

Lo sviluppo software su misura può essere convenuto secondo due modalità in basi ai diritti di proprietà intellettuale sul software risultante.

Nella prima, denominata “licenza d’uso“, il Cliente ha diritto all’uso e all’accesso al codice sorgente per uso interno ma non può rivendere il prodotto sviluppato ad altri, se non cedendolo integralmente.

Nella seconda, denominata “diritto di sfruttamento economico“, il Cliente non solo avrà il codice sorgente per intero, ma potrà anche rivendicarne la piena proprietà per poterlo cedere a chi desidera o per sfruttare il programma a fini commerciali vendendone a terzi una o più copie.

Quale due modalità si vuole utilizzare sarà deciso al momento della richiesta di preventivo o, in ogni caso, della stipula del contratto. Da parte della nostra Azienda non vi sono, in genere, vincoli di sorta e siamo più che disponibili ad optare per l’una o per l’altra possibilità, secondo le esigenze del Cliente.

Cosa significa esattamente ‘Sviluppo di Applicazioni’?

Quando si parla di Sviluppo s’intende, in genere, un progetto più o meno complesso che prevede, in linea generale, quattro step: Analisi, Design, Codifica e Test.

La nostra azienda è perfettamente in grado di svolgere tutte e quattro le fasi dello sviluppo software su misura (o anche solo alcune di esse). Se un Cliente ha bisogno di supporto completo nello sviluppo, allora gli offriremo il nostro lavoro per analizzare il problema e definire una soluzione (Analisi), per progettare il software da realizzare (Design), per scrivere il codice nel linguaggio di programmazione scelto (Codifica) e per verificarne il corretto funzionamento.

Se un altro Cliente ha invece già fatto (o fatto fare ad altri) l’analisi e vuole solo le restanti tre attività, possiamo tranquillamente adeguarci (previa valutazione del livello di completezza e qualità dell’analisi esistente) e così via, per i vari casi possibili.

Oltre allo sviluppo software su misura, i nostri tecnici possono provvedere anche alla loro manutenzione, fornendo eventualmente servizi di help-desk o di supporto tecnico, a vari livelli di complessità, secondo le direttive del Cliente.

Possiamo anche fornire, previa valutazione di dettaglio, servizi di manutenzione per applicazioni realizzate da altri.

0 commenti

Lascia un Commento

Vuoi partecipare alla discussione?
Fornisci il tuo contributo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.