정보처리기사 1과목 소프트웨어 설계 A,B
🔥 소프트웨어 요리법 => 모델, 모형
🗨 A. 요구사항 확인
📌 4가지의 모델
소프트웨어 생명주기
📌 폭포수 모델
-
각 단계를 확실히 마무리 해야 한다.
-
반드시 메뉴얼이 필요
-
그래서 프로토 타입이 필요 ( 프로토 타입 : 시제품 , 견본 )
📌 프로토 타입 모델
- 프로토 타입은 마감을 무시하고 빠른 개발을 위해 기능만 구현
( 인터페이스 중심 개발 )
📌 나선형 (스파이럴) 모델
-
계획 - 분석 - 개발 - 평가의 반복
-
대규모에 유리
-
여러번의 개발 과정
-
완성도
-
점진적 개발 , 유지보수 불필요
-
위험관리 최소화
📌 애자일 모델
- 절차와 문서보다는 상호작용과 소통
📌 스크럼 ( Scrum )
소프트웨어 생명주기
📌 폭포수 모델
-
각 단계를 확실히 마무리 해야 한다.
-
반드시 메뉴얼이 필요
-
그래서 프로토 타입이 필요 ( 프로토 타입 : 시제품 , 견본 )
📌 프로토 타입 모델
- 프로토 타입은 마감을 무시하고 빠른 개발을 위해 기능만 구현
( 인터페이스 중심 개발 )
📌 나선형 (스파이럴) 모델
-
계획 - 분석 - 개발 - 평가의 반복
-
대규모에 유리
-
여러번의 개발 과정
-
완성도
-
점진적 개발 , 유지보수 불필요
-
위험관리 최소화
📌 애자일 모델
- 절차와 문서보다는 상호작용과 소통
📌 스크럼 ( Scrum )
🔥 제품 책임자
- 의사결정권 있는 사람
🔥 스크럼 마스터
- 개발팀 지원 조율
🔥 개발팀
- 디자이너 + 테스터까지
🔥 Backlog
- 스토리 형식으로 기록. => 우선순위는 오직 제품 책임자에 의해서만 변경 가능
🔥 Sprint
- 우선순위가 정해지면 세부 개발목표와 시간을 할당받는 것
🔥
-
각각의 backlog에 대한 개별 backlog = sprint backlog
-
소멸차트를 통해 분석
-
검토회의 = 제품책임자 주도
📌 XP (eXtreme Programming)
-
고객과의 소통을 극도로 끌어올렸다
-
개발 주기를 짧게 만들어서 고객의 적극적인 참여를 유도
= 가시성이 향상된다. -
주로 소규모 개발에 사용 ( 개발비용 때문에 )
-
피존용단소 🎯 주요가치
= 피드백 존중 용기 단순 의사소통 -
요구사항 = 스토리
-
릴리즈 = 프로그램을 배포하는 단위 1.0 2.0 2.1 등등..
📌 spike
-
전체 기능과 상관 없이 오로지 특정 기능 하나에 대한 테스트를 하기 위해 작성되는 프로그램
-
spike가 제대로 완성됐다면 iteration이 진행
📌 이터레이션
-
1~2주의 시간으로 완성 가능한 기능을 모아서 고객이 직접 평가할 수 있도록 프로그램을 만드는 과정
-
이터레이션이 완성되면 고객은 평가를 진행
-
이터레이션이 완료되면 릴리즈를 진행
📌 시스템 파악
🔥 구기인 아소 하네
🔥 구: 구성 파악 . 업무 시스템의 구성을 파악 ( 주요 업무 파악 )
- 기간업무 , 지원업무
🔥 기 : 기능 파악 . ( 세부적인 업무 파악 )
- 세부적인 것은 양이 많아 지기에 계층형으로 표시
🔥 인 : 인터페이스 파악
- protocol 파악
🔥 아 : 아키텍쳐 파악
- 계층적으로 나타남
🔥 소 : 소프트웨어 구성 파악
- 용도, 라이센스 적용방식, 라이센스 개수 등
🔥 하 : 하드웨어 구성 파악
- 수량, 이중화 ( 백업 ) 적용 여부 파악
🔥 네 : 네트워크 구성 파악
- 물리적 위치
📌 개발 기술 환경 파악
🔥 OS
🔥 DBMS ( 데이터 베이스 관리 시스템 )
- 종속성, 중복성 해결
이름은 학번에 종속적 - 이름은 학번 없이 구분 불가
- DB에 대한 모든 권한을 가짐
🔥 WAS ( 웹 어플리케이션 서버 )
- 동적 컨텐츠 처리를 위한 미들웨어
🔥 고려사항
- 가용성, 성능, 기술지원, 오픈소스, 비용
📌 요구사항 정의 분석 확인
🔥 요구사항 = 원하는 서비스에 대한 설명과 제약조건
기능 - 비기능 - 사용자 - 시스템 존재
요구사항 4단계 프로세스를 거친다.
- 도출 - 분석 - 명세 - 확인
🧿 도출 : 요구사항 도출. 의사소통 필요
🧿 분석 : 요구사항의 타당성 확보. 요구사항을 특정 기준으로 분류.
-
요구사항을 단순화하여 개념적으로 표현한다. 객체간의 관계와 종속성을 분석한다 => 🔥 모델링
-
모델링을 주로 표현할 때 UML을 사용한다.
-
우선순위를 두면 충돌에 많은 도움이 된다.
-
정형분석 ( 마지막 단계 )
수학적 분석 => 마무리 됐다
-
분석 끝나면 🧿 명세
-
마지막 🧿 확인
검토자 그룹 등에는 고객 대표등이 꼭 포함돼있어야 한다.
- 프로토 타입 => 지속적으로 프로토타입 작성
프로토타입에만 집중될 수 있다는 단점이 존재
- 모델검증 : 요구사항 충족 검증
🔥 정적분석 : 실행 x 논리적인 검증
📌 UML
원활한 의사소통을 위해 표준화 된 모델링 언어
- 6개의 구조 다이어그램, 7개의 행위 다이어그램
원활한 의사소통을 위해 표준화 된 모델링 언어
🔥 사물 diagram
사물 = 특정 대상을 의미
- 단어의 뜻 정도만 가볍게 알기
🔥 관계 diagram
🧿 실선 = 연관관계
- 서로 연관돼 있을 경우 화살표 생략하고 다중도
다중도 = 특정 숫자와 2개의 기호로 많은 표현
* = 다수 || .. = 또는
- 자동차는 바퀴 소유, 바퀴는 자동차 소유 불가
상속의 반대로 표시한다고 생각
- 아내와 남편은 서로 소유
🧿 점선 = 의존관계
의존 - 연관 구분 : 관계가 일시적인가?
사은품은 일시적인 것
🧿 일반화관계
실선
🧿 실체화관계
점선
- 실선은 평생 , 점선은 필요에 의해 생기는 일시적
🧿 집합과 포함
- 하지만 포함관계가 아니라 집합 ! 마우스를 다른 컴퓨터에도 사용할 수 있기 때문 => 🔥 빈 마른모
- 땔래야 땔 수 없는 1대1 대응 관계 => 🔥 찬 마른모
🗨 B. 화면 설계
📌 사용자 인터페이스
사용자와 시스템은 서로 정보를 주고 받는데, 이걸 처리하는 방식이 서로 다르기 때문에 차이를 해석해 줄 장치가 필요. 여기에 적용되는 장치나 소프트웨어 = interface
- 각 사용자와 시스템간의 매개체 기능을 하는 모든 것 = 인터페이스
사용자와 시스템은 서로 정보를 주고 받는데, 이걸 처리하는 방식이 서로 다르기 때문에 차이를 해석해 줄 장치가 필요. 여기에 적용되는 장치나 소프트웨어 = interface
- 각 사용자와 시스템간의 매개체 기능을 하는 모든 것 = 인터페이스
3가지로 나뉠 수 있다.
🔥 구성, 기능 , 제어
- 소프트웨어 아키텍쳐를 반드시 숙지하고 있어야 한다.
🧿 인터페이스 4가지 규칙
- 유연성 , 직관성, 학습성 , 유효성
🧿 사용자 중심 설계
📌 UI 표준 및 지침
-
표준 = 공통적으로 적용되는 것
-
지침 = 꼭 지켜야 하는 것
🔥 웹 표준
- 표준을 지키면 접근성이 엄청나게 향상
표준 = 공통적으로 적용되는 것
지침 = 꼭 지켜야 하는 것
누구나 동등하게 이용가능하게
- 크로스 브라우징
어떤 브라우저에서든 접근 가능
🔥 접근성 지침
🧿 인식(대체)
- 예상 가능하게
🧿 운영(포인팅)
- 쉽게
🧿 이해(논리적)
- 납득
🧿 견고함
🔥 네비게이션
- 이러한 표준 지침들을 적용하여 만들어지는 수 많은 요소들 = 네비게이션
🔥 정부서비스
- 누구나 평등하게 정보를 습득하게. 핵심 = 접근성
🧿 문법준수
보편적인 것
🧿 비표준 지양
🧿 호환성
📌 UI 설계 도구
🔥 wireframe
- 화면 단위로 대략적인 레이아웃을 구성하는 단계
🔥 Mockup
- 실제 화면과 유사한 형태로 만듦
🔥 Story Board
-
와이어 프레임 + 콘텐츠에 대한 설명과 콘텐츠의 이동경로를 정적으로 나타낸다
-
정적이다 = 실제로 움직이지는 않는다.
🔥 Use case
와이어 프레임 + 콘텐츠에 대한 설명과 콘텐츠의 이동경로를 정적으로 나타낸다
정적이다 = 실제로 움직이지는 않는다.
- 사용자의 요구사항을 다이어그램 형식으로 완성하고, 완성된 다이어그램에 대한 각각의 명세서를 작성
📌 UI 요구사항 확인
🔥 목표정의
- 개별로 인터뷰를 진행하여 사업적, 기술적 요구사항을 이해
🔥 활동사항 협의
-
목표 이해
-
예산 분배
-
계획
-
우선순위
🔥 정리 요소
-
🧿데이터 요소를 가장 먼저 정리해야 한다. 소프트웨어 시스템의 기반이 되기 때문. 각각의 개체간의 특성을 기반으로 정리
-
기능정리 => 🧿동사형으로 정리
-
품질
-
제약 ( 데드라인 )
🔥 정황 시나리오 작성
- 6하 원칙, 이야기
🔥 요구사항 작성
📌 품질 요구사항
-
품질 = 요구사항
-
국제 표준 지침 = ISO/IEC 9126
🔥 기능
- 호환 + 보완
🔥 신뢰
- 고장이 나도 사용할 수 있어야 한다.
🔥 사용
- 쓰기 편해야 한다
🔥 효율 / 🔥 유지보수 / 🔥 이식
📌 UI 프로토타입 제작 및 검토
🔥 프로토타입
-
실제로 동작할 수 있는 동적인 모델
-
필수기능을 포함. 최대한 간단하게
🔥 계획
목표 이해
예산 분배
계획
우선순위
🧿데이터 요소를 가장 먼저 정리해야 한다. 소프트웨어 시스템의 기반이 되기 때문. 각각의 개체간의 특성을 기반으로 정리
기능정리 => 🧿동사형으로 정리
품질
제약 ( 데드라인 )
-
품질 = 요구사항
-
국제 표준 지침 = ISO/IEC 9126
🔥 기능
- 호환 + 보완
🔥 신뢰
- 고장이 나도 사용할 수 있어야 한다.
🔥 사용
- 쓰기 편해야 한다
🔥 효율 / 🔥 유지보수 / 🔥 이식
📌 UI 프로토타입 제작 및 검토
🔥 프로토타입
-
실제로 동작할 수 있는 동적인 모델
-
필수기능을 포함. 최대한 간단하게
🔥 계획
실제로 동작할 수 있는 동적인 모델
필수기능을 포함. 최대한 간단하게
🔥 작성
🔥 UI 제작단계
- 분석, 작성, 검증, 승인
-
테스트의 주체 = 사용자
-
테스트 및 피드백 - 수정 승인은 계속 반복될 수가 있다
📌 UI 설계서 작성
🔥 설계서 작성 7 단계
🧿 개정이력
1.0을 시작으로 0.1을 증가시킴
🧿 요구사항 정의서
각 요구사항의 반영 여부도 같이 기록
🧿 시스템 구조
사용자의 요구사항이 UI 시스템에 어떻게 적용되는지
🧿 사이트 맵
시스템 구조를 바탕으로 콘텐츠를 메뉴별로 설계
🧿 프로세스 정의서
어떻게 진행되는지 작업 진행 순서위주로 정리
🧿 화면 설계
각 UI 화면 별로 표지와 스토리보드로 구분해서 설계
📌 UI 유용성 평가 / 상세설계 / 감성공학
UI가 들어가면 무조건 사용자 중심
🔥 UI 유용성 평가
🧿 실행차이 (기능)
UI가 들어가면 무조건 사용자 중심
불필요한 기능 등
🧿 결과차이 (평가)
이해하기 어려운 결과
🔥 상세설계
시나리오 작성
🔥 감성공학
🧿 HCI ( Human Computer Interaction)
사용자가 최적의 사용자 경험(UX)이 목표
🧿 UX = User eXperience
시스템을 이용하면서 얻게 되는 경험을 통칭
- UX <--> UI (객관적 지표가 존재) 반대개념
- 감성공학과 UX의 단어 선택이 살짝 다르다.
📌 출처
본 강좌는 주간컴공채널의 정보처리 기사 영상을 정리한 내용입니다.
https://www.youtube.com/c/%EC%A3%BC%EA%B0%84%EC%BB%B4%EA%B3%B5/playlists
Author And Source
이 문제에 관하여(정보처리기사 1과목 소프트웨어 설계 A,B), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@camel-man-ims/정보처리기사-1과목
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
본 강좌는 주간컴공채널의 정보처리 기사 영상을 정리한 내용입니다.
https://www.youtube.com/c/%EC%A3%BC%EA%B0%84%EC%BB%B4%EA%B3%B5/playlists
Author And Source
이 문제에 관하여(정보처리기사 1과목 소프트웨어 설계 A,B), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@camel-man-ims/정보처리기사-1과목저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)