Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- vue 실행
- ..gitignore
- Quartz 라이브러리
- 배포 자동화
- 환경변수
- CI/CD
- document 함수
- git 폴더 모으기
- 되돌리기
- 테스팅
- submit 기본동작
- 소프트웨어
- 채팅 프로젝트
- Quartz dependency
- 자바 swing 프로젝트
- 깃허브 토큰 생성
- .ppk
- 타임리프 참조 오류
- firstChild
- deploy.sh
- reset
- vue 추가
- Node Property
- 배열 call by value
- AWS 생성
- Jenkins
- 깃허브 토큰 발급
- 클래스 참조
- dbeaver 백업/복구
- EL1021E
Archives
- Today
- Total
TY blog
확실성 있는 소프트웨어 시스템 본문
1. 확실성 : 소프트웨어 시스템을 믿고 쓸 수 있어야 한다.
* 확실성의 주요 5가지 요소
- 가용성(availability) : 어떤 시점에 시스템이 작동(서비스를 제공)할 확률
- 신뢰성(reliability) : 주어진 기간 동안 시스템이(정확하게) 서비스를 제공할 확률
- 안전성(safety) : 시스템에 사람 또는 환경에 손상을 주지 않는지
- 보안성(security) : 시스템이 (우연한/의도적인) 침입을 막을 수 있는지
- 복원성(resilience) : 시스템이 장비 고장, 공격 등 아래에 중요한 서비스를 잘 유지하는지
다른 신뢰할 수 있는 속성
- 수리가능성(repairability) : 시스템이 얼마나 빨리 수리될 수 있는지 (장애 시 복구)
- 유지보수성(maintainability) : 새로운 요구사항을 수용하기 위한 시스템 변경이 용이한지 (유지보수가 쉬운지)
- 오류 내성(error tolerance) : 사용자 입력 / 조작 오류를 방지하고 감내할 수 있는지
2. 중복성과 다양성
- 중복성(redundancy) : 시스템 컴포넌트의 장애가 일어났을 때 사용할 수 있는 여분의 기능을 시스템에 포함시키는 속성
- 다양성(diversity) : 같은 방식으로 실패하지 않도록 서로 다른 중복컴포넌트를 사용하는 속성
중복성과 다양성의 예시 )
- 집을 지키기 위해 문 앞에 여러 개의 잠금장치를 사용하는 것은 중복성이고 서로 다른 종류의 잠금장치를 사용하는 것은 다양성이다.
- 가용성을 높이기 위해 중복된 서버를 사용한다. (중복성)
- 서로 다른 유형의 서로 다른 운영체제의 서버를 사용한다 (다양성)
* 장점
주 컴포넌트가 실패하면 중복 컴포넌트로 전환하여 하나의 컴포넌트의 장애가 시스템 전체 장애로 이어지지 않을 수 있다.
* 단점
소프트웨어의 중복성과 다양성을 사용하는 것 자체가 시스템을 더 복잡하게 만들고 일반적으로 이해하기 어렵게 만들어 소프트웨어에 버그를 도입할 수 있다.
3. 확실성 있는 소프트웨어 프로세스
확실성 있는 소프트웨어를 생산하도록 설계된 소프트웨어 프로세스이며 적은 오류를 포함하여 실행 시에 장애 발생이 적은 소프트웨어로 이어질 가능성이 높다.
* 확실성 있는 프로세스의 특징
- 명시적으로 정의된 프로세스 : 개발팀이 프로세스모델에 정의된 대로 프로세스를 준수했다는 데이터가 수집되어야 한다.
- 반복 가능한 프로세스 : 누가 개발에 참여하는지에 관계없이 여러 프로젝트에 걸쳐 프로세스가 반복될 수 있어야 한다.
* 참고문헌 : (주)한티에듀 소프트웨어공학 제10판
'소프트웨어 공학' 카테고리의 다른 글
분산 소프트웨어 공학 (0) | 2023.11.28 |
---|---|
소프트웨어 신뢰성, 안전성 공학 (0) | 2023.11.21 |
소프트웨어 재공학 (0) | 2023.11.07 |
소프트웨어 개발 테스팅 (0) | 2023.10.17 |
소프트웨어 아키텍처 설계 (0) | 2023.10.10 |
Comments