McCabe complexity

Steve Petrie, P.Eng. apetrie at aspetrie.net
Tue Jan 5 11:50:05 PST 2016


Pierre,

Thanks for your pmccabe research summary -- most interesting !!

A while ago (after much research) I decided to use DFly + Hammer as a 
reliable and efficient foundation, for my first website app (PHP + 
PostgreSQL).

I am working with DFly on a QEMU / KVM VM at Elastic Hosts 
www.elastichosts.com

Not enough experience yet with the EH DFly setup, to be able to give any 
detailed feedback, but so far it's been great (website not yet online, 
presently migrating to postgres from mysql).

* * *
* * *

My little ol' website app probably has McCabe complexity << 1 ?? For sure 
nothing remotely as complicated as winged edges or a filesystem :)

But it's good to know that I'm flying (humbly, gratefully) on the remotest 
fringes of a DFly community of McCabe Super-Complexity practitioners ...

Regards,

Steve

----- Original Message ----- 
From: "Pierre Abbat" <phma at leaf.dragonflybsd.org>
To: <users at dragonflybsd.org>
Sent: Tuesday, January 05, 2016 9:36 AM
Subject: McCabe complexity


> I've been working on a land surveying program for over eight years. 
> According
> to pmccabe, the most complicated functions are pointlist::maketin (62), 
> which
> creates a triangulated irregular network, and triangle::subdivide (58/65),
> which subdivides a triangle into monotonic regions. The TIN uses a 
> tangledly
> hierarchical data structure called "winged edge", in which points, edges, 
> and
> triangles all point to each other. It took me years to make it work right.
>
> I checked HAMMER source code with pmccabe. The most complex function is
> hammer_vfs_mount, at 51. In hammer2, the most complex is
> hammer2_cluster_resolve, at 79/90. In the hammer utility, the main program 
> is
> 93/144, and in hammer2 68/78.
>
> Whoever said McCabe complexity should be at most 10 never worked on such
> complex data structures as a winged edge or a filesystem.
>
> Pierre
>
> -- 
> ve ka'a ro klaji la .romas. se jmaji
> 




More information about the Users mailing list