LINGUIST List 15.1609

Thu May 20 2004

Diss: Computational Ling: Stein: 'Semantic...'

Editor for this issue: Tomoko Okuno <tomokolinguistlist.org>


Directory

  • steince99, Semantic Metrics for Source Code and Design

    Message 1: Semantic Metrics for Source Code and Design

    Date: Thu, 20 May 2004 17:44:03 -0400 (EDT)
    From: steince99 <steince99yahoo.com>
    Subject: Semantic Metrics for Source Code and Design




    Institution: University of Alabama at Huntsville Program: Computer Science Dissertation Status: Completed Degree Date: 2004

    Author: Cara E Stein

    Dissertation Title: Semantic Metrics for Source Code and Design

    Linguistic Field: Computational Linguistics

    Dissertation Director 1: Letha H Etzkorn

    Dissertation Abstract:

    Software practitioners need ways to assess the quality of their software, and metrics can provide an automated way to do that. Traditional software metrics count aspects of code related to its syntax. In contrast, semantic metrics, introduced by Etzkorn and Delugach, count things related to the meaning of software in its domain. Because semantic metrics do not depend on the structure of the code, they can be calculated from requirements and design documents before the code has been written.

    The focus of this dissertation is to apply semantic metrics to source code and design specifications. This research includes performing theoretical and empirical analysis on existing metrics, as well as creating and analyzing new metrics. These new metrics answer the call for metrics that are unambiguously defined, theoretically valid, and at a finer grain than most existing object-oriented metrics. They are available early in the software development lifecycle, and they match or outperform some existing software metrics. The analysis performed in this project should prove helpful to those in the software field who are overwhelmed by the number of metrics in existence and seek guidance as to which ones are valid and useful.

    More importantly, in providing the ability to calculate metrics from prose descriptions in design specifications, this work allows metrics to be used for analysis before a system has been implemented. Thus, if metrics pinpoint high complexity or low cohesion in a class, that class can be assessed and possibly redesigned before implementation begins, potentially saving considerable time and money on software development projects.