개발 진행 보고서 (소프트웨어 공학 분석 및 개발 과정)

깃허브 주소: https://github.com/y8ncastle/Fresh_Pork



소프트웨어 공학 분석 및 개발 과정


2020.01.31 (1일째) - 프로젝트 계획

  • 소프트웨어 공학 분석

2020.02.01 (2일째)

  • 소프트웨어 공학 분석

2020.02.02 (3일째)

  • 소프트웨어 공학 분석

2020.02.05 (4일째)

  • 소프트웨어 공학 분석

2020.02.06 (5일째) - 프로젝트 개발 전 사전 학습

  • 소프트웨어 공학 분석
  • 개발 계획 수립
  • Node.js로 첫 웹페이지 만들기

2020.02.07 (6일째)

  • MongoDB 설치
  • MongoDB와 Node.js 연동 테스트

2020.02.12 (7일째)

  • 자바스크립트 기초 학습 (1) - 자바스크립트 개요
  • 자바스크립트 예제 소스코드 분석
  • 로그인 화면 예외처리 테스트

2020.02.13 (8일째)

  • 자바스크립트 기초 학습 (2) - 변수, 연산자, 조건문, 함수
  • 생활코딩 Web1 - HTML & Internet 학습
    • 개요
    • 프로젝트 동기
    • 기획
    • 코딩과 HTML
    • HTML 코딩 실습 환경 준비
    • 기본 문법 - 태그
    • 혁명적인 변화
    • 통계에 기반한 학습
    • 줄 바꿈
    • HTML이 중요한 이유
    • 최후의 문법 속성과 img
    • 부모 자식과 목록
    • 문서의 구조와 슈퍼스타들
    • HTML 태그의 제왕
    • 웹사이트 완성
    • 원시 웹
    • 인터넷을 여는 열쇠: 서버와 클라이언트
    • 웹호스팅 (Github pages)
    • 웹서버 운영하기

2020.02.18 (9일째)

  • 생활코딩 Web2 - CSS 학습
    • 개요
    • CSS가 등장하기 전의 상황
    • CSS의 등장
    • CSS의 기본 문법
    • 혁명적 변화
    • CSS 속성을 스스로 알아내기
    • CSS 선택자의 기본
    • 박스 모델
    • 박스 모델 써먹기
    • 그리드 소개

2020.02.25 (10일째)

  • 생활코딩 Web2 - CSS 학습 (2)

    • 그리드 써먹기
    • 반응형 디자인과 미디어 쿼리 소개
    • 미디어 쿼리 써먹기
    • CSS 코드의 재사용
  • 이더리움 네트워크 구축 테스트

    • Go Ethereum (Geth) 설치 실습
    • 이더리움 프라이빗 네트워크 구축 실습
    • 이더리움 스마트 컨트랙트를 이용한 트랜잭션 실습

2020.02.26 (11일째)

  • 생활코딩 Web2 - JavaScript 학습
    • 개요
    • 수업의 목적
    • HTML과 JavaScript의 만남 (script 태그)
    • HTML과 JavaScript의 만남 2 (이벤트)
    • HTML과 JavaScript의 만남 3 (콘솔)
    • 데이터 타입 - 문자열과 숫자
    • 변수와 대입 연산자
    • 웹브라우저 제어
    • 제어할 태그 선택하기
    • 프로그램, 프로그래밍, 프로그래머
    • 조건문 예고
    • 비교 연산자와 Boolean 데이터 타입

2020.03.11 (12일째)

  • 생활코딩 Web2 - JavaScript 학습
    • 조건문
    • 조건문의 활용
    • 리팩토리 중복의 제거
    • 반복문 예고
    • 배열 (일부)

2020.03.12 (13일째)

  • 생활코딩 Web2 - JavaScript 학습
    • 배열 (일부)
    • 반복문

2020.03.13 (14일째)

  • 생활코딩 Web2 - JavaScript 학습
    • 배열과 반복문
    • 배열과 반복문의 활용
    • 함수 예고

2020.04.03 (15일째) - 프로젝트 개발 시작

  • package.json, 기본 모듈 생성
  • body-parser, ejs, express, mongoose, nodemon 설치
  • view engine - Login.ejs, Register.ejs, app.js 작성

2020.04.06 (16일째)

  • 회원가입 페이지 내용 일부 수정, 예외처리
  • nodemon 로그 표시 수정
  • app.js 데이터베이스 스키마 설정
  • ejs에서의 alert 사용법 연구

2020.04.07 (17일째)

  • 회원가입 페이지 일부 수정
  • user 데이터베이스 스키마 수정
  • ejs 구조체 형태 예외처리 연구

2020.04.09 (18일째)

  • 회원가입 페이지 내용 일부 수정
  • ejs DB save 연구
  • Register-app.js MongoDB 연동
  • Login-app.js MongoDB 연동

2020.04.10 (19일째)

  • app.js 로그 및 주석 추가 정리
  • Manager.ejs, Driver.ejs view 추가
  • 데이터베이스 스키마 추가 (orderSchema, driverSchema)
  • app.js controller 수정 및 추가
  • 로그인, 회원가입 시스템 전체 수정 완료
  • 주문서 등록 화면 기본 구성 함수 연결

2020.04.13 (20일째)

  • Manager.ejs 사원번호 확인 오류 수정
  • DeliveryStatus.ejs, DeliveryStart.ejs, DeliveryDone.ejs, DriverBack.ejs 추가
  • 운전기사 버튼 전체 연동
  • 콘솔 로그 중복 표시 오류 수정

2020.04.14 (21일째)

  • 테스트 케이스 description 작성
  • 일부 중복 로그 기록 방식 수정
  • 회원가입 사원번호 중복 방지 수정

2020.04.15 (22일째) - 기본 웹, DB 파트 종료

  • 주문서 등록 화면 데이터 DB 연동
  • option select를 위한 map 메소드 사용법 연구
  • textarea 적용 방식 연구
  • 화면별 사원번호 연동 표시
  • user, order, driver DB 전체 연동
  • 관리자, 운전 기사 화면 전체 구현
  • DB 스키마 일부 수정

2020.04.16 (23일째) - 이더리움 파트 시작

  • Geth 설치 및 계정 생성
  • 이더리움 제네시스 블록 생성 및 노드 실행
  • 이더리움 트랜잭션 발행 테스트
  • 마이닝 테스트
  • 프라이빗 네트워크 구축 시작
  • Remix, 스마트 컨트랙트 실습
  • web3.js 설치
  • web3를 이용한 테스트 노드 구성
  • web3를 이용한 계정 잔액, 블록 개수, 블록 조회
  • web3를 이용한 트랜잭션 생성, 조회

2020.04.22 (24일째) - 이더리움 기초 실습 완료

  • web3를 이용한 데이터 조회
  • web3 버전 실행 오류 해결
  • web3를 이용한 데이터 발생
  • 스마트 컨트랙트 구현 방식 연구 시작

2020.05.14 (25일째) - 프로젝트 프로토타입 개발 종료

  • 기존 기능 Mac OS 연동 작업
  • Magne 연구원 스마트 컨트랙트 구현 보조

개발 진행 보고서 (소프트웨어 공학 분석 및 개발 과정)

https://y8ncastle.world/2020/02/14/personal-project/ethereum/fresh-pork-dev-report/

Author

Alec J

Posted on

2020-02-14

Updated on

2021-02-09

Licensed under