CruiseControl.NET Logo Login Documentation

Version : 1.7.664.8065

Latest
Next
Previous
 
Build Report
View Build Log
FxCop Report
Gendarme Report
NAnt Output
NAnt Timings
NDepend Details
NUnit Details
NUnit Timings
 
Recent Builds
2011-09-01 10:18:41 (1.3.14.0)
2011-08-22 09:53:57 (1.3.13.0)
2011-08-13 10:23:32 (1.3.12.0)
2011-08-08 12:15:30 (1.3.11.0)
2011-08-03 20:33:08 (1.3.10.0)
2011-08-03 20:31:24 (1.3.9.0)
2011-07-25 20:01:13 (1.3.8.0)
2011-07-12 17:34:58 (1.3.7.0)
2011-07-01 19:43:28 (1.3.6.0)
2011-06-29 22:24:45 (1.3.5.0)
Show All
BUILD SUCCESSFUL
Project: AspSQLProvider
Date of build: 2009-06-09 05:22:13
Running time: 00:02:33
Integration Request: BUILD triggered a build (ForceBuild)
Modifications since last build (0)
FxCop Messages: 19, Warning Messages: 6, Error Messages: 13
nauckit.postgresqlprovider.dll: 12 Errors, 5 Warnings
Gendarme Report: found 64 potential defects using 187 rules.
NauckIT.PostgreSQLProvider, Version=1.3.8.137, Culture=neutral, PublicKeyToken=e179b4c7dfb3984c: 49 defects
NDepend Report

Application name: AspSQLProvider
This report has been built on: 06/09/2009 05:24:12
To get explanations concerning these metrics, go to the NDepend home page.

Assemblies Metrics
VisualNDepend View
Assemblies Abstracness vs. Instability
Assemblies Dependencies
Assemblies Dependencies Diagram
Assemblies build order
NDepend information and warnings
CQL Queries and Constraints
Types Metrics

Number of assemblies: 1
Number of types: 7
Number of classes: 6
Number of abstract classes: 0
Number of interfaces: 0
Number of value types: 0
Number of exception classes: 0
Number of attribute classes: 0
Number of delegate classes: 0
Number of enumerations classes: 1
Number of generic type definitions: 0
Number of generic method definitions: 7
Number of IL instructions: 7663
Percentage of public types: 57,14%
Percentage of public methods: 51,43%
Percentage of classes with at least one public field: 0%

Stat # Occurrences Avg StdDev Max
Properties on Interfaces 0 Interfaces 0 0 -1 properties on
Methods on Interfaces 0 Interfaces 0 0 -1 methods on
Arguments on Methods on Interfaces 0 Methods 0 0 -1 arguments on
Public Properties on Classes 6 Classes 2,17 3,98 11 public properties on NauckIT.PostgreSQLProvider.PgMembershipProvider
Public Methods on Classes 6 Classes 12 10,2 30 public methods on NauckIT.PostgreSQLProvider.PgMembershipProvider
Arguments on Public Methods on Classes 72 Methods 1,81 1,78 8 arguments on NauckIT.PostgreSQLProvider.PgMembershipProvider.CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&)
IL Instructions in non-abstract Methods 140 Methods 54,74 81,92 394 IL instructions in NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateFailureCount(String,PgMembershipProvider+FailureType)
Cyclomatic complexity on non abstract Methods 140 Methods 5,51 6,86 CC = 32 for NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateFailureCount(String,PgMembershipProvider+FailureType)

Assembly # Types # Abstract Types # IL Inst Afferent Coupling Efferent Coupling Relational Cohesion Instability Abstractness Distance
NauckIT.PostgreSQLProvider v1.3.8.137 7 0 7663 0 113 1,43 1 0 0

Assembly Depends on... Is referenced by...
NauckIT.PostgreSQLProvider v1.3.8.137 System.Web v2.0.0.0 ; mscorlib v2.0.0.0 ; System v2.0.0.0 ; Npgsql v2.0.5.0 ; System.Configuration v2.0.0.0 ; System.Data v2.0.0.0 ; System.Xml v2.0.0.0 ; -

Blue : Assemblies of your application.
Yellow : Framework assemblies referenced by assemblies of your application.

NauckIT.PostgreSQLProvider

06/09/2009 05:23:33 Begin analysis with NDepend v2.12.0.3027
06/09/2009 05:23:33 Retrieve dependencies of your application.
Compare with most recent analysis (analysis made at 2009 May - 19 Tuesday 11:32)
Assemblies loaded from {C:\Windows\Microsoft.NET\Framework\v2.0.50727} System.dll v2.0.0.0 mscorlib.dll v2.0.0.0 System.Xml.dll v2.0.0.0 System.Configuration.dll v2.0.0.0 System.Data.dll v2.0.0.0 System.Web.dll v2.0.0.0
Assemblies loaded from {D:\Build\Projects\AspSQLProvider\SCM\Build} NauckIT.PostgreSQLProvider.dll v1.3.8.137 Npgsql.dll v2.0.5.0
8 source files parsed ; all source files found ; all source files in-sync with PDB
0 CQL constraint has been extracted from code.
No dependency cycle detected in assemblies referencement graph.
06.09.2009 05:23:50 Analyse dependencies of your application.
06.09.2009 05:23:51 Building the report (standard).
WARNING: No application or tier assembly found in directory {C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0}
WARNING: No application or tier assembly found in directory {C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5}

{Code Quality} Some CQL constraints are not satisfied.
{Code Quality \ Type Metrics} Some CQL constraints are not satisfied.
{Design} Some CQL constraints are not satisfied.
{Design \ Performance} Some CQL constraints are not satisfied.
{Unused Code / Dead Code} Some CQL constraints are not satisfied.
{Encapsulation} Some CQL constraints are not satisfied.
{Encapsulation \ Methods Optimal Encapsulation} Some CQL constraints are not satisfied.
{Encapsulation \ Types Optimal Encapsulation} Some CQL constraints are not satisfied.
{Encapsulation \ Fields Optimal Encapsulation} All CQL queries compile and all CQL contraints are satisfied.
{Diff / Changes / Evolution} All CQL queries compile and all CQL contraints are satisfied.
{Test Coverage} All CQL queries compile and all CQL contraints are satisfied.
{Purity / Immutability / Side-Effects} All CQL queries compile and all CQL contraints are satisfied.
{Naming Conventions} Some CQL constraints are not satisfied.
{Naming Conventions \ Name too long} Some CQL constraints are not satisfied.
{.NET Framework Usage} All CQL queries compile and all CQL contraints are satisfied.
{.NET Framework Usage \ System} All CQL queries compile and all CQL contraints are satisfied.
{.NET Framework Usage \ System.Collection} All CQL queries compile and all CQL contraints are satisfied.
{.NET Framework Usage \ System.Runtime.InteropServices} All CQL queries compile and all CQL contraints are satisfied.
{.NET Framework Usage \ System.Threading} All CQL queries compile and all CQL contraints are satisfied.
{.NET Framework Usage \ System.Xml} All CQL queries compile and all CQL contraints are satisfied.


WARNING: The following CQL constraint is not satisfied. 10 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Quick summary of methods to refactor</Name>

WARN IF Count > 0 IN SELECT TOP 10 METHODS /*OUT OF "YourGeneratedCode" */ WHERE 

                                           
// Metrics' definitions
     (  NbLinesOfCode > 30 OR              // http://www.ndepend.com/Metrics.aspx#NbLinesOfCode
        NbILInstructions > 200 OR          // http://www.ndepend.com/Metrics.aspx#NbILInstructions
        CyclomaticComplexity > 20 OR       // http://www.ndepend.com/Metrics.aspx#CC
        ILCyclomaticComplexity > 50 OR     // http://www.ndepend.com/Metrics.aspx#ILCC
        ILNestingDepth > 4 OR              // http://www.ndepend.com/Metrics.aspx#ILNestingDepth
        NbParameters > 5 OR                // http://www.ndepend.com/Metrics.aspx#NbParameters
        NbVariables > 8 OR                 // http://www.ndepend.com/Metrics.aspx#NbVariables
        NbOverloads > 6 )                  // http://www.ndepend.com/Metrics.aspx#NbOverloads
     AND 

     
// Here are some ways to avoid taking account of generated methods.
     !( NameIs "InitializeComponent()" OR
        
// NDepend.CQL.GeneratedAttribute is defined in the redistributable assembly $NDependInstallDir$\Lib\NDepend.CQL.dll
        // You can define your own attribute to mark "Generated".
        HasAttribute "OPTIONAL:NDepend.CQL.GeneratedAttribute") 
methods # lines of code (LOC) # IL instructions Cyclomatic Complexity (CC) IL Cyclomatic Complexity (ILCC) IL Nesting Depth # Parameters # Variables # Overloads Full Name
Initialize(String,NameValueCollection) 35 199 11 11 4 2 4 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.Initialize(String,NameValueCollection)
CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&) 52 277 12 15 3 8 7 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&)
FindUsersByEmail(String,Int32,Int32,Int32&) 40 202 9 21 4 4 11 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.FindUsersByEmail(String,Int32,Int32,Int32&)
FindUsersByName(String,Int32,Int32,Int32&) 38 197 8 20 4 4 11 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.FindUsersByName(String,Int32,Int32,Int32&)
GetAllUsers(Int32,Int32,Int32&) 34 171 8 20 4 3 11 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.GetAllUsers(Int32,Int32,Int32&)
GetPassword(String,String) 32 152 12 16 3 2 9 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.GetPassword(String,String)
ResetPassword(String,String) 50 253 15 24 3 2 12 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.ResetPassword(String,String)
ValidateUser(String,String) 38 191 9 17 5 2 11 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.ValidateUser(String,String)
GetUserFromReader(NpgsqlDataReader) 13 124 11 21 1 1 12 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.GetUserFromReader(NpgsqlDataReader)
UpdateFailureCount(String,PgMembershipProvider+FailureType) 59 394 22 32 4 2 16 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateFailureCount(String,PgMembershipProvider+FailureType)
Sum: 391 2160 117 197 35 30 104 10
Average: 39.1 216 11.7 19.7 3.5 3 10.4 1
Minimum: 13 124 8 11 1 1 4 1
Maximum: 59 394 22 32 5 8 16 1
Standard deviation: 12.078 72.684 4.0012 5.4046 1.0247 1.8974 3.0397 0
Variance: 145.89 5283 16.01 29.21 1.05 3.6 9.24 0


WARNING: The following CQL constraint is not satisfied. 10 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Methods too big (NbLinesOfCode)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbLinesOfCode > 30 ORDER BY NbLinesOfCode DESC
// METHODS WHERE NbLinesOfCode > 30 are extremely complex and 
// should be split in smaller methods 
// (except if they are automatically generated by a tool).
// See the definition of the NbLinesOfCode metric here http://www.ndepend.com/Metrics.aspx#NbLinesOfCode
methods # lines of code (LOC) Full Name
SetPropertyValues(SettingsContext,SettingsPropertyValueCollection) 63 NauckIT.PostgreSQLProvider.PgProfileProvider.SetPropertyValues(SettingsContext,SettingsPropertyValueCollection)
UpdateFailureCount(String,PgMembershipProvider+FailureType) 59 NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateFailureCount(String,PgMembershipProvider+FailureType)
GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&) 57 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&)
CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&) 52 NauckIT.PostgreSQLProvider.PgMembershipProvider.CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&)
ResetPassword(String,String) 50 NauckIT.PostgreSQLProvider.PgMembershipProvider.ResetPassword(String,String)
SetAndReleaseItemExclusive(HttpContext,String,SessionStateStoreData,Object,Boolean) 48 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.SetAndReleaseItemExclusive(HttpContext,String,SessionStateStoreData,Object,Boolean)
InvokeExpireCallbackAndDeleteSession() 48 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.InvokeExpireCallbackAndDeleteSession()
GetPropertyValues(SettingsContext,SettingsPropertyCollection) 44 NauckIT.PostgreSQLProvider.PgProfileProvider.GetPropertyValues(SettingsContext,SettingsPropertyCollection)
RemoveUsersFromRoles(String[],String[]) 43 NauckIT.PostgreSQLProvider.PgRoleProvider.RemoveUsersFromRoles(String[],String[])
AddUsersToRoles(String[],String[]) 43 NauckIT.PostgreSQLProvider.PgRoleProvider.AddUsersToRoles(String[],String[])
Sum: 507
Average: 50.7
Minimum: 43
Maximum: 63
Standard deviation: 6.634
Variance: 44.01


WARNING: The following CQL constraint is not satisfied. 10 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Methods too big (NbILInstructions)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbILInstructions > 200 ORDER BY NbILInstructions DESC
// METHODS WHERE NbILInstructions > 200 are extremely complex and 
// should be split in smaller methods 
// (except if they are automatically generated by a tool).
// See the definition of the NbILInstructions metric here http://www.ndepend.com/Metrics.aspx#NbILInstructions
methods # IL instructions Full Name
UpdateFailureCount(String,PgMembershipProvider+FailureType) 394 NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateFailureCount(String,PgMembershipProvider+FailureType)
SetPropertyValues(SettingsContext,SettingsPropertyValueCollection) 361 NauckIT.PostgreSQLProvider.PgProfileProvider.SetPropertyValues(SettingsContext,SettingsPropertyValueCollection)
GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&) 292 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&)
SetAndReleaseItemExclusive(HttpContext,String,SessionStateStoreData,Object,Boolean) 286 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.SetAndReleaseItemExclusive(HttpContext,String,SessionStateStoreData,Object,Boolean)
CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&) 277 NauckIT.PostgreSQLProvider.PgMembershipProvider.CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&)
ResetPassword(String,String) 253 NauckIT.PostgreSQLProvider.PgMembershipProvider.ResetPassword(String,String)
RemoveUsersFromRoles(String[],String[]) 245 NauckIT.PostgreSQLProvider.PgRoleProvider.RemoveUsersFromRoles(String[],String[])
AddUsersToRoles(String[],String[]) 245 NauckIT.PostgreSQLProvider.PgRoleProvider.AddUsersToRoles(String[],String[])
GetPropertyValues(SettingsContext,SettingsPropertyCollection) 238 NauckIT.PostgreSQLProvider.PgProfileProvider.GetPropertyValues(SettingsContext,SettingsPropertyCollection)
InvokeExpireCallbackAndDeleteSession() 228 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.InvokeExpireCallbackAndDeleteSession()
Sum: 2819
Average: 281.9
Minimum: 228
Maximum: 394
Standard deviation: 52.304
Variance: 2735.7


WARNING: The following CQL constraint is not satisfied. 1 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Methods too complex (CyclomaticComplexity)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE CyclomaticComplexity > 20 ORDER BY CyclomaticComplexity DESC
// METHODS WHERE CyclomaticComplexity > 15 are hard to understand and maintain.
// METHODS WHERE CyclomaticComplexity > 30 are extremely complex and should be split 
// in smaller methods (except if they are automatically generated by a tool).
// See the definition of the CyclomaticComplexity metric here http://www.ndepend.com/Metrics.aspx#CC
methods Cyclomatic Complexity (CC) Full Name
UpdateFailureCount(String,PgMembershipProvider+FailureType) 22 NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateFailureCount(String,PgMembershipProvider+FailureType)
Sum: 22
Average: 22
Minimum: 22
Maximum: 22
Standard deviation: 0
Variance: 0


WARNING: The following CQL constraint is not satisfied. 1 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Methods too complex (ILNestingDepth)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE ILNestingDepth > 4 ORDER BY ILNestingDepth DESC
// METHODS WHERE ILNestingDepth > 4 are hard to understand and maintain. 
// METHODS WHERE ILNestingDepth > 8 is higher than 8 are extremely complex and should be split in smaller methods 
// (except if they are automatically generated by a tool). 
// See the definition of the NbILInstructions metric here http://www.NDepend.com/Metrics.aspx#ILNestingDepth
methods IL Nesting Depth Full Name
ValidateUser(String,String) 5 NauckIT.PostgreSQLProvider.PgMembershipProvider.ValidateUser(String,String)
Sum: 5
Average: 5
Minimum: 5
Maximum: 5
Standard deviation: 0
Variance: 0


WARNING: The following CQL constraint is not satisfied. 10 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Methods poorly commented (PercentageComment)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE PercentageComment < 20 AND NbLinesOfCode > 10  ORDER BY PercentageComment ASC
// METHODS WHERE %Comment < 20 and that have at least 10 lines of code should be more commented.
// See the definition of the PercentageComment metric here http://www.ndepend.com/Metrics.aspx#PercentageComment
methods Percentage Comment # lines of code (LOC) Full Name
UpdateUser(MembershipUser) 0 16 NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateUser(MembershipUser)
GetAllRoles() 0 16 NauckIT.PostgreSQLProvider.PgRoleProvider.GetAllRoles()
UnlockUser(String) 0 19 NauckIT.PostgreSQLProvider.PgMembershipProvider.UnlockUser(String)
CreateProfileForUser(String,Boolean) 0 19 NauckIT.PostgreSQLProvider.PgProfileProvider.CreateProfileForUser(String,Boolean)
GetUserNameByEmail(String) 0 15 NauckIT.PostgreSQLProvider.PgMembershipProvider.GetUserNameByEmail(String)
GetPropertyValues(SettingsContext,SettingsPropertyCollection) 0 44 NauckIT.PostgreSQLProvider.PgProfileProvider.GetPropertyValues(SettingsContext,SettingsPropertyCollection)
ProfileExists(String) 0 18 NauckIT.PostgreSQLProvider.PgProfileProvider.ProfileExists(String)
CreateRole(String) 0 15 NauckIT.PostgreSQLProvider.PgRoleProvider.CreateRole(String)
FindUsersInRole(String,String) 0 19 NauckIT.PostgreSQLProvider.PgRoleProvider.FindUsersInRole(String,String)
EncodePassword(String) 0 12 NauckIT.PostgreSQLProvider.PgMembershipProvider.EncodePassword(String)
Sum: 0 193
Average: 0 19.3
Minimum: 0 12
Maximum: 0 44
Standard deviation: 0 8.5094
Variance: 0 72.41


WARNING: The following CQL constraint is not satisfied. 5 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Methods with too many parameters (NbParameters)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbParameters > 5 ORDER BY NbParameters DESC
// METHODS WHERE NbParameters > 5 might be painful to call and might degrade performance. 
// You should prefer using additional properties/fields to the declaring type to handle 
// numerous states. Another alternative is to provide a class or structure dedicated to 
// handle arguments passing (for example see the class System.Diagnostics.ProcessStartInfo 
// and the method System.Diagnostics.Process.Start(ProcessStartInfo))
// See the definition of the NbParameters metric here http://www.ndepend.com/Metrics.aspx#NbParameters
methods # Parameters Full Name
CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&) 8 NauckIT.PostgreSQLProvider.PgMembershipProvider.CreateUser(String,String,String,String,String,Boolean,Object,MembershipCreateStatus&)
GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&) 7 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&)
GetItem(HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&) 6 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.GetItem(HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&)
GetItemExclusive(HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&) 6 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.GetItemExclusive(HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&)
FindInactiveProfilesByUserName(ProfileAuthenticationOption,String,DateTime,Int32,Int32,Int32&) 6 NauckIT.PostgreSQLProvider.PgProfileProvider.FindInactiveProfilesByUserName(ProfileAuthenticationOption,String,DateTime,Int32,Int32,Int32&)
Sum: 33
Average: 6.6
Minimum: 6
Maximum: 8
Standard deviation: 0.800002
Variance: 0.6400032


WARNING: The following CQL constraint is not satisfied. 5 methods on 329 tested match the condition. --> Group {Code Quality}
// <Name>Methods with too many local variables (NbVariables)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbVariables > 15 ORDER BY NbVariables DESC
// METHODS WHERE NbVariables > 8 are hard to understand and maintain.
// METHODS WHERE NbVariables > 15 are extremely complex and should be split in 
// smaller methods (except if they are automatically generated by a tool).
// See the definition of the Nbvariables metric here http://www.ndepend.com/Metrics.aspx#Nbvariables
methods # Variables Full Name
AddUsersToRoles(String[],String[]) 24 NauckIT.PostgreSQLProvider.PgRoleProvider.AddUsersToRoles(String[],String[])
RemoveUsersFromRoles(String[],String[]) 24 NauckIT.PostgreSQLProvider.PgRoleProvider.RemoveUsersFromRoles(String[],String[])
InvokeExpireCallbackAndDeleteSession() 16 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.InvokeExpireCallbackAndDeleteSession()
GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&) 16 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.GetSessionStoreItem(Boolean,HttpContext,String,Boolean&,TimeSpan&,Object&,SessionStateActions&)
UpdateFailureCount(String,PgMembershipProvider+FailureType) 16 NauckIT.PostgreSQLProvider.PgMembershipProvider.UpdateFailureCount(String,PgMembershipProvider+FailureType)
Sum: 96
Average: 19.2
Minimum: 16
Maximum: 24
Standard deviation: 3.9192
Variance: 15.36


WARNING: The following CQL constraint is not satisfied. 2 types on 142 tested match the condition. --> Group {Code Quality \ Type Metrics}
// <Name>Types with too many methods</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE NbMethods > 20 ORDER BY NbMethods DESC
// TYPES WHERE NbMethods > 20 might be hard to understand and maintain 
// but there might be cases where it is relevant to have a high value for NbMethods. 
// For example, the System.Windows.Forms.DataGridView standard class has more than 1000 methods.
// See the definition of the NbMethods metric here http://www.ndepend.com/Metrics.aspx#NbMethods
types # Methods Full Name
Resources 41 NauckIT.PostgreSQLProvider.Properties.Resources
PgMembershipProvider 38 NauckIT.PostgreSQLProvider.PgMembershipProvider
Sum: 79
Average: 39.5
Minimum: 38
Maximum: 41
Standard deviation: 1.5
Variance: 2.25


WARNING: The following CQL constraint is not satisfied. 1 types on 142 tested match the condition. --> Group {Code Quality \ Type Metrics}
// <Name>Types with poor cohesion (LCOM)</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE LCOM > 0.8 AND NbFields > 10 AND NbMethods >10 ORDER BY LCOM DESC
// TYPES WHERE LCOM > 0.8 AND NbFields > 10 AND NbMethods >10 might be problematic. 
// However, it is very hard to avoid such non-cohesive types. The LCOMHS metric
// is often considered as more efficient to detect non-cohesive types.
// See the definition of the LCOM metric here http://www.ndepend.com/Metrics.aspx#LCOM
types Lack of Cohesion Of Methods (LCOM) # Fields # Methods Full Name
PgMembershipProvider 0.8603239 15 38 NauckIT.PostgreSQLProvider.PgMembershipProvider
Sum: 0.8603239 15 38
Average: 0.8603239 15 38
Minimum: 0.8603239 15 38
Maximum: 0.8603239 15 38
Standard deviation: 0 0 0
Variance: 0 0 0


WARNING: The following CQL constraint is not satisfied. 2 types on 7 tested match the condition. --> Group {Design}
// <Name>Type should not have too many responsabilities (Efferent Coupling)</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE TypeCe > 50 ORDER BY TypeCe DESC 
// The Efferent Coupling (TypeCe) for a particular type is the number of types 
// it directly depends on. Notice that types declared in tier assemblies are taken into account. 

// Types that depends on too many others type (more than 50) are complex and have
// more than one responsability. They are good candidate for refactoring.

// More information available in this article:
// http://codebetter.com/blogs/patricksmacchia/archive/2008/02/15/code-metrics-on-coupling-dead-code-design-flaws-and-re-engineering.aspx

types Efferent coupling at type level (TypeCe) Full Name
PgSessionStateStoreProvider 63 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider
PgMembershipProvider 57 NauckIT.PostgreSQLProvider.PgMembershipProvider
Sum: 120
Average: 60
Minimum: 57
Maximum: 63
Standard deviation: 3
Variance: 9


WARNING: The following CQL constraint is not satisfied. 1 types on 142 tested match the condition. --> Group {Design}
// <Name>A stateless type might be turned into a static type</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE 
  
SizeOfInst ==0 AND 
  
NbInterfacesImplemented == 0 AND // To be accurate, this constraint doesn't take 
                                   // account of types that implement some interfaces.
  !IsStatic AND 
  
!IsGeneric AND 
  
!IsInterface 
// It indicates stateless types that might eventually be turned into static classes.
// See the definition of the SizeOfInst metric here http://www.ndepend.com/Metrics.aspx#SizeOfInst
types Size of instance # interfaces implemented Full Name
Resources 0 0 NauckIT.PostgreSQLProvider.Properties.Resources
Sum: 0 0
Average: 0 0
Minimum: 0 0
Maximum: 0 0
Standard deviation: 0 0
Variance: 0 0


WARNING: The following CQL constraint is not satisfied. 5 types on 142 tested match the condition. --> Group {Design}
// <Name>Class with no descendant should be sealed if possible</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE 
  
IsClass AND 
  
NbChildren ==0 AND 
  
!IsSealed AND 
  
!IsStatic 
  
// AND !IsPublic   : You might want to add this condition if you are developping a framework
  //                   with classes that are intended to be sub-classed by your clients.
  ORDER BY NbLinesOfCode
types # Children # lines of code (LOC) Full Name
Resources 0 44 NauckIT.PostgreSQLProvider.Properties.Resources
PgProfileProvider 0 184 NauckIT.PostgreSQLProvider.PgProfileProvider
PgRoleProvider 0 249 NauckIT.PostgreSQLProvider.PgRoleProvider
PgSessionStateStoreProvider 0 338 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider
PgMembershipProvider 0 633 NauckIT.PostgreSQLProvider.PgMembershipProvider
Sum: 0 1448
Average: 0 289.6
Minimum: 0 44
Maximum: 0 633
Standard deviation: 0 196.66
Variance: 0 38677


WARNING: The following CQL constraint is not satisfied. 2 types on 142 tested match the condition. --> Group {Design}
// <Name>Classes that are candidate to be turned into Structures</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE 
  
IsClass AND
  
SizeOfInst <= 16 AND    // Structure instance must not be too big, else it degrades performance.
  NbChildren == 0 AND     // Must not have children
  DepthOfInheritance == 1 // Must derive directly from System.Object
  // AND IsSealed    : You might want to add this condition to restreint the set.
  // AND IsImmutable : Structures should be immutable type.
  // AND !IsPublic   : You might want to add this condition if you are developping a framework
  //                   with classes that are intended to be sub-classed by your clients.
types Size of instance # Children Depth of inheritance Full Name
SerializationHelper 0 0 1 NauckIT.PostgreSQLProvider.SerializationHelper
Resources 0 0 1 NauckIT.PostgreSQLProvider.Properties.Resources
Sum: 0 0 2
Average: 0 0 1
Minimum: 0 0 1
Maximum: 0 0 1
Standard deviation: 0 0 0
Variance: 0 0 0


WARNING: The following CQL constraint is not satisfied. 1 namespaces on 35 tested match the condition. --> Group {Design}
// <Name>Avoid namespaces with few types</Name>
WARN IF Count > 0 IN SELECT TOP 10 NAMESPACES WHERE NbTypes < 5 ORDER BY NbTypes ASC 

// Make sure that there is a logical organization to each of your namespaces, 
// and that there is a valid reason for putting types in a sparsely populated 
// namespace. Namespaces should contain types that are used together in most 
// scenarios. When their applications are mutually exclusive, types should be 
// located in separate namespaces
namespaces # Types Full Name
NauckIT.PostgreSQLProvider.Properties 1 NauckIT.PostgreSQLProvider.Properties
Sum: 1
Average: 1
Minimum: 1
Maximum: 1
Standard deviation: 0
Variance: 0


WARNING: The following CQL constraint is not satisfied. 1 assemblies on 8 tested match the condition. --> Group {Design}
// <Name>Assemblies with poor cohesion (RelationalCohesion)</Name>
WARN IF Count > 0 IN SELECT TOP 10 ASSEMBLIES WHERE RelationalCohesion < 1.5 OR RelationalCohesion > 4.0

// As classes inside an assembly should be strongly related, 
// the cohesion should be high. On the other hand, a value which is too high may 
// indicate over-coupling. A good range for RelationalCohesion is 1.5 to 4.0.
// See the definition of the RelationalCohesion metric here http://www.ndepend.com/Metrics.aspx#RelationalCohesion
assemblies Relational cohesion Full Name
NauckIT.PostgreSQLProvider 1.4286 NauckIT.PostgreSQLProvider
Sum: 1.4286
Average: 1.4286
Minimum: 1.4286
Maximum: 1.4286
Standard deviation: 0
Variance: 0


WARNING: The following CQL constraint is not satisfied. 31 methods on 329 tested match the condition. --> Group {Design \ Performance}
// <Name>Boxing/unboxing should be avoided (Method)</Name>
WARN IF Percentage > 5 IN SELECT METHODS WHERE IsUsingBoxing OR IsUsingUnboxing 
// Thanks to generics, boxing and unboxing should be rare.
methods # lines of code (LOC) Full Name
Sum: 909
Average: 29.323
Minimum: 3
Maximum: 63
Standard deviation: 17.392
Variance: 302.48


WARNING: The following CQL constraint is not satisfied. 7 methods on 140 tested match the condition. --> Group {Unused Code / Dead Code}
// <Name>Potentially unused methods</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE 
 
MethodCa == 0 AND            // Ca=0 -> No Afferent Coupling -> The method is not used in the context of this application.
 !IsPublic AND                // Public methods might be used by client applications of your assemblies.
 !IsEntryPoint AND            // Main() method is not used by-design.
 !IsExplicitInterfaceImpl AND // The IL code never explicitely calls explicit interface methods implementation.
 !IsClassConstructor AND      // The IL code never explicitely calls class constructors.
 !IsFinalizer                 // The IL code never explicitely calls finalizers.
methods Afferent coupling at method level (MethodCa) Full Name
SerializeToXmlFile<T>(String,T,String) 0 NauckIT.PostgreSQLProvider.SerializationHelper.SerializeToXmlFile<T>(String,T,String)
DeserializeFromXmlFile<T>(String,String) 0 NauckIT.PostgreSQLProvider.SerializationHelper.DeserializeFromXmlFile<T>(String,String)
SerializeToBinaryFile(String,Object) 0 NauckIT.PostgreSQLProvider.SerializationHelper.SerializeToBinaryFile(String,Object)
DeserializeFromBinaryFile<T>(String) 0 NauckIT.PostgreSQLProvider.SerializationHelper.DeserializeFromBinaryFile<T>(String)
get_Culture() 0 NauckIT.PostgreSQLProvider.Properties.Resources.get_Culture()
set_Culture(CultureInfo) 0 NauckIT.PostgreSQLProvider.Properties.Resources.set_Culture(CultureInfo)
.ctor() 0 NauckIT.PostgreSQLProvider.Properties.Resources..ctor()
Sum: 0
Average: 0
Minimum: 0
Maximum: 0
Standard deviation: 0
Variance: 0


WARNING: The following CQL constraint is not satisfied. 10 methods on 329 tested match the condition. --> Group {Encapsulation \ Methods Optimal Encapsulation}
// <Name>Methods that could be declared as 'private' in C#,  'Private' in VB.NET</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE CouldBePrivate
methods # lines of code (LOC) Full Name
.ctor() 3 NauckIT.PostgreSQLProvider.PgMembershipProvider..ctor()
.ctor() 2 NauckIT.PostgreSQLProvider.PgProfileProvider..ctor()
.ctor() 2 NauckIT.PostgreSQLProvider.PgRoleProvider..ctor()
.ctor() 2 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider..ctor()
SerializeToXmlFile<T>(String,T,String) 4 NauckIT.PostgreSQLProvider.SerializationHelper.SerializeToXmlFile<T>(String,T,String)
DeserializeFromXmlFile<T>(String,String) 5 NauckIT.PostgreSQLProvider.SerializationHelper.DeserializeFromXmlFile<T>(String,String)
SerializeToBinaryFile(String,Object) 4 NauckIT.PostgreSQLProvider.SerializationHelper.SerializeToBinaryFile(String,Object)
DeserializeFromBinaryFile<T>(String) 5 NauckIT.PostgreSQLProvider.SerializationHelper.DeserializeFromBinaryFile<T>(String)
get_ResourceManager() 4 NauckIT.PostgreSQLProvider.Properties.Resources.get_ResourceManager()
get_Culture() 1 NauckIT.PostgreSQLProvider.Properties.Resources.get_Culture()
Sum: 32
Average: 3.2
Minimum: 1
Maximum: 5
Standard deviation: 1.3266
Variance: 1.76


WARNING: The following CQL constraint is not satisfied. 4 types on 142 tested match the condition. --> Group {Encapsulation \ Types Optimal Encapsulation}
// <Name>Types that could be declared as internal</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE CouldBeInternal
types # lines of code (LOC) Full Name
PgMembershipProvider 633 NauckIT.PostgreSQLProvider.PgMembershipProvider
PgProfileProvider 184 NauckIT.PostgreSQLProvider.PgProfileProvider
PgRoleProvider 249 NauckIT.PostgreSQLProvider.PgRoleProvider
PgSessionStateStoreProvider 338 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider
Sum: 1404
Average: 351
Minimum: 184
Maximum: 633
Standard deviation: 171.75
Variance: 29496.5


WARNING: The following CQL constraint is not satisfied. 2 fields on 48 tested match the condition. --> Group {Naming Conventions}
// <Name>Static fields should be prefixed with a 's_'</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE 
  
!NameLike "^s_" AND 
  
IsStatic AND 
  
!IsLiteral AND 
  
!IsGeneratedByCompiler AND 
  
!IsSpecialName AND 
  
!IsEventDelegateObject  

// This naming convention provokes debate.
// Don't hesitate to customize the regex of NameLike to your preference.
fields Size of instance Full Name
resourceMan 0 NauckIT.PostgreSQLProvider.Properties.Resources.resourceMan
resourceCulture 0 NauckIT.PostgreSQLProvider.Properties.Resources.resourceCulture
Sum: 0
Average: 0
Minimum: 0
Maximum: 0
Standard deviation: 0
Variance: 0


WARNING: The following CQL constraint is not satisfied. 10 methods on 329 tested match the condition. --> Group {Naming Conventions \ Name too long}
// <Name>Avoid methods with name too long</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS 
  
WHERE NameLike "^[^\<\(]{35,}.*$" AND 
        
!IsExplicitInterfaceImpl AND !IsInFrameworkAssembly 
// The regex matches methods with name longer than 35 characters.
// Method Name doesn't contain the type and namespace prefix, FullName does.
// The regex computes the method name length from the beginning until the first open parenthesis or first lower than (for generic methods).
// Explicit Interface Implementation methods are discarded because their names are prefixed with the interface name.
methods # lines of code (LOC) Full Name
get_MinRequiredNonAlphanumericCharacters() 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.get_MinRequiredNonAlphanumericCharacters()
get_PasswordStrengthRegularExpression() 1 NauckIT.PostgreSQLProvider.PgMembershipProvider.get_PasswordStrengthRegularExpression()
ExpiredSessionDeletionTimer_Elapsed(Object,ElapsedEventArgs) 3 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.ExpiredSessionDeletionTimer_Elapsed(Object,ElapsedEventArgs)
InvokeExpireCallbackAndDeleteSession() 48 NauckIT.PostgreSQLProvider.PgSessionStateStoreProvider.InvokeExpireCallbackAndDeleteSession()
get_ErrAutoGeneratedKeyNotSupported() 1 NauckIT.PostgreSQLProvider.Properties.Resources.get_ErrAutoGeneratedKeyNotSupported()
get_ErrCantUpdateFailtureCountAndWindowStart() 1 NauckIT.PostgreSQLProvider.Properties.Resources.get_ErrCantUpdateFailtureCountAndWindowStart()
get_MembershipProviderDefaultDescription() 1 NauckIT.PostgreSQLProvider.Properties.Resources.get_MembershipProviderDefaultDescription()
get_ProfileProviderDefaultDescription() 1 NauckIT.PostgreSQLProvider.Properties.Resources.get_ProfileProviderDefaultDescription()
get_SessionStoreProviderDefaultDescription() 1 NauckIT.PostgreSQLProvider.Properties.Resources.get_SessionStoreProviderDefaultDescription()
get_SessionStoreProviderDefaultName() 1 NauckIT.PostgreSQLProvider.Properties.Resources.get_SessionStoreProviderDefaultName()
Sum: 59
Average: 5.9
Minimum: 1
Maximum: 48
Standard deviation: 14.046
Variance: 197.29


WARNING: The following CQL constraint is not satisfied. 2 fields on 48 tested match the condition. --> Group {Naming Conventions \ Name too long}
// <Name>Avoid fields with name too long</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE 
  
NameLike "^[^\<]{35,}.*$" AND 
  
!IsInFrameworkAssembly 
// The regex matches fields with name longer than 35 characters.
// Field Name doesn't contain the type and namespace prefix, FullName does.
fields Size of instance Full Name
m_minRequiredNonAlphanumericCharacters 4 NauckIT.PostgreSQLProvider.PgMembershipProvider.m_minRequiredNonAlphanumericCharacters
m_passwordStrengthRegularExpression 4 NauckIT.PostgreSQLProvider.PgMembershipProvider.m_passwordStrengthRegularExpression
Sum: 8
Average: 4
Minimum: 4
Maximum: 4
Standard deviation: 0
Variance: 0

lcom: Lack of Cohesion Of Methods of a class
CC: Cyclomatic Complexity
Ca: Afferent Coupling
Ce: Efferent Coupling
ABC: Association Between Classes
NOC: Number Of Children
DIT: Depth in Inheritence Tree
Type rank lcom lcom(HS) CC Ca Ce ABC # Instance Methods # Static Methods # Prop # Fld # ILInst NOC DIT Namespace
Resources 1,59 0 0 42 4 13 6 1 40 39 2 207 0 1 NauckIT.PostgreSQLProvider.Properties
PgMembershipProvider 1,28 0,86 0,88 195 3 57 119 35 3 11 15 3302 0 3 NauckIT.PostgreSQLProvider
SerializationHelper 0,49 0 0 10 1 20 23 0 10 0 0 191 0 1 NauckIT.PostgreSQLProvider
PgMembershipProvider+FailureType 0,46 - - - 1 2 0 - - - - - - - NauckIT.PostgreSQLProvider
PgRoleProvider 0,15 0,07 0,08 69 0 32 54 14 0 1 4 1316 0 3 NauckIT.PostgreSQLProvider
PgProfileProvider 0,15 0,53 0,56 56 0 50 87 17 0 1 5 1007 0 1 NauckIT.PostgreSQLProvider
PgSessionStateStoreProvider 0,15 0,73 0,76 85 0 63 100 18 2 0 7 1640 0 3 NauckIT.PostgreSQLProvider

Suites run: 0, Tests run: 0, Failures: 0, Not run: 0, Time: 0seconds
No Tests Run
This project doesn't have any tests