- ㅓㄴ소프트웨어 구축
- 소프트웨어의 공학
- 공학이 만들어진 이유 : 소프트웨어 위기가 찾아옴 그래서 공학이 만들어짐
- 목적 : 효율적인 비용과 일정으로 품질 높은 소프트웨어를 만드는 학문
- 소프트웨어 공학에 3R
- 역공학 : 원시코드(이미 개발한 소스)를 보면서 문서를 추출하는 단계이다. *역으로 산출해가는 과정[과정 : 계분설구테배유]
- CASE(RAD 모델 : CASE도구를 통해서 빠르게 개발하는 것)
- 상위 CASE 도구 : 설계, 분석
- 하위 CASE 도구 : 개발, 테스트, 문서화
- CASE(RAD 모델 : CASE도구를 통해서 빠르게 개발하는 것)
- 재공학 : 유지보수의 생산성으로 소프트웨어의 위기를 극복
- 그대로둠
- 재공학 과정
- 분석 -> 재구성(리팩토링) -> 역공학 -> 이관
- 재사용
- 재사용의 종류
- 컴포넌트 재사용
- 함수와 객체 재사용
- 애플리케이션 재사용
- 재사용 방법
- 합성 중심 : 끼어맞추는 것, 조합
- 생성 중심 : 추상화
- 재사용의 종류
- 역공학 : 원시코드(이미 개발한 소스)를 보면서 문서를 추출하는 단계이다. *역으로 산출해가는 과정[과정 : 계분설구테배유]
- 소프트웨어 개발 단계
- 실제 프로젝트 시작
- 계획 -> 요구사항 분석 -> 설계 -> 구현 -> 테스트 -> 배포 -> 유지보수
- 요구사항 분석부터 테스트까지 개발이라고 한다.
- 실제 프로젝트 시작
- 소프트웨어 방법론
- 개발 방법론의 종류
- 구조적 방법론 - 하향식, 순차적
- 객제지향 개발 방법론 : 상향식
- 클래스 : 공통된 속성과 메소드 묶은 객체를 추상화한 것
- 객체 : 실체화하는 것이며, 인스턴스라고도 한다.
- 메시지 : 명령을 내림
- 캡슐화 : 외부에 노출시키지 않고, 인터페이스를 통해서 접근이가능하도록함
- 정보은닉 : 객체들간에 외부 객체에게 숨기는 것
- 상속 : 부모 클래스것을 자식 클래스가 물려받는것(오버라이딩 = 재정의)
- 추상화 : 공통의 성질을 모아둔것
- 다형성 : 오버로딩, 오버라이딩
- 애자일 방법론 : 변화에 빠른 대응 / 소단위로 조금씩 개발하는 것
- 애자일 방법론 종류
- XP : 5대 가치, 12실천사항
- 5대 가치
- 피존의용단새
- 피드백
- 존중
- 의사소통
- 용기
- 단순성
- 피존의용단새
- 12가지 실천사항
- 공통 코드 소유
- 짝 프로그래밍
- 주 40시간 작업
- 계획게임
- 코드 표준
- 고객 참여
- 테스트 주도 개발
- 짧은 릴리즈 주기
- 지속적인 통합
- 단순 설계
- 메타포
- 리팩토링
- 5대 가치
- 스크럼 : 정해진 장소, 정해진 시간, 짧은 주기로 개발
- 제품 백로그 : 전체 주기의 기능 명세
- 스프린트 백로그 : 짧은 주기에 완료해야하는 기능 주기(시간)의 기능 명세
- 스프린트 : 반복적인 개발 주기
- SM : 스크럼 회의에서 문제를 해결하는 역할
- FDD : 기능
- 린
- XP : 5대 가치, 12실천사항
- 애자일 방법론 종류
- 폭포수 모델링 : 변화가 불가능, 후반부에서야 결과 확인, 앞 단계가 완료되면 다음 단계로 진행
- 프로트타입 모델링 : 시제품으로 빠르게 개발하여 고객에게 검증받기위한 모델링
- 나선형 모델링 : 계획 및 정의 -> 위험 분석 -> 개발 -> 고객 평가 / 위험 요소를 추출하는 것이 목적
- RAD 모델은 위 역공학에서 설명함
- V형 : 단위테스트 -> 통합테스트 -> 시스템테스트 -> 인수테스트
- 개발 방법론의 종류
- 소프트웨어의 공학
카테고리 없음