소프트웨어공학 4

GoF(Gang of Four) 디자인 패턴에 대해서 알아보자.

GoF 디자인 패턴은 1994년, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides라는 네 명의 저자들이 『Design Patterns: Elements of Reusable Object-Oriented Software』라는 책을 통해 체계적으로 정리한 23가지 소프트웨어 설계 패턴을 의미한다. 이 네 명을 가리켜 흔히 "Gang of Four", 즉 "GoF"라고 부른다. 이들이 정리한 디자인 패턴의 목적은 객체지향 프로그래밍(OOP)의 핵심 가치를 극대화하는 데 있다. 구체적으로는 코드의 유지보수성, 확장성, 그리고 재사용성을 향상시키기 위해 설계 단계에서부터 코드 구조를 체계적으로 잡는 것을 목표로 한다. 복잡한 시스템을 개발할 때, 잘 정의된 패..

웹 기반 다이어그램 제작 도구 draw.io (diagrams.net) 소개 및 활용 방법

1. draw.io란?  draw.io는 웹 기반의 다이어그램 제작 도구로, 다양한 다이어그램을 쉽게 만들 수 있는 무료 소프트웨어입니다. 브라우저에서 직접 실행되며, 별도의 프로그램을 설치하지 않고도 사용할 수 있습니다. 또한 Google Drive, OneDrive, Dropbox와 같은 클라우드 스토리지와 연동하여 작업을 저장하고 공유할 수 있습니다. 이를 통해 팀원들과 협업하면서 도면을 실시간으로 수정할 수도 있습니다. 2. 주요 기능  draw.io는 강력한 기능을 갖춘 다이어그램 제작 도구로, 다양한 유형의 다이어그램을 만들 수 있습니다. 주요 기능은 다음과 같습니다.다양한 다이어그램 템플릿 제공 (ERD, UML, 네트워크 다이어그램, 플로우 차트, 조직도 등)드래그 앤 드롭 방식으로 간편한..

간이 기능 점수법(SFPA: Simple Function Point Analysis)

1. 개요  간이 기능 점수법(SFPA, Simple Function Point Analysis)은 기능 점수(Function Point, FP) 측정 방법 중 하나로, 국제 기능 점수 사용자 그룹(IFPUG, International Function Point Users Group)에서 정의한 표준 기능 점수법(IFPUG FP)에 비해 간소화된 방식입니다. 이는 소프트웨어의 크기를 정량적으로 측정하기 위한 기법으로, 특히 기능 위주의 분석을 통해 개발 및 유지보수의 복잡도를 평가하는 데 사용됩니다.   전통적인 기능 점수법은 측정 과정이 복잡하고 많은 시간이 소요될 수 있습니다. 이에 반해 간이 기능 점수법은 보다 빠르고 단순하게 기능 점수를 산출할 수 있도록 설계되었으며, 일반적으로 소프트웨어 프로젝..

MVC(Model-View-Controller) 패턴의 장점

MVC 패턴은 소프트웨어 개발에서 가장 널리 사용되는 아키텍처 패턴 중 하나로, 특히 웹 애플리케이션과 데스크톱 애플리케이션 개발에서 많이 활용됩니다. 이 패턴은 애플리케이션을 Model(모델), View(뷰), Controller(컨트롤러) 세 가지 구성 요소로 분리하여 관심사의 분리(Separation of Concerns)를 실현하고 유지보수성과 확장성을 극대화하는 데 초점을 맞춥니다. 이러한 구조적 특성 덕분에 개발자는 더 효율적으로 코드를 관리할 수 있으며, 유지보수와 확장이 쉬운 애플리케이션을 개발할 수 있습니다. 아래에서 MVC 패턴이 가지는 주요 장점들을 상세히 설명하겠습니다. 1. 관심사의 분리(Separation of Concerns)MVC 패턴의 가장 큰 장점 중 하나는 관심사(Con..