Metodi per riscrivere un programma [duplicato]

3

Possible Duplicates:
How to approach refactoring an existing web application?
Starting a coherent architecture in a legacy application

Abbiamo un sistema di fedeltà in esecuzione sulla società per cui lavoro.

È scritto in C # e Flex e il mio capo vuole cambiarlo in HTML5 e PHP per servire più clienti ed è preoccupato del fatto che Adobe abbia lasciato Flash, l'enorme quantità di bug e richieste di modifiche e anche lamentele riguardo lentezza.

Il sistema è davvero grande e il database è un disastro totale.

Sono il responsabile di quel progetto e non ho idea di come iniziare a riscrivere l'intero codice e il database. Dove comincio?

Esiste qualche metodologia per fare questo tipo di lavoro?

    
posta Gerep 08.02.2012 - 13:54
fonte

2 risposte

6

Prima di tutto, prendi seriamente in considerazione il bit di PHP - se hai il codice C # e presumibilmente le abilità per cui buttarlo via? Esistono diversi modi per fornire siti Web validi, moderni, flessibili e conformi agli standard utilizzando C #

In secondo luogo, quello che devi davvero fare è stabilire il controllo su ciò che hai - a prescindere dal grado di riscrivere l'applicazione (posso vedere la sostituzione del front-end flash con HTML5 e Javascript) se non lo fai avere gli strumenti e le pratiche giuste per finire con lo stesso pasticcio di nuovo.

Quindi una lettura di questo libro potrebbe aiutare: Sviluppo di applicazioni Brownfield in .NET - non è pesante ed è pieno di buoni guida.

Dovresti essere in grado di gestire molti dei problemi rielaborando sistematicamente il codice, ma il database è un po 'più impegnativo. Puoi fare varie cose intelligenti - ad es. se cambi le strutture delle tabelle puoi includere viste che contengono la vecchia struttura, ma alla fine coinvolgerà il dolore.

Se davvero stai riscrivendo l'app da zero, allora fai proprio questo. Ignora ciò che è successo prima in termini di codice, stabilisci le tue storie utente (puoi usare l'applicazione corrente per "informare" le tue storie e l'ordine in cui passi attraverso il backlog), elaborare il tuo schema idealizzato e avanzare da lì. .

Non posso commentare quale approccio ti darà il risultato finale desiderato - ma un approccio di refactoring come per il libro ti porterà risultati visibili (in particolare in termini di consegna ai tuoi utenti) a molto prima.

    
risposta data 08.02.2012 - 14:53
fonte
1

Hai C # & Flettere. Presumo che tu stia utilizzando C # per il backend e Flex per l'interfaccia utente.

Hai preso in considerazione solo la transizione a ASP.Net? Allora sarai in grado di salvare un sacco di codice ... puoi andare a più cose di tipo MVC con ASP.Net ed evitare il mal di testa di tutto ciò che ri-progetta e porta.

    
risposta data 08.02.2012 - 15:02
fonte

Leggi altre domande sui tag