본문 바로가기

기술 용어 검색

'소프트웨어 공학의 진실과 오류' 中에서 #3

복잡성

 사람이 중요한 이유가 무엇인가 ? - 복잡성을 극복하는 데는 상당한 사고력과 기술력 - 결국 똑똑한 사람은 복잡한 문제를 단순하게 만드는 사람이다.

 왜 검사(inspection)이 오류 제거에 대한 가장 효과적, 효율적인 접근 방법인가? 복잡성을 걸러내고 오류의 위치를 찾는 데는 결국 사람의 노력이 필요하기 때문이다.

 22. 소프트웨어 작업의 80%는 지적인 작업이다. 그 중 상당 부분은 창조적인 작업이다. 사무적인 작업은 거의 없다.

 재사용

 15. 소규모 재사용 50년 전부터 시작되어 잘 해결되었다. 단, 소규모에 한해서 우리는 그것을 'Copy&Paste'라 부른다.

 16. 대규모 재사용(컴포넌트) 재사용에 대해서 중요 바람직하다 생각하지만, 현실에서는 거의 해결되지 않는다. - 도메인에 종속적이기 때문이다.

 18. 재사용
1) 재사용 가능 컴포넌트를 만드는 것은 단일 목적의 컴포넌트를 만드는 것보다 세배 어렵다.
2) 컴포넌트는 재사용 라이브러리로 인정할 만큼 일반적이라 생각하기 전에 서로 다른 세가지 애플리케이션에 적용해 봐야 한다. - 3가지에 맞을 경우 범용성이 인정되는 수준

 19. 재사용된 수정하는 경우 오류 범하기 쉽다. 20-25%이상 수정하고자 하는 경우에는 다시 작성하는 것이 효율적 / 효과적임.

 20. 디자인 패턴 - 해결책 중 하나

 21. 문제의 복잡성이 25% 증가하면 소프트웨어 솔류션의 복잡성은 100% 증가
 대규모 재사용은 성과가 좋지 않을까 ? - 복잡성이 다양성을 증대시키기 때문이다.