분류 전체보기 1097

CASE (Computer-Aided Software Engineering)

소프트웨어 개발 과정의 일부 또는 전체를 자동화하기 위한 도구이다. 소프트웨어 공학의 자동화를 의미하며 소프트웨어 공학작업을 자동화한 소프트웨어 패키지이다. 표준화된 개발 환경 구축 및 문서 자동화 기능을 제공한다 작업 과정 및 데이터 공유를 통해 작업자간 커뮤니케이션을 증대한다. 1980년대에 소개되었으며, 1990년대부터 자주 사용되었습니다.

소프트웨어 개발의 설계 단계 구분 { 상위 설계 vs 하위 설계 }

Intro 소프트웨어 개발의 설계 단계는 크게 상위 설계와 하위 설계로 구분할 수 있다. 상위 설계 아키텍처 설계, 예비 설계 라고도 부른다. 시스템의 전체적인 구조를 설계하게 된다. 구조, DB, 인터페이스 설계가 해당된다. 하위 설계 모듈 설계, 상세 설계 라고도 부른다. 시스템의 내부 구조 및 행위를 설계하게 된다. 컴포넌트, 자료 구조, 알고리즘 설계가 해당된다.

4. 서버 프로그램 구현_63 소프트웨어 아키텍처

소프트웨어 아키텍처 소프트웨어 아키텍처 ? 소프트웨어 아키텍처 설계는 의뢰자의 요구에 따라 어떻게 전체적인 틀을 짤지 대략적인 것을 정하는 과정이다. 소프트웨어 아키텍처는 소프트웨어의 골격이 되는 기본 구조로, 기능적/비기능적 요구사항이 반영되어서 이해관계자들의 의사소통 도구가 된다. 어려운 말로 하면 '소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체' 애플리케이션의 분할 방법과 분할된 모듈에 할당될 기능, 모듈 간의 인터페이스 등을 결정한다. 소프트웨어 아키텍처 설계의 기본 원리에는 모듈화, 추상화, 단계적 분해, 정보은닉이 있다. 모듈화 Modularity 모듈 ? 모듈이라는 것은 전체 프로그램의 기능 중 특정 기능을 처리할 수 있는 소스 코드 한 묶음을 의미한다. 모듈화..

UML - 다이어그램

UML ( 사물, 관계, 다이어그램 ) 구성 중 하나이다. 다이어그램은 시스템을 가시화한 뷰(view)를 제공함으로써 의사소통에 도움이 됨. 정적 모델링에서는 구조적 다이어그램을 사용함 동적 모델링에서는 행위 다이어그램 사용함 구조적 다이어그램 종류(정적 모델링) 클래스 다이어그램 객체 다이어그램 컴포넌트 다이어그램 배치 다이어그램 복합체 구조 다이어그램 패키지 다이어그램 행위 다이어그램 종류 유스케이스 다이어그램 순차 다이어그램 커뮤니케이션 다이어그램 상태 다이어그램 활동 다이어그램 상호작용 개요 다이어그램 타이밍 다이어그램 스테레오타입 Sterotype 스테레오 타입은 UML 의 기본 기능 외에 추가적인 기능을 표현한다. 길러멧 Guilemet 이라고 부르는 > 사이에 표현한다.

4. 서버 프로그램 구현_71 디자인 패턴

디자인 패턴 Design Pattern 디자인 패턴? 아키텍처 패턴이 건물의 큰 외각을 잡는 가이드라인이었다면, 디자인 패턴은 건물의 각 방들의 가이드라인이라고 이해할 수 있다. 모듈 간의 관계 및 인터페이스를 설계할 때 참조할 수 있는 해결 방식 또는 예제를 의미한다. GOF 의 디자인 패턴은 생성패턴, 구조패턴, 행위패턴으로 구분된다. 생성 패턴 Creational Pattern 생성 패턴? GOF 의 디자인 패턴 중 하나이다. 클래스나 객체의 생성과 참조 과정에서 발생할 수 있는 문제들과 해결 사례, 샘플 코드 등으로 구성되어 있다. 추상 팩토리 Abstract Factory 빌더 Builder 팩토리 메소드 Factory Method 프로토타입 Prototype 싱글톤 Singleton 구조 패턴..

4. 서버 프로그램 구현_66 객체지향 분석 및 설계

객체지향 분석 및 설계 객체지향 분석 및 설계? 객체지향 분석 및 설계는 소프트웨어 개발 생명주기의 요구사항 분석 및 설계 과정을 객체지향에 맞게 구성한 것을 의미합니다. 객체지향 분석은 사용자 요구사항과 관련한 객체, 속성, 연산, 관계 등을 정의하여 모델링 한다. 객체지향 분석 방법론 Coad 와 Yourdon 방법 : E-R 다이어그램을 사용하여 객체의 행위를 모델링함. Runbaugh 방법 Booch 방법 Jacobson 방법 Wirfs-Brock 방법 럼바우(Runbaugh)의 분석 기법 럼바우의 분석 기법은 모든 소프트웨어 구성 요소를 그래픽 표기법을 이용하여 모델링 하는 기법이다. 객체 모델링 기법이므로 OMT; Object-Modeling Technique 이라고 한다. 분석 활동은 '객체..

동기(Sync)와 비동기(Async) { Promise }

Promise 객체를 사용하면 비동기 함수를 깔끔하게 처리할 수 있다. 무슨 말일까? 함수가 호출되어 서버에 요청하는 과정과 이후 처리하는 과정을 분리할 수 있게 된다는 것을 의미한다. 우선 왜 Promise 를 사용하게 되었는지 아래 예제를 통해 이해하고 넘어가자. 주석만 읽어도 된다. const result = true; const sec = 3; setTimeout(function() { // callback 함수 if(result) { console.log('성공'); } else { console.error('실패'); } }, sec * 1000); // setTimeout() 과 같은 비동기 함수의 결과를 콜백함수로 바로 처리하면, // 콜백 함수의 내용이 길어질수록 가독성이 떨어지게 된다...