소프트웨어 공학 1

비지·2022년 4월 14일
0

소프트웨어공학

목록 보기
1/2

소프트웨어 개념
프로그램 + 프로그램의 개발, 운용, 보수에 필요한 정보 일체

소프트웨어의 특성
-비가시성(Invisibility) : 개념적이고 무형적 (생산물의 구조가 코드 안에 숨어있음)
-복잡성(Conplexity) : 개발과정, 대상업무, 시스템 자체가 복잡
-순응성(Conformity) : 요구나 환경 변화에 적절히 변경 가능
-복제 가능(Duplicability) : 극히 적은 비용으로 복제 간으

소프트웨어 공학
-소프트웨어 + 공학
-'소프트웨어 개발 과정에 공학적인 원리를 적용하여 소프트웨어를 개발'
-목적
1. S/W 개발의 어려움 해결
2. 효율적 개발을 통한 생산성 향상
3. 고품질 소프트웨어 제품

소프트웨어 품질을 바라보는 관점

  • 품질 좋은 소프트웨어
    고객 : 경제적인 이익과 효과가 있는지 평가함
    사용자 : 신뢰도와 효율성. 일을 효율적으로 처리해주고, 배우기 쉽고 불편함이 없는지 평가함
    개발자 : 설계가 쉽고 유지보수가 용이하며, 재사용하기 쉬워야 하며, 문서화가 잘되어 있는지 평가함

소프트웨어 위기
주먹구구식 개발로 개발 기간이 지연되거나 실패로 돌아감

소프트웨어 위기(Crisis)의 원인

  • 소프트웨어 특징에 대한 이해 부족 : 물리적이지 않고 논리적인 소프트웨어의 특징을 이해하지 못함
  • 소프트웨어의 관리 부재 : 소프트웨어에 대한 관리를 소홀이 하여 효율적인 자원 통제가 이루어지지 않음.
  • 프로그래밍에만 치중 : 소프트웨어의 품질이나 유지보수는 고려하지 않고, 프로그래밍만 잘하려고 집착함으로써 다양하고 복잡해지는 소프트웨어의 요구사항을 처리하지 못함.

소프트웨어 위기(Crisis)의 결과

  • 개발인력의 부족과 그로 인한 인건비 상승
  • 성능 및 신뢰성 부족
  • 개발 기간 지연 및 개발 비용 증가
  • 유지보수가 어렵고 이에 따른 비용 증가
  • 소프트웨어의 생산성 저하
  • 소프트웨어의 품질 저하
profile
나를 위한 업그레이드 아자아자

0개의 댓글