∎ 소프트웨어 공학이란?
- 효과적으로 동작하는 우수한 소프트웨어를 최적의 비용으로 체계적으로 개발하기 위한 원칙
- 과학과 다르게 경제적인 면도 고려해야 한다.
∎ 소프트웨어 품질 결함의 원인
- 고객의 요구사항을 정확하게 파악하기 어려움
- 소프트웨어는 고치기 쉽다는 일반적인 통념 -> 요구사항 분석을 꼼꼼히 하지 못함
∎ 소프트웨어는 유지보수 비용이 높다.
소프트웨어의 특징
- 비가시성 : 눈에 확연히 보이는 대상이 아니다.
- 유연성 : 건물과 달리 유지보수가 가능하다.
- 복잡성 : 매우 유연하기 때문에 결과가 다른사람이 보기에 복잡할 수 있다.
- 무형 : 구성 내용이나 형태를 표현하기 위한 실체가 없다. 추상적인 개념의 단어들이 많다.
- 장수 : 시간이 흘러도 마모되지 않는다.
- 복제 : 복사가 가능하다.
소프트웨어는 인간의 지적 생산물이기 때문이다.
∎ 제시된 해결 방안
- 구조적 방법론, 객체지향 방법론, 컴포넌트기반설계(CBD) 등등 개발의 방법론이 있다.
- 소프트웨어나 데이터들의 표준을 지킨다.
- IOS 품질보증, 정보시스템 감리와 같은 품질보증 활동을 한다.
- 개발에 자동화 도구들을 사용한다.
∎ 관점에 따른 요구사항
- 경영자, 사장님 : 저비용, 생산성(의 증대), (다른 사업에도 이용할 수 있는) 유연성, 효율성
- 사용자 : 사용의 편리성, 기능성, 학습 편의성, (잘 고장나지 않는) 견고성, 효율성
- 유지보수자 : 문서화, 오류의 최소화, 코드 가독성, 설계의 안정성
- 공통적인 요구사항 : 신뢰성
∎ 소프트웨어 공학의 목표 : QCD
오류가 없는 고품질의 소프트웨어를 개발기간 안에 추가적 예산없이 원하는 기능을 유지보수가 용이하도록 복원력이 좋은 소프트웨어를 개발하는 것
'CS 지식 > 소프트웨어 공학' 카테고리의 다른 글
요구사항 분석 (인터뷰, 설문 조사) (0) | 2024.08.09 |
---|---|
소프트웨어 개발 방법론 (0) | 2024.08.09 |
개발 환경 & SW 응집도 결합도 (정보처리기사) (0) | 2024.08.09 |
UI 설계 (정보처리기사) (0) | 2024.08.09 |
소프트웨어 개발 과정 (정보처리기사) (0) | 2024.08.09 |