본문 바로가기

Computer/0x09 소프트웨어 공학

[소프트웨어공학 2화] 소프트웨어공학이 직면한 문제

[소프트웨어공학 2화] 소프트웨어공학이 직면한 문제




[ 좋은 소프트웨어의 속성 ]


- 소프트웨어는 사용자들이 요구하는 기능과 성능을 제공하고, 유지보수성, 신뢰성,수용성

이 있어야 함


* 유지 보구성

- 소프트웨어는 고객의 변경 요구사항을 수용


* 신뢰성

- 소프트웨어는 믿음이 가야 함


* 효율성

- 소프트웨어는 시스템 자원을 낭비하지 않아야 함


* 사용성

- 소프트웨어는 다른 시스템들과 비교해서 사용자들이 이해하기 쉽고, 사용하기

편해야함 





소프트웨어 공학이 직면한 중요 도전


* 이질성
- 소프트웨어를 개발하는 데 발전된 기술은 이기종 플랫폼과 실행환경에서도 대체가 가능해야 함

* 인도(Delivery)
- 소프트웨어를 빨리 인도 할 수 있는 개발 기술이 필요함

* 신뢰
- 사용자들에게 신뢰를 줄 수 있는 소프트웨어가 되도록 하는 기술 




직업적 책임과 윤리적 책임


- 소프트웨어 공학은 응용 프로그램의 기술보다도 더 광범위한 책임을 내포

- 소프트웨어 엔지니어들은 직업적으로 존경을 받으려면 진솔하고 윤리적 책임을 가지고 행동해야 함

- 윤리적 행위는 단순히 밥을 지키는 것 이상 




[ 직업적 책임 ]


* 기밀유지

- 엔지니어들은 고용주나 고객들과 비밀유지에 대한 계약이 없더라도 기밀유지를 해야 함


* 능력

- 엔지니어는 능력을 과대 평가해서는 안되고 자신의 능력 범위를 벗어나는 일을 맡아서는 안된다.


* 지적 재산권

- 엔지니어는 특허, 저작권과 같은 지적 재산권 사용에 관한 법률을 준수해야 하며, 고용주와 고객에 대한

지적 재산권이 보호된다는 것을 항상 인식해야 한다.


* 컴퓨터 오용

- 소프트웨어 엔지니어는 자신의 기술을 이용해서 다른 사람의 컴퓨터를 오용해서는 안됨

컴퓨터 오범위위는 바이러스를 퍼뜨리는 것 까지 광범위




정리하기

1. 좋은 소프트웨어의 특징은 사용자가 필요한 기능과 성능을 제공하고 유지보수가 편리하며 신뢰 가능한 것이다.
2. 소프트웨어 공학이 직면한 중요한 도전은 이질성,인도,신뢰 이다.