소프트웨어 재공학 편집하기

IT위키

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.

편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.

최신판 당신의 편집
1번째 줄: 1번째 줄:
[[분류:소프트웨어 공학]][[분류:정보처리기사]]
[[분류:소프트웨어 공학]][[분류:정보처리기사]]
; 기존 소프트웨어를 버리지 않고 기능을 개선시키거나 기능을 새로운 소프트웨어로 재활용하는 등 소프트웨어 재사용 공법
* 기존 소프트웨어를 버리지 않고 기능을 개선시키거나 기능을 새로운 소프트웨어로 재활용하는 등 소프트웨어 재사용 공법
 
* 소프트웨어의 유지보수성과 품질을 향상시킬 수 있음
* 부작용을 미연에 발견하여 위험부담 제거 및 복구비용 절감
* 예방 유지보수 측면에서 소프트웨어 위기 해결


== 종류 ==
== 종류 ==
15번째 줄: 11번째 줄:
** 소프트웨어의 기능과 외적인 동작은 변경되지 않음
** 소프트웨어의 기능과 외적인 동작은 변경되지 않음


* '''[[역공학|역공학(Reverse Engineering)]]'''
* '''역공학(Reverse Engineering)'''
** 소프트웨어 동작 과정 및 설계 정보를 재발견 혹은 재생성
** 소프트웨어 동작 과정 및 설계 정보를 재발견 혹은 재생성
** 소프트웨어를 구성하는 원시 코드를 복구하는 작업
** 소프트웨어를 구성하는 코드를 복구하는 작업
** 원시 코드로부터 설계정보 추출 절차 설계표현, 프로그램과 데이터 구조 정보 추출
** 소프트웨어 구조 파악 재구성을 위함
** 역공학의 가장 오래된 형태는 재문서화
** 역공학의 가장 오래된 형태는 재문서화


24번째 줄: 20번째 줄:
** 기존 소프트웨어를 다른 운영체제, 하드웨어, 프레임워크 등에서 사용할 수 있도록 변환
** 기존 소프트웨어를 다른 운영체제, 하드웨어, 프레임워크 등에서 사용할 수 있도록 변환
** 재구성 또는 재개발을 통한 새로운 소프트웨어에 기존 데이터를 옮겨 담는 작업
** 재구성 또는 재개발을 통한 새로운 소프트웨어에 기존 데이터를 옮겨 담는 작업
* '''[[재사용|재사용(Reuse)]]'''
== 단계 ==
# 원시코드로부터의 정보 추출 단계
#* 원시코드나 데이터베이스 정보 등에서 필요한 정보들을 정보저장소에 저장
# 역공학 단계
#* 정보저장소에 있는 정보들로부터 새로운 정보 도출
# 시스템의 향상과 검증단계
#* 정보구조, 흐름과 같은 응용분야 성능 향상
# 순공학 단계
#* 도출된 정보과 향상된 응용분야 성능을 기반으로 새로운 프로그램 명세 작성
# 설계와 최적화 단계
#* 기존 파일과 데이터, 프로그램 명세를 이용하여 최적화 설계
# 원시코드의 생성 단계
#* 설계를 기반으로 개발, 원시코드 생성
IT위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는 IT위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다. 저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소 편집 도움말 (새 창에서 열림)