实践第三次随笔作业

软件开发流程不光指团队的流程,还包括个人开发流程,因为软件团队是由个人组成的。在团队的大流程中,是每一个具体的个人在做开发,测试,用户界面设计,管理,交流等工作。因此个人在团队中也有独立的流程。把每个人的工作有序的组织起来,就是团队的流程,单个成员称为Individual Contributor(IC),IC在团队中的流程有如下几样:

通过交流,实验,快速原型等方法,理解问题,任务和需求

提出多种解决办法并评估工作量,其中包括寻找以前的解决方案,因为很多工作是重复性的

与相关角色交流解决问题提案,决定一个可行的方案

执行,把想法变成实际中能工作的代码,同时验证方案的可行性(例如程序的效能等)

和团队的其他角色合作,在测试环境中测试实现方案,修复缺陷。如果此方案有严重的问题,那么就考虑其他方案。

在解决方案发布出去之后,对结果负责。

初级软件工程师如何成长,对此我们应着重研究,丰富作为一个初级软件工程师应总结的经验和技能,第一,积累软件开发相关的知识,提升技术技能,例如对像是Java,C\C++,C#等高级语言的掌握,诊断提高效能的技术,掌握驱动程序,内核调试器,对一个开发平台的熟练操作。第二,积累问题领域的知识,对客户需求充分了解。第三要加深软件设计思想,软件工程思想和职业技能,对实际成果做深入的评估和市场研究。

初级软件工程师在职业规划方面要了解多项认证机构,了解大公司版本的职业成长,借此给自己设计合适的提升方式。

软件项目的两人合作也是提升个人能力的表现,如何结队编程我们需注意以下几点:

1.处于探索阶段的项目,需要深入的研究,在这种情况下,一个人长时间的独立钻研是有必要的。

2.在做后期维护的时候,如果维护的技术含量不高,只需要做有效的复审即可,不必拘泥于形式,硬拉一个人来结队唱二人转。

3.如果验证测试需要运行很长时间,那么两个人在那里等待结果是有点浪费时间的。

4.如果团队的人员要在多个项目中工作,不能充分保证足够的结队编程时间,那么成员要经常处于等待的状态,反而影响效率。

5.关键是如何最大限度的发挥“领航员”的作用,如果用处不大,也就无需结队。

最后的团队流程是一个大概念,需要加深学习,这里我们根据《构建之法》的内容做一些名词的陈列:

软件团队的模式:主治医师模式,明星模式,社区模式,业余剧团模式,秘密团队,特工团队,交响乐团模式,爵士乐模式,功能团队模式,官僚模式。

Rational Unified Process 统一流程(RUP):业务建模,需求,分析和设计,实现,测试,部署,配置和变更管理,项目管理,环境。

RUP四阶段:初始阶段,细化阶段,构造阶段,交付阶段

时间: 2024-10-07 19:01:18

实践第三次随笔作业的相关文章

实践第五次随笔作业

在软件工程的语境里,"敏捷流程"是一系列价值观和方法论的集合,敏捷开发的原则是: 1.今早并持续地交付有价值的软件以满足顾客需求 2.敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势 3.经常发布可用的软件,发布间隔可以从几周到几个月,能短则短 4.业务人员和开发人员在项目开发过程中应该每天共同工作 5.以有进取心的人为项目核心,充分支持信任他们 6.无论团队内外,面对面的交流始终是最有效的沟通方式 7.可用的软件是衡量项目进展的主要指标 8.敏捷流程应该保持可持续发展.领导

软件工程短学期实践第三次随笔

软件工程短学期实践即将接近尾声,我们的软件工程项目也已趋于完成. 软件工程短学期实践项目: 这是一个简单的客户信息管理维护软件,它能把客户编号.客户姓名.客户电话和客户性别保存在数据库之中,我们可以在数据库中查询保存的客户信息,还可以随时修改以及删除客户信息. 随后,我们在老师的指导下,开始自己修改设计软件,我做的是库存管理项目,代码如下: package com.crm.action; import java.util.Map; import com.crm.bean.Item; import

实践第四次随笔作业

作为小组的组长,我很兴奋小组项目的进展有了重大突破,我们计划设计一款实现亲友生日提醒业务的软件,并组织好了部分功能的模块语言,现在问题是不知道具体用何种高级语言编写我们的代码,也对选择何种编译环境无从下手,但制定好目标就是重大突破了,我们也觉得离项目的完成行进了一大半,后期,我将认证学习<构建之法>第五章的内容,并运用到小组的管理和任务配置.以下是我在学习中提取的重点: 团队的共同特点:1.团队有一致的集体目标,团队要一起完成这个目标.一个团队的成员不一定要同时工作.后期我将不断细化我们的工作

实践第六次随笔作业

这一周我详细学习了<构建之法>第十章--典型用户和场景,怎样定义典型用户呢?我们首先要定义用户的角色,典型用户的模板可包括名字,年龄和收入,代表的用户在市场上的比利和重要性,使用这个软件的典型场景,使用本软件的环境,生活工作情况,知识层次和能力,用户的动机,目的和困难,用户的偏好.定义典型用户在我看来应该是需求分析的一部分,它对用户的需求从用户角度分析,排除客户需求的情境下给了软件工程项目人员更多独立性去完善服务需求. 然后此书还提到了用例(Use Case)我们在UML对用例图有过学习,所以

实践第七次随笔作业

本周学习了<构建之法>第七章--软件测试,软件测试的内容在软件生命周期中应该是占有十分重要的地位.描述一种用来促进鉴定软件的正确性.完整性.安全性和质量的过程.换句话说,软件测试是一种实际输出与预期输之间的审核或者比较过程.软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程. 软件行业开始迅猛发展,软件的规模变的非常大,在一些大型软件开发过程中,测试活动需要花费大量的时间和成本,而当时测试的手段几乎完全都是手工测试,测试的效

第三次大作业-作业准备

在第二次大作业结束之后,第三次大作业-白盒测试实践在三周内进行. 由于大家刚进行完一次大作业的辛苦工作,于是本组决定第一周交由大家复习学习之前的黑盒测试实践.搜集资料.自发配置工作环境和工具.进行自己的数学课程复习以及实验室工作.在这段时间内,大家对选择的测试工具进行了一定的了解,在SPOC课程中进行视频学习,学习白盒测试相关的知识点,并在今晚进行了一定的整合. 预计将从明天起正式分工投入到这次作业的工作中! 一.白盒测试实践作业 (1)阶段一:熟悉白盒测试方法. (2)阶段二:熟悉代码复审的过

软件工程(2018)第三次个人作业

软件工程(2018)第三次个人作业 前方高能:本次作业中含有大量基础知识,请不要嘲笑我QAQ 第三次作业来了.选择看似相比有难度的(1)(其实是看不懂(2)在干什么) 题目要求:题目(1):最大连续子数组和(最大子段和) 背景 问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],-,a[n],求该序列如a[i]+a[i+1]+-+a[j]的子段和的最大值.当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+-+a[j]},1

android 实践项目三

android 实践项目三 本周我主要完成的任务是将代码进行整合,然后实现百度地图的定位与搜索功能.在这次实现的 图形界面如下: 在本周的工作中主要的实现出来定位与收索的功能,在地图中能实现了定位,显示当前的位置, 不知到为什么不显示地图,经过查找资料可能因为当前的SDK本版太高了,不匹配.所以在下周 图像的显示问题.下面是我的主要贴上我的布局代码 地图的布局: 本周的总结 做项目是学习知识最快的方式,即能让我们碰见各种问题,也让我们去解决各种问题.在项目中感觉自己 的水平有限,还需要更加努力的

JavaScript网站设计实践(三)设计有特色的主页,给主页链接添加JavaScript动画脚本

原文:JavaScript网站设计实践(三)设计有特色的主页,给主页链接添加JavaScript动画脚本 一.主页一般都会比较有特色,现在在网站设计(二)实现的基础上,来给主页添加一点动画效果. 1.这里实现的动画效果是:当鼠标悬停在其中某个超链接时,会显示出属于该页面的背景缩略图,让用户知道这个链接的页面大概内容是什么. 效果图: 2.实现这个效果的思路 (1)把主页的几个链接的背景图片缩放到150px*150px,拼成一张750*150的图片,并保存为slideshow.png,存放到ima