软件工程

程序员到高级程序员,只需要10个步骤!

℡╲_俬逩灬. 提交于 2021-02-12 13:02:17
What 软件工程师的职业生涯要历经以下几个阶段:初级、中级,最后才是高级。这篇文章主要是讲如何通过 10 个步骤助你成为一名高级软件工程师。 Why 得到更多的报酬!顺带问一句, 你的年终奖有着落了吗 ?因为你的薪水会随着你水平的提高而增加 提升你的职业生涯。成为了高级软件工程师之后,就可以朝着架构师、团队负责人、CTO 等职位前进 历经更大的挑战。随着你的成长,各种影响力也会提高。 How 软件工程是很难的。这一行业在不断变化中,所以你必须紧跟它的步伐。你必须不断地投入时间和精力,因为你需要学习的东西总是比你能吸收的多。很多新 手工程师甚至都不曾意识到他们如果想要攀登行业的高峰,要学习的东西、要付出的努力得有多少。不过,不用担心,下面我将指出一条“明路”有助于你成为一名 高级软件工程师。 步骤0:选择你的道路,坚持下去! 做一件事,就要把它做好。——Doug McIlroy《Unix Philosophy》 关于这一点,我真的是强调得不能再强调了。选择好你将与之并肩作战的专业和技术堆栈非常重要。坚持不懈,不要分心。至于应该怎么做请看下面: 选择专业。也就是你想做的事情。例如:Web 开发、移动开发、DevOps 等。 选择专业中的实用技术。例如:如果你选择了 Web 开发,那你就需要在 Ruby on Rails、Python、Django,JavaScript 和 MEAN

计算机软件工程国家标准

拥有回忆 提交于 2020-04-29 12:01:43
基础与管理 GB/T 1526-1989 信息处理 数据流程图、程序流程图、系统流程图、程序网络图和系统资源图的文件编制符号及约定 GB/T 11457-2006 信息技术 软件工程术语 GB/T 13502-1992 信息处理 程序构造及其表示的约定 GB/T 14085-1993 信息处理系统 计算机系统配置图符号及约定 GB/T 15535-1995 信息处理 单命中判定表规范 GB/T 18234-2000 信息技术 CASE工具的评价与选择指南 GB/T 18492-2001 信息技术 系统及软件完整性级别 GB/Z 18914-2002 信息技术 软件工程 CASE工具的采用指南 GB/T 19003-2008 软件工程 GB/T 19001-2000应用于计算机软件的指南 GB/T 25644-2010 信息技术 软件工程 可复用资产规范 GB/T 262361-2010 信息技术 软件资产管理 第1部分:过程 软件度量与评价 GB/T 14394-2008 计算机软件可靠性和可维护性管理 GB/T 16260.1-2006 软件工程 产品质量 第1部分:质量模型 GB/T 16260.2-2006 软件工程 产品质量 第2部分:外部度量 GB/T 16260.3-2006 软件工程 产品质量 第3部分:内部度量 GB/T 16260.4-2006 软件工程 产品质量

计算与软件工程作业五

扶醉桌前 提交于 2020-04-08 11:53:46
|作业要求| 作业要求链接 | |--|--| |我在这个课程的目标|学习软件工程的基本操作,能够自行完成作业,并能将软件工程与其他课程联系起来 |此作业在哪个具体方面帮我实现目标|看完相关的博文链接后,认真的思考文章中的内容,总结软件开发的经验等等| |参考文献|( https://www.cnblogs.com/xinz/p/3852390.html ) ##软件开发过程 软件开发过程是随着开发技术的演化而随之改进的。从早期的瀑布式的开发模型到后来出现的螺旋式的迭代开发,以致最近开始兴起的敏捷软件开发,它们展示出了在不同时代的软件产业对于开发过程的不同的认识,以及对于不同类型项目的理解方法。 ###瀑布模型 软件将要经历一个定义、开发、运行维护,直至被淘汰这样的全过程,这个全过程称为软件的生命周期。 为了使软件生命周期中的各项任务能够有序地按照规程进行,需要一定的工作模型对各项任务给予规程约束,这样的工作模型被称为软件过程模型。瀑布模型中的“瀑布”是对这个模型的形象表达,即山顶倾泻下来的水,自顶向下、逐层细化。 1.它的核心思想是将各项功能的实现与设计分开,规定了各阶段的一个自上而下的顺序,相邻的两个阶段有紧密的联系,就好比我们平时写的操作步骤,从第一个步骤开始,每个步骤都依赖于上一个步骤的结果,作为本阶段的一个输入,有很强烈的先后顺序。 2.瀑布模型对软件的每项功能在需求分析

软件工程第二次作业

限于喜欢 提交于 2020-04-08 10:55:58
博客信息 沈阳航空航天大学计算机学院2020软件工程作业 作业要求 https://edu.cnblogs.com/campus/sau/Computer1701-1705/homework/10583 课程目标 熟悉一个“高质量”软件的开发过程 作业目标 单元测试练习 (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<=i<=j<=n 例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时,最大子段和为20。 -- 引用自《 百度百科 》 (2)具体要求 (1) 请从上述两个题目中根据个人实力任选一题,要求写出可运行的完整代码提交至GitHub系统中,并将代码地址附到博客内 (2) 请从语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖五个覆盖标准中(条件组合覆盖难度较大,鼓励尝试,但请谨慎选择),任选一个标准设计测试用例 (3) 请利用自动测试工具对程序进行测试 (4) 请将程序运行结果和自动测试分析结果截图附到博客中 (3)代码 1、 源代码

计算与软件工程 作业五

蹲街弑〆低调 提交于 2020-04-08 01:59:38
作业要求 https://edu.cnblogs.com/campus/jssf/infor_computation17-31/homework/10584 课程目标 了解软件工程的方法论,进行相关讨论 实现目标的方面 阅读有关软件工程方法论的文章 本次作业 https://www.cnblogs.com/cdinzz/p/12657383.html 作业要求 迄今为止,我们了解了不少软件工程的方法论。请从下表挑选几篇关于软件工程方法论的文章,仔细阅读(包括相关的讨论),根据你的软件工程经验分享你的看法。 https://www.cnblogs.com/xinz/p/3852390.html 瀑布模型 瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品。瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。 优点 1)为项目提供了按阶段划分的检查点; 2)当前一阶段完成后,您只需要去关注后续阶段; 3)可在迭代模型中应用瀑布模型; 增量迭代应用于瀑布模型。迭代1解决最大的问题

计算机软件工程 作业五

耗尽温柔 提交于 2020-04-07 21:42:12
作业要求链接 https://edu.cnblogs.com/campus/jssf/infor_computation17-31/homework/10584 课程目标 讨论软件开发方法的思潮 本作业目标 评价及统计红楼梦,水浒传中人物出现次数 参考链接 https://www.cnblogs.com/xinz/p/3852390.html https://blog.csdn.net/agilelee/article/details/5898923 https://www.cnblogs.com/lewkesy/p/5965594.html 作业正文 https://www.cnblogs.com/yanwenshen/p/12656017.html 迄今为止,我们了解了不少软件工程的方法论。 瀑布模型 瀑布模型(Waterfall Model) 是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好 “返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下一个阶段,这也是瀑布模型名称的由来。包括软件工程开发、企业项目开发、产品生产以及市场销售等构造瀑布模型。 其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作

软件工程第一次作业

别来无恙 提交于 2020-04-07 20:44:24
一、 回顾你过去将近3年的学习经历 1.当初你报考的时候,是真正喜欢计算机这个专业吗? 不喜欢,高中时候就已经对计算机比较抵触了,家里小时候比较富裕,九几年就在日本买了第一批家用台式机,从小一直玩到中考前夕,上高中因为爱上了打篮球所以很少碰电脑了,渐渐对于计算机也失去了兴趣。 2.你现在后悔选择了这个专业吗? 不后悔,一切都是最好的安排。如果没有这三年的学习经历,想必也不会成就今天和未来的我。 3.你认为你现在最喜欢的领域是什么(可以是计算机的也可以是其它领域)? 计算机领域: 人工智能、Java开发、物联网 其他领域 : 心理学、篮球、民谣、流行乐和文字 (我可是超级詹密,周董和歌神的死忠粉哦 嘻嘻o(* ̄▽ ̄*)o) 二、 总结你现在已经掌握的知识 1.你都具备了那些专业知识和能力? 专业知识:大学课程相关的科目 硬件:MCU、组原、网原、操作系统 软件:C/C++、基础的JAVA和Oracle 2.你认为你已经为成为一个合格的计算机软件工程是做好准备了吗?在专业技术、个人能力以及其它方面你还有那些欠缺? 还没有,动手能力和基本功都还不够扎实,在学习上也会出现贪玩的现象,会坐不住板凳,这也是为什么想要进一步 读书深造的原因,认为自己现在不足以在社会上立足。 三、畅想未来 1.对照材料中前人的经历,你还准备从事计算机这个行业吗? 会继续坚持的,但不会终身写代码 2

计算与软件工程作业五

我的未来我决定 提交于 2020-04-07 10:38:40
作业要求| 第五次作业 :---:|:---: 课程目标|了解软件工程的方法论 参考文献|https://www.cnblogs.com/xinz/p/3852390.html ###1、银弹 软件是狼人和银弹的世界。掌握面向对象的方法意味着要认识到它是目的,而不是手段,是目标,而不是实现目标的技术。这意味着改变我们对软件的看法,将重点转移到构建的对象上,而不是用来构建它们的过程上。 ###2、Lost in CatB 随着社会的不断发展,几乎每天都会有新技术伴随着新需求不断出现,同样的开源和商用也是如此,哪里有需求,哪里就有市场。开源和商用各有利弊,但都是服务于不同的用户群体,满足不同的需求,例如,Linux从最初的几千行代码发展到现在,俨然成为了os中的中流砥柱,而这样的地位离不开它的开源,和看中这一特性并不断有IT人员对其进行更新;对于商业软件来说,开源确实会带来很多问题,给客户容易造成心理阴影,想这类商用还会无形中起到业内的一种规范。所以,开源与商用,既要结合需求,同时还结合产品定位。 ###3、大泥球 为什么系统变成泥泞的大球?有时,大型丑陋的系统从THROWAWAY代码。THROWAWAY CODE是一种快捷方式代码,只能使用一次,然后丢弃。但是,尽管结构随意,文档不完善或不存在,但这样的代码通常都可以独立生存。它有效,那么为什么要解决它?当出现相关问题时

计算与软件工程 作业五

醉酒当歌 提交于 2020-04-06 23:52:49
作业要求 https://edu.cnblogs.com/campus/jssf/infor_computation17-31/homework/10584 课程目标 了解软件工程的开发的几个方法论,并将有用的知识用到之后的软件开发中 其他参考文献 https://www.cnblogs.com/xinz/p/3852390.html http://www.laputan.org/mud/ https://baike.baidu.com/item/敏捷软件开发/7108658?fr=aladdin https://blog.csdn.net/xiajun2356033/article/details/81513957 https://baike.baidu.com/item/瀑布模型/9817778?fr=aladdin http://www.51sjk.com/b1b87850/ https://www.ituring.com.cn/article/9363 https://baike.baidu.com/item/没有银弹/5036116?fr=aladdin 几个软件工程方法论认识: 1、大泥球 定义:一个大泥球是杂乱无章的结构,蔓延,马虎,管道胶带和保龄线,意大利面代码丛林。 这些系统显示出明显的不受监管的增长迹象,以及反复的权宜之计。信息在系统的遥远元素之间杂乱无章地共享