NOTA: le informazioni dopo la domanda risultano quasi come qualcuno che sta sfogando. Non era la mia intenzione originale. Se qualcuno vuole prendersi il tempo per darmi una risposta / consiglio, scremarlo potrebbe aiutare.
DOMANDA: Sto cercando un modo migliore per esprimere "sviluppo di box singoli". Sto cercando di fare una prima pugnalata a dire al mio capo (il comproprietario della compagnia che vede ogni dollaro speso come un dollaro dalla tasca) che, mentre ci ha portati fin qui (cioè non riesce a vedere nulla sbagliato con esso!), il limite è stato raggiunto.
BACKGROUND: Sono solo programmatore in un'azienda di 40 persone. Ho iniziato un LOB da zero 6 mesi fa (WinForms / MSSQL). Finora è un successo strepitoso. Le persone che lavoravano fino alle 22:00 ora si dirigono verso la porta alle 6 e mi ringraziano mentre sono in viaggio (lo so, sì, per me).
Sto combattendo un atteggiamento "se non è rotto non aggiustarlo" da persone che vedono solo i risultati esterni. Mi siedo vicino agli utenti finali (18 di loro) - se qualcosa non funziona, lo dicono tutti. Se si blocca, a loro non importa perché camminano sopra (50 piedi al massimo) per me, premo F5, mi mostrano come riprodurlo e più spesso di adesso vado, "Oh, è facile da risolvere - solo non ho pensato a quel caso ". Cinque minuti dopo faccio clic su "Distribuisci" e urlo, "OK, prendi la nuova versione!". ClickOnce deploy rende la linea tra le app web e le app desktop sfocate.
Sapendo che sono solo una persona, ho preso ogni misura per mantenere i casi d'uso non dipendenti l'uno dall'altro. Se scrivo codice che potrebbe fare "danno" se non funzionasse, tendevo a inserire misure preventive nei trigger di database, pensando "questo limita il mio caso peggiore" - ma questo mi sembra "creativo", e di solito è un Indicatore che non è una soluzione a lungo termine.
Ora devo aggiungere una soluzione ASP.NET aggiunta al mio progetto. Ho due prodotti su due piattaforme diverse con due diverse basi di utenti, ma tutte che accedono agli stessi dati e ai relativi scopi commerciali.
Ho bisogno di:
- Rimane un team di software di una sola persona.
- Avere un qualche tipo di cosa con la parola "cycle" in esso.
- Continua a offrire funzionalità con lo stesso ritmo e affidabilità.
Per ragioni sono sicuro che tutti già sanno (e non ha bisogno di dirmelo) non posso continuare ad aggiungere funzionalità e rispettare le scadenze mantenendo il tasso relativamente basso di difetti che sono riuscito ad oggi.
Non c'è modo di ottenere il tipo di impegno monetario richiesto per avviare una società di software in-house, ma non posso negare i benefici di avere qualcuno proprio accanto agli stakeholder in ogni momento osservando come il business funziona e pronto a modificare le cose in un momento.
Quindi il mio obiettivo è quello di fare un passo verso il modo in cui il resto del mondo lo fa, e il mio passo attuale è quello di ottenere almeno un altro computer in modo da avere un ambiente di integrazione formale.