项目 内容
班级:北航2020春软件工程 博客园班级博客
作业:团队任务拆解及时间规划 团队任务拆解

Alpha阶段总体规划

初步完成产品功能规格说明书中的基础功能

  • 目前阶段仅支持本地上传文件至当前Notebook,稍后将在beta阶段支持GitHub的导入导出、北航云盘的导入导出功能
  • 通过拖拽更改文件/文件夹位置、通过拖拽更改标签页排序等拖拽操作目前没有找到支持的方法

整体工作流程图

由于该Web应用的功能点较为细碎(功能点多,却规模不大、类型相近),因此不适合直接使用WBS方法进行任务拆解,但我们依然从功能角度将工作分为前端、后端、编辑器三部分

我们将整个Alpha阶段分为3个开发子阶段和最后的部署&测试、稳定&发布子阶段。在3个开发子阶段中,前端按照从粗到细、从布局框架到原子操作的顺序,依次完成:

  • 整体布局&UI框架和一级二级用户界面的搭建
  • 全部用户界面及原子实体的呈现,及UI定型
  • 全部Alpha阶段功能完整实现

后端部分以能与前端在每个子阶段末尾对接测试、运行为标准,依次完成:

  • 后端docker、文件系统、数据库的管理
  • 与前端相对接,从用户登录注册查询、到IDE内操作,逐步支持基本操作
  • 支持Terminal、调试等高级功能

编辑器部分按照从基础功能到特色功能的顺序,即从“可用”到“好用”的顺序,依次完成:

  • 能运行原版Monaco Editor,加入一些定制化接口和主题设置接口,加入部分简单但提升效率的编辑操作和快捷键
  • 支持C++、Python、Java语言的语言服务(IntelliSense)
  • 支持高级代码操作功能和快捷键

阶段一(预计用时:5days)

4/8~4/12

完成布局和框架

成员 任务安排 预估时长
hwz 1. 完成后端环境部署
2. 完成front-server代码,供前端调用
3. 完成back-server代码,为front-server提供服务
4. 完成docker镜像的设计
1. 2h
2. 2h
3. 4h
4. 2h
lpx 1. 熟悉ajax,学会如何发送POST,GET请求,如何设置cookie,并本地测试调通
2. 完成对前端接口的封装,并本地测试调通,完成API文档
3. 跑通后端front-server代码,完成后端container-server
4. 前后端对接测试
1. 2h
2. 2h
3. 4h
4. 2h
wzf 1.完成登录、注册、修改密码界面(除 需与后端交互的功能)
2.学习iView组件、css,完成主页的基本布局
3.学习js并完成主页前端功能
1. 5h
2. 3h
3. 2h
sxd&hfj 1.学习iView组件,确定IDE界面整体布局要用哪些组件来构建
2.搭建IDE界面整体布局,完成非叶子节点的铺设
3.学习css,完善顶部菜单栏样式并构建顶部叶子节点
4.添加侧边栏内容,文件树,设置栏,用户信息栏等
5.完善IDE窗口及终端大致外观和叶子节点。
1. 3h
2. 5h
3. 5h
4. 8h
5. 1h
xwl 1. 调通Monaco Editor的demo,熟悉JavaScript和CSS
2. 调整基础编辑功能,增加、修改快捷键
3. 修改默认外观,支持用户自定义外观的接口
4.测试&解决跨平台、跨浏览器兼容性,包括快捷键支持(覆盖浏览器默认快捷键)
1. 3h
2. 5h
3. 4h
4. 4h

阶段二(预计用时:6days)

4/13~4/18

完成所有实体,不一定有功能

成员 任务安排 预估时长
hwz 1. 完成容器镜像的设计
2.完成所有服务的云上部署
3. terminal 服务提供
1. 4h
2. 3h
3. 3h
lpx 1. 后端完成container-server设计,实现对容器内的文件系统管理
2. container-server和back-server对接,包括制定接口,调通测试
3. 和前端将project接口对接,制定接口调用规范
4. 和前端将file接口对接,制定接口调用规范
1. 4h
2. 3h
3. 1h
4. 2h
wzf 1.修改Notebooks显示风格为平铺
2.调用project接口来实现前端对project的管理 ,实现project增删改
3. 实现并完善project的过滤查询
4. 完善用户信息修改
5. 输入框回车确认
1.3h
2. 3h
3. 5h
4. 3h
5. 2h
sxd 1. 持续完善IDE界面整体布局
2. 部分IDE界面和editor对接任务,使编辑器窗口能正常显示
3. 与前端Home界面对接
4. 熟悉后端接口,并调用部分接口实现相应功能
1. 2h
2. 5h
3. 1h
4. 2h
hfj 1.完成文件树功能和与后端file接口的对接
2.完成文件树中结点的右键菜单功能
3.完善文件树样式
4.完成文件树的复制粘贴及拖拽功能
1.3h
2.3h
3.1.5h
4.3h
xwl 1. 添加Python Language Server/Client
2. 将Python LS/C部署到前后端中并进行测试
3. 利用后端文件接口实现打开文件、实时更新文件(后续可优化)
4. 提供本地可用的C++ Language Server给负责docker镜像的同学
1. 8h
2. 3h
3. 6h
4. 8h

(任务安排将在阶段一结束时更新)

阶段三(预计用时:9days)

4/19~4/27

完成全部功能

成员 任务安排 预估时长
hwz 1. 语言服务接口设计
2. 容器镜像构建与部署
3. 完成整体功能线上测试
1. 4h
2. 12h
3. 4h
lpx 1. terminal的实现,包括前端显示和后端服务器
2. 调研CPP语言cmake编译方式
3. 构建CPP,python语言编译运行接口
4. 封装,部署,测试CPP,python语言编译运行接口,和前端对接
5. 调研并尝试实现调试功能
1. 5h
2. 2h
3. 3h
4. 5h
5. 6h
wzf 1. project enter
2. project exit
3. 菜单栏的文件和文件树对接
4. 菜单栏的编辑功能实现
1. 2h
2. 3h
3. 5h
4. 5h
sxd 1. 完成文件树与editor对接
2.完成新版editor的对接
3.和后端进行terminal的对接
4. 前端与后端接口对接,使整体能执行起来
5.修复IDE界面存在的bug
1. 8h
2. 5h
3. 2h
4. 4h
5. 2h
hfj 1. 完善文件树与后端对接
2. 优化文件树的使用体验,完善自动排序功能、新建文件目录自动展开功能
3. 完善文件树的右键菜单功能
4. 完善文件树的拖拽功能
5. 完成提供所有文件项目、待选中进行编译运行的功能
1. 4h
2. 4h
3. 6h
4. 6h
5. 6h
xwl 1. 完整连通、部署、测试 C++ Language Server/Client
2. 调研Java Language Server
3. 连通、部署、测试Java Language Server/Client
4. 优化外观体验
5. 优化效率功能
1. 6h
2. 3h
3. 8h
4. 3h
5. 5h

(任务安排将在阶段二结束时更新)

项目管理

我们使用GitHub Organization管理团队的项目。现在分为前端、后端、编辑器三个仓库,每个仓库有自己的代码(分支、PR)和Issue。各个仓库的部分issues一览如下:

前端:

后端:

编辑器:

例会情况

我们决定每日都举行例会,其中周五和周六时间为18:00~18:30,周日到周四时间为21:30~22:00。

【BUAA软工】团队任务拆解的更多相关文章

  1. [BUAA软工]团队任务拆解

    团队任务分解 本次博客为项目alpha的任务拆解 WBS 任务估计 任务 时长(h) 语音模块:监听部分 5h 语音模块:消息处理:api 4h 语音模块:消息处理:内部数据结构 3h 语音模块:消息 ...

  2. [BUAA软工]团队贡献分博客

    Gamma阶段贡献分 Beta阶段贡献分 Alpha阶段贡献分 (博客最后部分) 复制过来: Alpha阶段 名字 角色 具体的可衡量的可验证的贡献 zpj PM,后端开发 博客X3 65 commi ...

  3. [BUAA软工]第二次博客作业---结对编程

    [BUAA软工]结对作业 项目 内容 这个作业属于哪个课程 北航软工 这个作业的要求在哪里 2019年软件工程基础-结对项目作业 我在这个课程的目标是 学习如何以团队的形式开发软件,提升个人软件开发能 ...

  4. [BUAA软工]第一次结对作业

    [BUAA软工]结对作业 本次作业所属课程: 2019BUAA软件工程 本次作业要求: 结对项目 我在本课程的目标: 熟悉结对合作,为团队合作打下基础 本次作业的帮助:理解一个c++ 项目的开发历程 ...

  5. [BUAA软工]第1次阅读

    [BUAA软工]第1次阅读 本次作业所属课程: 2019BUAA软件工程 本次作业要求: 第1次个人作业 我在本课程的目标 熟悉和实践软件工程流程,适应团队开发 本次作业的帮助 帮助理解<构建之 ...

  6. [BUAA软工]第一次博客作业---阅读《构建之法》

    [BUAA软工]第一次博客作业 项目 内容 这个作业属于哪个课程 北航软工 这个作业的要求在哪里 第1次个人作业 我在这个课程的目标是 学习如何以团队的形式开发软件,提升个人软件开发能力 这个作业在哪 ...

  7. [BUAA软工]第零次博客作业---问题回答

    [BUAA软工]第0次博客作业 项目 内容 这个作业属于哪个课程 北航软工 这个作业的要求在哪里 第0次个人作业 我在这个课程的目标是 学习如何以团队的形式开发软件,提升个人软件开发能力 这个作业在哪 ...

  8. 软工团队 - UML设计

    软工团队 - UML设计 分工 对于分工我们没有不是按"自己负责部分的核心模块做练习"(每个人对每个图的某一模块来依次做完四个UML)的原因,是在于画这些图并不是都能彻底分成各个& ...

  9. [BUAA软工]第0次个人作业

    [BUAA软工]第0次个人作业 本次作业所属课程 : 2019BUAA软件工程 本次作业要求: 第0次个人作业 我在本课程的目标: 熟悉软件工程流程,规范开发习惯 本次作业的帮助: 熟悉课程流程 Pa ...

  10. 软工团队 - 预则立&&他山之石

    软工团队 - 预则立&&他山之石 团队任务计划 时间 人员 任务 10.23-10.29 张昭锡 初拟Android代码规范 李永盛 初拟PHP代码规范 刘晨瑶 初拟Git代码规范 刘 ...

随机推荐

  1. JVM之调优及常见场景分析

    JVM调优 GC调优是最后要做的工作,GC调优的目的可以总结为下面两点: 减少对象晋升到老年代的数量 减少FullGC的执行时间 通过监控排查问题及验证优化结果,可以分为: 命令监控:jps.jinf ...

  2. Fork/Join 框架

    本文部分摘自<Java 并发编程的艺术> Fork/Join 框架概述 Fork/Join 框架是 Java7 提供的一个用于并行执行任务的框架,是把一个大任务分割成若干个小任务,最终汇总 ...

  3. Java例题_27 100以内的素数

    1 /*27 [程序 27 求素数] 2 题目:求 100 之内的素数 3 */ 4 5 /*分析 6 * 素数:是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 7 * 同第二题: ...

  4. [LeetCode]1. 两数之和(难度:简单)

    题目: 给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标.你可以假设每种输入只会对应一个答案.但是,数组中同一个元素在答案里不能重复 ...

  5. day-06-集合-缓存机制-深浅copy

    (1) is id ==用法 is 判断的是内存地址是否相同 id 查看内存地址:id相同,值一定相同,值相同,id不一定相同 == 比较判断是否相等 l1 = [1, 2, 3] l2 = [1, ...

  6. [Fundamental of Power Electronics]-PART I-5.不连续导电模式-5.1 DCM来源和模式边界

    引子: 当使用电流单向和/或电压单向半导体开关实现DC-DC变换器的理想开关时,可能会出现一种或多种被称为不连续导电模式(DCM)的新工作模式.当电感电流或电容电压的纹波大到足以导致所施加的开关电流或 ...

  7. python基础(五):列表的使用(上)

    什么是列表 列表是一系列元素,按特定顺序排列组成.列表总的元素之间没有任何关系,既可以时字符串,也可以是数字,还可以是布尔值. 由此可以看出,列表通常包含多个元素,因此再给列表命名的时候,最好使用复数 ...

  8. Java实现十个经典排序算法(带动态效果图)

    前言 排序算法是老生常谈的了,但是在面试中也有会被问到,例如有时候,在考察算法能力的时候,不让你写算法,就让你描述一下,某个排序算法的思想以及时间复杂度或空间复杂度.我就遇到过,直接问快排的,所以这次 ...

  9. 1W字|40 图|硬核 ES 实战

    前言 上篇我们讲到了 Elasticsearch 全文检索的原理<别只会搜日志了,求你懂点检索原理吧>,通过在本地搭建一套 ES 服务,以多个案例来分析了 ES 的原理以及基础使用.这次我 ...

  10. malloc函数详解 glibc2.27

    malloc 函数分析(glibc.2.27) 本人菜一只,如果分析的有错误,请大佬指正. __libc_malloc函数分析 void * __libc_malloc (size_t bytes) ...