GithubHelp home page GithubHelp logo

swpp18-team1's People

Contributors

donguks avatar hwan517h1 avatar kyoungwan avatar sanha avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

hwan517h1

swpp18-team1's Issues

중간발표 피드백

교수님 : 경품 추천이라던가, 다른 웹 페이지를 같이 QR코드에 연동할 수 있지 않을까.? 웹이아니라 앱으로 개발하는것도 좋을 것같다.

학생1 : 현재 room_number가 primary key인데 그 값이 아니라 시간마다 바뀌는 값을 이용하는것이 좋을 것 같다.
학생2 :

Code Review by Team 10

Front 에서 channel.component.ts 에서 switch - case 에서 case 가 2개밖에 없는 것을 확인하였습니다. case 가 2개 이하라면 if 문을 쓰는 편이 낫지 않을까 합니다.
access.component.ts 와 channel.component.ts 에서 아직 작성 중인 것으로 추정되는 코드들을 확인하였습니다. (boolean 함수의 return 값이 없는 등의 코드들입니다.) 만약 아직 작성 중인 코드를 commit 한 것이라면, 별도의 표시가 있으면 혼동의 여지가 줄어들 것 같습니다.

코드 잘 보았습니다.

11/08 조교님 피드백

TA's Feedback

sprint 3.

총평 : 테스트 커버리지를 올려라

  • 기능적인 부분은 많이 된 편이다.
  • Design 문서도 좋았다.
  • Indirect Layer를 만들어서 QR을 매시간마다 redirecting하게 하는 설계가 좋다.
    • 중간발표때 이를 구현/강조해서 발표하면 좋을것이다.
  • 중간발표가 꽤 많은 비중(스프린트 총합보다)을 차지하므로 잘해야할듯
  • 중간발표때 어디까지 할 수 있나?
    • 회원가입, DM등 기능적인부분을 완성
    • Deploy하여 사람들이 그자리에서 참여해 볼 수 있도록
  • 피쳐들을 추가하기 좋은 구조이다.
    • 100명 이상의 유저리스트를 보여줄때 lazy evaluation을 통해 천천히 로딩하기
    • 캐시에 저장하기 등

TODO

  • sprint마다 태그 붙이기
  • progress report 작성
  • angular 테스트 작성

Design and Planning

참고 자료
https://github.com/swsnu/swppfall2018/blob/master/project/design-and-planning-examples/Design_and_Planning_example.pdf

To Do List

  • 1.System Architecture : MVC @sdu6342
  • 2.Model : ER-diagram(DB, Class) @sdu6342
  • 3.View : all page & details @KyoungWan
  • 4.Controller : data flow (client - server) using MVC @KyoungWan
  • Design Detail
    • 5.Frontend Components : Component(button, input etc), Subcomponent, Service, etc @hwan517h1
    • 6.Frontend Logics : 앞에서 사용된 로직들을 구체적으로 설명 @hwan517h1
    • 7.Frontend Relations : 어떤 버튼을 눌러서 뷰가 이동하는지 혹은 어떤 Service를 어떤 Component가 사용하는지 @hwan517h1
    • 8.API 명세서 : ResetFul + Websocket(새로운 Protocol 정의 필수) @sdu6342
  • 위의 것들을 작성한 후, 밑의 2개는 같이 해야할 듯!
  • Implementation Plan : 스프린트 별로 할 일들 (#5 Spec문서에도 포함되어야 한다.)
  • Testing Plan

Self Code Review

  1. Design & Planning 문서를 보면 User list 구현이 필요한데, userService에서 제대로 구현되어있지 않습니다. back에서 url 추가가 필요해보입니다.
  2. 단순히 JSON dictionary 형태로 보내는 것보다 serializer를 이용하는 것이 좋은 것 같습니다.

10/18 조교님 피드백

TA's Feedback

1. Project Requirements and Specification

총평 : 문서를 좀 더 보강해야한다!

  • 디테일이 부족함 : 유저 스토리가 너무 짧다. 가정들이 빠져있고, 그 가정들을 어떻게 확인 할 수 있을지. 예외와 Testing도 첨가해야할 듯 @sdu6342

  • 스프린트마다 무엇을 해야할 지 Requirements 문서에 들어가야한다. @KyoungWan

  • 문서에 오타가 조금 있다. @hwan517h1

  • 유저스토리를 둘로 나눴는데 왜 나눴는가에 대한 이유가 필요하다. @sdu6342 나누지않는 것으로 변경

  • QR 코드가 Reader가 아니라 주소를 가르킨다는 것을 적어야한다(디자인 문서에 할 것).

  • UI 설명을 추가하도록 하고, 더 명확한 그림이 필요하다(모든 라우팅 + 예외 처리).

  • 유저 중 1:1로 자동 매칭해주는 앱을 조사해보면 좋겠다. @hwan517h1

2. Our Project And Design and Planning Document

  • Class보다는 Behavior(어떤 요청을 주고 받는지)

  • Web Socket의 요청과 관련한 프로토콜 문서가 필요할 수도 있겠다. 예외 핸들링이 HTTP같이 되어있는게 없어서 해야한다.

  • typescript에서 any로 받는 type을 새로 명명하면 문제를 해결할 수 있다. 함수가 조금 멍청해지기는 하지만

  • 회원가입이 아닌 중요한 기능들부터 먼저 조사 및 실습 해보는 것은 좋았다.

Interal Server Error

회원가입을 할 때 중복된 아이디로 할 때 500 Internal Server Error가 나타납니다.

11/12 조교님 피드백

일시: 11/12 22시 무렵
장소: 서울대입구역

발표 방식 관련

  1. 주요 구현 사항인 JWT 말하기
  2. 발표에 앞서 전체적인 흐름 말할 것(View와 함께)
  3. 시연

스펙 진행 관련

  1. JWT 이용하지 않는 것이 좋을 수 있음
  2. QR Code 지속적으로 변동됨, 권한 없이 access 하는 users에 대한 처리 필요, 일정 시간 후 Channel 폭파 등 고려 사항이 많은 편이므로 계획 잘 세울 것
  3. 어떤 것을 적용 했을 때와 하지 않았을 때를 비교한 후, 특정 선택에 대하여 정당화할 것
  4. CSS는 Frontend Testing에 유리한 Material Design CSS Framework를 추천함

추가 스펙 관련

  1. QR Code에 관련된 Django 미들웨어 구현
  2. 크롬 접속 시 자동으로 Push 울리기(windows.navigator.vibrate)

Design 문서 수정하기

  • 아키텍쳐 스니펫 모델 수정

  • 프론트 컴포넌트 문서 스니펫 수정

  • 문서내 스니펫 단어 수정

Code Review by Team 5

Code Review by Team 5

Repository

  • Please configure CI properly
  • Coverage report tool such as coveralls or codecov is recommended

Frontend

Lint Error

ERROR: /home/thomas/files/swpp18-team1/front/src/app/access/access.component.ts[17, 17]: Type string trivially inferred from a string literal, remove type annotation
ERROR: /home/thomas/files/swpp18-team1/front/src/app/access/access.component.ts[17, 26]: " should be '
ERROR: /home/thomas/files/swpp18-team1/front/src/app/access/access.component.ts[29, 40]: Missing semicolon

...

ERROR: /home/thomas/files/swpp18-team1/front/src/service/user.service.ts[95, 34]: " should be '
ERROR: /home/thomas/files/swpp18-team1/front/src/service/user.service.ts[100, 34]: " should be '
ERROR: /home/thomas/files/swpp18-team1/front/src/service/user.service.ts[120, 6]: Missing semicolon

Backend

Security

@csrf_exempt
def channel(request):
    ...

Please prevent CSRF attacks.

Lint Error

back/routing.py:11:13: E123 closing bracket does not match indentation of opening bracket's line
back/routing.py:12:9: E123 closing bracket does not match indentation of opening bracket's line
back/routing.py:13:5: E123 closing bracket does not match indentation of opening bracket's line

...

chat/consumers.py:63:121: E501 line too long (123 > 120 characters)
chat/consumers.py:78:5: E303 too many blank lines (2)
chat/consumers.py:79:5: E301 expected 1 blank line, found 0

Performance

Link

username = json.loads(body)['username']
password = json.loads(body)['password']

json.loads called twice with the same argument.

team7 bug report입니당

team 1:

-등록할 때 password가 너무 드러나는 것 같다고 합니다.

-이미 등록된 계정과 중복되는 계정을 새로 등록할 경우 회원가입이 곤란한지, 새로 가입이 된 것인지 notification이 없어서 불편한 면이 있다고 합니다.

-새로운 글이 추가될 때 맨 밑으로 append가 되어서 확인하기 불편한 면이 있다고 합니다.

고생하셨습니다 감사합니다!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.