목록분류 전체보기 (21)
학습 기록 블로그
폭포수 모형 =>폭포수 모형은 폭포에서 한번 떨어진 물은 거슬러 올라갈 수 없듯이 소프트웨어 개발도 이전 단계로 돌아갈 수 없다는 전제하에 각 단계를 확실히 매듭짓고 그 결과를 철저하게 검토하여 승인 과정을 거친 후에 다음 단계를 진행하는 개발 방법론이다. 소프트웨어 공학에서 가장 오래되고 가장 폭넓게 사용된 생명 주기 모형으로 고전적 생명 주기 모형이라고도 한다. 소프트웨어 개발 과정의 한 단계가 끝나야만 다음 단계로 넘어갈 수 있는 선형 순차적 모형 모형 성공 사례가 많다. 제품의 일부가 될 매뉴얼을 작성해야 한다. 각 단계가 끝난 후에는 다음 단계를 수행하기 위한 결과물이 명확하게 산출되어야 한다. 두 개 이상의 과정이 병행하여 수행되지 않는다. 타당성 검토 => 계획 => 요구 분석 => 설계 =..
소프트웨어 공학의 개념 소프트웨어 공학은 소프트웨어의 위기를 극복하기 위한 방안으로 연구된 학문으로 여러 방법론과 도구, 관리 기법들을 통하여 소프트웨어의 품질과 생산성을 향상시킬 목적으로 합니다. 소프트웨어 공학의 정의 1. IEEE의 소프트웨어 공학 표준 용어사전 => 소프트웨어의 개발, 운용, 유지보수, 폐기 처분에 대한 체계적인 접근 방안 2. Fairley => 지정된 비용과 기간 내에 소프트웨어를 체계적으로 생산하고 유지보수하는 데 관련된 기술적이고 관리적인 원리 3. Boehm(보헴) => 과학적인 지식을 소프트웨어 설계와 제작에 응용하는 것이며 이를 개발, 운용, 유지보수하는 데 필요한 문서 작성 과정 소프트웨어 공학의 기본원칙 현대적인 프로그래밍 기술을 계속적으로 적용해야 한다. 개발된 ..

이번 Docker 실습에선 Docker Compose를 사용해서 워드프레스 서비스를 실행시켜 볼겁니다. 1. Docker Compose란? Docker Compose는 여러 개의 도커 컨테이너를 정의하고 실행하는 도구입니다. 컨테이너를 실행하는 데 필요한 모든 구성 요소를 하나의 파일에 정의할 수 있어서 개발자 및 운영자가 간단하고 일관된 방식으로 애플리케이션을 배포 및 실행할 수 있습니다. Docker Compose를 사용하면 여러 컨테이너를 정의하고 실행할 때 필요한 다양한 구성 요소를 쉽게 관리할 수 있습니다. 예를 들어, 여러 컨테이너를 실행하는 데 필요한 이미지, 환경 변수, 포트 매핑, 네트워크 설정 등을 정의할 수 있습니다. 또한 Docker Compose를 사용하면 여러 컨테이너를 실행하는..

Docker의 이미지 구동 방식에는 두 가지가 있는데, 원하는 이미지를 Docker Hub로 부터 pull해온 뒤에 run 시키거나, Dockerfile을 만들어 build 시킨 후 run 시키는 방법이 있습니다. 하나씩 실습해 보겠습니다. 1. Docker Hub로부터 이미지 pull 해온 뒤에 run 시키기 저는 이미 내려받은 상태이기 때문에 따로 다운로드를 진행하지 않지만 처음 진행하면 다운을 진행합니다. 지정한 로컬 포트로 접근해 주면 컨테이너 내부의 이미지 default html이 출력됩니다. 만약 이 index.html을 로컬 내에 다른 html로 출력하고 싶다면 docker run --name [컨테이너이름] -p [Host포트번호]:80 -v ~/[Host파일시스템]:[컨테이너파일시스템] ..

얼마 전에 Fork해온 Repository에 Pull Request 해둔 내용이 merge 되기도 했고, 원본 Repository에 추가된 내용을 사용해야 해서 Fork 한 Repository를 최신화시켜보기로 했다. 1. 원본 Repository remote추가하기 처음 Fork해온 Repository을 clone 하면 origin remote만 있을 건데 여기에 동기화해오고 싶은 원본 Repository를 upstream이라는 이름으로 추가해 줍니다. $ git remote add upstream [원본주소] 추가하면 위에처럼 remote -v로 확인이 가능하다. 2. 원본 Repository로부터 최신 버전 가져오기 fetch명령어로 위에 등록해돈 upstream으로부터 최신 버전을 받아옵니다. 3..

이번글은 제가 IntelliyJ와 Spring Boot를 사용해 보면서 어떤 식으로 프로젝트를 세팅하고 진행했는지 정리해 보는 글입니다. 저는 지금까지 Eclipse에서 Spring Legacy Project로만 학습과 프로젝트를 진행해오다가, 현업에서는 IntelliyJ와 Spring Boot를 더 많이 사용한다고 해서 이번에 학습 겸 진행할 프로젝트부터 바로 공부하고 적용해 보기로 했습니다. Spring Boot는 기본 Spring 프로젝트와 달리 개발 시작에 있어 필요한 설정들(지옥의 XML설정)과 라이브러리들의 버전 관리가 자동화되어 있고, 내장 웹서버를 제공하기 때문에 톰캣 서버를 따로 다운로드할 필요가 없다는 장점이 있습니다. 때문에 현재 Java 개발시장에선 최고로 인기있는 프레임워크로 꼽히..

이번 글은 도커와 DBeaver를 사용하니 참고해주세요. 1. MySQL 이미지 다운로드 $ docker pull mysql 위의 명령어로 docker hub에서 MySQL이미지를 다운로드 해줍니다. => 버전을 지정하지 않으면 자동으로 최신버전을 다운로드 합니다. 만약 버전을 따로 지정하고 싶다면 아래와 같이 태그에 버전을 지정해주면 됩니다. $ docker pull mysql:8.0.22 이미지 다운로드가 완료되면 images명령어로 잘받아졌는지 확인합니다. $ docker images 2. MySQL Docker 컨테이너 생성 $ docker run --name mysql-container -e MYSQL_ROOT_PASSWORD= -d -p 3306:3306 mysql:latest 만약 사용중인 ..
EMPLOYEE_ACCOUNT bank_name account_num account_id class ratio empl_id empl_name card_id 위와 같은 컬럼(=attribute =요소)이 있는 테이블이 있다고 가정하고 시작해 보자 Super key - table에서 tuple(행)들을 unique 하게 식별할 수 있는 attributes set(요소들의 집합) => 위의 talbe에서 각 tuple(행)들을 unique 하게 식별할 수 있는 키는 {account_id}, {bank_name, account_num} 이렇게 두 가지인데 Super key는 이 키들의 집합 즉, 이렇게 tuple(행)들을 unique 하게 식별할 수 있는 하나 또는 그 이상의 집합을 Super key라고 한다..

원격 저장소를 내려받기 위해 git clone git@github.com:~~ 형식으로 실행하던 중 Permission denied (publickey) 에러가 나면서 clone이 되지 않았다. 에러 해결 방법을 찾아보니 git clone https://github.com/~~.git 형식으로 바꿔서 실행하면 된다고 한다. 성공... 왜 주소를 변경하니 받아지는 건지 궁금해지기 시작해서 더 찾아보니 두 클론 방식의 차이는 SSH 키의 사용 여부라고 한다. git clone git@github.com:~~ 방식은 SSH프로토콜을 사용하는 방식으로 gitHub에 SSH 키를 생성해두지 않으면 위와 같은 오류가 발생한다. 정리해 보면 Permission denied (publickey) 오류는 SSH 키를 사..

교육활동에 참여하면서 하게된 작은 과제진행중에 만난 에러인데, 만난 김에 한번 정리해두려 한다. 주어진 과제를 모두 해결하고 이제 지정된 리포지토리에 push만 해주면 되는 상황이었다. 잠깐의 뇌정지 후에 찬찬히 읽어보았다. 권한이 없어서 거부당했단다. 사실 조금만 검색해 보면 간단하게 해결이 가능한 오류인데 403 오류는 해당 리포지토리 주소에 접근 권한이 없을 경우 발생한다. 때문에 권한만 부여해 주면 해결가능한 오류이다. git remote set-url origin https://YOURUSERNAME@github.com/USERNAME/REPOSITORY.git 재인증을 위해 Remote URL을 변경해주어야 하는데 깃배쉬에 위와 같은 명령어를 통해 해결할 수 있다. 당연히 타인의 리포지토리에 ..