관리자 글쓰기

 좋은 소프트웨어란 무엇일까? 보통 사용하기 편리하고, 보기 깔끔하고, 원하는 기능이 모두 포함되어 있는 소프트웨어를 떠올린다. 그리고 아주 틀리지 않았다. 대신 소프트웨어공학에서는 확실한 개념을 제시할 뿐이다. 소프트웨어공학에서 말하는 좋은 소프트웨어의 조건으로는 수용성. 의존성. 효율성. 유지보수성. 4가지를 제시한다.

 

 먼저 수용성은, 소프트웨어를 사용하는 사용자가 소프트웨어에 대해 이해하기 쉽고, 소프트웨어를 사용하기 쉽고, 사용자가 사용하는 다른 시스템과 호환이 가능할 때 수용성이 높다고 한다.

 

 의존성이 높다는 말은, 좀 더 쉽게 말하면 신뢰성/보안성/안정성을 확보했다는 의미다. 시스템과 소프트웨어의 일부에서 실패가 발생하더라도, 전체 시스템에 대한 물리적/경제적 피해가 없거나 적다는 뜻이다.

 

 효율성은, 소프트웨어의 응답/처리 시간이 빠르며 적은 자원으로 최대의 성능을 낼때 그리고 시스템 자원의 낭비가 없을 때 효율성이 높다고 한다.

 

 유지보수성은, 소프트웨어가 작성되기 이전이나 이후에, 변화하는 고객의 요구사항을 충족시킬 수 있는지 여부를 의미한다.

 

그리고 추가적으로 소프트웨어가 일반적인 사용자를 대상으로 할 때엔 Generic한 소프트웨어(예: 워드, 포토샵 등),

특정 사용자를 대상으로 할 때엔 Customized 된 소프트웨어(예: 특정 대학 학생들의 개인 사이트, 공항의 관제 시스템 등)라고 한다.