본문 바로가기

CS8

아키텍처 패턴 아키텍처 패턴은 특정 상황에서 소프트웨어에 문제가 발생했을 때 적용할 수 있는 전형적인 해결방식 또는 예제를 말합니다. 아키텍처 패턴의 장점은 시행착오를 줄여 개발시간을 단축시키고 고품질 소프트웨어를 생산할 수 있다는 것, 이해관계자들이 공통된 아키텍처를 공유하기 때문에 안정적인 개발이 가능하고 의사소통이 간편해 진다는 것입니다. 아키텍처 패턴의 종류에는 레이어 패턴, 클라이언트-서버 패턴, 파이프-필터 패턴, MVC패턴 등이 있습니다. 1) 레이어 패턴(Layerd pattern) 시스템을 계층으로 구분하여 구성하는 고전적인 방법으로, 하위 계층은 상위 계층에 대한 서비스 제공자가 되고, 상위 계층은 하위 계층의 클라이언트가 됩니다. 특정 계층만을 교체해 시스템을 개선하는 것이 가능하고 대표적으로는 O.. 2024. 2. 2.
소프트웨어 아키텍처 소프트웨어 아키텍처는 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체입니다. 기본적으로 좋은 품질을 유지하면서 사용자의 비기능적 요구사항으로 나타난 제약을 반영하고, 기능적 요구사항을 구현하는 방법을 찾는 해결 과정입니다. 기본 원리로는 모듈화, 추상화, 단계적 분해, 정보은닉이 있습니다. 1) 모듈화(Modularity) 모듈화란 소프트웨어의 성능을 향상시키거나 시스템의 수정 및 재사용, 유지 관리 등이 용이하도록 시스템의 기능들을 모듈 단위로 나누는 것을 의미합니다. 모듈화를 통해 프로그램의 효율적인 관리가 가능하고, 오류의 파급 효과를 최소화할 수 있다는 장점이 있습니다. 모듈의 크기가 너무 작으면 모듈 간의 통합 비용이 많이 들고, 모듈의 크기가 크면 통합비용은 적게 .. 2024. 2. 2.
스크럼, XP 기법 1. 스크럼 기법 1) 구성 : 스크럼마스터, 개발팀, 제품 책임자 - 제품 책임자 : 비즈니스 부분에 중점을 두고 프로젝트의 POI를 담당합니다. 요구사항이 담긴 백로그를 작성하고 백로그에 대한 우선순위를 지정합니다. - 스크럼마스터: 방법론의 규칙과 프로세스를 준수하도록 팀을 이끄는 사람입니다. 스크럼 마스터는 프로젝트의 장애요소를 관리하며 필요한 경우 팀 코칭, 멘토링 및 교육 등을 제공하는 역할을 합니다. - 개발팀: 개발자 이외에도 디자이너, 테스터 등 제품 개발을 위해 참여하는 모든 사람입니다. 2) 스크럼 개발 프로세스 - 제품 백로그 : 제품 개발에 필요한 모든 요구사항을 우선순위에 따라 나열한 목록입니다. 새롭게 도출되는 요구사항으로 인해 지속적으로 업데이트 되고, 이 백로그에 작성된 사.. 2024. 2. 2.
소프트웨어 생명 주기 소프트웨어 생명주기는 소프트웨어를 개발하기 위해 정의하고 운용, 유지보수 등의 과정을 각 단계별로 나눈 것입니다. 일반적으로 사용되는 모형에는 폭포수 모형, 프로토타입 모형, 나선형 모형, 애자일 모형 등이 있습니다. 1) 폭포수 모형(Waterfall Model) 폭포수 모형은 각 단계를 확실히 매듭짓고 그 결과를 철저하게 검토하여 승인 과정을 거친 후 다음 단계를 진행하는 개발 방법론입니다. 이 모형은 소프트웨어 공학에서 가장 오래되고 가장 폭넓게 사용된 전통적인 소프트웨어 생명 주기 모형으로, 고전적 생명 주기 모형이라고도 합니다. 모형을 적용한 경험과 성공 사례가 많고, 한 단계가 끝나야만 다음 단계로 넘어갈 수 있기 때문에 각 단계가 끝난 후엔 다음 단계를 수행하기 위한 결과물이 명확하게 산출되.. 2024. 2. 2.