Unified CodeCounter (UCC) with Differencing Functionality - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Unified CodeCounter (UCC) with Differencing Functionality

Description:

Unified CodeCounter (UCC) with Differencing Functionality Marilyn Sperka1, Vu Nguyen2, Ryan Pfeiffer1 1 The Aerospace Corporation 2 University of Southern California – PowerPoint PPT presentation

Number of Views:37
Avg rating:3.0/5.0
Slides: 17
Provided by: csseUscE
Category:

less

Transcript and Presenter's Notes

Title: Unified CodeCounter (UCC) with Differencing Functionality


1
Unified CodeCounter (UCC) with Differencing
Functionality
  • Marilyn Sperka1, Vu Nguyen2, Ryan Pfeiffer1
  • 1 The Aerospace Corporation
  • 2 University of Southern California
  • 24th International Forum on COCOMO
  • 10/03/2009

2
What Does a Code Counter Do?
  • Determines software size
  • Leads to more reliable metrics
  • Cost
  • Schedule
  • Productivity
  • Valuable analysis of existing projects
  • Better predictions for new software systems cost
    and schedule

3
Dont We Do That Already?
  • Many code counters available now
  • Various problems
  • Some are proprietary, others are public domain
  • Inconsistent counting rules
  • May or may not be maintained
  • Big problem they count differently
  • Inconsistent or biased conclusions

4
Why Develop Yet Another?
  • NRO Cost Group (NCG) needed a tool to
  • Count software lines of code
  • Consistently
  • With documented standards
  • Ability to easily add new languages
  • Support and maintenance
  • Compare different baselines of software
  • Determine addition, modification, deletion
  • Identify duplicate files
  • Determine complexity

5
How Did It Get Started?
  • USC wanted real-world projects for students
  • USC CSSE University of Southern California
    Center for Systems and Software Engineering
  • Non-biased, industry-respected
  • Aerospace management recognized the potential of
    a USC/Aerospace team
  • A collection of existing code counting tools was
    donated to USC
  • Northrop Grumman, TRW, Boeing

6
Where Is It Now?
  • CodeCount is developed and maintained at USC
  • Graduate students get credit for directed
    research while interning
  • Code counters are continuously being checked and
    updated by USC students
  • New languages are added every semester
  • Aerospace provides validation and verification
  • Active involvement in class projects

7
Latest Release UCC
  • The latest release of UCC unifies the code
    counters and differencing functions into a single
    application
  • UCC Unified CodeCounter
  • Common interface
  • Easy to use
  • Consistent output reports

8
Links
  • http//sunset.usc.edu/research/CODECOUNT/
  • Open source code and documentation
  • http//sunset.usc.edu/csse/affiliate/private/codec
    ount.html
  • Beta release code to affiliates
  • http//brown.usc.edu8080/
  • Wiki information
  • nguyenvu_at_usc.edu
  • To report bugs or make suggestions

9
Features
  • Platform independent
  • Command line interface
  • Modes Code counting only or counting plus
    differencing
  • Counts multiple files and languages in a single
    pass
  • Output reports
  • Robust processing
  • Options to improve performance
  • Error log

10
Code Counting
  • Counts logical and physical SLOC, comments, and
    blank lines
  • Counts multiple languages in one run
  • Creates separate output reports for each language
  • Also creates grand total report
  • Identifies duplicate files
  • Reports those counts separately

11
Differencing
  • Compares two baselines of files
  • Counts each same as in code counting
  • Matches files between baselines
  • Compares the code and counts
  • SLOC added to second baseline
  • SLOC deleted from first baseline
  • SLOC modified in second baseline
  • SLOC unmodified between baselines

12
Differencing, Continued
  • Reports on files in one baseline but not the
    other
  • Identifies duplicate files in each baseline
  • Reports counts separately
  • Options for performance enhancement

13
Languages Supported
  • Code Counting
  • Differencing
  • JSP
  • HTML
  • CSS
  • JavaScript
  • VB
  • VBScript
  • PhP
  • C/C
  • C
  • Java
  • SQL
  • Ada
  • Perl
  • ASP
  • C/C
  • C
  • Java
  • SQL
  • Ada
  • Perl
  • ASP
  • JSP
  • HTML
  • CSS
  • JavaScript
  • VB
  • VBScript

Code counters are developed first, then
differencing is added
14
Output Reports
  • A variety of reports are output
  • Counting, differencing, duplicates, complexity,
    errors
  • Users can customize their reports
  • Several .csv reports
  • Load directly into Excel

15
Current Projects
  • Code counters and differencing for Python, Unix
    shell script, Ruby, ColdFusion, Fortran, PhP,
    X-Midas, Assembly, COBOL
  • Add GUI front end interface
  • Improve complexity counting

16
Questions and Comments
Write a Comment
User Comments (0)
About PowerShow.com