Newsgroup: it.comp.lang.delphi
Titolo: Valutazione per inizio lavoro

Oggi ho avuto un incontro con il cliente in presenza del capo, il quale mi
ha ribaltato le carte in tavola.
Eravamo d'accordo che avremmo sviluppato l'applicazione in COBOL e che ci
avremmo lavorato in 2, oggi ha cambiato idea e mi ha chiesto di fare da solo
in Delphi.
Iniziero' la fase di analisi venerdi' 20 presso il cliente, e sono un po'
preoccupato, quindi vorrei qualche dritta:
1 - si tratta di un ufficio in cui lavorano 4 persone, quindi *suppongo* che
per farli lavorare basti un'installazione di MSDE. Il capo dice che e'
meglio Access... vorrei sapere quale dei 2 e' effettivamente piu' indicato,
e se posso fare qualche prova in pratica per verificare i limiti di
entrambi. Soprattutto vorremmo lasciare a questa gente la possibilita' di
creare report e statistiche sulle tabelle senza che noi interveniamo ogni
volta. E' possibile, senza usare Access?
2 - Non ho assolutamente idea di cosa faccia un analista, e che software
siano necessari per svolgere questa fase, sono tremendamente consapevole che
sara' una fase delicata, e che se sbaglio questa potrei compromettere il
resto del lavoro. Pensavo di iniziare a prendere "appunti" sul portatile e
poi trasferirli in CaseStudio (per il database) e in qualche programma di
progettazione UML... Voi cosa consigliate?
3 - I dati esistenti si trovano su un server SCO OpenServer 5.0.4, con
Informix. Esiste modo per accedere a questi dati da Delphi?
Avro' altre domande in futuro, scusate l'irruenza, ma questo e' il primo
progetto "grosso" che devo gestire da solo, e mi sento molto preoccupato...

 ha scritto nel messaggio
news:bc7771$6gc$1...@newsreader.mailgate.org...


 malissimo.
Era quello che pensavo... :-(
Il cliente ha gia' detto che non comprera' licenze di SQL server. MSDE era
l'alternativa per questo motivo (essendo solo 4 utenti).
Esiste modo di verificare in quali situazioni Access perde i dati? Se devo
sconsigliarlo, devo avere qualche motivazione plausibile.
Mi tocchera' gestire i lock in qualche modo, con un semaforo esterno?

Perchè non valutare MySql o Interbase (firebird è free)
Andrea

 software siano necessari per svolgere questa fase, ...
sw specifici credo possano esistere, ma non credo siano adeguati per chi
non li ha mai usati. Penso dipenda molto dal contesto in cui vai a
lavorare, cmq un manuale di ingegneria del sw comprende in genere almeno
una carrellata delle tecniche maggiormente usate.
Ovviamente, un po' di competenza su quello che e' il dominio del
problema non puo' nuocere.
Saluti
Paolo Arosio

 Andrea
Per i motivi elencati prima: il cliente vorrebbe accedere alle tabelle in
modo trasparente, e quindi tramite access.
Aggiungo un altro motivo: il capo non si fida dei prodotti free. :-(

 scuso per l'ovvia imperfezione della metafora).
Il problema e' che la logica di chi vuole il lavoro fatto non e' sempre la
stessa di chi fa il lavoro...
Se fosse per me il programma sarebbe una scatola nera, con 4 lucchetti per
lato, che fa esattamente quello che vuole il cliente, e nessuno deve sapere
come fa a farlo. Invece il cliente vuole che la scatola contenga alcune
cose, e vuole aprirla e giocarci ogni tanto.
Io vorrei solo lavorare, se posso dimostrare all'inizio che la cosa non e'
fattibile mi tolgo un ostacolo... se non posso, mi tocchera' convivere con
le limitazioni.

 volta. E' possibile, senza usare Access?
Per reggere il carico di lavoro di 4 postazioni Access va più che bene, ma è
meglio se il database viene messo su una macchina molto stabile. Ogni tanto
leggo vaghe notizie negative su Access ma io lo uso da tempo con programmi
su cui lavorano anche 15 postazioni contemporaneamente e non ho mai avuto
problemi, ma è anche vero che mi occupo periodicamente di fare manutenzione
e compattare il database, e se il database diventa di grosse dimensioni si
potrebbe notare un certo calo di prestazioni.
Ho provato anche MSDE ed ho ottenuto performance migliori con diversi utenti
collegati (una decina) rispetto ad Access, ma il problema con MSDE è che non
puoi usarlo e distribuirlo con un'applicazione fatta con Delphi (non è così
"gratuito" come sembra).

 "gratuito" come sembra).
Sembra strano... Il cliente ha una licenza di MS Office, quindi dovrebbe
essere possibile installare la copia di MSDE che si trova sul suo CD.
Quali sono i termini della licenza di MSDE?

 Informix. Esiste modo per accedere a questi dati da Delphi?
credo di si.
Non è che d7 ha già un driver dbx ?

problemi, 
Ma tu usi delphi per interfacciarti con access? Ti chiedo questo perche' se e'
cosi, potresti darci gentilmente dei chiarimenti sull'accesso concorrenziale?
Per essere piu' preciso, mi interesserebba sapere con quali componenti ti
interfacci ad access, e come fai a gestire la concorrenza.
Ciao!
-- 
ICLD - Morde. 
(delphi day 2003 ticket)


    Via De Gasperi, 14 - 42019
    Scandiano (Reggio Emilia)

 mi chiedo quale sia la soluzione che faccia al caso suo... :-)
La soluzione che mi e' stata chiesta, ovvero Access oppure MSDE... :-)
Per il futuro forse SQL server, se il cliente crescera'...
Per i driver ODBC ho alcune riserve:
1 - SAPDB e' il DB che avre usato, ma il suo driver ODBC non e' compatibile
con non so quale diavoleria, e non riesco a interfacciarlo con access.
Peccato perche' il prodotto in se' era ottimo...
2 - Interbase o Firebird hanno un driver ODBC? Gratis?

 Non è che d7 ha già un driver dbx ?
Non lo so, in compenso io ho d6... :-)

 2 - Interbase o Firebird hanno un driver ODBC? Gratis?
Penso di sě...č per quello che l'uso di InterBase/FireBird mi sembrava
un buon suggerimento.
Potresti spiegare al committente che InterBase non č "free", ma
"OpenSource", che č leggermente diverso (e forse lo "carica" un po'...).
;-)


 interfacci ad access, e come fai a gestire la concorrenza.
Ciao se ti interessa l'accesso concorrenziale per access non ci sono molte
alternative, perchè una volta mi è capitato di sviluppare una applicazione
del genere che girava su + macchine.
Dopo varie ricerche su internet ho visto che l'unico modo per gestire la
concorrenza era con il pessimistic lock e i cursori lato server. i
componenti usati sono quelli standard di delphi, in piu solo il
tbetteradodataset che ti permette una maggiore capillarità sulle specifiche
interne dei cursori e dei lock di ado che altrimenti dovresti impostare da
stringa di connessione.
Per vedere se un record è in lock circondi il tutto con try except, dentro
prendi un record a caso e fai il post del dato che contiene sul record
stesso, se ti restituisce un errore allora il record è in uso, altrimenti il
record è libero.
Per evitare che un utente metta in edit e se ne vada per 2 giorni, senza che
gli altri possano + accedere al record ho messo un timer che dopo xx secondi
mandava un messagebox temporizzata per avvertire che il record sarebbe stato
sbloccato.
abbastanza semplice una volta che sai come funziona. se ti interessa posso
mandarti il codice che avevo fatto, sempre che ci si capisca qualcosa visto
che non è commentato.
ciao fabrizio

ciao fabrizio
Ciao e grazie!


 ha scritto nel messaggio
news:bc7771$6gc$1...@newsreader.mailgate.org...


 Manda, manda !!!
si ma dove? è giusto l'indirizzo che trovo negli header? ciao f

si ma dove? č giusto l'indirizzo che trovo negli header? ciao f
Fai cosi': manda sul ng, magari un post a se' dal subject "come gestire la
concorrenza con ado" o simile.
Partecipa al 3ad di Arosio dal titolo "[Proposta] Repository per il gruppo?"!
Se mi vuoi scrivere in privato lo stesso, devi comporre il mio indirizzo come
morde at programmer dot net 
sostituendo at con @ e dot con .


 sostituendo at con @ e dot con .
cavolo non ci sarei mai arrivato!!! =)))))))
ok ciao fabrizio

I termini della licenza di MSDE li trovi sul sito microsoft cmq per
riassumere funzioano in questo modo:
MSDE NON è SQL server(inteso come suite di programmi di gestione + motore di
database), è  soltanto il motore di database con qualche limitazione
intermini di performance (gestisce database "soltanto" fino a 2 gb e ti
assicuro che riempire 2 gb di database non è come dirlo, ce ne vogliono di
record prima di farlo), ha dei limiti in termini di connessioni simultanee
(viene consigliato di non superare le 5 connessioni contemporanee altrimenti
le performance calano)
ma per il resto è identico a SQL server quindi puoi usare trigger, store
procedure, indici normali e cluster e chi più ne ha più ne metta. è un
ottimo database.
per quanto riguarda la licenza di distribuzione tu come sviluppatore puoi
distribuirlo se hai un visual studio o uno dei suoi componenti oppure il tuo
cliente è in possesso di office premium.
quindi nel tuo caso specifico sei OK.
consiglio spassionato: a meno che tu non sia un super esperto in grado di
valutare il carico di lavoro del databse a priori e ritenere MSDE
insufficiente già dall'inizio considera seriametne l'ipotesi di installare e
cominciare ocn questo. nel caso in cui si verifichi insufficiente puoi
sempre far comprare SQL server e importare il database successivamente.
per darti un'ordine di idee di come lavora MSDE tieni presente che una
tabella con una ventina di campi ti tipo misto (interi e stringhe) con
3-400.000 record sono il pane quotidiano di MSDE (arrivare al milione di
record non lo mette assolutametne in crisi)
Access viene messo in crisi dopo 60-70.000 record.
ed ha bisogno di una manutenzione praticamente quotidiana.
ciauz
ZigZag

 "OpenSource", che è leggermente diverso (e forse lo "carica" un po'...).



Ok, Roberto.
Però dai... ci sono capi e capi, no?
E poi non è così "da tutti" e semplice mettersi in proprio, oggi.
Più facile dirlo che farlo.
Perché non conta solo saper programmare, cosa che sa fare meglio chi sta
"sotto il capo", ovviamente.
Conta di più (o al più alla pari) nel nostro "oscuro lavoro" il saper essere
sinceri, coerenti ed onesti con i propri clienti. Difficile perché la
possibilità di "fregarli" è sempre lì che ti tenta.
E di solito chi lo è con i clienti lo è anche anche con chi lavora "sotto"
di lui.
Ciao.
Max T.
(guardacaso... un capo!)
--------------------------------
Inviato via 
http://usenet.libero.it