CodeBetter.Com
CodeBetter.Com
RSS 2.0 via Feedburner
           Do you Twitter? Follow us @CodeBetter

Patrick Smacchia [MVP C#]


2 talks about Code Quality at PrioConference

My friend Ralf Westphal invited me at the PrioConference to talk about Code Quality. PrioConference will take place 2007 13/14 November in Baden Baden, Germany. Here are the abstracts of my 2 sessions:

 

 

Dependencies management and Build comparison  (Day 2 / Tracks 2 / 15h - 16h15)

The motto 'the source code is the design' is getting widely adopted with the success of agile methodologies. However source code bases are still hard to understand. With traditional tools, it is still a burden to answer simple, yet essential, structural questions such as:
  • Who depends on this particular part of the code?
  • Which methods of a component are using which methods of another component?
  • Is there dependency cycles and what should we do to get rid of them?
  • or Which dependencies have been created/changed/removed between these 2 versions?

In this session, we'll see how to answer this kind of questions by using a new emerging kind of tool for software developers and architects. We'll concretely use the tool NDepend especially adapted for .NET code bases. We'll also present best practices to refactor your code base to ensure sustainable software structure quality in your projects.



 

CQL vs. FxCop  (Day 1 / Tracks 3 / 17h - 18h15)

The FxCop tool is a blessing for every .NET developer that cares about quality. The FxCop authors even recently got awarded the Microsoft Engineering Chairman's Award, the highest award for engineering group employees worlwide. FxCop consists of an extensible set of around 200 rules that automatically check, if code correctly uses the .NET framework and abides by some good practices.

The next step is to allow .NET developers to write their own rules for their own frameworks and applications. Such custom rules might be

  • My UI layer should not directly access my DAL layer,
  • My methods should not be too complex, except the ones automatically generated,
  • My fields' names should abide by these particular regular expressions,
  • Clients of my framework should use my factories to instantiate my classes, or
  • The code of these particular classes is sensible and I want to be advised whenever it is updated.

In this track, we'll see how to write such custom rules with the FxCop framework. We'll also present some new kind of specific language dedicated to query and constraint code. We'll focus our attention on the Code Query Language (CQL) supported by the tool NDepend. CQL is to code bases what SQL is to relational databases. We'll see how it is especially designed to simplify writing custom rules.

 


 

 



Comments

Steve Dunn said:

Hi Patrick,

What language will the speakers be using at this conference (I'm meaning German or English, not C# or VB ! :)

Cheers,

Steve

# September 18, 2007 4:41 AM

Patrick Smacchia said:

I'll talk english, my german is unfortunatly quite poor (I'm french).

# September 28, 2007 5:18 PM

Leave a Comment

(required)  
(optional)
(required)  

Enter the numbers above:
Add

About Patrick Smacchia

Patrick Smacchia is a Visual C# MVP involved in software development for over 15 years. After graduating in mathematics and computer science, he has worked on software in a variety of fields including stock exchange, airline ticket reservation system as well as a satellite base station at Alcatel. He's currently a software consultant and trainer on .NET technologies as well as the lead developer of the tool NDepend which provides numerous metrics and caveats on any compiled .NET application. He is the author of Practical .NET2 and C#2, a .NET book conceived from real world experience with 647 compilable code listings. Check out Devlicio.us!