软件工程需求分析
软件工程需求分析

软件工程需求分析软件工程需求分析是软件开发过程中的重要环节,它旨在准确理解和描述用户对待开发软件的需求,从而确定软件系统的功能和性能特点。
本文将介绍软件工程需求分析的基本概念、方法和步骤,并探讨其在软件开发中的重要性。
一、软件工程需求分析的基本概念软件工程需求分析是指通过对用户需求进行调查和分析,获取用户真正要求的软件功能和性能要求,进而编写规范性的需求文档的过程。
1. 需求需求是对软件系统在特定环境下解决特定问题的能力的一种描述。
需求分为功能需求和非功能需求,前者描述软件系统提供哪些功能,后者描述软件系统的约束条件和质量特性。
2. 需求分析需求分析是对用户需求进行调查、整理和分析的过程。
它包括对需求的理解、确认和规范化等工作,旨在确保软件开发团队正确理解用户需求,为后续开发工作提供准确的依据。
二、软件工程需求分析的方法和步骤1. 需求获取需求获取是通过与用户和相关利益相关者沟通、访谈、观察等方式,了解用户需求的过程。
可以通过需求调研问卷、访谈记录、竞品分析等方式进行需求获取。
2. 需求分析和整理需求分析和整理是将获取到的需求进行整理、分类、去重等处理,以确保需求的准确性和一致性。
可以采用需求规范化的方式,将需求进行形式化描述,方便后续的开发工作。
3. 需求确认需求确认是将需求文档发送给用户和相关利益相关者,征求他们的确认和反馈。
通过与用户的反复沟通和修改,确保需求文档的准确性和完整性。
4. 需求管理需求管理是跟踪需求变化、处理需求变更和控制需求的范围和优先级的过程。
可以使用需求管理工具来进行需求的跟踪和管理,确保需求的变更得到及时处理。
三、软件工程需求分析的重要性1. 确保软件开发的正确方向需求分析是软件开发的第一步,只有准确理解用户需求,才能确保软件开发的正确方向。
通过需求分析,可以明确软件系统的功能和性能特点,为后续的设计、编码和测试提供准确的依据。
2. 提高软件开发的效率和质量通过对用户需求的深入分析,可以发现需求之间的关联性和约束条件,从而合理安排软件开发的工作计划和资源配置,提高开发效率。
软件工程的需求分析

软件工程的需求分析软件工程的需求分析1. 引言软件工程的需求分析是软件开发过程中的一个重要阶段,它的主要任务是明确软件的需求和目标,为后续的设计和开发工作提供基础。
需求分析是软件工程中最重要的一环,它直接影响着软件产品的质量和客户的满意度。
本文将介绍软件工程的需求分析的概念、目的和过程。
2. 需求分析的概念需求分析是指对软件系统的需求进行分析和理解的过程。
简单地说,就是了解用户的需求以及软件系统对用户需求的支持程度。
通过需求分析,可以明确软件系统的功能、性能、约束等方面的需求,为软件设计和开发提供指导。
3. 需求分析的目的需求分析的主要目的是为了确保软件系统能够满足用户的需求,并在软件开发的早期识别和解决问题。
它具体包括以下几个方面的目标:确定软件系统的功能需求,明确软件需要完成的任务和功能。
定义软件系统的性能需求,明确软件需要达到的性能要求,如响应时间、并发能力等。
确定软件系统的约束需求,包括系统的安全性、可靠性、可维护性等方面的要求。
为软件设计和开发提供基础,明确软件开发过程中的目标和约束。
4. 需求分析的过程需求分析的过程通常包括以下几个阶段:4.1. 确定需求户的需求和系统的背景信息。
通过访谈、观察和调研等方法,收集相关的需求信息。
4.2. 需求分析和建模在这个阶段,需求工程师对收集到的需求信息进行分析和建模。
分析主要包括对需求的验证、分类和整理,建模主要是通过使用UML或其他建模语言对需求进行形式化表示。
4.3. 需求规格说明在这个阶段,需求工程师根据需求分析的结果,编写需求规格说明文档。
该文档描述了软件系统的需求和目标,包括功能需求、性能需求、约束需求等。
4.4. 需求验证和确认确认需求规格说明文档。
通过讨论、原型演示等方式,确保需求规格说明文档准确地反映了用户的需求。
4.5. 需求管理在整个需求分析过程中,需求工程师需要进行需求的管理和追踪。
需求管理主要包括需求的变更控制和版本管理,确保需求的变更能够得到合理的处理。
软件工程需求分析(精品PPT)

•将功能和信息结构分配到这些系统元素中 •需求分析的任务
•深入描述软件的功能和性能 •确定软件设计的约束和软件同其它系统元素的接口细节
•定义软件的其它有效性需求
第四页,共七十七页。
需求(xūqiú)分析的具体任务
•需求分析阶段的具体任务:
•确定对系统的综合要求
•系统功能要求
第四章 析根底
软件工程 需求分 (ruǎn jiàn ɡōnɡ chénɡ)
第一页,共七十七页。
第四章 需求分析 根底 (fēnxī)
• 需求(xūqiú)分析的任务与原那么〔重点〕 • 需求分析的任务 • 需求分析的过程 • 软件需求分析的原那么 • 初步需求获取技术 • 需求建模〔重点〕 • 问题抽象、问题分解与多视点分析 • 支持需求分析的快速原型技术 • 需求规格说明书
第二十六页,共七十七页。
教务管理系统调查分析过程 1、认真学习教务管理方面的知识,重点掌握其中
的名词和术语 2、收集目前教务管理方面资料和软件,了解其特
•了解系统的需求 •软件开发是系统开发的一局部,仔细分析研究系统的需求 规格说明,对软件的需求获取是很有必要的
第十六页,共七十七页。
✓需求调查对象
对组织的高层管理者,进行组织管理目标或经营方 针等组织战略问题的调查
对中层的管理者,进行全部业务流的调查 对业务工作人员,进行详细业务信息的调查
✓市场调查 了解市场对待开发软件有什么样的要求;了解市场上 有无与待开发软件类似的系统
第十页,共七十七页。
需求(xūqiú)分析流程
第十一页,共七十七页。
软件需求(xūqiú)分析的原那么
1、需要能够表达和理解问题的信息域和功能域 信息域应包括:
软件工程需求分析

软件工程需求分析软件工程需求分析引言软件工程需求分析是软件开发过程中的重要环节。
它旨在明确软件系统的需求和功能,并将其转化为可执行的软件开发计划和设计方案。
软件工程需求分析涵盖了从问题定义、需求获取、需求分析、需求验证等一系列活动,是项目成功的关键。
问题定义在软件工程需求分析的初期阶段,需要明确问题定义。
问题定义是指明确软件系统所要解决的问题,要求概括、具体和明确。
在问题定义中,需要考虑到系统的目标、功能和约束等因素,并与相关利益相关方进行充分的沟通和协调,确保准确把握问题的本质。
需求获取需求获取是软件工程需求分析的关键环节之一。
通过需求获取,可以获得系统所需的功能和性能要求。
需求获取可以采用多种方法,包括访谈、问卷调查、原型设计、场景分析等。
在需求获取过程中,需要与用户和开发者进行充分的交流和沟通,确保获取准确的需求信息。
需求分析需求分析是软件工程需求分析的核心环节。
在需求分析中,需要将需求信息进行整理和归纳,分析需求之间的关系和约束。
还需要根据需求的重要性和优先级进行排序和分类。
需求分析还包括细化需求,将高层次的需求拆分为更加具体和可执行的任务。
需求分析的结果是建立需求文档,明确系统的功能、性能和约束。
需求验证需求验证是软件工程需求分析的环节。
在需求验证中,需要对建立的需求文档进行审查和验证,确保需求的准确性、完整性和一致性。
需求验证可以采用各种方法,包括代码审查、原型、模型验证等。
通过需求验证,可以发现并修正需求文档中的问题,确保需求与用户的期望和项目的目标一致。
结论软件工程需求分析是软件开发过程中不可或缺的环节。
通过明确问题定义、获取需求信息、进行需求分析和需求验证,可以确保软件系统具备正确的功能和性能,满足用户的需求。
软件工程需求分析需要与用户和开发者进行充分的沟通和协调,确保需求的准确性和一致性。
只有通过有效的软件工程需求分析,才能建立起高质量的软件开发计划和设计方案,保证项目的成功。
软件工程-需求分析

软件工程-需求分析软件工程-需求分析1. 引言2. 需求分析的重要性需求分析是软件工程开发过程中的第一步,其重要性体现在以下几个方面:2.1 确定项目目标与范围在需求分析阶段,通过与用户和相关利益相关方的沟通和交流,可以明确项目的目标与范围。
这有助于开发团队理解用户的需求,明确系统的功能和约束,确保项目的成功实施。
2.2 识别和定义系统需求通过需求分析,可以识别和定义系统的需求。
这包括功能需求、非功能需求以及性能需求等。
明确系统需求有助于后续的设计和开发工作,避免后期的返工和调整。
2.3 提高开发效率通过需求分析,可以避免需求方面的误解和偏差,减少开发过程中的不必要的沟通和调整。
这有助于提高开发效率,减少项目的开发周期和成本。
3. 需求分析的过程需求分析的过程包括以下几个步骤:3.1 需求获取需求获取是需求分析的第一步,主要是通过与用户和相关利益相关方的沟通和交流来收集和获取需求。
常用的需求获取方法包括面对面访谈、问卷调查、用户观察等。
3.2 需求分析与整理在需求获取的基础上,需求分析人员将获取到的需求进行分析与整理,辨识出主要和次要需求,并对其进行详细描述和分类。
3.3 需求验证需求验证是确认需求的正确性和可行性。
这可以通过与用户和相关利益相关方进一步的讨论和确认来完成。
验证需求的过程中,需求分析人员需要与开发人员密切合作,确保需求的准确理解和实现。
3.4 需求文档编写在需求验证完成后,需求分析人员需要将需求整理成文档的形式,以便于记录和交流。
需求文档应该包括需求的详细描述、功能需求、非功能需求、系统界面设计等内容。
4. 需求分析方法和工具需求分析方法和工具可以帮助分析人员更好地完成需求分析工作。
以下是一些常用的需求分析方法和工具:4.1 UML建模UML(Unified Modeling Language)是一种常用的建模语言,可以通过用例图、活动图、类图等来描述系统需求,辅助需求分析和系统设计工作。
软件工程需求分析

软件工程需求分析软件工程需求分析简介概念软件工程需求分析是指对软件系统所需的功能、性能、界面、安全性以及其他质量属性进行详细而全面的研究和描述的过程。
它通过与系统用户和利益相关者的沟通,收集、分析和规范系统需求,以确保最终开发的软件能够满足用户的期望和需求。
目标软件工程需求分析的主要目标是确定系统的功能和质量特性,并将其转化为明确、一致、可验证的需求文档。
通过需求分析,可以帮助开发团队明确开发目标,减少需求变更和开发延期的风险,提高软件开发的效率和质量。
方法软件工程需求分析主要包括以下几个步骤:1. 需求收集:与系统用户和利益相关者进行沟通,了解他们对系统功能和质量的需求和期望。
2. 需求分析:对收集到的需求进行整理、分类、分析和验证,保证需求的准确性、一致性和完整性。
3. 需求规范:将经过分析和验证的需求转化为详细的需求文档,包括需求描述、用例、用户界面设计等。
4. 需求评审:与团队成员和利益相关者一起对需求文档进行评审,确保需求的可行性和合理性。
5. 需求变更管理:及时记录和管理需求的变更,保证需求的稳定性和一致性。
过程软件工程需求分析包括以下几个阶段:1. 确定项目范围:明确软件系统的边界和范围,防止需求蔓延和范围扩张。
2. 收集需求:与用户和利益相关者一起收集需求,包括功能需求、性能需求、界面需求等。
3. 分析需求:对收集到的需求进行整理、分类、规范,并与用户和利益相关者进行进一步的沟通和确认。
4. 验证需求:通过需求审查、原型设计和用户测试等方式验证需求的正确性和完整性。
5. 文档化需求:将验证通过的需求转化为详细的需求文档,确保需求的一致性和可追踪性。
6. 管理需求变更:及时记录和管理需求的变更,防止需求的不断变更导致开发延期和项目失败。
重要性软件工程需求分析在软件开发过程中起着至关重要的作用。
它不仅可以帮助开发人员明确开发目标和需求,还可以减少需求变更和项目失败的风险,提高开发的效率和质量。
软件工程-需求分析

需求分析一、需求分析的概念确定系统必须具有的功能和性能,系统要求的运行环境,并且预测系统发展的前景。
也就是以一种清晰、简洁、一致且无二义性的方式,对一个待开发系统中各个有意义方面的陈述的一个集合。
二、需求的获取(一)定义软件需求获取指的是:软件需求的来源;收集需求的方法;即:需求抓取、需求发现、需求获得(二)需求的类型1.功能性需求描述系统应该做什么,即为用户和其它系统完成的功能、提供的服务2.非功能性需求必须遵循的标准,外部界面的细节,实现的约束条件,质量属性等等(三)需求来源1、用户目标2、领域知识3、投资者4、运行环境5、组织环境(四)需求获取面临的挑战1、客户说不清需求2、需求易变性3、问题的复杂性和对问题空间理解的不完备性与不一致性经验:1)尽可能地分析清楚哪些是稳定的需求,哪些是易变的需求。
以便在进行系统设计时,将软件的核心建筑在稳定的需求上,否则将会吃尽苦头。
2)在合同中一定要说清楚做什么”和“不做什么”(五)需求诱导十项原则1、保持良好的倾听习惯2、做又准备的沟通3、需要有人定期推动4、最好当面沟通5、及时记录所有决定6、保持通力合作7、聚焦并协调话题8、尽量采用图形表示,记录需求9、继续前行原则,不论结果如何10、谈判双赢原则三、需求分析的过程(一)需求确认需求获取→需求提炼→需求描述→需求验证1、需求获取详见:第二章2、需求提炼1)定义对应用问题及环境的理解和分析,为问题涉及的信息、功能及系统行为建立模型。
将用户需求精确化、完全化、最终形成下一步的需求规格说明书。
需求提炼的核心:建立分析模型需求提炼采用多种形式描述需求,通过建立需求的多种视图,揭示出一些更深的问题。
2)需求分析模型3、需求描述1)需求规格说明书定义:软件需求规格说明书(SRS),软件系统的需求规格说明,是对待开发系统的行为的完整描述。
包含了功能性需求和非功能性需求意义:需求分析工作完成的一个基本标志是形成了一份完整的、规范的需求规格说明书作用:是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解,使之成为整个开发的基础。
软件工程软件需求分析

软件工程软件需求分析软件需求分析是软件工程的一个重要过程,它是软件开发的基础。
软件需求分析是在软件工程生命周期中的需求工程阶段进行的,旨在识别和详细描述待开发软件系统的功能、性能、接口、约束等需求。
本文将从软件需求分析的定义、目的、过程和相关方法等方面进行详细阐述。
一、软件需求分析的定义软件需求分析是指对于待开发软件系统的需求进行系统化和详细的分析,以便于理解用户需求和系统规范,并将之转化为可行的技术规范。
软件需求分析旨在为软件开发过程提供指导,确保开发出满足用户需求且具备高质量的软件系统。
二、软件需求分析的目的1.确定软件系统的功能:通过软件需求分析,可以明确软件系统应该具备的功能,以满足用户的需求。
2.确定软件系统的性能:软件需求分析还可以确定软件系统的性能要求,如响应速度、可靠性、扩展性等。
3.确定软件系统的接口:软件需求分析可以明确软件系统与其他系统、硬件或用户之间的接口要求。
4.确定软件系统的约束:软件需求分析可以识别软件系统的约束条件,如预算、时间、人力等。
5.为软件开发过程提供指导:通过对需求的详细分析,可以为软件开发过程提供指导,确保开发出满足用户需求的高质量软件系统。
三、软件需求分析的过程1.需求收集:需求收集是软件需求分析的起点,它包括与用户沟通、文档分析、现场观察等方法,旨在收集用户对软件系统的需求。
2.需求分析:需求分析是对收集到的需求进行整理、划分、概述的过程。
它包括需求分类、需求建模、需求验证等步骤。
3.需求规约:需求规约是将需求转化为可执行的技术规范的过程。
它包括需求描述、需求确认、需求文档编写等步骤。
4.需求追踪:需求追踪是确保软件系统开发过程中需求的一致性和完整性的过程,它包括需求跟踪、变更控制、配置管理等步骤。
四、软件需求分析的方法1.采访法:通过与用户进行面对面的交流,提问并记录用户需求。
采访法可以确保准确收集到用户的需求,但可能存在信息偏差的问题。
2.文档分析法:通过阅读相关文档,如需求文档、用户手册等,获取对软件系统需求的理解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
项目名称:ITBook阅读器(APP)组长:计算机1405010332 叶岚清小组成员人:(班级学号、姓名、负责的主要工作)ITBook阅读器需求规格说明书1. 需求概述1.1目标随着科学技术的发展人民的生活水平得到了不断的提高,智能手也被人们接受且普遍使用。
现今更是人手一部智能手机,并且以Android系统作为智能手机运行平台的手机市场占有率已高达一半。
随着近些年来网络通信基础设施的日渐完善,流量费用已经有了大幅的下降,并且伴随着4G网络的发展,电脑能做的事情都能在手机上完成。
所以面向Android系统平台的应用程序也日臻完善,流入市场的应用程序总量已达到几千万个。
因此手机阅读领域的应用数量也是极其的庞大,但是现在市面上所存有的阅读器的功能主要是面向娱乐类的小说领域。
虽然有部分阅读器包含技术类书籍,但其数量少、收费高,无法满足用户的需求。
所以我们想做一个it类书籍阅读器,为技术人员提供强有力的资源支持。
在这里我们使用爬虫从网上爬取相关的技术类书籍的信息存到数据库中,并用爬虫技术将书籍批量下载到服务器内部。
这样就可以为用户提供大量的书籍种类,以满足他们的学习需求。
1.2运行环境本软件运行于Android4.0及以上的系统平台上,要求手机内存运行内存在1G以上且支持无线上网功能,手机扩展存储空间在4G以上,cpu频率在1Ghz以上。
1.3用户的特点该APP的目标用户人群主要为一下几类:1.在校大学生,并且具有一定的英语基础阅读能力,学习的是与计算机相关的专业2.在校学生,但是所学的专业不是计算机,但是有兴趣在毕业或者以后从事与计算机相关的工作。
3.已经毕业的并且在职工作的从事计算机行业的技术人员,有业余时间想进一步学习计算机技能,提升自我的能力。
4.社会上自学计算机技术的人群。
对于用户的经验要求:能够熟练的操作与使用Android系统,具有较强的自我学习与约束能力,具有一定的计算机学科基础知识。
1.4 约束条件开发期限限制:时间只有三个月,相对而言还是比较紧迫的。
开发平台与工具:我们使用Windows10作为主要的系统开发平台,并且使用谷歌官方推荐的Android studio作为主要的开发工具,租用腾讯的提供的虚拟主机搭建服务器后台。
软件开发生命周期模型:我们采用瀑布模型作为软件生命周期模型,因为瀑布模型适用于需求比较固定的情形,并且实行起来较为简单。
法律:我们提供的这些电子书资源有可能会侵犯那些著作者的版权,并且为那些提供正版书籍的电子书阅读器的开发商的利益造成一定的损害。
因此为了不侵犯著作者的知识产权,我们打算开发聚合类的网站,只是提供这些资源的位置,以及下载链接。
技术:我们目前所学的知识比较浅薄,许多Android开发的知识并没有学习到或者掌握到,我们也缺少UI设计师,因此在软件开发的过程中可能会遇到各种各样的难题,因此许多问题我们会采用别人已经写好的发布到github上面的框架来实现我们想要实现的功能。
经费:开发初期,我们的经费是比较少的,比如说租用虚拟主机的费用以及进行市场调研的开支,对于我们这样一群学生来说也是一笔比较大的负担。
1.5编写目的本文针对该ITBook阅读器的运行环境以及用户群体进行了详尽的分析,同时将它作为产品设计和开发的依据,从而编制出来该需求规格说明书。
编写本说明书的目的是规范化本软件的编写,旨在于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理。
同时提出了该App的软件开发过程,便于程序员与客户之间的交流、协作,并作为工作成果的原始依据。
此文档进一步定制软件开发的细节问题,明确软件需求、安排项目规划与进度、组织软件开发与测试,便于用户与开发商协调工作。
本文档面向的读者主要是项目委托单位的管理人员、设计人员和开发人员,希望能使本软件开发工作更具体。
1.6目标读者软件开发和测试人员,以及指导老师,以及目标用户2. 功能需求2.1.1登录注册功能为了使阅读器具有阅读记忆功能,用户在进入app后需要进行注册登录,用户便可以拥有一个独立的空间将适合自己的书籍放入书架或加入收藏。
2.1.2 书籍搜索功能为了便捷用户寻找自己想要的书籍,本阅读器设置了搜索功能。
用户只需在搜索栏中打入书名便可查找出该书信息。
在这里主要是运用数据库中的like语句进行书名匹配,并将匹配到的书籍返回给用户。
2.1.3 用户收藏功能当用户发现适合自己阅读的书籍之时为了不遗失该书,可以将其加入收藏。
除此之外,ITBook阅读器采用云端同步收藏功能,收藏的图书不会随着硬件的更换而遗失,以此来方便用户的阅读。
2.2分层数据流图描述ITBook阅读系统分层数据流图如下所示,在这里我们由三张图来显示,展现了我们分析这个系统时从简到难的思想。
1 阅读系统顶层图2 阅读系统0层图3 阅读系统1子图3. 能力需求3.1要求的状态和方式a.说明软件为IT技术类阅读器。
b.输入1.用户名、密码c.处理定义对输入数据、中间参数进行处理以获得预期输出结果你的全部操作。
包括:1.输入数据的有效性检查。
2.操作的顺序,包括事件的时间设定。
3.异常情况的响应,例如溢出、通信故障、错误处理等。
4.受操作影响的参数。
5.用于把输入转换成相应输出的方法。
6.输出数据的有效性检查。
d.输出输出数据为PDF,目的地为用户。
3.2 CSCI能力需求本软件为阅读器软件,可以进行电子书的阅读,电子书为PDF格式。
功能:1.登录、注册2.图书界面3.图书分类4.图书收藏5.图书下载6.在线阅读主题:目前为电脑技术类书籍对象:全体人群3.3 CSCI内外部接口需求1.搜索图书请求方式:get 请求参数content2.获取大分类列表请求方式:get 请求参数无3.获取小分类列表请求方式:get 请求参数id4.获取小分类书本列表请求方式:get 请求参数sub_categoryid5.注册请求方式:post 请求参数name,password,phone6.登录请求方式::post 请求参数name,password7.设置收藏状态请求方式:get 请求参数userid,booid,status8.获取用户收藏书本列表请求方式:get 请求参数userid9.推荐书本列表请求方式:get 请求参数无3.4 接口的项目唯一的标识符a)CSCI必须分配给该接口的优先级;登录注册优先。
b)对要实现的接口类型的要求:实时数据传送、数据的储存和检索;c)CSCI必须提供、储存、发送、存取、接收的各个数据元素所要求的特性:1)(1)名称/标识符:(2)项目唯一的标识符;(3)非技术(自然语言)名称;(4)数据元素名称;(5)技术名(如在代码或数据库中的变量名或字段名);(6)缩略名或同义名。
2) 数据类型字母数字、整数文字;3) 大小和格式字符串的长度和标点符号;4) 计量单位字节;5) 可能值的范围或枚举0-99;6) 准确性正确程度精度4位有效数字7) 优先级别、定时、频率、容量、序列以及其他约束条件:元素可以被更新、业务规则适用;8) 保密性约束;MD5加密9) 来源设置/发送实体接收使用/接收实体。
d)CSCI必须提供、存储、发送、访问、接收的数据元素组合体(记录、消息、文件、数组、显示、报表等)所要求的特性:1) 名称/标识符:(1)项目唯一的标识符;(2)非技术(自然语言)名称;(3)技术名称;(4)缩略名或同义名。
2)介质磁盘PHP开发工具4) 显示和其它输出的视听特性颜色、布局、字体、图标和其它显示元素、峰鸣音和亮度;5) 包之间的关系:排序/存取特性;6) 优先级、时序、频率、容量、序列及其它约束:包可以被更新、业务规则适用;7) 保密性约束;MD58) 来源设置/发送实体接收者使用/接收实体。
e)CSCI必须使用的接口的通信方法所要求的特性:1.项目唯一的标识符;2.通信链接/带宽/频率/介质及其特性;3.消息格式;4.流控制;5.序列编号和缓冲区分配;6.周期/非周期传送的数据传送速率,传输间隔;7.路由、寻址、命名约定;8.传输服务,包括:优先权和等级;9.安全性/保密性考虑;10.加密、用户鉴别、隔离和审核;f)CSCI必须使用的接口的协议所要求的特性:11.项目唯一的标识符;12.协议的优先级别/层次;13.打包,包括拆包和重新打包、路由和寻址;14.合法性检查、错误控制和恢复过程;15.同步,包括建立连接、保持和终止;16.状态、标识及任何其它报告的特性。
g)其它所需要的特性,接口实体的物理兼容性:尺寸、公差、负载和接插件的兼容性、电压等。
3.5适应性需求目前仅支持安卓端,后续会有IOS以及PC端。
3.6 安全性需求防止散播非法信息。
3.7 保密性需求MD5加密,保证用户信息安全。
3.8 CSCI环境需求安卓端或安卓模拟器。
3.9计算机资源需求3.9.1计算机硬件需求处理机、存储器、输入/输出设备、辅助存储器、通信/网络设备。
3.9.2 计算机软件需求LINUX操作系统,数据库管理系统,通信、网络软件、JAVA编程软件。
3.10 软件质量因素有关CSCI功能性、可靠性、易用性、效率、维护性、可移植性和其它属性的定量要求。
3.11人员需求前端工程师*5后台工程师*5测试*24. 内部数据需求4.1 ER图4.1.1 IT Book app 数据模型:用户:用户名,密码书籍:书籍名,书籍编号,作者,出版日期,出版社杂志:杂志名,杂志编号,出版日期,杂志社,主编书架:书籍分类导航,图书展示每个用户只有一个书架,每个书架只属于一个用户;一个用户可以阅读多本书籍和杂志并收藏,分享并且搜索,每本书籍和杂志都可以被多个用户搜索,阅读,分享,每本书籍和杂志可以被多个用户同时阅读并收藏;收藏完有收藏书籍和收藏时间。
4 ITBook系统ER图4.2 数据字典公用表名字段名数据类型中文名称适适用范围user id int 用户编号注册登录模块name Varchar(32) 用户名password Varchar(32) 密码5.公用接口程序设计说明1.公用函数过程说明1.搜索图书URL:http://123.206.16.78/index.php/Home/Request/search_book HTTP请求方式GET请求参数content返回结果示例{"state": 1,"data": [{"id": "1""sub_categoryid": "1""name": "标题1""author": "作者1""information": "简介1" "pic_url": "封面""url": "pdf下载链接1" },{"id": "2""sub_categoryid": "2""name": "标题2""author": "作者2""information": "简介2" "pic_url": "封面""url": "pdf下载链接2" },{"id": "3""sub_categoryid": "3""name": "标题3""author": "作者3""information": "简介3""pic_url": "封面""url": "pdf下载链接3"},{"id": "4""sub_categoryid": "4""name": "标题4""author": "作者4""information": "简介4""pic_url": "封面""url": "pdf下载链接4"}]}2.获取大分类列表URL:http://123.206.16.78/index.php/Home/Request/query_category HTTP请求方式GET请求参数无返回结果示例{"state": 1,"error_msg":"未知错误","data": [{"id": "1""name": "大分类1"},{"id": "2""name": "大分类2"},{"id": "3""name": "大分类3"},{"id": "4""name": "大分类4"}]}3.获取小分类列表URL:http://123.206.16.78/index.php/Home/Request/query_sub_categoryHTTP请求方式GET请求参数id返回结果示例{"state": 1,"error_msg":"未知错误","data": [{"id": "1""sub_categoryid": "1""name": "小分类1"},{"id": "2""sub_categoryid": "2""name": "小分类2"},{"id": "3""sub_categoryid": "3""name": "小分类3"},{"id": "4""sub_categoryid": "4""name": "小分类4"}]}4.获取小分类书本列表URL:http://123.206.16.78/index.php/Home/Request/query_book HTTP请求方式GET请求参数sub_categoryid,start_pos返回结果示例{"state": 1,"error_msg":"未知错误","data": [{"id": "1""sub_categoryid": "1""name": "标题1""author": "作者1""information": "简介1" "pic_url": "封面""url": "pdf下载链接1" },{"id": "2""sub_categoryid": "2""name": "标题2""author": "作者2""information": "简介2" "pic_url": "封面""url": "pdf下载链接2" },{"id": "3""sub_categoryid": "3""name": "标题3""author": "作者3""information": "简介3""pic_url": "封面""url": "pdf下载链接3"},{"id": "4""sub_categoryid": "4""name": "标题4""author": "作者4""information": "简介4""pic_url": "封面""url": "pdf下载链接4"}]}5.注册URL:http://123.206.16.78/index.php/Home/Request/register HTTP请求方式POST请求参数name,password,phone返回结果示例{"state": 1,“error_msg”:"未知错误""data":{"id": "10"}}6.登陆URL:http://123.206.16.78/index.php/Home/Request/login HTTP请求方式POST请求参数name,password返回结果示例{"state": 1,“error_msg”:"未知错误""data":{"id": "10"}}7.设置收藏状态URL:http://123.206.16.78/index.php/Home/Request/set_user_collection_statusHTTP请求方式GET请求参数userid,bookid,statususerid true int 用户idbookid true int 书本idstatus true int status=1是收藏,status=0是取消收藏(时间不够的话,取消收藏可以不做)8.获取用户收藏书本列表URL:http://123.206.16.78/index.php/Home/Request/get_user_collection HTTP请求方式GET请求参数用户id返回结果示例{"state": 1,"error_msg":"未知错误","data": [{"id": "1""title": "标题1""author": "作者1""info": "简介1""url": "pdf下载链接1"},{"id": "2""title": "标题2""author": "作者2" "info": "简介2" "url": "pdf下载链接2" },{"id": "3""title": "标题3" "author": "作者3" "info": "简介3" "url": "pdf下载链接3" },{"id": "4""title": "标题4" "author": "作者4" "info": "简介4" "url": "pdf下载链接4" }]}9.推荐书本列表URL:http://123.206.16.78/index.php/Home/Request/query_recommend HTTP请求方式GET请求参数(无)返回结果示例{"state": 1,"error_msg":"未知错误","data": [{"id": "1""title": "标题1""author": "作者1""information": "简介1" "pic_url":"图片链接""url": "pdf下载链接1" },{"id": "2""title": "标题2" "author": "作者2" "info": "简介2" "url": "pdf下载链接2" },{"id": "3""title": "标题3" "author": "作者3" "info": "简介3" "url": "pdf下载链接3"},{"id": "4""title": "标题4""author": "作者4""info": "简介4""url": "pdf下载链接4"}]}。