ASE课程总结 by 张葳
本期ASE课程分为两个阶段,第一阶段的personal project与第二阶段的team project,其中,第一阶段旨在锻炼我们个人的问题解决能力和编程能力,第二阶段则锻炼主要我们的管理能力,合作能力,以及学习能力。总的说来在这一期的ASE课程上,我收获了很多,不仅使上述各项能力得到了锻炼,而且使我对软件的开发有了全新的认识。
这期课程中,我们小组最初想要编写一个能辅助英语学习的阅读器插件,最后伪release了一个带英语学习功能的阅读器,这其中我们经历了诸多波折。从一开始找不到合适的平台,到找到平台又找不到对应的SDK,到找到SDK有无法集成目标软件功能,到重新选择最终平台,每一次困难都几乎使我们放弃这个项目。不过好在,在ASE结课之前,我们终于完成了一个还看得过去的版本。这次的课程让我们对软件开发整体有了深刻的认识,所犯下的错误也为今后的开发积累了宝贵的经验。下面对这一次的项目做一个简要的小结。
Q:
小组的目标软件是什么?目标用户是什么?
A:
我们小组想开发一个能在英语阅读时候辅助英语学习的UWP平台下的pdf阅读器插件。该插件可以在英文文章阅读时实现查词,显示释义,添加注释,加入单词本,高亮生词等功能,以辅助英语学习。面向用户为上班族,学生,以及有经常阅读文献需要的用户。
Q:
你们的任务是怎样规划的?时间又是如何安排的?
A:
我们小组共五人分别完成产品的三个部分,由于我们产品的两个主要外部依赖,Bing词典接口和Foxit阅读器接口都需要阅读相关的资料及API参考,并与原产品团队进行沟通,因此有额外的工作量,因此分别分派了两人完成,剩下的程序主体一人完成。时间上在alpha版就完成所设计的所有功能,在beta版完成调试,美化等功能。
Q:
你们是否有按照计划完成?是否遇到过困难?
A:
严格来讲我们并没有按照计划完成。在alpha版阶段,与Foxit沟通消耗了大量时间,其后又由于win32平台与UWP平台兼容性的问题,我们的工作一度停滞。因此alpha版我们几乎没有完成什么功能。则导致我们在beta版几乎重做了大部分工作。在整个工程中,与不同软件接口交互是最大的困难。至于最终我们也没有解决版权等问题。
Q:
你们是否完成了一个可以使用的版本?
A:
理论上说是的,我们实现了所有计划应有的功能,给出了一个相对稳定的版本,并在小范围内进行了试用体验,收了好评吧,应该……除了美工上略有不足,已经基本达到了预期的目标。
ASE课程总结 by 张葳的更多相关文章
- ASE课程总结 by 冯晓云
开始的开始,采访往届ASE班的blog:http://www.cnblogs.com/legs/p/4894362.html 和北航软工M1检查:http://www.cnblogs.com/legs ...
- ASE课程总结 by 林建平
设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的辅助用户在阅读英文文献时记忆生词,提高用户的生词量,减少用户的阅读障碍.定义非常清晰,要有查 ...
- ASE课程总结 by 朱玉影
收获: 最大的收获应该就是对待选题要慎重吧,虽然前期做了一下调研,但是还是不够,所以到最后我们的项目才会不能公开发布,项目中间也是波折不断,导致我们走了很多弯路,浪费了很多时间吧.选题一定要慎重,慎重 ...
- ASE past project:interview & analysis
采访往届ASE课程学员李潇,他所在的团队blog戳这里http://www.cnblogs.com/smart-code/ Q1:师兄你觉得在团队项目中,有哪些需要注意的事情? A1:团队合作吧.首先 ...
- ASE team work proposal
Hi,我们是Azure Wrapper,欢迎来到我们的blog~我们将在这里记录下ASE课程的滴滴点点,美妙的旅程就要开始啦! 以下是每位队员提交的关于ASE 团队项目的提议: 朱玉影: 随着信息时代 ...
- [视频解说]0基础课程-运营商-Java它J2se
本节解说 运营商应用 Java 算被分成: 算术运算符 颂值运营商 逻辑运算符 位运算符 元运算符 这里录制了 视频解说这几大类运算符,并有练习题提供大家 面试题: 1. 最有效率的方式算出2乘以8等 ...
- 【课程分享】基于plusgantt的项目管理系统实战开发(Spring3+JDBC+RMI的架构、自己定义工作流)
基于plusgantt的项目管理系统实战开发(Spring3+JDBC+RMI的架构.自己定义工作流) 课程讲师:张弘 课程分类:Java 适合人群:中级 课时数量:37课时 用到技术:Spring ...
- 公共语言运行库(CLR)开发系列课程(1):Pinvoke 简介 学习笔记
前言 让拖管代码对象和非托管对象协同工作的过程称为互用性(Interoperability),通常简称为 Interop. P/Invoke在托管代码与非托管代码交互式时产生一个事务(Transiti ...
- Android训练课程(Android Training) - 高效的显示图片
高效的显示图片(Displaying BitmapsEfficiently) 了解如何使用通用的技术来处理和读取位图对象,让您的用户界面(UI)组件是可响应的,并避免超过你的应用程序内存限制的方式.如 ...
随机推荐
- ASP.NET Core 3.x 中间件流程与路由体系
中间件分类 ASP.NET Core 中间件的配置方法可以分为以上三种,对应的Helper方法分别是:Run(), Use(), Map(). Run(),使用Run调用中间件的时候,会直接返回一个响 ...
- 洛谷1265prim算法求最小生成树
题目链接:https://www.luogu.com.cn/problem/P1265 最小生成树的prim算法跟dijkstra算法非常像,就是将点分成两个集合,一个是已经在生成树中的点的集合,一个 ...
- 最大比率传输(Maximum Ratio Transmission, MRT)原理分析
转载请注明出处. 最大比率发射(Maximum Ratio Transmission, MRT)是文献中经常看见的一个词,今天就在这里做一下笔记. 参考文献为:T. K. Y. Lo, "M ...
- 结构化学习(Structured Learning)
本博客是针对李宏毅教授在youtube上上传的Machine Learning课程视频的学习笔记.课程链接 目录 引入 线性模型 结构化SVM 给序列贴标签 引入 我们之前学习到的学习模型的输入与输出 ...
- Java基础语法(9)-面向对象之类的成员
title: Java基础语法(9)-面向对象之类的成员 blog: CSDN data: Java学习路线及视频 1.面向对象特征--封装 为什么需要封装?封装的作用和含义? 我要用洗衣机,只需要按 ...
- Typora+markdown 最常用语法教程
Typora+markdown 最常用语法教程(by 程序员宝藏) Typora+markdown 最常用语法教程(by 程序员宝藏) 请先配置推荐配置(文件->偏好设置): 文章目录 Typo ...
- BurpSuit工具安装和基本使用方法
burpsuite是渗透的必备工具,使用它可以进行一些截包分析,修改包数据.暴力破解.扫描等功能,使用最多的场景应该是设置代理拦截数据包分析数据和爆破. JDK工具下载和安装(可选) 运行BurpSu ...
- Make编译Ardupilot源码的两种方法
编译环境准备 Ardupilot源码下载和PX4 toolchain工具链下载 (见https://www.cnblogs.com/BlogsOfLei/p/7707485.html) 注 ...
- MyBatis整合Spring原理分析
目录 MyBatis整合Spring原理分析 MapperScan的秘密 简单总结 假如不结合Spring框架,我们使用MyBatis时的一个典型使用方式如下: public class UserDa ...
- 2020年Java多线程与并发系列22道高频面试题(附思维导图和答案解析)
前言 现在不管是大公司还是小公司,去面试都会问到多线程与并发编程的知识,大家面试的时候这方面的知识一定要提前做好储备. 关于多线程与并发的知识总结了一个思维导图,分享给大家 1.Java中实现多线程有 ...