myflag step 3 :详细系统设计

在上周,我和我的小组已经完成了MyFlag的初步系统设计,经过我们充分的讨论,决定开始细化系统设计。这几天我们小组主要针对了以下几点进行了讨论:

  • 用户端的系统模块的划分
  • 用户端详细设计的初步进行
  • 接口文档的进一步确定
  • 用户界面设计的进行
一、用户端的系统设计
虽然客户端是由其他同学来完成,但是考虑到客户端的重要性,美观、实用与否直接决定着产品的成败,所以我和我的小组决定共同探讨这个话题,作为队长,首先要做的就是让大家充分发表意见,然后形成合力。经过我们一致的讨论,结果如下:
  • 网络请求工具模块,封装了与服务器通信的方法
  • 用户模块,功能包括
    • 用户注册
    • 用户登录
    • 修改个人信息
    • 修改密码
    • 查找用户
  • 社区模块,功能包括
    • 添加好友
    • 确认添加好友
    • 改变备注
    • 我的朋友
    • 获得好友请求列表
  • 用户Flag模块
    • 创立Flag
    • 查看我的Flag
    • 更新我的Flag
    • 删除我的Flag
  • 社区Flag模块,主要功能有
    • 查看朋友的Flag
    • 请求朋友监督自己的Flag
    • 处理要求监督Flag的请求
    • 评价朋友的Flag
    • 查看朋友对自己Flag的评价
在此基础上,画出的UML组件图如下所示。

可以看到,这四个模块的功能基本已经包括了系统的全部功能,并且这四个模块之间的关系并不紧密,这满足了模块间低耦合的要求;单个模块的功能比较单一,这满足了模块内高内聚的要求。且模块数量不多,便于管理。如果认为单个模块的功能还是偏于复杂,可以进行二次划分,进行简化。


二、
在讨论完基本的功能之后,接着要考虑的就是接口文档,他是后台与android端的连接口,我们一致确定之后在进行开发,主要是我和android的两位同学在进行讨论,考虑了实际的功能之后,我们得出了以下结论。
一  关于用户
  1 用户注册
URL:/user/Register
Parameter:   nickname  用户昵称
password   用户密码
phone      手机号  (11位)
email      电子邮件
information 个人信息
return:json格式的id(用户id)

  2  登陆  
URL:/user/Login
Parameter:
id 用户的id
password 用户密码
return:json格式的user

  3  修改个人信息
URL:/user/UpdateInformation
Parameter:
id 用户的id
nickname 昵称
email 邮箱
information 个人信息
return:0:失败
1:成功
备注:参数id为必须,其余参数任选若干。
 
  4  修改密码
URL:/user/UpdatePassword
Parameter:
id 用户id
newPassword 新密码
oldPassword 旧密码
return:0:失败
1:成功

 5   查找用户
URL:/user/FindUser
Parameter
id id查找
phone 按照用户查找
return:
return:json格式的user(手机号为0,无email信息)
user: uid 用户id
nickname  用户昵称
phone      手机号  (11位)
email      电子邮件
information 个人信息

二:关于添加好友

1 添加好友
URL:/friend/AddFriend
Parameter:
id 想要添加的好友的id
requestId 发起添加请求的id
message 添加时发送给被添加者的信息
remark 好友备注

2  确认添加好友
URL:/friend/ConfirmFriend
Parameter:
id 确认者的id
requestId 发起添加请求的id
agree:int 是否同意添加(0  未确定 1 不同意  2 同意)
remark 对添加者的备注(不同意则没有此参数)

3  改变备注
URL:/friend/UpdateRemark
Parameter:
aId 用户a的id
bId 用户b的id
newRemark 用户a对用户b的新备注
renturn: 0:失败
1:成功

4  我的朋友
URL:/friend/MyFriends
Parameter:
id 用户的id
return:
list[friend] friend   friends列表
friend:
uid: 朋友的id
nickname 用户的昵称
remark 对朋友的备注

5  获得好友请求列表
   URL : /friend/GetFriendRequest
   Parameter:
id  用户id
return:
    list[TempFriend]  request    请求列表

TempFriend :
 nickname: 请求者的昵称
 phone:  请求者的电话
  message:  请求者的信息
 requestUid: 请求者的id
 agree:  我是否同意  (0 :未作出决定   1:不同意  2:同意)

三:创建flag

1  创立flag
URL:/flag/CreateFlag
Parameter:
id: 创建者的id
content: 内容
award: 奖励
isTeam: 是否为团队  (true  或者  false)
startTime 开始时间
endTime 截止时间
supervise 监督者(格式 : iid1#id2#id3  以#作为分隔符)
member 成员(格式 : iid1#id2#id3  以#作为分隔符)
return:0 创建失败
1 创建成功

所有和时间有关的均使用Unix时间戳,长度为10位,如1469980800

2  查看我的flag(一次最多返回15个)
URL:/flag/MyFlag
Parameter:
id: 用户id
time 查找该时间之前的flag(默认为现在的时间)
return
list[FlagDetail] :flags   flag列表

FlagDetail
FLag :flag
Vector<SuperviseBrief> :friendsJudge评价者的评价
Vector<Integer> member   返回参与人员的id列表

Flag
fid:int flag的id
id:int 创建者的id
content:String内容
award: String 奖励
isTeam: boolean 是否为团队  (true  或者  false)
startTime:long开始时间
endTime :long 截止时间
ahcieve :int 是否完成(0:未确定 1 失败 2完成)
createTime:long创建时间

SuperviseBrief
uid:int 用户的id
achieve :int 评价者给出是否完成(0:未确定 1 失败 2完成 )
state:int 是否同意评价请求(0  未确定 1 同意  2 不同意)
评语:String 评语

3  查看朋友们的flag(一次最多返回15个)

URL:/flag/FriendsFlag
Parameter:
id: 用户id
time 查找该时间之前的flag(默认为现在的时间)
return
list[FlagDetail] :flags   flag列表

4 删除flag
URL:/flag/DeleteFlag
Parameter:
id: flag的id

return
0 删除失败
1 删除成功

5   处理要求监督flag的要求
URL:/flag/ConfirmSuperviseRequest
Parameter:
fid flag的id
uid 用户的id
agree 是否同意要求(1 为不同意  2  为同意)
return: 0 失败
1 成功

6   评价flag
URL:/flag/JudgeFlag
Parameter:
fid flag的id
uid 用户的id
achieve 是否完成(1 为 未完成 2  为完成)
evaluate 评语
return: 0 失败
1 成功

FlagDetail
FLag :flag
Vector<SuperviseBrief> :friendsJudge评价者的评价
Vector<Integer> member   返回参与人员的id列表

Flag
fid:int flag的id
id:int 创建者的id
content:String内容
award: String 奖励
isTeam: boolean 是否为团队  (true  或者  false)
startTime:long开始时间
endTime :long 截止时间
ahcieve :int 是否完成(0:未确定 1 失败 2完成)
createTime:long创建时间

SuperviseBrief
uid:int 用户的id
achieve :int 评价者给出是否完成(0:未确定 1 失败 2完成 )
agree:int 是否同意评价请求(0  未确定 1 不同意  2 同意)
评语:String 评语



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值