寒假学习2

个人开发流程PSP(Personal Software Process)特点:不局限于某一种软件技术,而是着眼于软件开发的流程。不依赖于考试,而主要靠工程师自己收集数据,然后分析、提高。PSP依赖于数据(工程师输入数据的时间代价、数据可能遗失或者不准确的风险、可能会出现一些数据不利于工程师本人的情况)。PSP目的是记录工程师如何实现需求的效率,而不是记录顾客对产品的满意度。

要想成为一个合格的软件工程师,就要对自己的个人能力有一个准确的估算,能规划个人能力的衡量与发展。
初级软件工程师的成长包括以下几种:积累软件开发相关的知识,提升技术技能(如对具体技术的掌握,动手能力)。例如:对JAVA、C/C++、C#的掌握,诊断/提高效能的技术,对设备驱动程序、内核调试器的掌握,对于某一开发平台的掌握;积累问题领域的知识和经验(例如对医疗或金融行业的了解);对通用的软件设计思想和软件工程思想的理解;提升职业技能(区别于技术技能),包括:自我管理的能力、表达交流的能力、与人合作的能力、按质按量完成任务的执行力;实际成果——最重要的评价标准
软件团队的模式:主治医师模式、明星模式、社区模式、业余剧团模式、秘密团队、特工团队、交响乐团模式、爵士乐模式、功能团队模式、官僚模式
开发流程:①写了再改模式;②瀑布模型(Waterfall Model) 是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好 “返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下一个阶段,这也是瀑布模型名称的由来。瀑布模型的适用范围:产品的定义非常稳定但正确性非常重要、产品模块之间的接口能很好地定性定义和验证、使用的技术很成熟、子团队不能做到频繁的交流;③瀑布模型的变形:生鱼片模型(各个相邻模块像生鱼片那样部分重叠)以及大瀑布带着小瀑布(各个子系统统一到最后进行系统测试)
需求分析:软件需求;软件产品的利益相关者;获取用户需求——用户调查;竞争性需求分析的框架——NABCD模型(1. N(Need,需求)2. A(Approach,做法) 3. B(Benefit,好处) 4. C(Competitors,竞争)5. D(Delivery,推广) );功能的定位和优先级;分而治之。
原文地址:https://www.cnblogs.com/vvxvv/p/12252596.html