[정보처리기사] 요구사항 확인 (1) - 소프트웨어 개발 방법론CS2024. 3. 31. 18:24
Table of Contents
소프트웨어 생명주기 (SDLC - Software Development Life Cycle)
프로세스
- 요구사항 분석 → 설계 → 구현 → 테스트 → 유지보수
모델 종류 (폭프나반)
- 폭포수 모델
- 순차적 접근
- 이해가 용이, 관리가 편리
- 요구사항 변경 어려움
- 프로토타이핑 모델
- 프로토타입 개발
- 요구 분석 용이
- 프로토 타입 폐기 → 비용 증가
- 나선형 모델
- 위험성 감소와 변경에 유연한 대처
- 반복적 모델
- 증분방식으로 병행 개발
- 병행 개발로 일정 단축
소프트웨어 개발 방법론
종류
- 구조적 방법론
- 정보공학 방법론
- 객체 지향 방법론
- 컴포넌트 방법론
- 애자일 방법론
- 제품 계열 방법론
애자일 방법론
특징
- 개발 기간이 짧고 신속
- 피드백을 받아 유동적으로 개발
종류
- XP (익스트림 프로그래밍)
- 5개의 가치와 12개의 실천항목
- 1~3주의 반복
- 스크럼
- 매일 정해진 시간, 장소에서 짧은 시간의 개발을 하는 팀을 위한 관리
- 주요 개념
- 백로그 : 제품과 프로젝트에 대한 요구사항 (=할일)
- 스프린트 : 2~4주 짧은 개발로 반복 수행
- 스크럼 미팅 : 매일 15분 미팅 = 데일리 미팅
- 스크럼 마스터 : 프로젝트 리더
- 스프린트 회고 : 스프린트 주기를 되돌아 보며 회고, 스프린트가 끝난 시점이나, 일정 주기로 시행
- 번 다운 차트 : 남아있는 백로그 대비 시간을 보여줌
- 린
- 도요타의 린 시스템 풀질 기법을 소프트웨어 개발 프로세스에 적용
- JIT, 칸반 보드 사용
객체 지향 분석
구성 요소
- 클래스
- 변수와 메서드를 정의하는 틀
- 데이터를 추상화하는 단위
- 속성은 변수의 형태로, 행위는 메서드 형태로 선언
- 객체
- 물리적, 추상적으로 다른 것을 식별하는 대상
- 객체마다 상태와 식별성을 가짐
- 클래스에 정의한대로 메모리에 할당됨
- 메서드
- 객체가 메시지를 받아 실행하는 실제 연산
- 전통적 함수와 프로시저에 해당
- 메시지
- 객체 간 상호 작용을 하기 위한 수단
- 메시지는 객체 → 객체 로 이어짐
- 인스턴스
- 실제의 실형 객체
- 실제로 할당
- 속성
- 클래스 내에 속한 객체들이 가지고 있는 값
객체 지향 기법 (캡상다추정관)
- 캡슐화
- 서로 연관된 데이터와 함수를 묶어 필요한 인터페이스를 밖으로 꺼냄
- 결합도가 낮아지고 재사용이 용이
- 정보 은닉과 관계가 깊음
- 상속성
- 상위 클래스의 속성과 메소드를 하위 클래스가 그대로 씀
- 다형성
- 하나의 메시지에 대해 각 객체가 가지고 있는 고유 방법으로 응답할 수 있는 방법
- 오버로딩, 오버라이딩
- 추상화
- 공통 성질을 추출해 추상 클래스를 만듬
- 정보은닉
- 코드 내부 데이터와 메서드를 숨기고, 공개 인터페이스만 접근 가능하게 함
- 관계성
- 연관화, 집단화, 분류화, 일반화, 특수화
객체 지향 설계 원칙 (SOLID)
- 단일 책임의 원칙 (Single Resonsibilty principle)
- 개방 - 폐쇄의 원칙 (Open- close principle)
- 리스코프 치환의 원칙 (Liskov substituion principle)
- 인터페이스 분리의 원칙 (Interface Segregation principle)
- 의존 역전의 원칙 (Dependeny Inversion principle)
객체 지향 분석 방법론
- OSSE - 야콥슨
- 분석, 설계, 구현으로 구성
- OMT - 럼바우
- 객체 모델링 - 객체 다이어그램으로 표현
- 동적 모델링 - 상태 다이어그램으로 표현
- 기능 모델링 - 자료 흐름도(DFD) 로 표현
- OOD - 부치
- 분석과 설계의 분리가 불가능
- 코드 - 요든 방법론
- E-R 다이어그램 중심으로 개발
- 워프 -브록 방법론
- 분석과 설계간의 구분x
프로젝트 관리
프로젝트 관리 3요소
- 사람
- 문제
- 프로세스
비용 산정 모형
- 하향식 산정 방법 = 전문가 판단 = 델파이 기법
- 상향식 산정 방법
- LoC (Line of Code) : (낙관치 + 중간치*4 + 비관치 ) /6
- Man Month : LoC / (월간 생산성)
- COCOMO
- 보헴이 만듬
- Man-Month 활용
- 조직형, 반분리형, 임베디드 형이 있음 ( 오세임 - 오가닉, 세미 디텍치, 임베디드)
- 푸트남
- 기능점수 모형 : 총 기능 점수 * [0.65 + (0.1 X 총 영향도)]
일정관리 모델 종류
- 주 공정 법 (그냥 가장 오래 걸리는 거 기준)
- PERT
- 중요 연쇄 프로젝트
위험관리
위험 종류
- 알려진 위험 - 프로젝트 계획서, 기술적 환경, 정보 등에 의해 발견되는 위험
- 예측 가능한 위험 - 경험에서 나오는 위험
- 예측 불가능한 위험 - 예측 어려움
대응
- 회피
- 전가
- 완하
- 수용
'CS' 카테고리의 다른 글
[정보처리기사] 정보처리고사 느낀 점 + 공부법 (2) | 2024.04.28 |
---|