软件工程第一次结对作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/SE2024
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/SE2024/homework/13261
这个作业的目标 需求分析与原型设计,初步实践软件开发合作
学号 102201235
合作伙伴 102201234洪庆杨

原型链接

https://rp.mockplus.cn/run/N60pdp900M/4jaEGMkFZy?cps=expand&rps=expand&nav=1&ha=0&la=0&fc=1&dt=iphoneX&out=0&rt=1&as=true

一、《构建之法》阅读总结

1. 软件工程师的成长(第3章)

通过阅读第三章,我理解到软件工程师的成长不仅仅体现在年资上,还包括多维度的能力评估和提高。书中特别强调了IC(Individual Contributor,个人贡献者)的流程,其主要步骤包括:

  • 理解问题和任务:通过分析需求,实验、原型等方法理解需求;
  • 提出方案与评估工作量:包括参考已有解决方案;
  • 方案讨论与决定:与团队协作确定最终方案;
  • 执行与验证:将方案变为代码并验证可行性;
  • 合作与测试:与团队其他成员测试修复缺陷;
  • 结果负责:交付后对成果负责。

此外,初级工程师的成长路径不仅在于对技术技能(如Java、C/C++等)的掌握,也在于积累行业知识和经验,如医疗、金融等领域的认知。同时,理解通用的软件设计思想、软件工程理念也是成长的重要方面。

职业技能方面,工程师需要提升自我管理、沟通表达、团队合作及执行能力,这些能力在团队中至关重要。行胜于言,实际工作成果和对产品的用户评价往往是最直接的衡量标准。

2. 软件开发中的工作量和质量衡量

工作量与质量的衡量可通过项目规模(代码行数或功能点)和时间(小时、天、月等)来表示。交付质量可通过缺陷数、返工率来衡量。项目的准时交付能力是衡量工程师执行力的另一重要标准。

3. NABCD模型(第8章)

NABCD模型(Need、Approach、Benefit、Competitors、Delivery)在产品设计中的应用尤其重要。在“Find You Team”APP的设计中,NABCD模型为开发提供了清晰的框架:

  • N(需求):许多学生希望通过跨学科项目提升综合能力,但因人脉和资源有限,跨专业合作机会较少。
  • A(方法):APP提供项目发布、人才匹配、聊天与项目管理功能,帮助学生快速找到合适的团队合作伙伴。
  • B(好处):通过APP,学生能够提升合作效率、积累人脉,并增加实际项目经验。
  • C(竞争):相比现有的社交媒体,APP更专注于跨学科合作,具有专业认证和项目管理功能,形成差异化竞争优势。
  • D(交付):通过设计用户友好、功能丰富的APP,将为学生们提供一个高效的合作平台,增加其跨学科合作的机会。

4. 团队对个人的期望

在团队中,个人的贡献不仅体现在技术上,还包括以下方面:

  • 有效沟通:能够与队友顺畅交流;
  • 按时交付:承诺完成任务并按时交付;
  • 承担团队角色:愿意接受并高效完成不同任务;
  • 全力参与团队活动:积极参加代码复审、评审会议等活动;
  • 流程遵守:个人能力再强也需要遵守团队的工作流程;
  • 理性工作:基于事实和数据开展工作,避免感情化的处理方式。

5. 常见的思维误区

工程师在成长过程中需避免以下常见误区:

  • 分析麻痹:过度分析导致迟迟不动手;
  • 不分主次:试图解决所有问题,无法聚焦核心;
  • 过早优化:陷入局部问题,忽视整体目标;
  • 过早泛化:在需求未确定时扩大项目范围,造成不必要的复杂性。

6. 实践与思考的平衡

工程师的成长过程中应注重,在必要领域深度钻研,其他领域则达到“知道即可”的水平。通过不断实践和学习,逐步将常见问题转化为自动化思维,以便专注于解决更高层次的问题。这种对技能的精进与思维的磨练,是成为优秀软件工程师的前提。

7. 需求分析与功能优先级(第8章补充)

在需求分析阶段,确保明确软件产品的功能需求至关重要。常见的用户调研方法包括焦点小组、深入面谈、用户调查等。产品功能应根据资源有限性进行优先级划分,决定哪些功能需要优化、哪些功能可以维持现状,甚至砍掉某些功能。

通过合理分配资源,团队能专注于开发对用户满意度提升最有价值的功能。此外,在功能定位中,应明确哪些功能为杀手功能(决定用户是否选择产品的核心功能),哪些为必要需求,哪些为附加需求。这有助于提升产品整体质量,并确保开发团队的工作重点明确。

8. 总结

通过阅读《构建之法》第三章和第八章,我学到了工程师成长的关键点及如何设计更为科学的产品开发流程。工程师不仅要在技术能力上不断精进,还需要在职业技能、沟通合作、流程遵守等方面有明确提升。利用NABCD模型进行系统性产品设计,将更好地满足用户需求并形成竞争优势。同时,迭代开发和理性工作方式的应用,使得工程师能够在复杂的项目中有效应对挑战,最终实现高质量的交付。

二、作业的NABCD模型

1、需求分析 (N - Need)

学生们需要一个平台来发起、寻找、和参与跨学科项目,提升合作机会,突破人脉和资源的局限性。

2、关键功能与界面设计 (A - Approach)

风格:命名为协力通,背景和logo采用淡粉色风格,更加惹人喜欢,让同学们在交流的过程中更心平气和。

1.登陆/注册界面

  • 功能:
    用户注册与登录界面,用户可以选择使用学号和邮箱进行注册或者登陆。
  • 界面要素:
    输入框(学号、用户名、密码、邮箱)
    注册和登录按钮
    用户协议等简要说明

2. 主页

  • 功能:
    根据用户的专业和兴趣,个性化推荐可能感兴趣的项目或合作伙伴。
    主要展示正在进行的热门跨学科项目,按领域或合作需求进行分类(如:设计、编程、市场营销等)。
  • 界面要素:
    导航栏:主页、项目集、聊天、我
    顶部搜索框

3. 项目集

  • 功能:
    用户可以点击查看自己发起或加入的项目
    用户可以搜索或创建自己的想要的项目
  • 界面要素:
    项目描述区
    创建按钮
    搜索按钮

4.聊天

  • 功能:
    展示所有聊天对话框
    如同微信的聊天功能,让同学们进一步相互了解,沟通项目的具体细节
  • 界面要素:
    列表显示聊天对话框
    点击头像展示他人信息

5.我

  • 功能:
    展示个人资料,包括头像、昵称、个人信息、我的喜欢、我的申请,最下面展示自我介绍
  • 界面要素:
    头像(旁边是名字),下面为个人信息、我的喜欢、我的申请的按钮,最下面展示自我介绍

6.个人信息

  • 功能:
    编辑个人资料,包括头像、昵称、专业、学号、密码、邮箱等个人信息
    编辑供同学们查看的自我介绍
  • 界面要素:
    左上角是保存并返回按钮
    上半部分为个人信息编辑
    下半部分为自我介绍

7.我的喜欢

  • 功能:
    收藏我喜欢的项目
  • 界面要素:
    左上角是保存并返回按钮
    其他部分展示项目列

8.我的申请

  • 功能:
    查看我申请的项目和确认是否好友
  • 界面要素:
    上半部分为好友申请
    下半部分为项目申请

9.搜索界面

  • 功能:
    展示搜索结果(某个项目的信息、同学信息)

10. 他人信息

  • 功能:
    展示他人的头像昵称和自我介绍
    添加他人为好友
    进入与他人的聊天界面
  • 界面要素:
    上面头像昵称
    中间添加他人为好友的按钮和进入与他人的聊天界面的按钮
    下面展示对方自我介绍

11.创建项目

  • 功能:
    用户可以在该页面创建项目
  • 界面要素:
    项目名称、成员、信息、公开库

3.解决方案的优势 (B - Benefit)

  1. 促进跨学科知识交流与合作
    该平台不仅仅是项目对接工具,更是一个知识共享的社区,学生可以通过平台讨论各自领域的知识,帮助跨学科项目的成员更好地理解彼此的工作思路与方法,提高协作效率。

  2. 提升个人能力与展示机会
    学生参与不同学科的项目可以积累宝贵的实战经验。平台提供的功能可以记录学生的技能和项目履历,增强他们在未来求职中的竞争力。

  3. 高效的沟通与协作工具
    平台配备多样化的协作工具,如多语言支持、任务清单生成等,甚至可以通过AI优化团队沟通方式,减少跨学科交流中的障碍,提升团队协作效果。

平台的这些优势不仅能够提高跨学科合作的成功率,还能为学生的职业发展打下坚实基础,使其成为促进跨学科协作的有效工具。

4.竞争分析 (C - Competition)

  1. 现有替代方案
    目前大学生通常通过以下方式寻找跨学科合作机会:

    • 人脉关系:依靠个人社交网络寻找合作伙伴。
    • 导师引荐:通过导师推荐寻找合适的跨学科学生。
    • 社交平台:使用校内QQ群、论坛或表白墙等平台发布需求。
    • 校园活动:参加跨学科的社团或创新创业类活动,获取合作机会。

    局限性

    • 合作机会有限:依赖社交网络和导师推荐,覆盖面小。
    • 信息不透明:机会的发布和获取渠道分散,信息对称性差。
    • 沟通成本高:跨专业协作中的信息传递不顺畅,容易产生误解。
  2. 竞争优势
    相较于现有方式,平台的竞争优势在于:

    • 高效精准匹配:通过数据算法,快速精确地匹配合作伙伴,大大提升了寻找效率。
    • 综合资源支持:提供项目管理、时间协调等功能,降低沟通和协作的成本。
    • 导师资源整合:平台不仅支持学生间合作,还能引入导师资源,提供更广泛的指导和支持。

与传统的合作方式相比,平台在跨学科协作的组织管理和合作伙伴匹配方面有着明显的优势,能够有效提升学生间合作的成功率,并具有广阔的市场前景。

5.推广策略 (D - Delivery)

  1. 校园宣传与线上推广
    通过学校的互助群、校内的表白墙等渠道发布宣传信息,直接接触有跨学科合作需求的学生。利用学生社交媒体进行病毒式传播,迅速提高平台的知名度和用户量。

  2. 成立运营团队与工作室
    建立平台的运营团队,招募志愿者或学生作为工作室成员,负责平台的日常维护与技术支持,同时通过校园活动提高平台的曝光率,吸引更多学生参与。

  3. 开放源代码,扩大生态圈
    在平台初步运营成功后,可以考虑将部分源代码开放给开发者社区,鼓励不同学校或组织根据自身需求定制和扩展平台功能。通过这种方式,吸引更多高校加入,形成更大的校园生态圈,进一步扩大平台的影响力。

  4. 校园大使计划
    在各大高校中招募平台校园大使,负责推广和组织跨学科项目。校园大使可以定期举办跨学科合作的讲座和沙龙,帮助学生更好地了解平台的功能和优势,并鼓励更多学生注册使用。

  5. 与校内导师和部门合作
    与学校的相关部门(如创新创业中心、学生事务部)合作,通过他们的渠道推广平台。同时,与导师们合作,鼓励他们将学生推荐到平台进行跨学科合作,进一步增加平台的使用频率和可信度。

  6. 策划线上与线下活动
    定期组织跨学科创新挑战赛或黑客松等线上与线下活动,吸引学生参与并利用平台完成项目。通过这种方式,学生不仅能获得实际的合作体验,还能进一步熟悉平台的各项功能,促进平台的持续使用和推广。

平台通过多种推广策略,将在校园内外迅速扩展其影响力,吸引更多用户参与,并逐步建立起一个稳定的用户基础,成为跨学科合作领域的首选平台。

三、UML用例图

四、流程图

五、设计页面

设计总览

软件主页

项目集

聊天沟通

个人介绍

六、工作过程

  1. 需求分析
    在设计小程序页面之前,首先需要对需求进行全面分析。与客户或项目负责人讨论,明确目标用户、核心功能、使用场景等。

    • 用户需求:了解用户的痛点,确定小程序解决的问题和核心功能,要注重不同专业的同学跨专业合作的便利和自由性。
    • 业务需求:明确小程序需要满足的业务目标,例如用户注册/登录、项目集的使用、首页的搜索、个人信息的编辑等。
  2. 功能规划与流程图设计
    根据需求,规划小程序的主要功能模块和用户交互流程。创建功能清单并绘制用户流程图,确保每个功能环节逻辑清晰。

    • 功能模块:划分各个功能,如首页、项目集、聊天、我的资料等。
    • 流程图:绘制用户从进入小程序到完成任务的操作流程,明确每一步的交互和跳转逻辑。
  3. 线框图设计
    根据功能规划,制作小程序的低保真线框图(Wireframe)。线框图展示了页面布局和大致的界面结构,便于快速迭代和调整设计。

    • 页面布局:确定各个页面的布局,如导航栏、主要内容区、底部菜单等。
    • 组件布局:明确每个功能模块的组件(按钮、文本框、图片等)的位置和大小。
  4. 用户体验设计
    确保设计符合用户体验的最佳实践,提升小程序的可用性和流畅度。考虑用户行为习惯,设计直观易懂的界面和便捷的交互方式。

    • 简洁清晰:避免复杂的界面设计,确保用户可以轻松找到所需功能。
    • 响应速度:优化页面设计,减少加载时间,提升用户交互的即时性。
    • 触控优化:考虑手机屏幕的触控特点,确保按钮大小适中,交互操作顺畅。

七、psp表格

PSP 预计耗时 (单位:小时) 实际耗时
阅读《构建之法》 1 1
需求分析 1 1
项目准备工作 0.5 3
构建原型模型 4 6
调试和修改 1 0.5
复盘与总结 0.5 3

八、总结

在此次手机小程序页面设计工作中,经历了从需求分析到完成设计的流程,不仅增强了设计与开发的能力,还对用户体验、界面设计有了更深的理解。以下是本次设计工作中的主要收获:

  1. 深入理解用户需求
    通过需求分析环节,学会了如何从用户的角度出发,明确他们的需求和痛点。这不仅帮助我设计出符合用户期望的功能,还提升了我在用户研究和需求定义上的能力。
    收获:学会了如何更系统化地分析用户需求,并能将这些需求转化为可执行的设计方案。

  2. 强化了用户体验设计思维
    在设计过程中,深刻体会到用户体验设计的重要性,尤其是在手机端,小屏幕下的布局、操作便捷性和页面响应速度对用户体验有极大的影响。我通过多次优化交互细节和视觉设计,提升了小程序的易用性和流畅度。
    收获:加深了对用户体验的理解,特别是在简洁设计、触控优化和响应速度方面的思考与应用。

  3. 提升了视觉设计能力
    从线框图到高保真原型的设计过程,让我更加熟练地使用设计工具摹客,并学会了如何制定视觉规范,保证整个小程序界面的风格统一。同时,学习了如何平衡美观与功能性,既要吸引用户,又要保持操作简洁高效。
    收获:提升了视觉设计和高保真原型制作的能力,并能在视觉效果和用户操作之间找到平衡点。

  4. 掌握了团队协作的技巧
    在阅读到设计的过程中,和我的队友进行了密切合作,学会了如何通过详细的设计文档和沟通,确保设计方案在开发实现中的一致性。

收获:本次作业让我熟悉了设计工具摹客,增强了跨团队协作的能力,理解了设计与开发之间的工作流程衔接,并学会如何与开发团队高效沟通,我深刻体会到了团队合作的重要性,以及如何进行有效的交流与分工。

posted @ 2024-09-27 17:56  ikunzeng  阅读(8)  评论(0编辑  收藏  举报