반응형
역공학(Reverse Engineering)
기존 개발된 시스템을 요구사항 분석 CASE(Computer Aided Software Engineering)도구를 이용하여 요구 분석서, 설계서 등의 문서로 추출하는 작업
- 상용화되거나 기 개발된 소프트웨어 분석을 도와줌
- 기존 시스템 자료와 정보를 설계 수준으로 분석해 유지보수성 향상
재공학(Re-Engineering)
소프트웨어의 위기를 해결하기 위해 유지보수 생산성으로 해결하려는 방법
기존 소프트웨어를 폐기하지 않고 기능을 개선
재공학 과정
- 분석: 기존 소프트웨어 명세 확인하여 재공학 대상 선정
- 재구성: 구조 향상 시키기 위해 코드 재구성
- 역공학: 소스코드를 가지고 설계 수준 분석
- 이관: 기존 소프트웨어를 다른 운영체제, 프레임워크 등에서 사용할 수 있도록 변환
재사용(Reuse)
이미 개발되어 있는 소프트웨어의 전체 또는 일부분 다시 사용
재사용 방법
- 합성 중심(Composition Based, 블록 구성): 블록(모듈)을 만들어서 끼워 맞추어 소프트웨어를 완성시키는 방법.
- 생성 중심(Generation Based, 패턴 구성): 추상화 형태로 쓰여진 명세를 구체화
정리) 역, 재, 공학, 사용이 의미하는 바는 이러하다.
- '역(reverse)' : 분석하여 개발완료 상태의 현 상황 문서 추출
- '재(re)' : 재활용
- '공학': 방법론
- '사용': 사용법
역공학: 분석하여 개발완료 상태의 현 상황 문서 추출하는 방법론 → 현 서비스가 어떻게 만들어졌을까?
재공학: 재활용 방법론(유지보수)→ 현 서비스를 어떻게 유지보수하지?
재사용: 재활용 사용법 → 현 서비스 중 일부를 사용하자
반응형
'개발 > 정보처리기사' 카테고리의 다른 글
소프트웨어 개발 모델 (0) | 2023.10.31 |
---|---|
소프트웨어 개발 방법론 (0) | 2023.10.31 |
CASE 도구(방법론) 종류 - 하위, 상위, 통합 구분 (0) | 2023.10.26 |
요구사항 분석 CASE(Computer Aided Software Engineering)도구란? (0) | 2023.10.25 |
aided 의미 (0) | 2023.10.24 |
댓글