软件工程结对作业(第一次之需求分析和原型设计)

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/SE2024
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/SE2024/homework/13261
这个作业的目标 学习使用原型软件并根据客户的需求来设计原型图、流程图,学会团队协作
学号 102201211
结对成员学号 102201317

一.《构建之法》阅读成果

第三章:软件工程师的成长

1.内容概述

第3章深入探讨了软件工程师从初学者到专家的成长之路,强调了技术技能、问题解决能力、软件设计思维、团队协作与沟通等多方面能力的综合提升。作者通过分享个人及业界经验,指出软件工程师应持续学习,关注新技术,同时培养良好的职业态度和道德观念。

2.阅读收获

2.1职业生涯路径的多样性

本章首先打破了传统意义上的单一职业路径观念,指出了软件工程师可以根据个人兴趣和发展意愿,选择不同的成长路线。无论是专注于技术深度,追求成为某一领域的专家;还是拓宽视野,转向项目管理或团队领导角色,都有其独特的价值和机遇。

2.2技能树的扩展

除了硬核的编程技能之外,软实力同样至关重要。沟通能力、团队协作、问题解决技巧以及持续学习的态度被高度强调。这些软技能不仅能促进工作效率,还能增强个人在职场中的影响力和适应力。

2.3终身学习的心态

技术行业变化迅速,保持好奇心和求知欲,主动寻求新知识,是每个工程师必须拥有的态度。定期参加培训课程、阅读专业文献、参与社区活动,甚至自学新技术,都是提升自我的有效途径。

2.4心态调整与抗挫力

软件工程师面临的挑战往往伴随失败和挫折。培养积极向上的心态,学会从失败中吸取教训,而不是沉溺于负面情绪,是非常重要的。建立心理韧性,对待工作和生活保持乐观和坚韧不拔的态度。

第八章:需求分析

1.内容概述

第8章详细阐述了需求分析在软件开发过程中的重要性,并介绍了NABCD模型作为需求分析的有效工具。NABCD模型从用户需求(Need)、做法(Approach)、好处(Benefit)、竞争(Competitors)、推广(Delivery)五个维度全面分析软件产品的市场定位和发展策略,帮助团队明确产品方向,减少开发过程中的不确定性和风险。

2.阅读收获

2.1需求分析的核心作用

本章开篇便强调了需求分析在软件开发过程中的核心地位,它不仅是项目启动的第一步,更是决定软件功能是否符合用户期待的关键环节。没有明确且详细的需求,后续的设计、编码和测试将缺乏方向,可能导致资源浪费和项目延期。

2.2NABCD模型的应用

NABCD(Need、Approach、Benefits、Competition、Delivery)模型被引入作为需求定义的有效工具。这一模型要求从用户需求、解决方案、利益、市场竞争和产品差异化的角度去思考和阐述需求,确保需求文档的完整性和说服力。

2.3需求生命周期管理

    1. 需求捕获与细化:通过各种沟通渠道和技术手段(如访谈、问卷、现场调研),全面搜集潜在用户和干系人的需求,将其转换为结构化的需求说明。此阶段需注重需求的清晰度、完整性和一致性。
    1. 需求验证与确认:利用原型设计、用户故事、使用案例和其他可视化工具,与干系人一同检验需求的可行性和适用性。通过反复讨论和修改,确保各方对需求有共同的理解,为下一步的设计和开发奠定坚实的基础。
    1. 需求管理与变更控制:建立需求跟踪矩阵,记录每一个需求的状态和历史,便于监控需求的进展和变更情况。设立严格的需求变更流程,包括变更请求的提出、评审、批准和实施,保障变更有序进行,防止因随意更改而导致项目混乱或失控。

二. NABCD模型分析(Need、Approach、Benefit、Competitors、Delivery)

需求 (Need)

用户群体:高校内的学生,尤其是那些有兴趣发起或参与跨学科学术或创业项目的个体。

具体需求:

  • 找到来自其他专业背景的合作伙伴。
  • 能够在一个平台上发布项目需求,吸引有相关技能的同学加入。
  • 解决跨专业团队间的时间协调、目标统一和有效沟通等问题。
  • 寻求持续的支持和资源,推动项目的发展。

Approach(方法)

开发一款在线平台,命名为"CrossCollab",旨在连接不同专业背景的学生,简化跨专业合作的过程。

平台功能包括但不限于:

  • 项目列表:允许用户浏览现有的跨专业项目,按类别搜索,如科技、艺术、社会服务等。
  • 技能匹配:智能推荐系统,根据用户的技能和兴趣自动匹配合适的项目。
  • 沟通工具:内置聊天室和视频会议功能,方便团队成员远程协作。
  • 目标设置与进度追踪:提供模板和工具,协助团队设定里程碑和跟踪项目进度。
  • 资源中心:链接至外部资金来源、导师咨询和专业知识库。

Benefits(收益)

  • 学生能够轻松发现和加入多元化的项目,扩大社交网络,丰富个人经历。
  • 提升学生的跨学科合作能力,增加未来就业市场的竞争力。
  • 促进校园内创新氛围,孵化更多高质量的学术和创业项目。

Competition(竞争分析)

  • 当前存在少量校内外平台尝试连接不同领域的创意人士,但多数集中在特定区域或领域,且功能性较弱。
  • "CrossCollab"通过其全面的功能集和服务范围,能够在竞争中脱颖而出,满足更广泛的需求。

Delivery(交付)

实施步骤:

  • 需求调研:深入了解学生需求,明确平台功能定位。
  • 宣传推广:通过校园媒体、社团合作等方式,提高平台知名度。
  • 运营维护:持续优化平台功能,提供技术支持和用户反馈处理。
  • 效果评估:定期收集用户反馈,评估平台效果,并根据评估结果进行调整优化。

三.思维导图展示

四.主要界面及功能展示

我们使用Balsamiq Mockups工具进行设计,链接:CrossCollab

1.实机演示

2.登录界面

3. 注册流程



4. “首页”界面

5. “团队”界面

5.1 加入团队

5.2创建团队

5.3我的团队

6.“项目”界面

6.1项目库

6.2发布项目

7.“我的”界面

7.1团队交流

7.2 设置与帮助

五.PSP表格

任务 预估时间 实际完成时间
阅读《构建之法》 1 2
需求分析 2 5
分工 1 0.5
绘制思维导图 1 1
绘制流程图 1 2
构建原型模型 5 10
调试和修改 1 0.5
测试 1 0.5
复盘与总结 0.5 1
编写md文档 1 2
总计 14.5 24.5

六.个人总结

102201211 池家益

在本次作业中,我通过阅读《构建之法》第3章和第8章,尤其是NABCD模型,深入理解了如何有效设计和构建软件系统。通过结对合作,我们讨论并细化了客户需求,明确了设计目标。这次作业让我进一步认识到系统设计不仅仅是实现功能,还需要兼顾用户体验、系统安全性和隐私保护等多个维度。

在实际操作中,我们使用了原型设计工具(Balsamiq Mockups)进行功能界面原型的开发,这让我体会到从需求到设计的过程充满挑战,尤其是将复杂的需求转化为简洁、易用的界面。在分工合作中,我也学到了如何与团队成员高效沟通,分配任务并完成整体目标。

虽然在需求分析和原型构建上花费了比预期更多的时间,但通过这个过程,我更加深刻地理解了系统设计和开发的全流程,并意识到时间管理和任务划分的重要性。未来我会更加关注这些细节,以提高效率和产出质量。

总的来说,这次作业让我不仅在技术层面有所提升,也锻炼了团队协作的能力,学会从全局的角度思考问题。

102201317 陈磊

个人总结

在本次作业中,我通过阅读《构建之法》第3章和第8章,尤其是NABCD模型,深入理解了如何有效设计和构建软件系统。通过结对合作,我们讨论并细化了客户需求,明确了设计目标。这次作业让我进一步认识到系统设计不仅仅是实现功能,还需要兼顾用户体验、系统安全性和隐私保护等多个维度。

在实际操作中,我们使用了原型设计工具(Balsamiq Mockups)进行功能界面原型的开发,这让我体会到从需求到设计的过程充满挑战,尤其是将复杂的需求转化为简洁、易用的界面。在分工合作中,我也学到了如何与团队成员高效沟通,分配任务并完成整体目标。

虽然在需求分析和原型构建上花费了比预期更多的时间,但通过这个过程,我更加深刻地理解了系统设计和开发的全流程,并意识到时间管理和任务划分的重要性。未来我会更加关注这些细节,以提高效率和产出质量。

总的来说,这次作业让我不仅在技术层面有所提升,也锻炼了团队协作的能力,学会从全局的角度思考问题。

附上讨论图片

posted @ 2024-09-27 16:54  小池睡不醒  阅读(22)  评论(0编辑  收藏  举报