Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- git 폴더 모으기
- 배열 call by value
- 환경변수
- .ppk
- Node Property
- 배포 자동화
- 클래스 참조
- 깃허브 토큰 발급
- 깃허브 토큰 생성
- 자바 swing 프로젝트
- 타임리프 참조 오류
- ..gitignore
- firstChild
- 채팅 프로젝트
- 되돌리기
- 소프트웨어
- vue 실행
- vue 추가
- Quartz 라이브러리
- CI/CD
- document 함수
- submit 기본동작
- reset
- Quartz dependency
- dbeaver 백업/복구
- deploy.sh
- 테스팅
- AWS 생성
- Jenkins
- EL1021E
Archives
- Today
- Total
TY blog
소프트웨어 재공학 본문
1. 소프트웨어 재공학 (software reengineering)
- 시스템의 전체 또는 일부를 재구조화하거나 다시 작성하는 것 (시스템 재문서화)
- 기존 시스템의 기능을 변경하지 않고 시스템을 유지보수하기 쉽고 이해하기 쉽게 하는 작업
ex ) 문서화, 아키텍처 개선, 프로그래밍 언어 변환, 데이터의 구조와 값 수정 등
2. 재공학 프로세스 활동
- 소스코드 변환 : 최신 버전이나 다른 언어로 변환
- 역공학 (reverse engineering) : 프로그램을 분석하고 정보를 추출(구현한 코드 분석 -> 소프트웨어 설계를 추출)
- 프로그램 구조 개선 : 프로그램 제어 구조의 개선
- 데이터 재공학 : 데이터베이스 스키마 재정의, 데이터 정리
3. 리팩토링
- 변경에 따른 품질 저하를 늦추기 위하여 프로그램을 개선하는 것
- 구조를 개선하고 복잡도를 줄이고 이해하기 쉽도록 프로그램을 수정
- 리팩토링에서는 프로그램의 기능을 추가하지 않으며 코드 개선에 집중한다.
* 재공학과 리팩토링의 차이
재공학은 주로 전체 소프트웨어 시스템을 대상으로 하며, 큰 범위의 구조적 변경이 필요한 경우에 사용되고, 리팩토링은 주로 작은 범위의 개선을 목표로 한다.
* 참고문헌 : (주)한티에듀 소프트웨어공학 제10판
'소프트웨어 공학' 카테고리의 다른 글
소프트웨어 신뢰성, 안전성 공학 (0) | 2023.11.21 |
---|---|
확실성 있는 소프트웨어 시스템 (0) | 2023.11.14 |
소프트웨어 개발 테스팅 (0) | 2023.10.17 |
소프트웨어 아키텍처 설계 (0) | 2023.10.10 |
소프트웨어 시스템 모델링 (0) | 2023.10.03 |
Comments