{"id":20905985,"url":"https://github.com/objectprofile/ckmetrics","last_synced_at":"2026-02-12T07:31:32.318Z","repository":{"id":78478100,"uuid":"85630102","full_name":"ObjectProfile/CKMetrics","owner":"ObjectProfile","description":"CKMetrics for Cincom VisualWorks Smalltalk","archived":false,"fork":false,"pushed_at":"2017-04-03T22:57:40.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-09-09T20:18:24.093Z","etag":null,"topics":["metrics","quality","software","visualwork"],"latest_commit_sha":null,"homepage":"http://objectprofile.com","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ObjectProfile.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-20T21:40:24.000Z","updated_at":"2017-03-20T21:53:07.000Z","dependencies_parsed_at":"2023-02-27T22:15:51.018Z","dependency_job_id":null,"html_url":"https://github.com/ObjectProfile/CKMetrics","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ObjectProfile/CKMetrics","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ObjectProfile%2FCKMetrics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ObjectProfile%2FCKMetrics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ObjectProfile%2FCKMetrics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ObjectProfile%2FCKMetrics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ObjectProfile","download_url":"https://codeload.github.com/ObjectProfile/CKMetrics/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ObjectProfile%2FCKMetrics/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29361453,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-12T01:03:07.613Z","status":"online","status_checked_at":"2026-02-12T02:00:06.911Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["metrics","quality","software","visualwork"],"created_at":"2024-11-18T13:28:31.938Z","updated_at":"2026-02-12T07:31:32.306Z","avatar_url":"https://github.com/ObjectProfile.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# CKMetrics\n\nChidamber \u0026 Kemerer object-oriented metrics are a metric suite intended to monitor software quality. This repository describes the implementation of CKMetrics for VisualWorks. \n\n## Where to get CKMetrics for VisualWorks\n\n* In VisualWorks connect to the publick repository in cincom \n* In Store \u003e\u003e Published Items select `CKMetrics-core` for solely CKMetrics, or `CKMetrics-full` for CKMetrics and the Roassal-based visualizer\n* Load ckmetrics-full, to get the report calculator, and the visualizer, or load ckmetrics-core to get the report calculator with the basic metrics\n\n## Use example\n\nFor generate a report you can use the next script \n\n ```\n| calculator |\ncalculator := CKCalculator new.\ncalculator addPackagesMatching: 'CKMetric*'.\ncalculator printResultOnDisk: 'myckmetricreport'\n ```\n\nThe method #addPackagesMatching: uses regular expresion to find the packages that you may want to measure.\nThe previous code should generate a file with this output\n\n ```\nCC\t1.28421\tCyclomatic Complexity\tReturns the cyclomatic complexity....\nLOC\t1059\tNumber of Lines of Code\tReturns the number of lines of code, ...\nLOCxC\t34.1613\tNumber of Lines of Code per Class\tReturns the average number of lines of code per class\nLOCxM\t4.26842\tNumber of Lines of Code per Method\tReturns the average number of lines of code per method\nLOCxP\t176.5\tNumber of Lines of Code per Package\tReturns the average number of lines of code per package\nNIV\t65\tNumber of Instance Variables\tReturns the number of instance variables defined in the system\nNOBugs\t0\tNumber of Bugs\tReturns the number bugs(check comment of class CKNOBugsLED)\nNOC\t31\tNumber of Classes\tReturns the number of classes defined in the system\nNOCom\t63\tNumber of Commentaries\tReturn the number of commentaries in the system. Comments for packages, classes, and methods are considered.\nNOCriticis\t7\tNumber of code critics\tReturns the number code critics(check comment of class CKNOCodeCriticsLED)\nNOCxP\t5.16667\tNumber of Classes per Package\tReturns the number of classes defined per package in the system\nNOIntRev\t4\tNumber of Intention revealing\tReturns the number of intention revealing(check comment of class CKNOIntentionLED)\nNOM\t190\tNumber of Methods\tReturns the number of methods defined in the system (instance methods only)\nNOMiscellaneous\t2\tNumber of Miscellaneous\tReturns the number of miscellaneous(check comment of class CKNOMiscellaneousLED)\nNOMxC\t6.12903\tNumber of Methods per Class\tReturns the number of methods per class\nNOMxP\t31.6667\tNumber of Methods per Package\tReturns the number of methods per package\nNOP\t6\tNumber Of Packages\tReturns the number of packages defined in the analyzed system.\nNOPossibleBugs\t0\tNumber of Possible Bugs\tReturns the number of possible bugs(check comment of class CKNOPossibleBugsLED)\nNOUnnecessaryCode\t1\tNumber of Unnecesary code\tReturns the number of Unncessary code(check comment of class CKNOUnnecessaryCodeLED)\n ```\n\nWith the visualizer, you can use the menu Tools\u003e\u003eVisualize CKMetrics Reports, to get a graph that shows all the reports that you previously created. And check the evolution of your app with lines of code, number of classes, by version.\n\n## Get in touch with us\n\nYou can get in touch with us via several ways:\n - sending us an email to info@objectprofile.com\n - having a chat on Slack (Get an invitation from http://pharo.org/community , you will find us on the #Roassal channel)\n\n## Contributing\n\nWe welcome contribution. Best is to either get in touch with us or submit issues to this GitHub repository.\n\n## Platform\n\nCKMetrics has been designed to work on Cincom VisualWorks Smalltalk, starting from version 7.4 until the most recent ones.\n\n## License\n\nThe CKMetric code for VisualWorks is under the MIT License. Code belongs to Object Profile and Lam Research. The full license is available on: https://github.com/ObjectProfile/CKMetrics/blob/master/LICENSE\n\nWebsite of the copyright holders: http://objectprofile.com http://www.lamresearch.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobjectprofile%2Fckmetrics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fobjectprofile%2Fckmetrics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobjectprofile%2Fckmetrics/lists"}