소프트웨어공학 3

[소프트웨어공학] CRC(Class, Responsibility, Collaboration) card

CRC 카드 => Class, Responsibility, Collaboration 이 세 가지 주요 요소를 각 카드에 기록하여 클래스의 역할, 그리고 다른 클래스와의 관계를 명확하게 합니다. 사용 사례 분석을 통한 후보 추출:프로젝트 팀은 사용 사례(use case) 문서나 설명을 기반으로 텍스트 분석을 수행합니다. 이 과정에서 시스템이 수행해야 할 작업, 기능, 요구 사항 등을 텍스트에서 식별합니다. 이를 통해 초기 후보(candidate) 클래스, 기능, 역할 등이 추출됩니다. 이 단계에서 주목하는 것은 시스템이 사용자나 다른 시스템과 어떻게 상호작용하는지에 대한 설명입니다.브레인스토밍을 통한 추가 후보 추출:팀원들이 함께 모여 브레인스토밍을 진행합니다. 이 과정에서 각자의 아이디어를 공유하고, 토..

[소프트웨어공학] 클래스 다이어그램 (Class Diagram)

클래스 다이어그램은 시스템 내의 클래스들 사이의 관계를 시각적으로 표현한 것입니다. 클래스 다이어그램을 통해 개발자는 클래스 간의 상속, 연관, 의존 등의 관계를 명확하게 이해하며, 전체 시스템의 구조를 파악할 수 있습니다. - 기본 구성 요소 1. 클래스 : 사각형으로 표현되며 보통 세 부분으로 나뉩니다. 클래스 이름 ( = 필수적으로 기재해야) 속성 : 클래스가 가진 정보나 데이터 메서드 : 클래스가 수행하는 행동이나 기능 2. 관계 : 클래스들 사이의 연결을 나타내며, 주로 화살표나 선으로 표현됩니다. - 상속 : 화살표가 상위 클래스를 가리키며, 빈 화살표를 사용합니다. - 연관 : 두 클래스가 서로 연결되어 있음을 나타내며, 일반적으로 선으로 표현됩니다. 양방향 또는 단방향일 수 있습니다. (양..

[소프트웨어공학] 객체지향 언어 특징

객체 지향 프로그래밍의 4가지 특징은 각각 캡슐화, 상속, 추상화, 다형성입니다. 1. 캡슐화 ( Encapsulation ) : 실제 구현 내용(필드,메소드) 일부를 외부에 숨기며 외부에서 직접 접근할 수 없도록 제한하는 것. 객체의 세부 구현을 숨기고, 사용자에게는 필요한 인터페이스만을 제공합니다. 우리는 알약 내부에 정확히 어떤 성분들이 들어있는지 알 수 없습니다. 그러나 이 알약을 먹으면 몸이 나아질 거라는 , 알약의 용도는 알고 있죠. 굳이 알약 내부에 든 모든 성분을 알지 않아도 우리는 용도를 알기 때문에 자연스럽게 사용하게 됩니다. 알약 입장에서는 굳이 자신이 어떤 성분들을 함유했는지 하나하나 꺼내보이지 않아도 되게 되는 것이겠고요. 캡슐 안의 내용물이 외부로부터 오염될 걱정 없이 안전하게 ..