공부하는가비

[2022 정보처리기사 필기 1과목] 소프트웨어 설계 본문

낰낰/자격증

[2022 정보처리기사 필기 1과목] 소프트웨어 설계

가비코코보리 2022. 6. 14. 09:36

👀 소프트웨어 생명 주기 

✔ 폭포수 모형  ✔프로토 타입 모형 ✔나선형 모형 ✔애자일 모형
전통적인 모형
선형순차적 
요구 불명확의 경우
시제품
점진적 모형
위험분석 기능 
계획 ->위험분석->개발->평가
고객의 요구사항에 유연하게 대응 
개발 모형 : 스크럼, XP

 

 

✅ 스크럼 

 

✔제품책임자    :  백로그 작성 요구사항 우선순위 수정, 작성, 검토회의 주도 

✔스크럼마스터 : 일일 스크럼 회의 주관 

✔개발팀            : 개발자, 디자이너 등 제품 개발을 위해 참여하는 모든사람

 

제품백로그 -> 스프린트계획회의 -> 스프린트 -> 일일스크럼회의 -> 스프린트 검토회의-> 회고

 

✅ XP 익스트림 프로그래밍 

 

✔ 의사소통 ,단순성 ,용기 ,존중 ,피드백 

-  짧고 반복적인 개발주기

- 사용자 스트리 -> 릴리즈 계획수립 -> 스파이크-> 이터레이션-> 승인검사 ->소규모 릴리즈 진행 

 

✅ 현행 시스템 파악 

 

✔구기인아소하네

시스템 성 파악

시스템 능 파악

시스템 터페이스 파악

키텍처 구성 파악

프트웨어 구성 파악

드웨어 구성 파악

트워크웨어 구성 파악

 

✅ 개발 기술 환경 파악 

 

✔가용성, 성능, 비용, 기술지원, 오픈소스

✔ 운영체제 : 주변기기

✔ DBMS : 상호호환성

✔ WAS 

 

✅ 요구 사항 정의

 

기능요구사항 로그인 기능
비기능요구사항 장비구성, 성능 요구, 인터페이스요구, 데이터 요구, 테스트 요구, 보안 요구, 제약사항, 품질 요구, 프로젝트 관리 요구, 프로젝트 지원 요구
(처리속도 및 시간, 처리량)
사용자요구사항  
시스템요구사항  

 

정형 명세 비정형 명세
수학적 원리 기반 
수학적 기호 
표기법이 어려움, 요구사항 정확하고 간결하게 표현
상태/기능/객체중심
일반명사 등 자연어 기반
일관성이 다소 떨어지나 내용의 이해 쉬움

 

✅ 요구 사항 분석

 

소트프웨어 개발의 실제적인 첫 단계 

✔구조적 분석 기법 : 자료의 흐름과 처리 중심 (자료흐름도, 자료사건, 소단위명세서)

✔자료 흐름도 DFD

프로세스 process
자료흐름 data flow 화살표
자료저장소 data store  
단말 teriminator 직사각형 

✔자료 사전 DD

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

 

✔ HIPO chart 

- 가시적 도표 : 시스템 전체적인 기능과 흐름을 보여주는 계층형 

- 총체적 도표 : 기능 기술 

- 세부적 도표 : 총체적 도표 기능을 구성하는 기본요소 상세히 기술

 

✅ UML

 

분석, 설계, 구현 과정에서 사용되는 대표적인 객체지향 모델링 언어 

6개의 구조 다이어그램, 7개의 행위 다이어그램으로 구성 

 

사물 Thing : 구조 사물, 주해 사물, 행동 사물, 그룹 사물 

 

관계 Relationships 

 

 - 연관 관계 : 실선표기 

 - 집합 관계 : 하나의 사물이 다른하나에 포함 마름모 표기

 - 포함 관계 : 집합관계의 특수한 형태 채운 마름모 표기

 - 일반화 관계 : (커피 - 아아 -라떼 ) 의 관계 일반적인 지 구체적인지를 표현 화살표 표기

 - 의존 관계 : (할인율) 의 관계처럼 짧은 시간만 연관을 유지하는 관계 점섬 표기 

 - 실체화 관계

 

다이어그램 

 

 - 구조다이어그램

클래스 다이어그램  
객체 다이어그램 럼바우 객체 모델링
컴포넌트 다이어그램  
배치 다이어그램  
복합체 구조 다이어그램  
패키지 다이어그램  

 

 - 행위다이어그램

유스케이스 다이어그램 사용자, 사용사례로 구성 
시퀀스 다이어그램 액터, 객체, 메시지 요소를 그림으로 표현한것
커뮤니케이션 다이어그램  
상태 다이어그램 럼바우 동적 모델링 
활동 다이어그램  
상호작용 다이어그램  
타이밍 다이어그램  

 

✅ 소프트웨어 품질 요구사항 

 

  ISO/IEC 9126 

기능성 Functionaliy 사용자의 요구사항을 정확하게 만족하는 기능 제공 여부 적절성 / 적합성 
정밀성 / 정확성
상호운용
보안성
준수성
신뢰성  기능을 오류없이 수행하는 정도 성숙성
고장허용성 
회복성
사용성 향후 다시 사용하고 싶은 정도 이해성
학습성
운용성
친밀성
효율성 한정된 자원으로 얼마나 빨리 처리할수있는지 시간 효율성 
자원 표율성
유지보수성 개선하거나 확장할 수 있는 정도  분석성
변경성
안정성
시험성
이식성 다른환경에 적용할 수 있는지 정도  적용성
설치성
공존성
대체성

 

Comments