엔지니어링 원칙을 적용한 현대 소프트웨어 개발의 시작
끊임없는 변화에 견고한 아키텍처와 검증된 프로젝트 설계 방법론
현재 수많은 소프트웨어 프로젝트가 놀라운 속도로 실패하고 있습니다. 끊임없이 변하는 요구사항으로 인해 시스템은 감당할 수 없을 정도로 복잡해지고 있습니다. 역동적이고 혼란스러운 환경에서 프로젝트의 마감일, 일정, 예산은 지켜지지 않습니다.
이 책은 검증된 아키텍처 및 프로젝트 설계 방법론을 도입하여 이러한 문제를 극복하는 데 도움을 줍니다. 먼저, 밀접하게 연결된 두 가지 구성 요소인 아키텍처 설계와 프로젝트 설계를 통합합니다. 이 두 요소가 합쳐져 소프트웨어 설계를 구성합니다.
아키텍처 설계에서는 더 작은 구성 요소나 서비스로 분해하는 방법을 제시하여, 현재 많은 소프트웨어 아키텍트가 실패하는 영역을 해결합니다. 다음으로, 아키텍처 설계에서 효과적인 프로젝트 설계를 도출하는 방법을 보여주며, 프로젝트의 기간, 비용, 위험을 정확하게 계산합니다.
이를 통해 얻은 방법과 원칙은 프로젝트나 회사 규모, 기술, 플랫폼 또는 도메인과 관계없이 적용할 수 있으며 개발자, 아키텍처, 팀장, 프로젝트 리더에게 고품질의 소프트웨어를 개발하는 가장 현대적이고 체계적인 접근 방식을 제시합니다.
출판사의 리뷰
여전히 많은 소프트웨어 프로젝트가 놀라운 비율로 실패하고 있으며, 출시된 프로젝트 중에서도 결함이 많은 경우가 많고 심지어, '신뢰할 수 있는' 소프트웨어 시스템조차 기대에 미치지 못하는 경우가 흔합니다. 일반 프로그래머들은 단순한 기술자로 활동하며, 소프트웨어 아키텍트들은 성공을 위한 충분한 교육을 받지 못하고 있습니다. 그들에게 제공되는 정보는 체계적이지 않거나 일관성이 없거나 잘못된 경우가 많습니다. 유발 로이는 '올바른 소프트웨어 설계'에서 시스템 및 프로젝트 설계를 위한 구조화되고 고도로 공학적인 접근 방식을 소개하여 이러한 문제를 해결하는 데 도움을 줍니다.
로이의 소프트웨어 설계 방법론은 두 가지 밀접하게 연결된 구성 요소를 통합합니다. 시스템 설계(일반적으로 아키텍처라고 함)와 프로젝트 설계입니다. 이 두 가지를 합쳐서 소프트웨어 설계라고 합니다. 시스템 설계를 위해 그는 시스템을 더 작은 구성 요소 즉, 서비스로 분해하는 공학적 방법을 제시하여 현재 대부분의 소프트웨어 아키텍트가 실패하는 영역을 해결합니다. 다음으로, 시스템 설계에서 효과적인 프로젝트 설계를 도출하는 방법을 보여주며 프로젝트의 기간, 비용 및 위험을 정확하게 계산합니다.
'올바른 소프트웨어 설계'에 담긴 기술과 아이디어는 소프트웨어 기술, 플랫폼, 프로젝트 규모, 회사 규모 또는 도메인에 관계없이 적용 가능하며, 오늘날 소프트웨어 실패의 주요 원인을 해결하는 데 특별히 설계되었습니다.