본문 바로가기

[Requirements Engineering] #3 Feasibility Feasibility StudyWhy a Feasibility Study?Feasibility(실행가능성)는 시스템 개발 프로젝트를 할 수 있는지 없는지는 판단하기 위함입니다. 프로젝트 시작 전 이 프로젝트를 우리가 할 수 있는가? 다른 가능한 대안이 있는가?에 대해 질문을 던지는 것입니다. 위 질문을 답하기 위해 충분한 정보를 수집하여 알고있어야 합니다. Feasibility Study 이후에 이 프로젝트의 START/STOP 여부를 결정하게 됩니..
[Requirements Engineering] #1 Overview 시스템 아키텍쳐에서 필수적인 것이 무엇을 설계할 것인가 입니다. 막연히 뭘 설계 개발해야할지 모르는 상황에서 컴퓨터 앞에 앉는 행위는 어리석은 행동입니다. 클라이언트가 어떠한 것을 요청하는지 파악해야 설계를 할 수 있습니다. 아래는 많이 보셨을 그림입니다.고객이 설명한 것을 시스템에 관련된 이해관계자들이 이해하고 만들어나가는 과정입니다. 실제로 고객이 원하는건 나무에 타이어 하나 매달아 그네를 쓰고자 했는데 결과물은 전혀 다른 것이 나왔습니..
[Design Pattern] Adapter Patter Adapter Pattern은 wrapper라고도 많이 불립니다. 어댑터라는 용어는 많이 들어보셨을 겁니다. '돼지코' 를 크게 예로 들 수 있을텐데요. 위키피디아에 설명된 정의는 아래와 같습니다.어댑터 패턴(Adapter pattern)은 클래스의 인터페이스를 사용자가 기대하는 다른 인터페이스로 변환하는 패턴으로, 호환성이 없는 인터페이스 때문에 함께 동작할 수 없는 클래스들이 함께 작동하도록 해준다.Adapter 패턴은 기존에 ..
[Design Pattern] Decorator Pattern Decorator Pattern의 SOLID의 OCP(Open Closed Principle)을 원칙으로 하는 Pattern입니다. Decorator Pattern은 예시로 바로 살펴보도록 하겠습니다.아래 UML을 보시면 음료를 상속받아 각 커피를 구현하고 있는 형태입니다. 이 구조를 Decorator Pattern이 접목되며 변화하는 과정을 살펴보려합니다. Beverage 추상클래스를 상속받아 각 커피 클래스 만들었습니다. 이제 판매만 하..
[Design Pattern] Mediator Pattern Mediator Pattern의 목적은 명확합니다. 중간 관리자를 하나두어 문제를 해결하겠다는 것입니다.서로 커뮤니케이션하고자하는 객체들이 있을 때 상호작용하려는 객체들의 집합의 구조가 복잡할 때 복잡성을 해소하면서 커뮤니케이션이 가능하도록 하는 목적의 패턴입니다. 매우 복잡한 커뮤니케이션 관계가 존재할 때 중앙집중적인 관리가 필요할 때 사용된다고 보시면 됩니다.이러한 Mediator Pattern의 공항 관제탑을 생각하시면 좀 더 이해가 ..