项目 内容
这个作业属于哪个课程 2025春季软件工程(罗杰、任健)
这个作业的要求在哪里 [I.2]个人作业:软件案例分析
我在这个课程的目标是 在PSP中精进个人代码技术,在TSP中提高团队合作凝聚力
这个作业在哪个具体方面帮助我实现目标 分析市场上的软件案例,全面地了解软件工程的原理在好/坏软件上的作用

个人作业:软件案例分析

0.选题

LibreOffice是一款免费、开源的办公软件套件,它支持Windows、Mac和Linux多平台,功能强大并且高度的可定制化。它提供了一整套办公软件,如Writer(文字处理)——替代 Microsoft Word、Calc(电子表格)——替代 Microsoft Excel、Impress(演示文稿)——替代 Microsoft PowerPoint、Draw(矢量绘图)—— 用于绘图和流程图、Math(公式编辑器——支持数学公式编辑。作为一款免费开源的软件,我在学习生活中也会经常使用它,所以想到分析一下这个软件。

1.调研、评测

1.1 软件评测

1.1.1 软件使用

日常生活常用例如,使用Writer功能,编辑修改并查看没有什么不同。

保存时默认使用odf系列格式,也支持各种类型。

使用Impress打开ppt和制作修改ppt。

使用Draw打开pdf,并可直接编辑修改内容,比较方便。

LibreOffice内置Math公式编辑器支持LaTeX语法,可以直接输入数学表达式。

也可以直接插入进任何其他文本。

1.1.2 软件分析

使用的基本流程:打开启动界面-->选择应用模块-->文档操作、编辑内容-->保存与导出。

总体而言,LibreOffice能很好地满足个人用户、中小型企业、教育用户等办公基本需求,特别适合以下这些方面:文字处理、数据表格处理、简单演示文稿制作、数据库管理、数学公式编辑、PDF文件基本编辑,尤其对于需要跨平台和免费无授权成本的用户需求,LibreOffice是非常适合的选择。

LibreOffice在界面设计上采用类似MS Office 2010风格,也可以自己选择主题和布局。不过有些高级功能对于初用者并不友好,需要花时间摸索。

在功能上,完全支持文档、表格、PPT、数据库、绘图、公式等全套办公功能,用于日常已经绰绰有余。

在准确度上,支持导入导出主流格式(docx,xlsx,pptx,PDF等),但对MS Office格式兼容性仍不完美。

在用户体验上,我认为免费、无广告就是它的最大优势,不过在启动速度、性能上稍逊MS Office。

1.1.3 改进意见

我认为最影响体验的在于它与Microsoft Office文件(尤其是docx、xlsx、pptx)的兼容性仍不完美,改进这一点应该放在首位。

其次是一些微小的方面,例如启动速度稍慢,首次打开pdf有时会出现字体过暗现象(需要用户自行调整)。

1.1.4 用户调研

采访对象的背景:选择王德庆老师软件工程班的沈锎同学进行采访。作为一名计算机学院的大学生,他有在日常学习和项目中频繁接触文档编辑、表格处理、PPT制作等办公需求,我选择将问题以调查问卷的方式发送给沈锎同学,方便进行系统作答。



以下是沈锎同学的回答:

您会主要使用LibreOffice的哪些产品栏目?

Impress,Writer,Calc,这三个是最常用的,也即对标于 Office 的 PowerPoint,Word 与 Excel

您在使用过程中会遇到的问题和亮点?

亮点:提供了一个在 Linux 环境中处理这些文档的途径,并且仅作为浏览的话,没有什么过大的问题。同时,开源软件的形式也很吸引人,对资源的占用也较少。原生支持使用 Python 作为宏脚本,可能可以发挥意想不到的作用,但我并未深度体验过。

问题:无法与主流的 Office 系列做到完美兼容,这是我认为目前最大的问题。同时,有一些操作按钮比较陌生,可能需要一定的前期熟悉成本。

从用户体验的角度来说您认为还有哪些需要改进的地方?

我认为最需要改进的便是与 Office 系列产品的兼容问题。其次,做好用户引导,并且利用自己开源的属性,能够添加一些让人耳目一新的功能,甚至可以增大自定义的空间。

1.1.5 评测结论

a) 非常不推荐

b) 不推荐

c) 一般

d) 好,不错

e) 非常推荐

综合上述考虑,LibreOffice在解决大部分需求的同时仍有较大改进空间,故我的结论是:d)好,不错

1.2 bug分析与提交

我的测试环境为:Windows 11 23H2 / LibreOffice 25.2

bug的严重性等级评价:

五颗星:系统核心功能崩溃或丢失数据,致命性安全漏洞,严重影响生产力,无可替代的功能无法正常使用。

四颗星:主要功能无法正常使用,存在安全性隐患(如权限绕过、数据泄露),用户体验恶劣,但有临时解决方案或替代方案。影响大部分用户日常工作。

三颗星:部分功能异常或体验问题,虽不影响整体工作,但造成用户困扰或效率降低。。

二颗星:较小功能性问题或偶现 Bug,对用户体验有影响但不会阻碍工作。

一颗星:微小的体验不佳、UI/UX 可优化点或非功能性建议,几乎不影响实际使用。

1.2.1 bug1

1.2.1.1 bug复现

可复现性:必然触发

复现步骤:1.打开任意ppt文档。

2.使用PgDn按键向下翻阅几页 。

3.使用滚轮向下翻页 则会发现会直接跳转到第二页的稍靠下的部分。

1.2.1.2 bug分析

可能成因:在使用PgDn翻页时软件并没有更改缓存,使得在使用滚轮时发生与用户预期不同的行为。

bug的严重程度:2星

软件团队为何未修复:可能因为测试不够全面并且确实对于使用影响较小

1.2.1.3 bug改进建议

使用滚轮时从当前位置向下浏览,不要回退。

1.2.2 bug2

1.2.2.1 bug复现

可复现性:偶尔触发

复现步骤:1.使用writer编写文档。

2.保存后使用WPS打开会出现意外换行。

1.2.2.2 bug分析

可能成因:这类问题应该是与MS Office格式兼容性问题,笔者在使用时偶尔会遇到但并不知道具体的复现步骤。但是这类问题确实会对用户的使用造成极大困扰。

bug的严重程度:4星

软件团队为何未修复:可能因为开发人员的疏忽和测试人员测试不全面造成的。

1.2.2.3 bug改进建议

多测试并解决Office系列产品的兼容问题。

2 分析

2.1 工作量分析

LibreOffice是一个集成了文字处理(Writer)、电子表格(Calc)、演示文稿(Impress)、矢量绘图(Draw)、数据库(Base)、数学公式编辑(Math)等多种功能的大型办公套件。

根据保守估计如下表:

模块 工作量估计 人员投入 时间预估
Writer (文档编辑器) 30% 3人 12个月
Calc (电子表格) 25% 3人 10个月
Impress (演示文稿) 10% 2人 5个月
Draw (绘图)、Base (数据库) 15% 2人 6个月
Math (公式编辑器) 5% 1人 3个月
UI设计与适配、多平台兼容性 10% 1~2人 6个月
测试 & 性能优化 & Bug修复 5% 所有人 持续投入
安全性、文件格式兼容 (ODF、PDF) 10% 2人 6个月

6人团队全职从0开发大致需要2.5到3年。

2.2 软件质量分析

目前市场上的主流软件还有Microsoft Office、WPS Office和Google Workspace等。

LibreOffice的优势如下:

维度 优点
功能完整性 覆盖常用办公需求,支持 ODF、Microsoft Office 格式,高度自定义。
开源性 完全免费、开源,适合个人用户、教育机构、政府部门替代付费办公软件。
跨平台支持 Windows、macOS、Linux 全平台支持。
扩展性 支持插件与宏,自由度高。

劣势如下:

维度 缺点
兼容性 对 Microsoft Office 文件(尤其是复杂格式如宏、特殊模板)的兼容度仍存在差异。
性能表现 大数据表格或复杂文档处理性能不足,易出现卡顿。
安全性 部分安全机制(如实时协作、云同步加密)不如商用产品完善,需用户自行配置。

综上所述,这个产品的质量在同类产品可排至前3,并且考虑到开源免费,对于特定人群是更加适合的选择。

3 建议和规划

3.1 市场现状

3.1.1 市场概况

2024年中国基础办公软件用户数量约7.88亿人,预计2025年用户数量将达到8.15亿人,直接用户和潜在用户基数巨大。

3.1.2 竞争产品

Microsoft Office:定位于需要全面功能和专业支持的企业和个人用户。其优势在于功能强大、兼容性好,但高昂的价格和闭源特性可能限制其在预算有限或偏好开源解决方案的用户中的普及。

WPS Office:定位于需要性价比高且符合本地化需求的用户。其优势在于价格实惠、界面友好且符合中国用户习惯,但在国际市场的影响力相对有限。

3.1.3 产品定位

在办公软件市场,Microsoft Office凭借其强大的品牌影响力和功能优势,占据主导地位。WPS Office在中国市场表现强劲,尤其在移动端拥有领先的市场份额。LibreOffice作为开源解决方案,凭借其免费和开放的特点,吸引了注重成本和开源生态的用户,但在用户界面和某些高级功能上可能存在不足。

3.2 市场和产品生态

3.2.1 核心用户群

LibreOffice的核心用户群体包括以下几类:教育和学术领域:教师、学生和研究人员等。政府和公共部门:寻求降低软件许可成本并确保数据安全的政府机构。中小型企业:需要功能全面且成本效益高的办公软件解决方案的企业。个人用户:对开源软件感兴趣或希望避免高额软件许可费用的个人。

典型用户特征:

学历:高中及以上,许多用户具有高等教育背景。

年龄:从青少年到老年人,主要集中在20-50岁之间。

专业:教育、行政、IT、财务等领域。

收入:从学生到中高收入专业人士。

表面需求:免费替代Microsoft Office,满足基本办公需求(文档编辑、表格处理、演示文稿、PDF导出、数据库管理)。跨平台使用(Windows、Linux、Mac均支持)。

潜在需求:希望软件轻量、快速启动、稳定性强。拥有更强的兼容性,特别是对MS Office格式的无缝支持。

3.2.2 用户生态

可以通过开源社区和技术服务平台,打造一个开放、互助、可持续发展的LibreOffice用户生态,降低推广门槛、提高用户粘性,同时促使软件质量持续提升。

3.2.3 产品生态

LibreOffice是一个开源的办公套件,其核心组件包括:Writer、Calc、Impress、Draw、Base、Math。这些组件共同构成了一个完整的办公解决方案,彼此集成,提供一致的用户体验。此外还有针对特定用户需求进行了定制和扩展的衍生产品。

3.3 产品规划

3.3.1 产品新功能

在LibreOffice的基础上,设计一个实时协作编辑功能,允许多个用户同时编辑同一个文档,并实时查看彼此的修改。必要性及需求:随着远程办公和在线协作的普及,实时协作编辑已成为现代办公软件的关键需求。目前,LibreOffice 在这方面的功能相对薄弱。引入实时协作编辑功能将显著提升其竞争力,满足用户对高效协作的需求。

NABCD分析:

N(Need,需求):满足用户对实时协作编辑的强烈需求,提升团队协作效率。

A(Approach,做法):在现有架构上开发实时协作模块,利用云服务和本地网络,实现多用户实时编辑。

B(Benefit,好处):提供开源、免费的实时协作编辑功能,降低企业和个人的使用成本。

C(Competitors,竞争):相比其他开源办公套件,增加实时协作功能将使 LibreOffice 更具竞争力。

D(Delivery,推广):通过社区推广、与教育机构合作等方式,扩大该功能的影响力。

3.3.2 团队分工

项目经理(1人):负责整体规划、协调和进度控制。

后端开发工程师(2人):负责服务器端协作功能的开发与维护。

前端开发工程师(1人):负责客户端界面和用户交互的实现。

测试工程师(1人):负责功能测试、性能测试和兼容性测试。

UI/UX 设计师(1人):负责界面设计和用户体验优化。

3.3.3 详细规划

第1-2周:需求分析与技术调研。

第3-4周:系统架构设计与数据库设计。

第5-8周:后端功能开发,包括实时同步机制、冲突处理等。

第9-12周:前端界面开发与交互设计,实现实时协作界面。

第13-14周:功能测试与性能优化,确保系统稳定性和响应速度。

第15周:用户体验测试与反馈收集,进行必要的调整。

第16周:发布改进版本,并制定后续维护计划。

[I.2]个人作业:软件案例分析的更多相关文章

  1. [软工作业]-软件案例分析-CSDN

    [软工作业]-软件案例分析-CSDN(app) 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 个人博客作业-软件案例分析 我在这个课程的目标是 ...

  2. BUAA软件工程个人作业-软件案例分析

    BUAA个人博客作业-软件案例分析 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 软件案例分析 我在这个课程的目标是 学习开发软件的能力 这个作 ...

  3. 2020BUAA软工个人博客作业-软件案例分析

    2020BUAA软工个人博客作业-软件案例分析 17373010 杜博玮 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 个人博客作业-软件案例分 ...

  4. 软件工程个人博客作业-软件案例分析:VS与VS Code

    项目 内容 本作业属于北航 2020 年春软件工程 博客园班级连接 本作业是本课程个人项目作业 作业要求 我在这个课程的目标是 提高软件开发能力.团队协作能力 这个作业在哪个具体方面帮助我实现目标 提 ...

  5. “深度评测官”——记2020BUAA软工软件案例分析作业

    项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任建) 这个作业的要求在哪里 个人博客作业-软件案例分析 我在这个课程的目标是 完成一次完整的软件开发经历并以博客的方式记录开发 ...

  6. SE_Work4_软件案例分析

    项目 内容 课程:北航-2020-春-软件工程 博客园班级博客 要求:分析软件案例 个人博客作业-软件案例分析 班级 005 这个作业在哪个具体方面帮助我实现目标 分析对比一类软件,学会规划分析软件的 ...

  7. BUAA SE 软件案例分析-CSDN

    Q A 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 个人博客作业-软件案例分析 我在这个课程的目标是 系统地学习软件工程开发知识,掌握相关流程和技术,提升 ...

  8. BUAA2020软工作业(五)——软件案例分析

    项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 软件案例分析作业 我在这个课程的目标是 进一步提高自己的编码能力,工程能力 这个作业在哪个具体方面 ...

  9. [2017BUAA软工]第三次博客作业:案例分析

    第三次博客作业:案例分析 1. 调研和评测 1.1 BUG及设计缺陷描述 主要测试博客园在手机端上的使用情况. [BUG 01] 不能后退到上一界面(IOS) 重现步骤:打开博客首页中任意博文,点击博 ...

  10. BUAA软件工程_软件案例分析

    写在前面 项目 内容 所属课程 2020春季计算机学院软件工程(罗杰 任健) (北航) 作业要求 软件案例分析 课程目标 培养软件开发能力 本作业对实现目标的具体作用 对案例进行分析以学习软件开发的经 ...

随机推荐

  1. RestTemplate HttpClient详解及如何设置忽略SSL

    @Configuration public class ScheduleRestConfigurer { @Bean public RestTemplate restTemplate() { Rest ...

  2. Ubuntu终端输入异常、无法退格(删除文本)、使用方向键命令

    1 起因 为了学习嵌入式开发安装去安装的ncurses库,使用命令:sudo apt-get install libncurses5-dev导致系统自带的ncurses-base被自动删除. 2 出现 ...

  3. Qt编写监控Onvif综合示例(支持云台/预置位/抓图/事件订阅等)

    一.功能特点 广播搜索设备,支持IPC和NVR,依次返回. 可选择不同的网卡IP进行对应网段设备的搜索. 依次获取Onvif地址.Media地址.Profile文件.Rtsp地址. 可对指定的Prof ...

  4. Qt编写物联网管理平台43-告警短信转发

    一.前言 系统在运行过程中,会实时采集设备的数据,当采集到的数据发生报警后,可以将报警信息以短信的形式发送给指定的管理员(可以是多个),这样管理员就算不在现场,也能第一时间知道哪里发生了报警,可以紧急 ...

  5. JVM实战—4.JVM垃圾回收器的原理和调优

    大纲 1.JVM的新生代垃圾回收器ParNew如何工作 2.JVM老年代垃圾回收器CMS是如何工作的 3.线上部署系统时如何设置垃圾回收相关参数 4.新生代垃圾回收参数如何优化 5.老年代的垃圾回收参 ...

  6. 得物自研客服IM中收发聊天消息背后的技术逻辑和思考实现

    本文由得物技术WWQ分享,原题"客服发送一条消息背后的技术和思",本文有修订和改动. 1.引言 在企业IM客服场景中,客服发送一条消息的背后,需要考虑网络通信.前端展示.后端存储以 ...

  7. 痛苦调优10小时,我把 Spark 脚本运行时间从15小时缩短到12分钟!

    周一我就有个困惑,还写成文章了:如何从 Spark 的 DataFrame 中取出具体某一行,里面提了自己猜想的几种解决方案. 没想到这么快就要面对这个问题了,我用小孩子都听得懂的例子描述一下我在干什 ...

  8. VSTO踩坑记录(1)- 从零开始开发outlook插件

    概述 vsto是微软提供的一种开发office插件的一种技术,现在看来有点落后了,不过项目需要的情况下,总不能跟领导说这活干不了吧?附上官方文档 安装好必备的开发环境,我用的是vs2022,在安装程序 ...

  9. 10.3 - AM - 模拟赛 总结

    复盘 T1 很水,一道异或求和,但是某两位仁兄因没打括号而死. T2 很水,一道字符串处理,但是我和某位仁兄因没特判而死(虽然没有 hack 掉我,所以我理论上还是满分). T3 不水,看了很久,没想 ...

  10. 深入LinkedBlockingQueue实现原理

    学习BlockingQueue之LinkedBlockingQueue实现原理   一:概念 LinkedBlockingQueue是一个用链表实现的有界阻塞队列.此队列的默认和最大长度为 Integ ...