본문 바로가기

학습/정처기필기

1-1 요구사항 확인

소프트웨어 생성주기

 

모델 특징
폭포수 모델 (Waterfall) 1. 각 단계를 확실하게 함
2. 대신 뒤로는 못돌아감
3. 그렇기 때문에 단계마다 메뉴얼을 꼭 작성 해야함
프로토타입 모델 (Prototype) 1. 미리 한번 만들어봄
2. 그래서 폭포수 보다는 나음
3. 요구사항이 애매할때 사용 가능
나선형 모델 (Spiral) 1. 폭포수와 프로토타임 장점 합침
2. 위험 분석 갖춤
3. 큰 소프트웨어에서 좋음
애자일 모델 (Agile) 1. 설계 개발 테스트의 반복
2. 반복과정에서 고객과 의사소통
3. 그래서 수정 용이함

스크럼 기법

스크럼이란 팀이 중심이되어 개발의 효율성을 높인다는 의미.

 

구성원

  • 제품 책임자 (PO)
    • 백로그 작성 및 우선순위 지정
    • 그래서 제품을 좀 아는 의뢰인이 담당함
  • 스크럼 마스터
    • 스크럼 회의 주최, 진행 사항 & 에러사항 관리
  • 개발팀
    • 제품 개발 참여 인원

프로세스

 

백로그 작성 → 스프린트 계획 → 스프린트 → 스크럼 회의 → 스프린트 검토 회의 → 스프린트 회고

※ 스프린트 : 짧은 개발 주기

 

XP (eXtreme Programming)

애자일 모델의 하나로, 개발 과정의 반복을 극대화 한 프로그래밍 기법

 

프로세스 

 

사용자 스토리 작성 → 릴리즈 계획 → 스파이크 → 주기 → 승인 검사 → 소규모 릴리즈

※ 스파이크 : 기술 문제에 대한 위험을 감소시키는 간단한 프로그램

 

소규모 릴리즈를 통하여 직관적으로 테스트 할 수 있어 피드백이 빠르고 더 정확해진다.

 

현행 시스템 파악

  • 시스템 구성 파악 : 주요업무, 지원업무로 구분하여 파악
  • 시스템 기능 파악 : 주요기능, 하부기능, 세부기능으로 파악
  • 시스템 인터페이스 파악 : 시스템 간 주고받는 데이터의 종류, 형식, 프로토콜 등을 파악
  • 아키텍처 구성 파악 : 시스템간의 상호작용 (아키텍처) 파악
  • 소프트웨어 구성 파악 : 라이센스, 용도 등 파악
  • 하드웨어 구성 파악 : 사양, 수량, 이중화 적용 여부 파악
  • 네트워크 구성 파악 : 서버의 위치, 연결방식 파악

개발 기술 환경 파악

  • 운영체제 : 가용성, 성능, 기술 지원, 주변 기기, 구축 비용
  • DBMS : 가용성, 성능, 기술 지원, 상호 호환성, 구축 비용
  • Middle Ware (WAS) : 가용성, 성능, 기술 지원, 구축 비용

요구사항 정의

요구사항이란 소프트웨어 개발이나 유지 보수 과정에서 필요한 기준과 근거가 되는 내용.

유형 내용
기능 요구사항 시스템의 입출력, 어떤 기능을 수행할 것, 어떤 데이터를 저장할 것 등
비기능 요구사항 시스템의 제한사항, 동시 접속자 수, 보안, 품질, 테스트 등
사용자 요구사항 사용자 입장에서 제공되어야 할 요구사항
시스템 요구사항 개발자 입장에서 시스템이 사용자에게 제공해야 할 요구사항, 전문적인 내용

프로세스

도출
요구사항 수집

분석
요구사항 명확, 비용과 일정

명세
문서화

확인
검증

요구사항 분석기법

  • 요구사항 분류 : 기능 비기능, 우선순위, 영향 범위 등에 따라 분류
  • 개념 모델링 : 현실 세계의 상황을 단순화하여 표현 (UML)
  • 요구사항 할당
  • 요구사항 협상 : 충돌되는 요구사항을 적절한 기준점을 찾아 정함
  • 정형 분석 : 구문, 의미 등을 수학적 기호로 표현하여 분석

요구사항 확인기법

  • 요구사항 검토 : 훑어봄
  • 프로토타이핑 : 만들어봄
  • 모델 검증 : 정적 분석 해봄
  • 인수 테스트 : 테스트 해봄

UML

객체지향 모델링 언어.

 

구성 요소

 

  • 사물 (Things) - 모델을 구성하는 가장 중요한 기본 요소
사물 내용
구조 사물 시스템의 요소 표현. 클래스, 컴포넌트 등
행동 사물 행위 표현. 상호작용, 상태 머신 등
그룹 사물 그룹으로 묶어서 표현. 패키지
주해 사물 부가적인 설명 표현. 노트
  • 관계 (Relationships) - 사물과 사물 사이의 연관성 표현
관계 내용 표현
연관 관련되어 있음 표현. 객체
객체 (단방향)
객체
객체 (양방향)
의존 짧은 시간 동안 관련되어 있음 표현. 영향주는
영향받는
집합 포함관계, 독립적 파트
전체
포함 포함관계, 의존적 파트
전체
일반화 구체적 일반적 개념 구체적
일반적
실체화 사물의 기능 사물
기능
  • 다이어그램 (Diagram) - 사물과 관계를 도형으로 표현
구조적 다이어그램
클래스 다이어그램 클래스 사이의 관계
객체 다이어그램 인스턴스 사이의 관계
컴포넌트 다이어그램 모듈 사이의 관계 (구현 단계)
배치 다이어그램 결과물, 프로세스 물리적 요소 위치 관계 (구현 단계)
복합체 구조 다이어그램 복합 구조의 내부 구조 관계
패키지 다이어그램 패키지 관계
행위 다이어그램
유스케이스 다이어그램 사용자와 사용 사례의 관계
시퀀스 다이어그램 시스템, 객체의 주고받는 메세지 관계
커뮤니케이션 다이어그램 시퀀스 다이어그램 + 객체의 연관관계
상태 다이어그램 상태 변화 표현
활동 다이어그램 시스템 기능 수행 순서
상호작용 개요 다이어그램 제어 흐름 표현
타이밍 다이어그램 객체 상태 변화와 시간 제약 표현

 

'학습 > 정처기필기' 카테고리의 다른 글

1-4 인터페이스 설계  (0) 2021.07.30
1-3 애플리케이션 설계  (0) 2021.07.28
1-2 화면설계  (0) 2021.07.28