Web开发(2017)

大作业完成截止时间:2017/12/15。提前至2017/11/30前完成者可以在平时分中加20分(平时分加到100分止)。平时分占总评成绩的50%,加的20分折合总评成绩10分。

《基于Angular的Web开发》在线阅读链接:(更新至第8章)
(1) http://www.ligang.name/web/angular
(2) https://lgwain.gitbooks.io/angular

十一前上课用的课件下载链接:
(1) http://ligang.name/web/slides.zip
(2) https://gitlab.com/lgwain/web2017
(此处同时也可以同步下载到《基于Angular的Web开发》)
使用git下载:git clone https://gitlab.com/lgwain/web2017.git,以后经常使用 git pull 保持更新。

注:以上链接同步更新

Web开发电子书:链接: https://pan.baidu.com/s/1i46ZvbZ

作业

1、作业编号:web01 检查链接:http://gitlab.com/3015218888/web01/ 截止时间:2017/10/23(延期到2017/11/06) 作业内容:
(1)pictures wall 照片墙。要求:分批显示一组照片,点击照片可以放大。
(2)puzzle 游戏。要求:将一个正方形图片,切成3*3的9个小块,去掉右下角的小块,其他8块打乱顺序摆放。用户可以点击一个图片,如果此图片旁边有空格,则移动至空格处。用户可以尝试将图片还原为正确的布局。

2、大作业,编号:web02

Web大作业要求

1、 分组完成。每组4人左右。设组长(PM)一名,负责与老师沟/助教沟通、安排人员分工、督促进度和上交作业等工作。人员分工必须明确,以文档的形式上报,写到README文件中。不得出现“这些是我们大家一起商量着完成的”,“这个我们都参与了”之类的模糊说法,必须明确到每个源文件、文档是谁写的。组内分工角色应包括开发(RD)、文档编写(DOC)和质量保证(QA,即测试),一般来说,应该是每个人分担多个角色。

2、 题目自拟。没有合适的题目,可以完成《UML大战需求分析》中的“考勤系统”的需求完成。自拟题目要求有一定的难度,至少满足以下要求:
a) 有用户管理,包括登录身份校验、权限管理等;
b) 至少包括一个业务对象完整的CRUD操作(可查询、新建、修改、删除),不同权限的用户,应该对这个业务对象有不同的操作。(例如请假单,可查询、新建、修改、删除,员工可以新建、一定状态下可以修改、删除,领导可以审批,有权限的人可以查询等)

3、 技术架构上,要求:
a) 必须前后端分离,前端必须基于Web,可以是桌面端Web应用,也可以是移动端Web应用,或者是结合。
b) 必须在前端渲染页面,不可以在后端渲染页面后推送到前端。换句话说,就是后端只能提供和接收JSON数据,不可以提供页面。
c) 前后端的数据交换必须使用HTTP或HTTPS协议,传输的数据格式使用JSON格式,接口API使用RESTful风格。
d) 前端建议使用Angular 2+为框架。如果计划不使用框架,仅使或jQuery等技术,或者计划使用其他框架,请在项目需求分析阶段提出,并经过允许。
e) 后端技术不限,但是原则上应该是提供JSON的RESTful接口服务。建议使用Spring Boot(Java)或 Node.js(JavaScript),其他技术也需要在项目需求分析阶段提出,并经过允许。

4、 文档。文档应该完整描述项目的需求、开发、测试和部署。至少应包含以下文档:
a) 《软件需求规格说明书》。格式参看《UML大战需求分析》第10章和附录1。
b) 《软件设计说明书》。至少包括全部RESTful接口说明和数据库设计说明。可以包含其他要说明的设计说明。
c) 《软件测试说明书》。包括软件的安装、部署和运行的方法,整体测试方法和前后端独立测试的方法。

5、 测试和部署
a) 软件需要在开发阶段进行单元测试,在整合阶段进行整体测试。
b) 教师和助教会根据文档,对项目进行测试,包括运行项目以进行整体测试以及前后端分别基于RESTful接口独立测试。

6、 版本和日志
a) 代码采用git管理,commit时要有简要说明。
b) 每个源文件和文档头部应包括作者和更新历史说明。
c) 版本号宜采用语义化版本号。

7、 截止日期
a) 第一阶段:需求分析阶段。2017年10月31日前,提交《软件需求规格说明书》,明确分工,确定开发技术路线。
b) 第二阶段:开发和测试阶段。2017年12月15日前,完成大作业。准备验收。

考试时间:2017/11/7 周二 上午 10:30~12:00 地点:33-112