통합코드수(UCC)

Unified Code Count (UCC)
통합 코드 수
Ucc screenshot.PNG
USC Unified Code Count(UCC) v.201007.표시된 것은 개발자의 개발 중 GUI 도구입니다(현재 미공개).
원저작자부응옌
개발자USC CSE
초기 릴리즈2009년; 13년 전(2009년)
기입처C++
운영 체제크로스 플랫폼
이용가능기간:영어
유형파일 비교 도구
면허증.USC-CSE Limited Public License(공용 라이선스)
웹 사이트sunset.usc.edu/research/CODECOUNT/ Edit this on Wikidata

Unified Code Counter(UCC; 통합 코드 카운터)는 USC Systems and Software Engineering 센터에서 생산하는 포괄적인 소프트웨어 라인 코드 카운터입니다.일반 대중은 오픈 소스 코드로 사용할 수 있으며 표준 ANSI C++ 컴파일러를 사용하여 컴파일할 수 있습니다.

서론

소프트웨어 평가의 주요 문제 중 하나는 소프트웨어 제품의 가장 중요한 특성 중 하나이기도 한 사이징입니다.이는 소프트웨어 비용과 시간의 주요 지표일 뿐만 아니라 프로젝트 상태 및 소프트웨어 품질 측정에 대한 기타 측정 기준을 도출하는 기본 단위이기도 합니다.SLIM, SEER-SEM, PRICE True Planning for Software 등 대부분의 비용 견적[1] 모델에서 크기 메트릭이 필수 입력으로 사용됩니다.코드 소스라인(SLOC)은 널리 받아들여지고 있는 사이징 메트릭이지만 일반적으로 SLOC를 카운트하는 내용과 방법의 일관성을 강제하는 규격은 없습니다.

Southern California 대학시스템소프트웨어 엔지니어링 센터(CSE)는 Unified Code Count(UCC; 통합 코드 카운트)라고 불리는 코드 카운트 툴 세트를 개발 및 출시했습니다.이 툴셋은 소프트웨어 코드 라인 계산에 사용되는 규칙에서 독립 조직 간에 일관성을 유지합니다.

UCC Block Diagram.
UCC 블록도

주된 목적은 이력 데이터 수집 및 보고서 작성 목적으로 소프트웨어 수와 메트릭의 사이징을 지원하는 것입니다.Software Engineering Institute(SEI)가 발행하고 COCOMO가 채택한 코드 카운트 프레임워크를 구현합니다.논리 SLOC 및 물리 SLOC는 툴셋에 의해 생성되는 메트릭 중 하나입니다.SLOC는 [2]Source Lines of Code를 말하며 일련의 규칙에 따라 소프트웨어 프로그램의 크기를 측정하는 데 사용됩니다.SLOC는 프로젝트 작업의 견적을 위한 주요 입력 정보이며 생산성 및 기타 측정값 계산에도 사용됩니다.SLOC에는 Physical SLOC와 Logical SLOC의 2종류가 있습니다.Physical SLOC(PSLOC)는 첫 번째 문자로 시작하여 같은 행의 캐리지 리턴 또는 파일 끝 마커로 끝나는1개의 행에 대응합니다.공백 행과 코멘트 행은 카운트되지 않습니다.논리 SLOC(LSLOC) – 보통 세미콜론(C/C++, Java, C#) 또는 캐리지 리턴(VB, 어셈블리) 등으로 끝나는 "문"을 측정하는 것을 목적으로 하는 코드 행.논리 SLOC는 형식과 스타일의 규칙에 민감하지 않지만 언어에 따라 다릅니다.

Unified Code Count(UCC; Unified Code Count) 분리 기능을 통해 사용자는 소프트웨어 제품의 두 소스 코드 버전 간의 논리적 차이를 카운트, 비교 및 수집할 수 있습니다.분리 기능을 통해 사용자는 n을 셀 수 있습니다.

이전 버전과 비교하여 현재 버전의 추가/신규, 삭제, 변경 및 수정되지 않은 논리 SLOC의 수를 나타냅니다.

역사

2000년대 초반에는 다양한 코드 계수 도구가 존재했습니다.그러나 표준 계수 규칙과 소프트웨어 접근성 문제가 없기 때문에 국립 정찰국의 비용 분석 개선 그룹(NCAIG)은 소프트웨어 프로그램 비용을 분석하기 위한 새로운 코드 계수 도구의 필요성을 확인했습니다.업계의 편견을 피하기 위해 CodeCount[3] 툴은 Dr. Barry Boehm, Meriley Whiton, A지시에 따라 센터를 중심으로 개발되었습니다. Winsor Brown씨, 항공우주공사가 제공하는 IV&V입니다.Northrop GrummanThe Boeing Company를 포함한 많은 조직이 USC CSE에 몇 가지 코드 계수 도구를 기증했습니다.목표는 여러 언어를 처리하고 크고 작은 소프트웨어 시스템에서 일관된 결과를 생성하는 퍼블릭 도메인 코드 계수 도구를 개발하는 것이었습니다.

프로젝트 계획은 학기마다 작성되며 USC 대학원생에게 코드 카운트 툴을 갱신하는 프로젝트가 할당됩니다.USC의 박사과정 학생인 Vu Nguyen은 여러 학기의 학생 프로젝트를 이끌었습니다.모든 변경은 USC 강사와 긴밀히 협력하여 프로젝트에 임하는 Aerospace Corporation IV & V 팀에 의해 검증 및 검증됩니다.베타 버전은 산업 계열사에서 테스트한 후 공개 소스 코드로 일반에 공개됩니다.

2006년에는 두 소프트웨어 시스템 기준선을 비교하여 두 버전의 소프트웨어 간의 차이를 확인하는 차이점 분석 도구를 개발하는 작업이 수행되었습니다.UCC의 전신인 CodeCount 툴세트는 2007년에 출시되었습니다.COBOL, 어셈블리, PL/1, 파스칼조비탈과 같은 언어로 작성된 소스 코드를 측정하기 위해 단일 언어로 작성된 독립 실행형 프로그램 모음입니다.

Nguyen은 프레임워크로 Unified Code Count(UCC) 시스템 설계를 제작하고 기존 코드 카운터와 차이점 보관 도구를 통합했습니다.통합 카운트 및 차이점 보관 기능, 중복 파일 탐지, 텍스트 CSV 출력 파일 지원 등의 추가 기능도 추가되었습니다.2009년 [4]10월 COCOMO에 관한 제24회 국제 포럼에서 "차이렌싱 기능을 가진 통합 코드 수"에 관한 프레젠테이션이 발표되었습니다.

UCC 툴은 코드를 사용하거나 변경할 수 있는 라이선스와[5] 함께 일반에 공개되어 있습니다.변경을 배포하려면 변경 내용을 USC CSE로 전송해야 합니다.

중요성

Unified Code Count(UCC)는 수행된 작업과 직접 관련된 물리적 및 논리적 SLOC 카운트에 대한 기존 프로젝트를 분석하기 위해 사용됩니다.수집된 데이터는 소프트웨어 비용 추정 모델에서 사용하여 유사한 프로젝트가 성공적으로 완료되는 데 소요되는 시간과 비용을 정확하게 추정할 수 있습니다.시장에는 많은 코드 카운트 툴이 있지만, 대부분은 다음과 같은 다양한 드로백 기능을 갖추고 있습니다.

  • 소유권도 있고 퍼블릭 도메인도 있습니다.
  • 계산 규칙이 일관되지 않거나 게시되지 않음
  • 유지되지 않을 수 있습니다.
  • 많은 도구에 일관성 없는 결과를 제공하는 계산 규칙이 있습니다.

CSSE는 NCAIG에 의해 접근되어 업계에서 인정받고 있는 비편향적인 기관에서 개발한 코드 카운트 솔루션을 작성했습니다.이 솔루션은 다음과 같은 기능을 갖추고 있습니다.

  • 소프트웨어 코드 줄 수
  • 일관되게
  • 문서화된 표준 포함
  • 새로운 언어를 쉽게 추가할 수 있는 기능
  • 지원 및 유지보수
  • 소프트웨어의 다른 기준선을 비교
  • 추가, 수정, 삭제 결정
  • 중복 파일 식별
  • 복잡성 판별
  • 플랫폼에 의존하지 않음
  • 명령줄 인터페이스
  • 모드: 코드 카운트만 또는 카운트 플러스 차이렌싱
  • 한 번에 여러 파일과 언어를 카운트합니다.
  • 보고서 출력
  • 견고한 처리
  • 퍼포먼스 향상 옵션
  • 에러 로그

UCC는 이러한 노력의 결과물이며 일반 대중들에게 공개 소스로 제공됩니다.

특징들

Unified Code Count Toolset with Differentrencing Functional(UCC)은 소스 코드 크기 조정 및 변경 정보 수집을 자동화하도록 설계된 도구 모음입니다.UCC는 여러 프로그래밍 언어로 실행되며 물리적인 정의와 논리적인 정의의 2가지 가능한 SLOC(Source Lines of Code)에 초점을 맞춥니다.차이점 보관 기능을 사용하여 소프트웨어 시스템의 두 기준선을 비교하고 변경 메트릭(SLOC 추가, 삭제, 수정 및 비수정 수)을 결정할 수 있습니다.

UCC 툴셋은 저작권 USC 소프트웨어 엔지니어링 센터이지만 누구나 코드를 수정할 수 있는 제한된 퍼블릭 라이선스와 함께 제공됩니다.단, 변경된 코드를 다른 사람에게 배포하는 경우 사용자 또는 기관은 USC에 복사본을 반환해야 합니다.이를 통해 툴셋을 개선하여 모두를 위해 사용할 수 있습니다.

Code Count 사용방법

  • 계수 기능 - UCC를 통해 사용자는 다음 항목에 대한 카운트를 분석 및 생성하여 소스 프로그램의 기준 크기 정보를 측정할 수 있습니다.
a) 논리 SLOC
b) 물리 SLOC
c) 코멘트
d) 실행 파일, 데이터 선언
e) 컴파일러 지시 SLOC
f) 키워드
  • 차이점 - UCC를 사용하면 소스 프로그램의 두 기준선의 차이를 비교 및 측정할 수 있습니다.이러한 차이는 추가/신규, 삭제, 변경 및 미변경 논리 SLOC의 수로 측정됩니다.이러한 차이점 보관 결과는 일반 텍스트 .txt 또는 .csv 파일에 저장할 수 있습니다.기본값은 .csv이지만 .txt는 –ascii 스위치를 사용하여 지정할 수 있습니다.
  • 디렉토리의 카운팅과 차이점 - UCC를 사용하면 파일이 있는 디렉토리를 지정하여 소스 파일을 카운트 또는 비교할 수 있습니다.
  • 다양한 프로그래밍 언어 지원 - C/C++, C#, Java, SQL, Ada, Perl, ASP작성된 소스 코드를 사용할 수 있습니다.NET, JSP, CSS, HTML, XML, JavaScript, VB, Php, VbScript, Bash, C 스크립트, ColdFusion, Fortran, Midas, NeXtMidas, Pascal, Ruby, X-Midas 및 Python.
  • Command Arguments - 이 도구는 명령 인수를 통해 사용자 설정을 받아들입니다.UCC는 명령줄 어플리케이션으로 어플리케이션콘솔 모드로 컴파일 됩니다.
  • 복제 - 각 기준선에 대해 두 파일의 내용이 같거나 차이가 명령줄 스위치 -tdup을 통해 지정된 임계값보다 작으면 두 파일이 중복된 것으로 간주됩니다.파일명은 다르지만 2개의 파일이 중복으로 식별될 수 있습니다.중복 처리 중에는 코멘트나 공백 행은 고려되지 않습니다.
  • 일치: 차이점 보관 시 기준 A의 파일은 기준 B의 파일과 일치합니다.어느 디렉토리에 속하는지에 관계없이, 파일명이 같은 경우는, 2 개의 파일이 일치합니다.나머지 파일은 최적의 알고리즘을 사용하여 대조됩니다.
  • 복잡도 수 - UCC는 모든 소스 코드 파일에 대해 복잡도 수를 생성합니다.복잡도 카운트에는 산술, 트리거, 로그 함수, 계산, 조건, 논리, 프리프로세서, 할당, 포인터 및 사이클로매틱 복잡도의 수가 포함될 수 있습니다.계산 시 복잡도 결과는 "outfile_cplx.csv" 파일에 저장되며 차이점을 계산하면 "Baseline-A-outfile_cplx.csv" 및 "Baseline-B-outfile_cplx.csv" 파일에 저장됩니다.
  • 파일 확장자이 도구는 파일 확장자에서 각 파일에 사용할 코드 카운터를 결정합니다.

Code Count의 기능

  • 실행 속도:
Code Count는 C/C++로 작성되며 비교적 단순한 알고리즘을 사용하여 코멘트 및 물리/논리 라인을 인식합니다.테스트 결과 UCC는 극단적인 경우를 제외하고 허용 가능한 속도로 처리되는 것으로 나타났습니다.필요에 따라 특정 유형의 처리를 금지하기 위해 다수의 스위치를 사용할 수 있습니다.사용자는 보다 빠른 실행을 위해 최적화 스위치를 사용하여 컴파일을 수행할 수 있습니다.사용하는 컴파일러의 사용 설명서를 참조하십시오.
  • 신뢰성과 정확성
Code Count는 연구소에서 광범위하게 테스트되어 전 세계적으로 사용되고 있습니다.결함 보고 기능이 있으며, 보고된 결함은 즉시 수정됩니다.사용자가 기능을 추가하거나 결함을 수정하고 UCC 관리자에게 변경 코드를 제공하는 것은 드문 일이 아닙니다.
  • 문서
UCC 오픈소스 배포에는 언어 카운터의 릴리스 노트, 사용자 매뉴얼코드 카운팅 표준이 포함되어 있습니다.소스 코드에는 파일 헤더와 인라인 설명이 포함됩니다.UCC 소프트웨어 개발 계획, 소프트웨어 요건 사양 및 소프트웨어 테스트 계획은 요청에 따라 제공됩니다.
  • 일반적인 유지보수의 용이성
UCC는 유지보수를 단순화하기 위해 설계된 일체형 객체 지향 도구 세트입니다.
  • 용이한 확장
"CSCI" Code Count 플레이버는 확장이 용이합니다.사용자는 스스로 다른 언어 카운터를 쉽게 추가할 수 있습니다.사용자는 특정 언어 카운터를 선택할 파일 확장자를 지정할 수도 있습니다.
  • 호환성.
CodeCount는 COCOMO 추정 메커니즘이 필요하거나 필요하기 때문에 호환되도록 설계되었습니다.
  • 휴대성
Code Count는 다양한 운영 체제 및 하드웨어 플랫폼에서 테스트되었으며 ANSI 표준 C++ 컴파일러를 사용하는 모든 환경에 이식할 수 있어야 합니다.
  • 소스 코드 가용성
CodeCount의 소스 코드는 다운로드 가능한 zip 파일로 제공됩니다.
  • 라이선스
Code Count의 소스 코드는 USC-CSE Limited Public License 조건에 따라 제공되며, 이를 통해 누구나 코드를 수정할 수 있습니다.단, 변경된 코드를 다른 사람에게 배포하는 경우 사용자 또는 기관은 USC에 복사본을 반환해야 합니다.이를 통해 툴셋을 개선하여 모두를 위해 사용할 수 있습니다.라이선스의 전문은 UCC 라이선스에서 볼 수 있습니다.

언어 표준

Unified Code Count(UCC)의 주요 목적은 일관되고 반복 가능한 SLOC 측정을 정의하는 계수 방법을 제공하는 것입니다.20개 이상의 SLOC 계산 애플리케이션이 있으며, 각 애플리케이션은 서로 다른 물리적 및 논리적 SLOC 수를 생성하며, 약 75개의 시판 소프트웨어 비용 견적 도구가 현재 시장에 존재합니다.다양한 도구에 따른 비용 결과의 차이는 코드의 크기를 추정할 때 현재 기법의 결함을 보여주며,[6] 특히 대규모 프로젝트의 경우 비용 추정이 합리적으로 정확한 예측을 생성하기 위한 자동 절차에 따라 좌우된다.따라서 일관된 결과를 도출할 수 있는 범용 SLOC 계수 표준이 필요하게 되었다.

SLOC는 비용 추정 기법의 주요 요소로 작용합니다.소프트웨어 비용 견적에 대한 유일한 기여자는 아니지만 소프트웨어 개발 라이프 사이클 전체에 걸쳐 도출되는 다수의 지표의 기초를 제공합니다.SLOC 계수 절차는 자동화할 수 있으므로 측정지표 작성에 필요한 시간과 노력이 줄어듭니다.잘 정의된 규칙 세트는 SLOC 계수 측정에 포함 및 제외할 항목을 식별한다.SLOC에서 가장 일반적으로 받아들여지고 있는2개의 척도는 코드의 물리행과 논리행의 수입니다.

UCC에서 논리 SLOC는 코드 블록 내의 소스 스테이트먼트의 총수를 측정합니다.명령어에는 실행 가능, 선언컴파일러 명령어의 3가지 유형이 있습니다.실행 가능한 문은 최종적으로 머신 코드로 변환되어 런타임 액션을 일으키지만 선언문 및 컴파일러 지시문은 컴파일러 액션에 영향을 줍니다.

UCC는 소스 스테이트먼트를 소스 코드레벨에서 독립된 단위로 취급합니다.프로그래머는 스테이트먼트와 서브스테이트먼트를 완전히 작성합니다.UCC는 소스 코드가 컴파일되는 것을 전제로 하고 있습니다.그렇지 않으면 결과를 신뢰할 수 없습니다.논리 SLOC를 계산하기 위해 각 문장의 끝을 결정하는 것이 큰 과제였습니다.세미콜론 옵션은 매력적으로 들릴 수 있지만 모든 공용 언어가 세미콜론을 사용하는 것은 아닙니다(SQL, JavaScript, UNIX 스크립트 언어 등).Carnegie Mellon 대학의 소프트웨어 엔지니어링 연구소(SEI)와 COCOMO II SLOC는 '어떤 프로그램 요소 중 몇 가지'를 계산하는 방법을 정의했습니다.표 1과 표 2는 C/C++, Java 및 C# 프로그래밍 언어의 코드 논리행 SLOC 카운트[7] 규칙의 개요를 나타내고 있습니다.각 언어의 UCC 코드 카운트 규칙은 오픈 소스 릴리스와 함께 배포됩니다.

측정 단위 우선 순위 물리 SLOC
실행 가능한 행
진술들 1 한 줄에 1개
실행 불가능한 회선
선언(데이터) 행 2 한 줄에 1개
컴파일러 명령어 3 한 줄에 1개
표 1.
구조. 우선 순위 논리 SLOC
선택문 1 각 사건마다 한 번씩 세어보세요.
if, else, else, ?:, try, catch, switch 중첩된 문은 동일한 방식으로 카운트됩니다.
반복문 2 각 사건마다 한 번씩 세어보세요.
그러는 동안..하는 동안에 "for" 구성 내의 초기화, 조건 및 증분은 계산되지 않습니다.
for (i = 0; i < 5; i++)…

또한 "for" 구성 내의 옵션 표현식도 카운트되지 않습니다.

for (i = 0, j = 5; i < 5, j > 0; i++, j--)…

괄호 {...}은(는) 반복문과 "do"의 "while" 뒤에 오는 세미콜론으로 둘러싸여 있습니다.while" 구조체는 카운트되지 않습니다.

점프 스테이트먼트 3 각 사건마다 한 번씩 세어보세요.
리턴, 브레이크, goto, 종료, 계속, 던지기 goto 문과 함께 사용되는 라벨은 카운트되지 않습니다.
식문 4 각 사건마다 한 번씩 세어보세요.
함수 호출, 할당, 빈 문 빈 문은 프로그램의 로직에는 영향을 주지 않으며 일반적으로 플레이스 홀더 역할을 하거나 타이밍을 위해 CPU를 소비합니다.
일반적인 설명 5 각 사건마다 한 번씩 세어보세요.
세미콜론으로 끝나는 문 "for" 스테이트먼트 내 또는 "do.." 코멘트 섹션에 기재되어 있는 세미콜론.while" 문장은 카운트되지 않습니다.
블록 구분 기호, 중괄호 6 가새 쌍당 1회 카운트{..},
닫힘 괄호 뒤에 세미콜론이 이어지는 경우는 예외입니다.
};.
선택 및 반복 문과 함께 사용되는 중괄호는 카운트되지 않습니다.함수 정의 뒤에는 가새 세트가 있으므로 함수 정의가 한 번 카운트됩니다.
컴파일러 디렉티브 7 각 사건마다 한 번씩 세어보세요.
데이터 선언 8 각 사건마다 한 번씩 세어보세요.
함수 프로토타입, 변수 선언, typedef 문장이 포함됩니다.structure, class 의 키워드는 카운트되지 않습니다.
표 2

소프트웨어 설계

Unified Code Count(UCC; Unified Code Count)는 언어별로 작성된 계수 사양 문서를 기반으로 파일에서 LSLOC 문자열을 캡처하여 계수를 생성합니다.이 규격은 표준으로 제안됩니다.차이점 보관 기능은 계산 프로세스 중에 캡처된2개의 파일로부터의 LSLOC 스트링을 공통 엔진의 도움을 받아 비교합니다.

UCC 아키텍처

UCC의 주요 아키텍처는 다음 컴포넌트의 계층 구조로 볼 수 있습니다.

UCC Architecture
UCC의 프라이머리 클래스

메인 오브젝트

MainObject는 명령줄 해석을 수행하는 최상위 클래스입니다.이 클래스는 명령어 파라미터에서 파일 목록을 추출한 후 각 파일을 메모리로 읽어 카운트 또는 구별합니다.MainObject는 내장된 언어를 처리하기 위해 CodeCounters를 호출합니다.카운트 함수의 출력은 중복 및 카운트/복잡도 결과에 대해 다음과 같은 파일 세트(.txt)를 제공합니다.

LANG_outfile.txt
Main이 소스 파일의 카운트 결과를 표시하는 파일LANG.LANG는 C/C++ 파일의 경우 C_CPP, Java 파일의 경우 Java 등 소스 파일의 언어 이름입니다.
outfile_cplx.txt
소스 파일의 복잡도 결과를 나타냅니다.
중복-LANG_outfile.txt
언어 중복 파일 목록을 표시합니다.LANG.
duplicates-outfile_cplx.txt
에 중복된 파일의 복잡도 결과를 나타냅니다.
Duplicate Pairs(복제 쌍).txt
소스 파일과 해당 중복 파일 간에 일치하는 텍스트파일이 표시됩니다.

Diff Tool

DiffTool은 명령줄 매개 변수를 구문 분석하고 각 기준선의 파일 목록을 처리하는 MainObject의 파생 모델입니다.DiffTool 클래스는 기준선에 걸쳐 다음 파일 세트(.txt,.csv)를 제공합니다.

베이스라인-A B-LANG_outfile.txt
소스 파일의 결과 카운트LANG베이스라인 A 및 베이스라인 B의 경우.
베이스라인-A B-LANG_cplx.txt
기준선 A 및 기준선 B의 복잡성 결과.
짝짓기
목록 텍스트 파일은 기준선 A와 기준선 B의 파일 간에 일치합니다.
outfile_diff_disp.txt
주요 차이점 결과는 일반 텍스트 형식입니다.
outfile_diff_csv.csv
주요 차이점은 MS Excel을 사용하여 열 수 있는 .csv 형식입니다.

DiffTool은 'CmpMngr' 클래스를 사용하여 기준선을 비교합니다.

CmpMngr

CmpMngr은 LSLOC의 2개의 목록을 비교하여 차이를 계산하고 2개의 목록에서 추가, 삭제, 변경, 미변경 합계 LSLOC를 계산하여 차이를 판단합니다.

CCode Counter(CCode Counter)

CCode Counter는 사전 카운트 처리에 사용되며 다음 작업을 수행합니다.

  • 빈 행과 코멘트를 카운트 합니다.
  • 리터럴 문자열을 필터링 합니다.
  • 키워드, 연산자 등의 복잡도를 카운트합니다.
  • 컴파일러 디렉티브 SLOC를 카운트합니다(Count Directive SLOC 메서드를 사용).
  • 언어 고유의 처리를 실행합니다(서브클래스를 만듭니다).

향후 개선 및 출시

향후 UCC 계획에는 복잡도 메트릭 계산 개선, 기존 코드 카운터 지원, 언어 추가, 보고서 작성 및 성능 향상 등이 포함됩니다.텍스트, 어셈블리, 코볼, 조비얼, 매트랩 및 파스칼의 카운터가 개발 중입니다.또, 현재의 커맨드 라인 인터페이스 대신에 사용할 수 있는 그래피컬 유저 인터페이스가 작성되고 있습니다.

시스템 요건

  • 하드웨어
    • RAM: 최소 512 MB. 권장: 1024 MB
    • HDD: 최소 100MB의 디스크 공간을 사용할 수 있습니다.권장: 200 MB
  • 소프트웨어 운영 체제
    • Linux 2.6.9
    • 유닉스
    • Mac OS X
    • Windows 9x/Me/XP/Vista
    • 솔라리스
  • 지원되는 컴파일러
    • ANSI C/C++ 컴파일러

「 」를 참조해 주세요.

레퍼런스

  1. ^ B. Boehm; C. Abts; S. Chulani. "Software development cost estimation approaches: A survey". Annals of Software Engineering, 2000.; B. Boehm; E. Horowitz; R. Madachy; D. Reifer; B. K. Clark; B. Steece; A. W. Brown; S. Chulani & C. Abts. "Software Cost Estimation with COCOMO II".
  2. ^ Software Engineering Institute. "Software Size Measurement: A Framework for Counting Source Statements" (PDF). Technical Report CMU/SEI-92-TR-20 ESC-TR-92-020, 1992.
  3. ^ "CodeCount, USC's Center for Systems and Software Engineering". Csse.usc.edu.
  4. ^ "CSSE - Home". Csse.usc.edu. Retrieved 28 December 2018.
  5. ^ "Archived copy". Archived from the original on 2011-03-06. Retrieved 2010-11-30.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  6. ^ G. E. Kalb. "Counting Lines of Code, Confusions, Conclusions, and Recommendations" (PDF). Briefing to the 3rd Annual REVIC User’s Group Conference, 1990.
  7. ^ "A SLOC Counting Standard" (PDF). Sunset.usc.edu. Retrieved 28 December 2018.

외부 링크