Maintenance corrective maintenance correction AS adaptive maintenance adaptation

  • Slides: 34
Download presentation

유지보수의 종류 유지보수 (Maintenance) 정정(corrective maintenance, correction): 발견된 오류의 원인을 찾아 문제해결. A/S의 개념

유지보수의 종류 유지보수 (Maintenance) 정정(corrective maintenance, correction): 발견된 오류의 원인을 찾아 문제해결. A/S의 개념 개작(adaptive maintenance, adaptation): 새로운 자료나 운영체제, 하드웨어 환경으로 이식 기능 개선(perfective maintenance, enhancement): 새로운 기능의 추가 예방(preventive maintenance): 유지보수성, 신뢰성 향상, 구조 변경 Page 5 Software Engineering by Yang-Sae Moon

Halstead 척도 예제 (1/2) – 생략 유지보수 (Maintenance) Fortran Program 소스 SUBROUTINE SORT(X, N)

Halstead 척도 예제 (1/2) – 생략 유지보수 (Maintenance) Fortran Program 소스 SUBROUTINE SORT(X, N) DIMENSION X(N) IF (N. LT. 2) RETURN DO 20 I = 2, N DO 10 J = 1, J IF (X(I). GE. X(J)) GO TO 10 SAVE = X(I) = X(J) = SAVE 10 CONTINUE 20 CONTINUE RETURN END Page 25 Software Engineering by Yang-Sae Moon

Halstead 척도 예제 (2/2) – 생략 유지보수 (Maintenance) Fortran Program 분석 연산자 갯수 1

Halstead 척도 예제 (2/2) – 생략 유지보수 (Maintenance) Fortran Program 분석 연산자 갯수 1 End of statement 7 2 Array subscript 6 3= 5 4 IF ( ) 2 5 DO 2 6, 2 7 End of program 1 8. LT. 1 9. GE. 1 n 1=10 GO TO 10 1 28 = N 1 피연산자 1 2 I 3 J 4 N 5 2 6 SAVE n 2=7 1 갯수 X 6 5 4 2 2 2 1 22 = N 2 프로그램 부피 = 204 (어셈블리로 짤 경우의 부피 = 328) Page 26 Software Engineering by Yang-Sae Moon

유지보수 도구 (1/2) 유지보수 (Maintenance) 원시코드 이해를 위한 도구 • 앞뒤 참조표(cross-reference table) •

유지보수 도구 (1/2) 유지보수 (Maintenance) 원시코드 이해를 위한 도구 • 앞뒤 참조표(cross-reference table) • 호출 그래프(call graph) • 자료 흐름도(data flow graph) • 시스템 구조도(system chart) • 디버깅 보조기(trap, dump, trace, assertion checking) • 동적 분석기 테스트를 위한 도구 • comparator • regression tester (�이전 시험과의 결과 비교…) Page 30 Software Engineering by Yang-Sae Moon

유지보수 도구 (2/2) 유지보수 (Maintenance) 버전 관리 도구 (SCCS(Source Code Control System) in UNIX)

유지보수 도구 (2/2) 유지보수 (Maintenance) 버전 관리 도구 (SCCS(Source Code Control System) in UNIX) 1. 1 1. 2 1. 1 1. 3 1. 4 1. 2 1. 3 1. 2. 1 1. 2. 2 2. 1 형상 관리 도구 (make and Makefile in UNIX) #1: sys: mod 1. o mod 2. o #2: ld mod 1. o mod 2. o -o sys #3: mod 1. o: mod 1. c incl. h #4: cc -c mod 1. c #5: mod 2. o: mod 2. c incl. h #6: cc -c mod 2. c Page 31 Software Engineering by Yang-Sae Moon

Makefile 예제 화면 (1/3) 유지보수 (Maintenance) Makefile 예제: main. mk Page 32 Software Engineering

Makefile 예제 화면 (1/3) 유지보수 (Maintenance) Makefile 예제: main. mk Page 32 Software Engineering by Yang-Sae Moon

Makefile 예제 화면 (2/3) 유지보수 (Maintenance) Makefile의 실행 ($ make [-f makefile]) Page 33

Makefile 예제 화면 (2/3) 유지보수 (Maintenance) Makefile의 실행 ($ make [-f makefile]) Page 33 Software Engineering by Yang-Sae Moon

Makefile 예제 화면 (3/3) 유지보수 (Maintenance) 복잡한 형태의 Makefile 예제 Page 34 Software Engineering

Makefile 예제 화면 (3/3) 유지보수 (Maintenance) 복잡한 형태의 Makefile 예제 Page 34 Software Engineering by Yang-Sae Moon