软件工程第一次结对作业

学号:102202134;102202117

这个作业属于哪个课程 首页 - 软件工程2024 - 福州大学 - 班级博客 - 博客园 (cnblogs.com)
这个作业要求在哪里 2024秋软件工程结对作业(第一次之需求分析和原型设计) - 作业 - 软件工程2024 - 班级博客 - 博客园 (cnblogs.com)
这个作业的目标 结对作业,进行需求分析和原型设计
学号 102202117

原型地址:https://modao.cc/proto/KB7gWZmiskfafgRqovUb5N/sharing?view_mode=device&screen=rbpUPNpezDtMEGUZl&canvasId=rcTnYFbNUPNpfpLzncjVjN

原型开发工具:墨刀

一、《构建之法》阅读摘要

1.1 第3章:软件工程师的自我提升

1.1.1 个人技能的评估与提升

  • 软件工程概览:软件工程囊括了开发、运维和维护软件的一系列技术、实践、习惯和理念。这些元素构成了“软件开发流程”,旨在提高软件生命周期的效率,同时增强用户满意度、软件的可靠性和可维护性。
  • 初级工程师的成长轨迹
    • 技术能力:掌握具体技术,提升实践技能。
    • 领域知识:积累特定行业(如医疗、金融)的知识和经验。
    • 设计理念:理解通用的软件设计和工程理念。
    • 职业素养:包括自我管理、沟通、协作和完成任务的能力。

1.1.2 团队对个人的期望

  • 沟通能力:有效交流技术方向和细节问题。
  • 承诺兑现:按时交付任务。
  • 角色适应:接受并完成团队分配的任务。
  • 团队活动参与:积极参与评审、代码复审等团队活动。
  • 流程遵循:即使个人能力强,也要遵守团队流程。
  • 准备工作:在会议、新功能或项目开始前做好充分准备。
  • 理性工作:基于事实和数据,遵循流程,理性工作。

1.1.3 思维陷阱

  • 分析麻痹:在行动前过度追求细节和依赖关系,导致行动迟缓。
  • 主次不分:试图同时解决所有问题,忽视了优先级。
  • 过早优化:在局部问题上花费过多时间,忽视整体重要性。
  • 过早泛化:在设计初期过度抽象,试图适应所有情况。

1.1.4 职业发展路径

  • 职业态度:从临时工作到终身事业的不同态度。
  • 发展策略
    • 考级:通过职业资格考试,如MCP、OCP等。
    • 能力分级:根据Steve McConnell的12级工程师模型,评估和提升自己的软件知识水平。
    • 大公司路径:在大公司中,通过自我评估,确定专精领域和知识广度。

1.2 第8章:需求分析

1.2.1 需求分析的重要性

需求分析是软件开发的基石,它的目标是明确软件需要满足的需求,以确保开发团队能够创建出符合用户期望的产品。这一环节要求与软件的多个利益相关者进行深入的沟通和协作。

1.2.2 软件需求的探索

  • 需求发现流程
    • 需求获取
    • 需求分析
    • 需求验证
    • 需求管理
  • 需求分类
    • 功能性需求:产品必须实现的功能,如电商网站的浏览、购物车、订单提交。
    • 过程性需求:开发流程的特定要求,如文档生成、里程碑达成、代码规范。
    • 非功能性需求:关注软件的质量属性,如性能、可用性、可靠性、安全性。
    • 综合需求:涉及与其他系统的交互,如电商网站与物流、支付系统的集成。

1.2.3 利益相关者的角色

  • 用户
  • 顾客
  • 市场分析者
  • 监管机构
  • 系统集成商
  • 软件团队
  • 软件工程师

1.2.4 用户需求的获取

  • 调研方法
    • 焦点小组:组织讨论,收集意见。
    • 深入访谈:一对一交流,观察用户行为。
    • 卡片分类:通过分类整理需求。
    • 问卷调查:设计问卷收集反馈。
    • 用户日志:分析用户使用记录。
    • 人类学研究:深入了解用户环境。
    • 眼动追踪:研究用户视觉行为。
    • 原型测试:构建原型,收集反馈。
    • A/B测试:比较不同方案的效果。

1.2.5 竞争性需求分析框架

  • NABCD模型
    • 需求(Need):识别用户需求。
    • 方法(Approach):提出解决方案。
    • 好处(Benefit):分析解决方案的好处。
    • 竞争(Competitors):评估市场竞争对手。
    • 推广(Delivery):制定推广策略。

1.2.6 功能的定位与优先级

  • 功能象限
    • 杀手功能:如OCR技术。
    • 外围功能:如界面设计。
    • 必要需求:如释义准确性。
    • 辅助需求:如皮肤定制。
  • 功能策略
    • 维持:低成本维护。
    • 抵消:达到行业标准。
    • 优化:行业领先。
    • 差异化:独特优势。
    • 不做:功能削减。

二、NABCD模型分析

2.1 需求分析 N - Need

学生们迫切需要一个专门的平台,用于发起和参与跨专业的项目。这样的平台可以帮助他们提升综合能力、扩展知识领域,并在学术和职业发展中建立宝贵的人脉网络。

2.2 关键功能与界面设计 A - Approach

2.2.1 登陆/注册页面

  • 功能:提供用户注册与登录界面,支持手机号或学校学号注册/登录,并通过教育邮箱进行身份验证。
  • 要素
    • 输入框(用户名、密码)
    • 注册和登录按钮
    • “忘记密码”链接
    • 用户协议等简要说明
    • 通过向教育邮箱发送验证码进行身份验证

2.2.2 用户主页(个人项目界面)

  • 功能
    • 查看自己参与的项目
    • 发布新的项目
    • 查找合作伙伴
  • 要素
    • 卡片式展示参与项目,包括项目名、编号、描述、相关领域、创建日期,点击跳转至项目详情。
    • 发布项目图标,点击跳转至发布页面。
    • 伙伴图标,点击跳转至伙伴推荐页面。

2.2.3 项目详情界面

  • 功能
    • 查看项目信息
    • 查看项目协作者
    • 项目设置
  • 要素
    • 查看项目详细信息,包括项目文件管理。项目成员可以上传(需发布者审核)或下载资料。
    • 查看项目协作者,包括简介和贡献,可以招募协作者或请求导师指导。
    • 项目修改和删除图标。

2.2.4 查找项目/项目推荐页面

  • 功能
    • 按关键词查找项目
    • 系统推荐热门或感兴趣的项目
  • 要素
    • 搜索栏
    • 以卡片形式展示推荐项目

2.2.5 通讯页面

  • 功能
    • 根据不同项目分组,查找项目成员进行私聊
  • 要素
    • 分组栏下拉
    • 联系人组块,点击进入私聊

2.2.6 私聊界面

  • 功能
    • 聊天
  • 要素
    • 聊天气泡
    • 输入栏、键盘

2.2.7 个人界面

  • 功能
    • 查看个人信息
    • 提供反馈意见
    • 管理账号安全
  • 要素
    • 展现个人资料,关注,粉丝,收藏
    • 修改个人信息
    • 提供反馈
    • 账号安全,修改密码

2.2.8 意见反馈界面

  • 功能
    • 输入并提交反馈意见
  • 要素
    • 输入框,提交按钮

2.2.9 修改/添加个人信息页面

  • 功能
    • 修改个人信息
  • 要素
    • 输入框
    • 时间选择浮层
    • 兴趣选择浮层

2.2.10 账号安全界面

  • 功能
    • 修改密码
    • 绑定手机号
  • 要素
    • 输入框,提交按钮

通过这样的设计,平台将满足学生的需求,提供一个全面的项目协作和社交网络构建环境。

三、UML用例图

四、流程图

五、效果展示

5.1 首页

5.2 个人资料界面

5.3 初始界面+登录界面+注册界面

5.4 聊天界面

5.5 项目推荐

5.6 项目界面

六、工作过程

6.1 需求分析:

步骤一:明确项目目标和需求

需要制作一个能实现跨专业创业合作的软件。

步骤二:梳理流程,分工协作

102202117杨邑豪 负责uml用例图以及原型模型的逻辑建立
102202134承宇豪 负责原型模型的美化

步骤三:优化

根据反馈对模型进行模型修改和优化

七、psp表格

psp 预估耗时(h) 实际耗时
阅读《软件工程》---构建之法 4 3
分析项目目标和需求 1 1
梳理流程,分工协作 1.5 1.5
构建原型模型 10 15
优化修改 5 3

八、 总结

102202134承宇豪:
在本项目的整个周期中,我们成功地明确了学生群体的核心需求,并围绕这些需求构建了一个旨在促进跨专业合作的平台。通过细致的需求分析,我们确立了项目的目标,包括提供一个合作伙伴发现机制、时间安排工具和资源共享平台。在执行过程中,团队成员分工明确,协作流畅,尽管在原型设计工具的选择上遇到了挑战,但我们通过创新的团队协作账号策略,有效解决了实时协作的问题。

我们采用了短迭代的开发模式,确保了原型设计的持续改进和优化。内部评审、市场对比分析和用户反馈的结合,为我们提供了多角度的视野,帮助我们更好地理解用户需求并提升产品设计。最终,我们不仅按时交付了项目,而且通过不断的迭代和优化,确保了原型设计的质量满足甚至超越了初始需求。

总的来说,这个项目是一次成功的实践,它展示了团队合作的力量,以及在面对挑战时创新思维的重要性。我们期待将这一平台推向更广泛的用户群体,并继续根据用户反馈进行改进。

102202117杨邑豪:
本次项目以构建一个促进学生跨专业学习与合作的在线平台为目标,从需求调研到原型设计,再到迭代优化,整个过程体现了用户驱动的设计理念。项目团队通过深入分析学生的实际需求,确定了平台的关键功能,包括伙伴匹配、时间管理、资源共享等,确保了项目方向与用户需求的紧密对接。

在项目实施过程中,团队成员各司其职,展现了高效的协作能力。面对原型协作难题,团队迅速调整策略,通过建立团队协作账号,实现了多人在线协同工作,有效提升了工作效率。项目中的评审和反馈机制,通过内部审查、市场分析和用户建议的多维度评估,确保了设计方案的实用性和创新性。

尽管项目时间紧迫,但团队通过敏捷的迭代开发模式,快速响应用户反馈,不断调整和完善原型设计,最终提交了一个既满足功能需求又具有良好用户体验的设计方案。项目的顺利完成,不仅提升了团队成员的协作和解决问题的能力,也为学生群体提供了一个宝贵的学习和合作工具。

总结来说,该项目是一次富有成效的探索,它不仅实现了预期目标,还为团队积累了宝贵的项目管理和协作经验,为未来类似项目的开展奠定了坚实的基础。

posted @ 2024-09-27 22:37  念影苑  阅读(10)  评论(0编辑  收藏  举报