본문 바로가기

프로그램언어/code complate

협력적인 구현 1. 협력적인 개발 방법의 개요 2. 짝 프로그래밍 3. 형식적인 정밀 검사 4. 다른 종류의 협력적인 개발 방법 1. 협력적인 개발 방법의 개요 "협력 구현"은 짝 프로그래밍, 형식적인 정밀 검사, 비형식적인 기술적 검토, 문서 읽기뿐만 아니라 개발자들이 코드 작성과 제품 개발에 관련된 다른 작업에 대한 책임감을 공유하기 위한 다른 기법들을 가리킨다. 1.1 다른 품질 보증 기법을 보완하는 협력적인 구현. ㅇ 협력적인 구현의 목적은 소프트웨어의 품질을 향상시키는 것이다. ㅇ 협력적인 구현의 부차적인 혜택은 개발 시간이 줄어든다는 점이다. ㅇ 짝 프로그램의 연구 사례. 0. IBM은 한 시간의 정밀 검사가 약 100시간의 관련 작업(테스트와 결함 수정)을 예방한다는 것을 발견.( Holland 1999).. 더보기
소프트웨어의 품질에 대한 조망 1. 소프트웨어 품질의 특성 2. 소프트웨어의 품질을 향상시키기 위한 기법들 3. 품질 향상 기법의 상대적 효율성 4. 품질 보증 활동 시기 5. 소프트웨어 품질의 일반적인 조치 6. 요점 정리 소프트웨어의 품질을 향상시키기 위한 내용을 다루고 있지만, 품질과 품질 관리 자체를 중심으로 다루고 있다. 1. 소프트웨어 품질의 향상 ㅇ 품질의 특성은 두가지로 외형/내형으로 구분이 되며, - 외형적으로는 정확성 / 유용성 / 효율성 / 신뢰성 / 무결성 / 적응성 / 정밀성 / 견고성 - 내적적으로는 유지 보수성 / 유연성 / 이식성 / 재사용성 / 가독성 / 테스트 용이성 / 이행성 ㅇ 이 몇몇 특성들은 그 의미가 겹치기도 하지만, 이 특성들 역시 가치를 두고 있는 부분에 있어서는 다르다는 점이다. ㅇ 각각.. 더보기
[ Code Complate 2 ] 9 의사코드 프로그래밍 프로세스 [[ 정리중 ]] 이 부분은 클래스의 전반적인 설계에 대한 이해있어야 하며, 설계와 문서 작성 시에 필요한 작업을 줄이고 이들의 품질을 향상시키는 의사코드 프로그래밍 프로세스( Pseudocode Programming Process, PPP ) 에 대한 설명을 하고 있습니다. 다시말하면 본 문의 내용은 네이밍 규칙 및 클래스 설계에 주안점을 두고 있습니다. 요약 9.1 클래스와 루틴을 작성하는 단계에 대한 요약 9.2 전문가를 위한 의사코드 9.3 PPP를 사용한 루틴 구현 9.4 PPP의 대안 9.1 클래스와 루틴을 작성하는 단계에 대한 요약 클래스의 일반적인 설계를 작성하고, 루틴을 열고한 다음 구현에 따른 검사를 반복적인 절차에 대해 이야기 하고 있습니다. 클래스 작성 단계 클래스에 대한 일반적인 .. 더보기
[ Code Complate 2 ] 8 방어적 프로그래밍 요약 8.1 타당하지 않는 입력으로부터 프로그램의 보호 8.2 어설션( assertion ) 8.3 오류 처리 기법 8.4 예외 8.5 오류에 의해서 발생하는 손해를 막기 위한 방책 8.6 디버깅 보조 도구 8.7 제품 코드 안에 남는 방어적인 프로그래밍 코드 정의. 8.8 방어적인 프로그래밍에 대해서 방어적이 되는 것. ref :: 실용주의 프로그래머 ( 6장 코딩하는 동안 해야 할 일들 ) 프로그래밍에 대해 방어적인 자세를 취하라는 것이 아니라 방어적인 운전을 바탕으로 피해를 입지 않도록 하는 경우를 말한다. 분문발췌: 방어운전을 통해 여러분들은 피해를 당하지 않을 것이라는 확신으로 스스로를 보호할 책임이 있다. 8.1 타당하지 않는 입력으로부터 프로그램의 보호 쓰레기를 넣으면 쓰레기가 나온다는 말이.. 더보기