sviluppatori@openspcoop.org
<prev [Datenext>
<prev [Threadnext>

Re: [OpenSPCoop-Dev] Lista delle classi

To: <sviluppatori@openspcoop.org>
Subject: Re: [OpenSPCoop-Dev] Lista delle classi metodi che dovrebberosubireRefactoring
From: "Walter Ambu" <walter.ambu@gmail.com>
Date: Tue, 23 May 2006 12:34:30 +0200
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com;h=received:message-id:from:to:references:subject:date:mime-version:content-type:content-transfer-encoding:x-priority:x-msmail-priority:x-mailer:x-mimeole;b=NBVF385RqyesRWObYphXi/lio3OBBZXUSetCyAGbkMaBXO2olN125wK2tKX837KuEOxRMMxvGA1IZsuV/hBEyfFqj03+EiURxePVi3TqBgiKKcGPRULjlx89BERbysRQ4sniD3gPRp/be1FsTi0coYhJ2qzmqW7hmjW3uDrZ6FY=
List-archive: </pipermail/sviluppatori>
List-help: <mailto:sviluppatori-request@openspcoop.org?subject=help>
List-id: sviluppatori.openspcoop.org
List-post: <mailto:sviluppatori@openspcoop.org>
List-subscribe: <http://www.openspcoop.org/mailman/listinfo/sviluppatori>,<mailto:sviluppatori-request@openspcoop.org?subject=subscribe>
List-unsubscribe: <http://www.openspcoop.org/mailman/listinfo/sviluppatori>,<mailto:sviluppatori-request@openspcoop.org?subject=unsubscribe>
References: <5E0CFF197F04F04882BF85F72B0A667C5A4E59@POSTA01.itmaster.local><446D6D10.802@link.it>
Reply-to: sviluppatori@openspcoop.org
Ciao a tutti,
vorremmo portare il nostro contributo di esperienza riguardo queste tematiche.
Per il nostro progetto open source japs www.japsportal.org abbiamo adottato delle linee guida che sono la base del nostro metodo di lavoro.
In particolare l'intero ciclo di vita di produzione del SW è gestito utilizzando le Metodologie Agili e din particolare SCRUM + Extreme Programming applicato per team distribuiti che fanno sviluppo Open Source.


Alcune linee guida relative al codice:

1. utilizziamo uno standard di codifica ben definito.
2. seguiamo precise tecniche di refactoring del codice sorgente che avviene in maniera incrementale.
3. utilizziamo JUnit che consnete di fare test automatici e ripetibili.
4. monitoriamo il progetto (codice sorgente) attraverso il calcolo delle metriche CK di qualità del software.


Per quanto riguarda la qualità del codice del nostro progetto open source, presenteremo insieme all'università di Cagliari, alla conferenza intenazionale sulle metodologie agili http://virtual.vtt.fi/virtual/xp2006/, l'esperienza fatta in Italia di monitoring della qualità del codice sorgente del progetto open source JAPS

Dal gennaio 2005 ad oggi analizziamo il codice del nostro progetto ogni 15 giorni. Attraverso un plug in di Eclipse (IDE Java), sviluppato dall'università di Cagliari, è possibile partendo da degli snapshot del repository, verificare la qualità del codice sorgente utilizzando le metriche CK adatte per sistemi Object Oriented:
Queste sono le misure che facciamo sul codice:


Weighted methods per Class (WMC)
Coupling between object (CBO)
Dept of Inheritance tree (DIT)
Number of CHildren (NOC)
Rsponse for a class (RFC)
Lack of cohesion of methods (LCOM)
Number of classes
Class size
Number of test cases
Number of assertions

In base ai risultati di queste analisi, sia il responsabile di progetto che i programmatori ottengono continuo feedback sull'andamento del progetto in riferimento alla stato di complessità del codice. In base ai risultati ottenuti, siamo in grado di capire se gli sviluppatori stanno scrivendo bene il codice, se il codice è object oriented, se è complesso, se stanno facendo bene il refactoring, se e quanto stanno ntestando il codice, etc

Riferimenti per chi fosse interessato all'intervento che terremo alla conferenza su questo tema:
Tuesday 20.6.2006
10:45 - 12:15 R3: Research papers: "Quality in agile software development"


2. Studying the evolution of quality metrics in a Agile/Distributed project, Walter Ambu, Giulio Concas, Sandro Pinna





Ciao


Walter Ambu





----- Original Message ----- From: "Tito Flagella" <tito@link.it>
To: <sviluppatori@openspcoop.org>
Sent: Friday, May 19, 2006 9:00 AM
Subject: Re: [OpenSPCoop-Dev] Lista delle classi metodi che dovrebbero subireRefactoring



Montebove Luciano wrote:

Ci sono metodi con valori di "complessità ciclomatica" veramente elevata 24,33,47,53.... su cui andrebbe fatto nel tempo un lavoro per spezzarli in più metodi o meglio ancora in più classi facendo un minimo di analisi delle responsabilità annidate al suo interno.

Il nostro piano di lavoro prevede di procedere fino alla 0.8 (fine settembre circa) per il completamento delle funzionalita` e l'ottimizzazione. Poi la reingegnerizzazione (il "big rewrite") per arrivare alla 1.0 entro fine anno. Nel frattempo gli esperti di "Software Engineering" in lista, possono proporre standard guidelines o raccomandazioni da discutere per arrivare ad approvare dei documenti di riferimento per lo sviluppo software nel progetto?

Ciao,

tito.
_______________________________________________
Sviluppatori mailing list
Sviluppatori@openspcoop.org
http://www.openspcoop.org/mailman/listinfo/sviluppatori

<Prev in Thread] Current Thread [Next in Thread>
Previous by Date:  R: [OpenSPCoop-Dev] AGGIORNAMENTO: corretti bug su WSSReceiveremodificata interfaccia autorizzazione, Montebove Luciano
Next by Date:  R: [OpenSPCoop-Dev] Lista delle classi metodi chedovrebberosubireRefactoring, Montebove Luciano
Previous by Thread:  Re: [OpenSPCoop-Dev] Lista delle classi metodi che dovrebbero subireRefactoring, Tito Flagella
Next by Thread:  [OpenSPCoop-Dev] AGGIORNAMENTO: corretti bug su WSSReceiver emodificata interfaccia autorizzazione, Montebove Luciano
Indexes:  [Date] [Thread]