敏捷开发

Devops 前途无量

浪尽此生 提交于 2019-11-28 02:40:45
前言 很荣幸自己可以接触到这个东东,而且谢谢梦甜姐的见解很开心,好的东西就要分享给大家,下面看看我的收获吧 What devops 它是由development 和operation的组合,突出的是软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建,测试,发布更加快捷,频繁和可靠,devops是在2009从欧洲引进的,它是为传统模式的运维之痛而生。其实他经历过2代的变更,其中有瀑布模型,敏捷开发,随后才是devops 为什么需要devops? 1.devops解决了瀑布模型与敏捷的缺点,从软件开始的第一步直到该软件周期结束devops都自动化的完成所需工作 什么是瀑布模型? 瀑布模型是属于软件开发模型的,软件开发模型是指的软件开发全部过程,活动和任务的结构框架,软件开发包括需求,设计,编码,和测试等阶段,还包括维护阶段。 瀑布模型将软件生命周期划分为制定计划,需求分析,软件设计,程序编写,软件测试,运行维护六个阶段,他们是按照自上而下互相衔接的固定次序,就像瀑布一样 为什么瀑布模型会被淘汰? 1. 各个阶段的划分完全是固定的,阶段之间产生大量的文档,极大地增加工作量 2. 由于开发是线性的,所以用户只有在开发的末期才可以到成果,所以增加了风险 3. 早起的错误等到最后测试再发现这样会带来严重的后果 什么是敏捷开发? 是一种以人为核心,迭代,循序渐进的开发方法

软件工程 -- 敏捷开发

流过昼夜 提交于 2019-11-28 02:33:51
敏捷开发 个人理解: 主动适应变化,而不是一味的确定的需求在开发编码。 FDD -- Feature-Driven Development(特征驱动开发) 劣势: 1、需要有丰富经验的首席架构师和个人能力(经验)强的程序员(允许有差异),对FDD了解的团队 极限编程(XP) -- 个人认为,这是工作的最佳(良好)状态 劣势: 1、需要一个能够相处融洽的团队和高素质的团队(Leader需要有高能力的项目控制能力), 2、每个团队成员要能够独立承担工作任务(个人能力差异不大并且不差),并且是一个组织有序完善的团队 3、团队组织内部默契、和谐的约定 自适应软件开发(Adaptive Software Development,简称ASD) 劣势: 1、需要高素质的团队(项目主导人主要是人员调配控制的能力) 2、团队成员在处理工作事宜外,还需要调剂好人际关系,并不断的思考项目和学习,这将分散团队成员的精力。 3、开发流程定义十分抽象,成员难以理解和配合 4、每个团队成员要能够独立承担工作任务(个人能力差异不大并且不差),并且是一个组织有序完善的团队 scrum -- 个人认为,这个方法的实践应该应用于有需求变动,但变动周期稳定在15-30左右的项目,常规项目践行这个方法将十分困难和不切实际 劣势: 1、冲刺开发中需求将被冻结(绝对不可更改) 2、具体的工程流程定义不明确,项目风险将非常大 3

Day1:课设分组以及项目初设

我是研究僧i 提交于 2019-11-27 22:01:02
1.课设分组——组长:王含(917106840607),组员:徐薇蓉(917106840611),王钰(917106840609)。组名JAY 2.项目初设——我们准备做一个名为 Violet Fair 的微信小程序,校内线上交易的沟通平台,分区展示用户的闲置物品,方便同学们线下交易或是交换物品。小程序提供用户管理、物品展示、文字交流功能。后期时间富余可以添加论坛、谈论组功能。 3.thoughts——今天老师提到的scrum敏捷开发紧跟互联网开发潮流,与我暑期实习接触到的研发团队模式一致。研发团队应用scrum的好处在于开发过程每天的任务清晰,方便项目经理监督开发流程,在每天的站会汇报中随时协调团队合作,一次次sprint迭代完善功能。第二三周给我们模拟了一个sprint迭代周期,可以从中感受到老师的良苦用心。 来源: https://www.cnblogs.com/Jane165/p/11379598.html

Scrum Master如何让敏捷团队正常运转?

半城伤御伤魂 提交于 2019-11-27 20:47:12
官方《Scrum指南》中定义:Scrum Master在Scrum团队中属于服务型领导,负责践行和支持《Scrum指南》中定义的Scrum,要帮团队的每个人理解Scrum理论、实践、规则以及价值观。 最近我们进行了一次调查,其中92%的受访者表示他们正在实践的scrum是按需定制的,而非“按章办事”。这让我们想知道,这对扮演训练和帮助团队理解scrum角色的scrum master来说意味着什么? 这些scrum master是如何适应不断发展的且有别于官方规定实践的敏捷世界的? 为了回答这些问题,我们对敏捷行业的无名英雄——scrum master的角色和责任进行了深入研究。 Scrum Master是什么? Scrum Master是scrum的推动者。scrum是一种轻量级敏捷框架,专注于实现固定时间的迭代,也被称为sprint。作为推动者,scrum master充当团队其他成员的教练,在《Scrum指南》中被称为“服务型领导”。优秀的scrum master致力于构建scrum的基础和价值观,同时保持一定的灵活性和开放性让团队有机会改进工作流程。 1.Scrum Master的职责 在理想的敏捷世界中,团队可以管理自己的流程和工具。然而,我们发现许多团队通常需要依赖scrum master作为其流程的主导者才能实现敏捷的飞跃。要实现对团队的掌控,并履行职责,scrum

我的“伪敏捷开发”:重视期限与核心点、监控质量与频率

白昼怎懂夜的黑 提交于 2019-11-27 20:34:53
以前有看过敏捷开发相关的内容,被说不懂敏捷开发被人带着做敏捷开发,到后来我自己结合瀑布流与敏捷开发建立出一套比较能提高项目效率的“伪敏捷”模式。 一、敏捷开发是什么 敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。——来源百度百科 其实从上面的描述里面,敏捷开发的核心理念是“以用户需求进化”、“迭代、循序渐进”、“持续可用”,相比起瀑布式开发,敏捷开发更加强调团队合作、快速响应、持续产出。两种模式各有优缺,其实现在很少纯粹的敏捷,也很少纯粹的瀑布式开发,更多是将两者结合。 二、我的“伪敏捷开发” 纯粹的敏捷开发,是基于用户需求,然后团队分析团队建模,快速开发,快速上线。但是这种做法非常考验团队及对工作的把控,因为大部分公司一个产品都不是纯粹的产品,除了负责某个产品线外,还需要很大量的其他工作,而且团队素质能力也未必很高。所以纯粹的敏捷开发比较少见到。 大部分的公司团队都是用瀑布式,我做了一堆需求,然后批量一个团队开发,批量上线,每次上线都是生死大关一样,通宵是常态化的情况。我一开始也是这种做法,但是后来发现太累了,将需求拆解得更细

敏捷开发探寻本质

爱⌒轻易说出口 提交于 2019-11-27 20:29:43
我们需要坐下来好好谈谈,什么事敏捷开发。 1.什么是敏捷开发? 敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。 怎么理解呢?首先,我们要理解它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去一步一步完成项目的开发;而这种开发方式的主要驱动核心是人;它采用的是迭代式开发; 我有一个朋友(大家都这么说,我有一个朋友如何如何,我有一个同学如何如何,故事往往是这样开始的),在一个大型的软件公司工作,他们公司是典型的瀑布模型,文档驱动。每个类,每个方法,都需要在文档里面注明。这样开发人员在开发的过程中就有了大量的维护工作来去做。你修改一个类之前,先要去修改一个文档。更重要的是我这个兄弟在日企工作。你联想到了什么?纯真的笑 :-D 曾将有一位先贤曾经说过,在软件的生命周期当中,除了需求确认和软件编码之外,所有的其他的工作都是shit! fuck!and if in chinese is 艹艹。 为什么说是以人为核心? 我们大部分人都学过瀑布开发模型,它是以文档为驱动的,为什么呢?因为在瀑布的整个开发过程中,要写大量的文档,把需求文档写出来后,开发人员都是 根据文档进行开发的,一切以文档为依据;而敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注重的是人与人之间,面对面的交流,所以它强调以人为核 心。 注意

第1篇Scrum冲刺博客

╄→尐↘猪︶ㄣ 提交于 2019-11-27 15:19:20
目录 第1篇Scrum冲刺博客 各个成员在 Alpha 阶段认领的任务 各个成员的任务安排 整个项目预期的任务量 敏捷开发前的感想 团队期望 第1篇Scrum冲刺博客 各个成员在 Alpha 阶段认领的任务 成员 Alpha 阶段认领的任务 谭万钏 前、后端开发;项目架构设计;服务部署 刘志豪 后端开发以及数据库设计编写 谭艺 后端开发以及数据库设计编写 唐崇珂 后端开发以及模块测试 刘霍翔 模块测试以及进度报告的编写 石林峰 模块测试以及进度报告的编写 各个成员的任务安排 谭万钏: 前端页面设计(首页、登录页面、教师页面等)、后端功能包括登录功能等。 刘志豪: 后端功能实现包括提问讨论、评论功能以及数据库编写等。 谭艺: 后端功能实现包括作业上传以及数据库编写等。 唐崇珂: 后端功能实现包括设置功能的实现以及测试总结等。 刘霍翔、石林峰: 主要负责测试总结工作等。 整个项目预期的任务量 任务 负责人 开始日期 结束日期 Alpha版本 数据库 8748 2019/11/18 2019/11/22 建立数据表 8748 2019/11/18 2019/11/19 实现基本操作 8744 2019/11/19 2019/11/22 前端页面 8747 2019/11/18 2019/11/25 首页页面 8747 2019/11/18 2019/11/19 登录页面 8747

第 1 篇 Scrum 冲刺博客

允我心安 提交于 2019-11-27 15:19:02
各个成员在 Alpha 阶段认领的任务 姓名 Alpha 阶段认领的任务 徐婉萍 创建服务器、域名,环境搭建查询界面及页面的设计,查询方法的编写 谭燕 支出、收入添加界面及设计,收入、支出的方法编写,修改界面及页面的设计 郭雅芳 账单显示的方法编写,账单界面(所有账单列表,总支出,总收入)及设计 李香荣 微信授权界面及页面的设计 罗登宇 数据库建表,连接数据库 明日各个成员的任务安排 姓名 明日任务安排 徐婉萍 购买服务器,域名,进行实名认证,环境搭建,完成微信小程序的开发前的工作,学习微信的语言编写,主格局的定义 谭燕 学习微信的语言编写,编写博客园博客 郭雅芳 学习微信的语言编写,进行账单页面的初步设计 李香荣 学习微信的语言编写,进行授权页面的初步设计 罗登宇 学习微信的语言编写 整个项目预期的任务量 (使用整数表示,与项目预估的总工作小时数一致。比如项目A预估需120小时才能完成,则任务量为120。) 姓名 Alpha 阶段认领的任务 任务量 徐婉萍 创建服务器、域名,环境搭建查询界面及页面的设计,查询方法的编写 46 谭燕 支出、收入添加界面及设计,收入、支出的方法编写,修改界面及页面的设计 46 郭雅芳 账单显示的方法编写,账单界面(所有账单列表,总支出,总收入)及设计 46 李香荣 微信授权界面及页面的设计 30 罗登宇 数据库建表,连接数据库 总计任务量 200

第四次作业

六月ゝ 毕业季﹏ 提交于 2019-11-27 11:10:39
1.1敏捷开发是在什么样的背景下产生的? 软件开发面临新的挑战:如快速的市场进入时间,要求高生产率,快速变化的需求,快速发展的技术;而传统的软件开发方法强调过程和文档,对变化的适应能力偏弱。由于传统的软件开发方法存在很多不足,让软件开发团队具有快速工作、响应变化能力的价值观和原则,敏捷开发针对这两个条件给出了方法和工具来保证,所以敏捷开发应运而生,便产生了敏捷开发方法。 1.2其主要特点有哪些? 敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。 1. 工作在小的团队中 2. 团队是跨功能的-包括测试人员,开发人员,文档开发人员等等 3. 短迭代-利用短迭代方法来交付软件 4. 相较于文档,敏捷开发更注重面对面的交流 5. 敏捷不是一个过程,而是一个软件开发的形式或者方法 6. 敏捷可以与软件过程如CMMI等一起实施 1.3什么时候选择敏捷开发更恰当,为什么? 团队人数不多,项目需求经常发生变化,产品的可靠性不高,有资深程序员带队时选择敏捷开发比较恰当。因为敏捷开发的可靠性不高,一些大的项目开发需要高标准、高质量,对这些大的项目来说

转:《什么是敏捷软件测试》

。_饼干妹妹 提交于 2019-11-27 10:56:06
本文已经首发于 InfoQ中文站 ,版权所有,原文为《XXX》,如需转载,请务必附带本声明,谢谢。 InfoQ中文站 是一个面向中高端技术人员的在线独立社区,为Java、.NET、Ruby、SOA、敏捷、架构等领域提供及时而有深度的资讯、高端技术大会如 QCon 、线下技术交流活动 QClub 、免费迷你书下载如 《架构师》 等。​ 在与不少测试从业人员讨论到敏捷的时候,被问得最多的大约是两个问题:“到底什么是敏捷软件测试?”,“敏捷软件开发还需要测试工程师吗?”。前一个问题是对于敏捷测试本身定义的疑问,第二个问题则是对敏捷开发将测试工程师排除在外的担心。其实,在探寻这两个问题答案的过程中,我们可以更清晰的了解敏捷软件开发中测试的工作定义,测试价值观,以及敏捷开发中开发与测试工程师的配合。鉴于这两个问题的意义,在本敏捷测试专栏的第一篇文章中,本人尝试从自己的实践出发,尽可能清楚的回答这两个问题。 确实,相对于敏捷开发红遍大江南北的状况而言,对敏捷测试的讨论则低调得多。敏捷联盟定义了敏捷的4个价值声明,以及伴随的12条支持原则,这12条原则中没有一条单独提到测试。这是不是意味着测试在敏捷开发中并不重要呢?实际上,如果仔细研读敏捷的12个原则,以及各种不同的敏捷实践,就会发现,测试在敏捷开发中占有非常重要的地位。无论是原则中的“频繁交付”,还是对“可工作的软件”的度量