반응형
청춘고양이
배움을 기록하는 곳
청춘고양이
전체 방문자
오늘
어제
  • Hello World (119)
    • JQuery (5)
    • In my opinion (4)
    • HTML&CSS (8)
    • JS (9)
    • JAVA (21)
    • Spring Boot (21)
    • Node.js (1)
    • Linux (7)
    • Git (2)
    • Kotlin (4)
    • Fluttor (4)
    • 정보처리기사 (19)
    • AWS (1)
    • Oracle (8)
    • MySQL (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • js
  • js 로또 번호
  • js 비밀번호
  • 제이쿼리 패스워드 변경
  • 자바
  • 자바db연동
  • 제이쿼리
  • 가위바위보js
  • 객체 안의 함수
  • js 패스워드 변경
  • 중복 제거 로또
  • spring 기본설정
  • ScrollEffectJs
  • 스크롤js
  • css
  • 청춘고양이
  • 제이쿼리 비밀번호
  • 쉬프트 연산
  • 제이쿼리 버튼클릭시 색 변경
  • 초보개발

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
청춘고양이

배움을 기록하는 곳

정보처리기사

요구사항 확인

2023. 8. 20. 13:23
반응형

폭포수 모형 - 이전단계로 돌아갈 수 없다는 전제하에 각 단계를 확실히 매듭짓고 그 결과를 철저하게 검토하여 승인과정을 거친 후에 다음 단계를 진행하는 개발 방법론, 고전적 생명주기 모형
소프트웨어 생명주기 - 소프트웨어 생명주기는 소프트웨어를 개발하기 위한 설계, 운용, 유지보수 등의 과정을 각 단계별로 나눈 것
나선형 모형 - 나선을 따라 돌듯이 여러 번의 소프트웨어 개발 과정을 거쳐 점진적으로 완벽한 최종 소프트웨어를 개발하는 모형
애자일 모형 - 고객의 요구사항 변화에 유연하게 대응할 수 있도록 일정한 주기를 반복하면서 개발하는 모형, 고객과의 협업을 중시한다. 

  • 스크럼
  • xp : 수시로 발생하는 고객의 요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상하는 방법 (용단의피존-의사소통, 단순성, 용기, 존중, 피드백)
  • 칸반
  • 기능중심개발

xp의 주요 실천 방법 

  • 짝 프로그래밍
  • 공동 코드 소유
  • 테스트주도개발
  • 전체팀 
  • 계속적인 통합
  • 리팩토링 : 프로그램 기능 변경 없이 시스템을 재구성
  • 소규모릴리즈 : 릴리즈 기간을 짧게 반복함으로써 고객의 요구 변화에 신속히 대응할 수 있다.

요구사항은 소프트웨어가 어떤 문제를 해결하기 위해 제공하는 서비스에 대한 설명과 정상적으로 운영되는데 필요한 제약조건
기능요구사항 : 연산적인 부분
비기능요구사항 : 성능 관련, 안전, 보안, 품질, 제약사항
사용자요구사항 
시스템요구사항


도출>분석>명세>확인
요구사항 도출 (설문, 인터뷰, 브레인스토밍, 워크샵, 프로토타이핑, 유스케이스)
요구사항 분석 : 요구사항 중 명확하지 않거나 모호하여 이해되지 않는 부분을 발견하고 이를 걸러내기 위한 과정(자료 흐름도, 자료사전)
요구사항 명세 : 분석된 요구사항을 바탕으로 모델을 작성하고 
요구사항 확인 : 개발자원을 요구사항에 할당하기 전에 요구사항 명세서가 정확하고 안전하게 작성되었는지를 검토하는 활동
요구사항 명세 

  • 정형 명세 기법
  • 비정형 명세 기법

요구사항 분석

  • 구조적 분석 기법 : 자료의 흐름과 처리를 중심
  • 자료흐름도(DFD) : 요구사항 분석에서 자료의 흐름 및 변환 과정과 기능을 도형 중심으로 기술하는 방법

자료흐름도 기본 기호

  • 프로세스 : 원
  • 자료흐름 : 화살표
  • 자료저장소 : 직선
  • 단말  : 정사각형

자료사전(DD) : 자료 흐름도에 있는 자료를 더 자세히 정의하고 기록한 것

  • 자료의 정의 : =
  • 자료의 연결 : +
  • 자료의 생략 : ()
  • 자료의 선택 : [ | ]
  • 자료의 반복 : { }
  • 자료의 설명(주석) : **

UML : 시스템 분석, 설계 등 시스템 개발과정에서 개발자와 고객 또는 개발자 상호 간의 의사소통을 원활하게 이루어지게 하기 위하여 표준화한 모델링 언어

  • 사물 
  • 관계
  • 다이어그램

UML의 관계 : 사물과 사물 사이의 연관성을 표현

  • 연관관계 : 2개 이상의 사물이 서로 관련되어 있는 관계
  • 집합관계 : 하나의 사물이 다른 사물에 포함되어 있는 관계
  • 포함관계 : 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계
  • 일반화관계 : 하나의 사물이 다른 사물에 비해 더 일반적이거나 구체적인 관계
  • 의존관계 : 연관관계와 같이 서로 연관은 있으나 필요에 의해 서로에게 영향을 주는 관계
  • 실체화 관계 : 사물이 할 수 있거나 해야 하는 기능으로 서로를 그룹화할 수 있는 관계 

다이어그램 : 사물과 관계를 도형으로 표현한 것
정적 모델링 => 구조적 다이어그램
동적 모델링 => 행위 다이어 그램
구조적 다이어그램 종류

  • 클래스 다이어그램 : 클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현 
  • 객체 다이어그램 : 클래스에 속한 사물(객체)들 특정 시점의 객체와 객체사이의 관계로 표현 
  • 컴포넌트 다이어그램 : 실제 구현 모듈인 컴포넌트 간의 관계나 컴포넌트 간의 인터페이스를 표현(구현단계에서 사용)
  • 배치 다이어그램 : 결과물, 프로세스, 컴포넌트 등 물리적 요소들의 위치를 표현(구현단계에서 사용)
  • 복합체 구조 다이어그램 : 클래스나 컴포넌트가 복합 구조를 갖는 경우 그 내부 구조를 표현
  • 패키지 다이어그램 : 유스케이스나 클래스 등의 모델 요소들을 그룹화한 패키지들의 관계를 표현 

클래스 다이어그램의 구성요소

  • 클래스
  • 제약조건
  • 관계

패키지 다이어그램의 구성요소

  • 패키지 : 객체들을 그룹화한 것
  • 객체 : 유스케이스, 클래스, 인터페이스 등 패키지에 포함될 수 있는 다양한 요소들
  • 의존관계 : 패키지와 패키지, 패키지와 객체 간의 점선 화살표로 연결하여 표현
  • <<import>> : 패키지에 포함된 객체들을 직접 가져와서 이용하는 관계
  • <<access>> : 인터페이스를 통해 패키지 내의 객체에 접근하여 이용하는 관계 

행위 다이어그램의 종류

  • 유스케이스 다이어그램 : 사용자의 요구를 분석하는 것으로 기능 모델링 작업에 사용됨
  • 시퀀스(순차) 다이어그램 : 상호작용하는 시스템이나 객체들이 주고받는 메시지를 표현함
  • 커뮤니케이션 다이어그램 : 동작에 참여하는 객체들이 주고받는 메시지와 객체들 간의 연관관계를 표현
  • 상태 다이어그램 : 하나의 객체가 자신이 속한 클래스의 상태변화 혹은 다른 객체와의 상호작용에 따라 상태가 어떻게 변화하는지를 표현, 럼바우 객체지향 분석 기법에서 동적 모델링에 활용되는 다이어그램
  • 활동 다이어그램 : 시스템이 어떤 기능을 수행하는지 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서에 따라 표현
  • 상호작용 개요 다이어그램 : 상호작용 다이어그램 간의 제어 흐름을 표현
  • 타이밍 다이어그램 : 객체 상태 변화와 시간 제약을 명시적으로 표현

순차 다이어그램의 구성요소

  • 액터 : 사람 or 외부시스템
  • 객체 : 메시지를 주고받는 주체
  • 생명선 : 객체가 메모리에 존재하는 기간
  • 실행상자 : 객체가 메시지를 주고받으며 구동되고 있음을 표현
  • 메시지 : 객체가 상호작용하기 위한 메시지
  • 객체소멸 : 더 이상 객체가 소멸하지 않는 것을 의미
  • 프레임 : 다이어그램의 전체 또는 일부를 묶어 표현한 것

스트레오 타입 : UML에서 표현하는 기본 기능 외에 추가적인 기능을 표현한. 것(길러멧 기호로 그 안에 내용을 표시 길러멧 기호는 << >> 로 표시)

  • <<include>> : 연결된 다른 UML 요소에 대해 포함 관계에 있는 경우
  • <<extend>> : 연결된 다른 UML 요소에 대해 확장관계에 있는 경우
  • <<exception>> : 예외를 정의하는 경우
  • <<interface>>> :  인터페이스를 정의하는 경우
  • <<constructor>> : 생성자 역할을 수행하는 경우

소프트웨어 재사용 : 이미 개발되어 인정받은 소프트웨어의 전체 혹은 일부분을 다른 소프트웨어 개발이나 유지에 사용하는 것

  • 합성중심 : 블록구성방법
  • 생성중심 : 패턴구성방법

소프트웨어 재공학 : 새로운 요구에 맞도록 기존 시스템을 이용하여 보다 나은 시스템을 구축하고, 새로운 기능을 추가하여 소프트웨어 성능을 향상하는 것
 

반응형
저작자표시 (새창열림)

'정보처리기사' 카테고리의 다른 글

데이터베이스 개념(1)  (0) 2023.08.26
CASE / 프레임워크  (0) 2023.08.26
데이터베이스(2)  (0) 2023.08.20
데이터 베이스(1)  (0) 2023.08.19
프로그래밍언어 (1)  (0) 2023.08.13
    '정보처리기사' 카테고리의 다른 글
    • 데이터베이스 개념(1)
    • CASE / 프레임워크
    • 데이터베이스(2)
    • 데이터 베이스(1)
    청춘고양이
    청춘고양이
    신입개발자

    티스토리툴바