본문 바로가기

건강정보

정보처리기사 필기 문제 유형 분석 (10)

반응형

안녕하세요. 소복냥 입니다.
벌써 10번째 시간입니다. 계속해서 반복적으로 진행하는 것이 저의 스타일이기 때문에 다소 반복적인 내용이 나오시더라도 복습한다 생각하고 진행해주셨으면 합니다.
그럼 시작하겠습니다.

* DBMS (데이터베이스 관리 시스템) 분석 요구사항 식별 시 고려사항

  • 가용성
  • 성능
  • 기술 지원
  • 상호 호환성
  • 구축 비용

* 요구사항 정의 - 개발 프로세스

도출 (Elication) / 분석 (Analysis) / 명세 (Specification) / 확인 (Validation)

* 요구사항 도출 (= 요구사항 수집, Requirement Elicitation)

  • 시스템, 사용자, 시스템 개발에 관련된 사람들이 서로 의견을 교환하여, 요구사항이 어디에 있는지, 어떻게 수집할 것인지 식별하고 이해하는 과정입니다.
  • 소프트웨어가 해결해야 할 문제를 이해하는 첫 단계입니다.
  • 개발자와 고객 사이의 관계 만들어집니다. 이해관계자 (Stakeholder) 식별.
  • 이해관계자 간의 의사소통 중요합니다.
  • 소프트웨어 개발 생명주기 (SDLC, Software Development Life Cycle) 동안 지속적으로 반복됩니다.
  • 도출 주요 기법 - 인터뷰, 설문, 브레인스토밍, 워크숍, 프로토타이핑, 유스 케이스

* 요구사항 분석 (Requirement Analysis)

  • 요구사항 중, 명확하지 않거나 모호, 이해되지 않는 부분 발견 및 걸러내는 과정입니다.
  • 사용자 요구사항의 타당성 조사, 비용 일정에 대한 제약 설정
  • 서로 상충되는 (내용 중복, 하나로 통합) 요구사항 있을 때 해결합니다.
  • 도출된 요구사항을 토대로 SW의 범위 파악, SW와 주변 환경이 상호작용하는 방법 이해합니다.
  • 요구사항 정의 문서화합니다.

* UML (Unified Modeling Language)

  • 시스템 개발과정에서 의사소통이 원활하도록 표준화한 객체지향 모델링 언어
  • UML 구성요소 : 사물 (Things), 관계 (Relationships), 다이어그램 (diagram)

사물 (Things) :

모델을 구성하는 가장 중요한 기본 요소, 다이어그램 안에서 관계가 형성될 수 있는 대상들

* 구조 사물 (Structural Things)

  • 시스템의 개념적, 물리적 요소 표현
  • Class, Use case, Component, Node

* 행동 사물 (Behavioral Things)

  • 시간과 공간에 따른 요소들의 행위 표현
  • Interaction (상호작용), State Machine (상태 머신)

* 그룹 사물 (Grouping Things)

  • 요소들을 그룹으로 묶어서 표현
  • Package

* 주해 사물 (Annotation Things)

  • 부가적인 설명이나 제약조건 표현
  • Note

* 관계 (Relationships)

사물과 사물 사이의 연관성 표현

* 연관관계 (Association)

  • 2개 이상의 사물이 서로 관련됩니다.
  • 사물 사이를 실선으로, 방향성은 화살표로 표현, 양방향의 경우, 화살표 생략 실선으로만 연결,
  • 연관에 참여하는 객체수 (다중도)를 선위에 표현
1 1개의 객체가 연관
N n개의 객체가 연관
0..1 연관된 객체가 없거나 1개만 존재
0..* 또는 * 연관된 객체가 없거나 다수
1..* 연관된 객체가 적어도 1개 이상
n..* 연관된 객체가 적어도 n개 이상
n..m 연관된 객체가 최소 n개에서 최대m개

* 집합 관계 (Aggregation)

  • 하나의 사물이 다른 사물에 포함되어 있는 관계입니다.
  • 포함하는 쪽 (전체)과 포함되는 쪽 (부분)은 서로 독립적입니다.
  • 포함되는 쪽 (part)에서 포함하는 쪽 (whole)으로 빈 마름모 연결됩니다.

* 포함관계 (Composition)

  • 집합 관계의 특수항 형태, 포함하는 사물의 변화가 포함되는 사물에게 영향을 미치는 관계를 표현합니다.
  • 포함하는 쪽 (전체)과 포함되는 쪽 (부분)은 서로 독립적일 수 없음, 생명주기를 함께합니다.
  • 포함되는 쪽 (part)에서 포함하는 쪽 (whole)으로 속이 채워진 마름모 연결됩니다.

* 일반화 관계 (Generalization)

  • 하나의 사물이 다른 사물에 비해 더 일반적인지, 구체적인지 표현합니다.
  • 일반적인 개념 (상위, 부모) 구체적인 개념 (하위, 자식)입니다.
  • 구체적인 사물에서 일반적인 사물 쪽으로 속이 빈 화살표 연결됩니다.

* 의존 관계 (Dependency)

  • 사물 사이에 서로 연관은 있으나, 필요에 의해 서로에게 영향을 주는, 짧은 시간 동안만 연관을 유지하는 관계입니다.
  • 하나의 사물과 다른 사물은 소유관계는 아니지만, 사물의 변화가 다른 사물에도 영향을 미칩니다.
  • 영향을 주는 사물 (이용자)이 영향받는 사물 (제공자) 쪽으로 점검 화살표 연결합니다.

* 실체화 관계 (Realization)

  • 사물이 할 수 있거나, 해야 하는 기능 (행위, 인터페이스)으로 서로를 그룹화할 수 있는 관계 표현입니다.
  • 사물에서 기능 쪽으로 속이 빈 점선 화살표 연결합니다.

* 다이어그램 (Diagram) : 사물과 관계를 도형으로 표현합니다

여러 관점에서 시스템을 가시화한 뷰를 제공함으로써 의사소통에 도움을 줍니다.
정적 모델링에서는 구조적 다이어그램을 사용, 동적 모델링에서는 행위 다이어그램 사용합니다.

* 구조적 (Structural) 다이어그램의 종류

시나공 정보처리기사 참조

* 행위 (Behavioral) 다이어그램의 종류

시나공 정보처리기사 참조

* 품질 요구사항 - ISO/IEC 9126

* 소프트웨어의 품질 특성과 평가를 위한 표준 지침

Functionality
기능성
SW가 사용자의 요구사항을 정확하게 만족하는 기능을 제공하는지에 대한 여부 1. 적절성 / 적합성
2. 정밀성 / 정확성
3. 상호 운용성
4. 보안성
5. 준수성
Suitability
Accuracy
Interoperability
Security
Compliance
Reliability
신뢰성
SW가 요구된 기능을 정확하고 일관되게 오류없이 수행할 수 있는 정도 1. 성숙성
2. 고장 허용성
3. 회복성
Maturity
Fault Tolerance
Recoverability
Usability
사용성
사용자가 정확하게 이해하고, 사용하며 향후 다시 사용하고 싶은 정도 1. 이해성
2. 학습성
3. 운용성
4. 친밀성
Understandability
Learnability
Operability
Attactiveness
Efficiency
효율성
사용자가 요구하는 기능을 할당된 시간동안 한정된 자원으로 얼마나 처리할 수 잇는지에 대한 정도 1. 시간 효율성
2. 자원 효율성
Time Behavior
Resource Behavior
Maintainability
유지보수성
환경변화 or 새로운 요구사항이 발생했을때, SW를 개선 및 확장할 수 있는정도 1. 분석성
2. 변경성
3. 안정성
4. 시험성
Analyzability
Changeability
Stability
Testability
Portability
이식성
SW가 다른 환경에서도 얼마나 쉽게 적용할 수 있는지에 대한 정도 1. 적용성
2. 설치성
3. 대체성
4. 공존성
Adaptability
Installability
Replaceability
Co-existance





끝까지 읽어주셔서 감사합니다!




정보처리기사 필기 문제 유형 분석 (9)

안녕하세요. 소복냥 입니다. 9번째 시간 달려가 보겠습니다. * CASE (Computer Aided Software Engineering) 소프트웨어 공학의 여러 작업들을 자동화하는 도구 소프트웨어 부품의 재사용성을 향상해줍니다.

160326.tistory.com






반응형