创新开发平台

创新开发平台

需求分析说明书

目录

  1. 引言 1
    1.1编写目的 1
    1.2项目风险 2
    1.3预期读者和阅读建议 2
    1.4产品范围 2
    1.5参考文献 2
    2.系统总体概述 2
    2.1目标 2
    2.2用户类和特性 3
    2.3运行环境 3
    2.3.1 硬件环境 3
    2.3.2 软件环境 3
    2.4设计和实现上的限制 3
    2.5假设和约束 ( 依赖 ) 4
    2.5.1 产品的 SEO 排名 4
    2.5.3 系统的安全 4
    3.外部接口需求 4
    3.1用户界面 4
    3.2硬件接口 4
    3.3软件接口 4
    3.4通讯接口 4
    4.系统特性 5
    4.1说明 5
    4.2功能需求 5
    5.其它非功能需求 6
    5.1性能需求 6
    5.2安全措施需求 6
    5.3安全性需求 7
    5.4操作需求 7
    5.5软件质量属性 7
    5.6业务规则 7
    5.7用户文档 7

  2. 引言
    1.1编写目的
    本需求分析说明书对本项目第一阶段的内容进行分析,对需求细节和实现方式进行了较为详细的阐述。本需求说明书供业务和科技部门人员、软件需求提供人员、软件的概要设计人员、软件的开发人员、软件的测试人员使用,并作为产品验收确认的依据。
    需求分析是在可行性研究的基础上,将用户对系统的描述,通过开发人员的分析概括,抽象为完整的需求定义,再形成一系列文档的过程。可行性研究旨在评估目标系统是否值得去开发,问题是否能够解决,而需求分析旨在回答 " 系统做什么 " 的问题,确保将来开发出来的软件产品能够真正满足用户的需要。
    构建一个软件系统最困难的工作是确定构建什么。其他任何工作都不会像这部分工作那样,在出错之后会如此严重地影响随后实现的系统,并且在以后修补竟会如此的困难。
    需求分析是一个非常重要的过程,它完成的好坏直接影响后续软件开发的质量。一般情况下,用户并不熟悉计算机的相关知识,而软件开发人员对相关的业务领域也不甚了解,用户与开发人员之间对同一问题理解的差异和习惯用语的不同往往会为需求分析带来很大的困难。所以,开发人员和用户之间充分和有效的沟通在需求分析的过程中至关重要。
    有效的需求分析通常都具有一定的难度,一方面是因为交流存在障碍,另一方面是因为用户通常对需求的陈述不完备、不准确和不全面,并且还可能不断地变化。开发人员不仅需要在用户的帮助下抽象现有的需求,还需要挖掘隐藏的需求。此外,把各项需求抽象为目标系统的高层逻辑模型对日后的开发工作也至关重要。合理的高层逻辑模型是系统设计的前提。
    在进行需求分析的过程中,首先要明确需求分析应该是一个迭代的过程。由于市场环境的易变性以及用户本身对于需求描述的模糊性,需求往往很难做到一步到位。需求分析不仅仅是属于软件开发生命周期早期的一项工作,而且还应该贯穿于整个生命周期中,它应该随着项目的深入而不断地变化。
    此外,为了方便后续的评审和测试等工作,需求的描述应该尽量做到:具体、详细、可以测量和可以实现,并且基于时间。

1.2项目风险
系统安全性风险分析:
用户的安全性十分重要,必须要保护用户的关键信息,为防止用户信息泄露,系统整体会对一些和用户相关的信息采用非对称加密算法RSA进行加密。并定期更新公钥和私钥。以保证用户信息的安全
1.3预期读者和阅读建议
小组成员
审核组成员
相似系统的设计人员
1.4产品范围
基于目前已经成型的javaEE开发技术,采ssm(spring+springmvc+mybatis)技术,整体项目采用分布式微服务架构,注册中心选取zookeeper,采用docker进行部署在linux服务器端。微服务框架选择阿里开源框架dubbo.并且使用nginx进行负载均衡配置。剔除jsp程序(缓解服务器压力),采用目前主流的html+ajax的技术完成页面的交互功能。
1.5参考文献

2.系统总体概述
2.1目标
本安全开发平台的设计的主要目的,是为了便于广大的校园开发着进行技术方面相关的交流和交互,校园开发者可以通过平台的注册页面,成为本平台的一位开发者。开发者可以通过本平台提交自己编写的相关程序和API接口供浏览平台的注册用户使用,本平台也提供了星级排名机制,用户会对你的开放的接口或程序进行给予Star。系统会根据星级来向用户推荐相关程序和API接口。用户还可以对应用进行留言,平台会及时的提醒应用的开发者去查看相关的留言,与用户进行交流。
根据项目的计划,项目目标主要有几个方面:

  1. 实现开发者后台管理界面

  2. 实现开发者上传相关应用的功能

  3. 实现开放平台前端系统架构的搭建

  4. 实现星际评分,和智能推荐功能

    扫描二维码关注公众号,回复: 8920842 查看本文章
  5. 实现用户互动功能
    2.2用户类和特性
    主要用户:校园开发者
    他们能够轻松的熟练使用本系统 ,并将其作为自己的编程交流的主要平台
    本系统的预期使用频度为: 7*24 小时。
    2.3运行环境
    2.3.1 硬件环境
    多台Linux服务器。
    2.3.2 软件环境
    1 、 用 MySQL 作为数据存储数据库;
    2 、 采用 SSM 技术作为系统的解决方案,使系统具有更好的可扩展性;
    3 、 采用 Tomcat 作为系统的应用服务器 ;
    4 、 客户端采用浏览器形式,满足零客户端的易用性要求;
    5 、 采用Nginx作为负载均衡服务器
    6、 采用Redis作为缓存服务器
    7、 采用FastDfs作为分布式文件系统
    8、 采用solr作为搜索引擎服务
    9、 采用linux 网IO技术 epoll技术实现通讯服务器
    10 、采用log4j作为日志管理
    2.4设计和实现上的限制
    设计上,目前这个系统仅仅是未来产品的一部分,必须要保证具有良好的扩展性。实现上,需要一个主机服务器,而且没有开发类似产品的经验等。
    2.5假设和约束 ( 依赖 )
    2.5.1 产品的 SEO 排名
    为了在尽量短的时间内收回对系统的投资,需要尽快的打开市场,提高系统的 SEO 排名,有助于尽快的打开市场,从而能尽快盈利。为下一步的发展奠定基础。
    这个需要专业人士的帮助。

    2.5.2 各个模块之间的稳定协作

系统主要会由用户的几种类型分为几个模块,各个模块之间的稳定协作需要得到保证,保证系统的 24*7 的稳定运行,尽量只保持周期性的维护。
2.5.3 系统的安全
系统的安全是当前网络环境下的一个重要要求,系统的安全不仅关系着自身的盈利等,还关系着用户的各种信息。
系统的安全方面,需要专业人士的帮助。
3.外部接口需求
3.1用户界面
追求尽量简洁的界面,争取直观的传递给客户尽量多的讯息。
采用html.,css ,js+layui进行编写用户界面
3.2硬件接口
不详,需要根据具体的情况具体分析。
3.3软件接口
不详,需要根据具体的情况具体分析。
3.4通讯接口
遵循各种网络协议,满足各种浏览器的需求。
不详,需要根据具体的情况具体分析。
4.系统特性
4.1说明
本系统根据最终用户所具有的不同功能将用户分为以下四类:
1 、 开发者:上传应用,管理,更新应用;
2 、 普通用户:浏览开放平台,使用开发者提供的应用和与开发者交互;
3 、 管理用户:审核应用,为开发者提供保障,解决开发者提出的问题;
4 、 系统管理员:维护系统的正常。
4.2功能需求
4.2.1 开发者功能
简述:开发者界面,修改个人信息,上传应用,更新应用,查看历史应用,查看用户留言

4.2.2 管理员功能
简述:查看开发者用户,审核应用,推送信息(面向开发者),发布公告(面向全体),下架应用
4.2.3普通用户
简述:查看注册信息,浏览应用添加Star,留言,下载应用或调用开放接口,搜索浏览应用
4.2.4 Root用户功能
简述: 添加或更新管理员账号,其余同管理员功能
4.2.5 SSO单点登录系统
简述:采用JWT(java web token)方式,以RS256加密算法编写单点登录系统
4.2.7 分布式文件系统
简述:基于fastDfs编写文件存储系统,存放用户上传的文件信息
4.2.8 搜索引擎服务
简述:基于 solr编写搜索引擎服务,供用户搜索应用
4.2.9 即时通讯服务
简述:基于Epoll编写即时通讯服务,用于平台消息发送

5.其它非功能需求
5.1性能需求
5.1.1 数据精确度
由于涉及到评星数据,对于数据类的信息要保证足够的精确,精确到度。
5.1.2 时间特性
页面刷新时间不能超过 3 秒,页面直接的跳转不超过 4 秒。
满足用户需要快速得到信息的要求,页面的优化要做好,使得每个用户能感觉到能够流畅迅速的查找到自己所需要的信息。
5.1.3 故障处理
页面长时间无响应,提出警告,要求用户刷新。
页面载入时间过长,要有提示,防止用户认为系统有问题。
5.2安全措施需求
1 、 应用日志必须在现有基础上进行精简,对于重复日志记录、无用日志记录进行删减;
2 、 应用日志必须按日保存,每个文件保存应用一天的完整日志;
3 、 历史应用日志必须压缩后按日保存,以减小历史日志文件对硬盘空间的占用;
4 、 历史应用日志必须保留一个月( 30 天),以保证问题出现后,日志可以得到较好的保存。
5.3安全性需求
系统要有足够的防御能力,防御普通黑客的攻击,尽量减少各种可能出现的漏洞,防止用户信息被不良分子窃取。
保证用户权限的正确设置,防止出现各种越权行为,保证系统的正常良好运行。
用户的信息保存采用非对称加密算法RSA加密,保证安全。
5.4操作需求
系统能被现有的工作人员快速掌握并使用
第三方控件的使用:原则是不使用,但必须使用时必须通知提出,讨论通过后方可使用。
5.5软件质量属性
易用性优于易学性,或者可移植性优于有效性。
5.6业务规则
产品面向的用户主要为校园用户,客户端是用户终端上面的浏览器,产品无各种特殊的操作规范。
5.7用户文档
要简洁详细,能让使用者快速入门。

发布了8 篇原创文章 · 获赞 0 · 访问量 215

猜你喜欢

转载自blog.csdn.net/weixin_43897490/article/details/101527506