java实战教程(一)软件开发流程&开发模式
xsobi 2025-01-07 16:46 1 浏览
这里小编为了方便处于不同学习阶段的童鞋,准备了三个系列的文章,java系列教程、java实战教程、java进阶教程,对于刚入坑的童鞋,可以先按照这三个系列教程一步步的了解,循序渐进,java实战系列教程是针对于对java有一定了解并且熟悉到一定程度的童鞋品尝,如果对java基础不是很了解的同学可以参考java系列教程,也可以通过网上一些渠道进行java基础方面的学习。这里就不多说了,开始进入本系列的学习撒~
首先先简单描述一下软件开发的大致的一个流程
这里小编举个例子,写软件好比我们盖房子,我们盖房子首先需要有一个设计蓝图,我们要盖一个什么样的房子,多大,要容纳多少人,采用什么材料等等,这个就类比我们软件开发阶段的需求收集以及原型建立的怎么个阶段,明确我们需要做一个什么样的软件,完成什么样的功能需求,这一块一般是软件产品经理的工作。房子的蓝图有了,我们不可能直接就撸起袖子加油干,因为可能这个蓝图并不靠谱,所以设计蓝图弄好之后需要有个审核阶段,以确保盖出来的房子是可靠的,这个阶段我们可以类比软件开发过程中的需求评审阶段,产品经理将需求跟原型整理好了,聚集各位开发人员测试人员进行需求的评审,确认需求是否合理,这回大家就会展开头脑风暴,各抒己见,尽量将开发过程中的风险提前避开。这回蓝图审核好了,也就是软件的需求原型已经建立了,那么撸起袖子加油干撒,这回就进入了一个任务分解排期阶段,比如说这个房子我需要先打好地基,然后需要浇筑主体,砌砖,封顶等等,需要把这每一项工作进行排期,这样才能控制进度,以及总体工程耗费时间在一个可控的范围内,这里类比软件开发,首先需要根据需求进行系统的设计然后对模块以及功能进行分解,系统整体有多少个模块,多少功能点,需要多少人去完成,每个功能点由谁去实现,完成功能点需要多长时间等,以确保项目按照既定的排期推进,明确分工之后,这回就可以按部就班,撸起袖子加油干了,在一切顺利的前提下,房子如期竣工,这回可以直接交付给房主了吗?当然不行需要,房子在盖完之后需要进行验收确认各个指标到达设计的要求,这就类比软件开发的测试阶段,测试人员介入,根据系统需求进行测试用例编写,对软件进行全方位的测试以确保交付软件的可靠,其实最后还有一个阶段产品经理验收,产品经理需要对软件进行验收确保软件达到了设计的需求。大致的一个软件开发流程是这样的,不同的公司,可能会有细微的差别,大型公司软件开发流程把控会相对比较完善。
关于开发模式
现在比较主流的开发模式有两种
一、传统的瀑布式开发(SDLC)
- Requirement gathering & Analysis: 需求收集以及分析阶段,由产品经理主导,产品经理梳理项目的需求进行分析生成软件需求说明书
- Design: 设计阶段,根据产品需求说明书进行系统架构设计,例如技术选型,数据库设计等
- Implementation & Coding: 功能需求编码实现,由开发人员完成
- Testing: 测试阶段,开发人员实现功能需求之后需要进行集成测试,确保软件质量
- Deployment: 软件部署阶段,测试完成后需要进行部署投产交付
- Maintenance:软件的日常维护工作
二、敏捷开发模式(agile model)
product backlog: 翻译过来可以理解成“积压的工作”,product backlog是一个具有优先级的需求列表, 并对每个需求进行了粗略的估算。表示可以预知的所有任务,包括未细化的产品功能要求、Bugs、缺陷、用户提出的改进、具竞争力的功能及技术升级等,按优先级定义出来,这些任务可能不是完整的,甚至可能随时会更改或添加。Prodcut Backlog永远处于不完整状态,它随着产品及其使用环境的变化而变化,它是动态的,管理层不断对之做出改变,确定产品需求,保证产品适用性、实用性和竞争性
然后在每一个迭代周期内,团队会根据优先级从product backlog池中取出,然后细分成一个个任务指派到具体的人去执行,通常在敏捷开发模式下,每天都会举行一个daily meeting会议,成员汇报工作进度,更新 sprint burn down (燃尽图)
当一个迭代周期完成后,需要进行复盘也就是展开一个评审会议(sprint review meeting)r如果顺利的话进行这一周期内完成的需求发布,并且对这一个周期进行复盘,做一个总结
这里针对开发模式不做太深入的了解,只是简单的介绍,如果后续大家对这一块感兴趣可以留言哈
相关推荐
- 什么是 XML 站点地图?为什么要有它?
-
一份好的XML站点地图可以作为您网站的路线图,引导Google找到您所有的重要页面。XML站点地图对SEO非常有利,即使您的内部链接不完美,Google也能快速找到您的重要页面。这篇文...
- springboot整合mybatis使用xml实现sql语句的查询配置
-
首先肯定还是引入mybatis依赖<!--https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-b...
- IDEA 这么设置 Maven,再也不用担心依赖下载失败了
-
Hello,大家好,我是楼下小黑哥。B站视频版本...
- WordPress网站被利用xmlrpc.php攻击解决办法
-
最近看了百度云加速后台的数据报表,发现有很多针对WordPress的攻击,其实就是利用xmlrpc.php文件来攻击。虽然目前站点一切安好,但是据说如果不采取相应措施解决的话,很有可能会被这些攻击导致...
- 看大佬对Maven讲解有多深,Maven setting.xml文件 了解一下
-
通常我们安装了Maven之后会对Mavensetting.xml(Maven的配置文件做一些自定义),本章我们将详细地学习一下Mavensetting.xml文件。文件位置一般存在与Maven安装...
- XML文档篇(二):认识 xsd 文档
-
前面介绍了基于XML的DTD,详见:XML文档篇:认识DTD(一)。今天再来分享一个它的替代者,...
- Mybatis 中xml和注解映射,分分钟搞定
-
MyBatis提供了XML配置和注解配置两种方式。今天就来搞搞这两种方式是如何实现的。...
- 您的网站需要XML站点地图吗?
-
昨天有人咨询我们:“向百度提交网站地图有多重要?”首先,让我们了解一下“XML网站地图有多重要?”您是否需要XML网站地图?...
- 详细解释Xml中的Schema约束(保姆级)
-
我本人总是爱忘记这个约束,说实话不是太难,因此想写这篇文章详细记录下,希望对有同样需要的小伙伴能够提供帮助。Xml约束主要有两种:dtd约束(比较简单)schema约束(常用、复杂)dtd约束比较简单...
- HTML和xml有哪些区别?
-
HTML和XML都是用于描述和组织数据的标记语言,但它们之间有着许多区别。本文将详细介绍HTML和XML的区别,包括语法、标记、应用场景等方面。一、语法差异...
- 开源XML数据库 BaseX
-
BaseX是一个开源的XML数据库系统,包括一个前端用户操作管理界面XQueryEditor。提供高效的XPath和XQuery处理,包含了对W3CUpdate和FullText扩展的全...
- 一篇文章让你弄清楚XML文件的规范与使用
-
可扩展标记语言(ExtensibleMarkupLanguage,简称XML)是一种标记语言。所谓的标记是指计算机所能理解的信息符号,通过标记可以实现软件开发者与计算机之间的信息沟通。我们常见的H...
- Python 3 实现在线xml sitemap索引文件提取URL到指定文件
-
毫无疑问,在SEO分析网站结构和开放搜索引擎端抓取页面数时,对sitemap文件的分析是最好的入手点。通常规模不是太小的网站URL数量都会超过5万条,而搜索引擎要求单个sitemap文件的数量不能超过...
- 从零开始学Java之带你学会解析XML文件
-
一.XML简介1.概念XML(ExtensibleMarkupLanguage,可扩展的标记语言),作为一种标记语言,它是标准通用标记语言的子集。XML给我们提供了可扩展性和自定义标签的特性...
- 解除 网课失去焦点/离开页面 就自动暂停 的限制
-
用代码解决实际生活中的问题h5如果视频是video元素,可以写个定时器,每秒钟设置一下播放状态...
- 一周热门
- 最近发表
- 标签列表
-
- grid 设置 (58)
- 移位运算 (48)
- not specified (45)
- patch补丁 (31)
- 导航栏 (58)
- context xml (46)
- scroll (43)
- dedecms模版 (53)
- c 视频教程下载 (33)
- listview排序 (33)
- firebug 使用 (31)
- characterencodingfilter (33)
- getmonth (34)
- hibernate教程 (31)
- label换行 (33)
- curlpost (31)
- android studio 3 0 (34)
- android应用开发 (31)
- html转js (35)
- 索引的作用 (33)
- css3 0 (31)
- checkedlistbox (34)
- localhost 8080 (32)
- 多态 (32)
- xmlhttp (35)