软件工程

软件工程网络15结对编程作业

安稳与你 提交于 2020-03-06 18:57:29
一.链接 学号:侯帅军201521123092博客链接: http://www.cnblogs.com/springbreezemiles/ 学号:张朝玮201521123106博客链接: http://www.cnblogs.com/paohui/ 结对编程码云项目链接: https://gitee.com/springbreezemiles/in_software_engineering_programming 二. 1、需求分析 本题要求设计一个程序,可以自动生成小学四则运算题目。这个程序可以方便小学的老师为学生布置题目,也可以为家长给孩子做测试提供便利,可以说是很实用的。做这个程序,我们当然是希望出题的难度可以适中,题目类型又多样,包含十位数以内的加、减、乘、除等基本的运算,可以处理用户的输入,检查结果是否正确并打分统计正确率,并且可以自定义题目个数。 2、思维导图 3、代码如下 四则运算 import java.math.BigDecimal; import java.text.DecimalFormat; public class Dj{ long sum; char a[]={'+','-','¡Á','¡Â'}; char b[]={'+','-','¡Á','¡Â'}; public void Dj(int b,int c,int d) throws Yc{ if

第二次个人阅读作业

血红的双手。 提交于 2020-03-06 12:33:18
第一篇文章:No Silver Bullet: Essence and Accidents of Software Engineering 主要在说软件工程这件事很难以及为什么难。 软件工程难,难在复杂性、整合性、易变性和不可视性都是软件工程的本质问题,而非偶然问题。 在软件工程领域有几大突破:高级语言、分时系统和统一编程环境。但很可惜,这些突破解决的都是偶然性问题(Accidents)而非本质性问题。 有哪些技术可能成为解决问题的终极方案呢?模块化编程、面向对象编程、人工智能、专家系统、自动编程、图像编程、程序验证、环境和工具、工作站。这些都不堪大用。 对于解决概念问题有哪些尝试呢?购买而不是构建、要求细化和敏捷开发、伟大的设计师、令人激动的产品。这几个方面效果比较客观。 第二篇文章:There Is a Silver Bullet 与第一篇关联较大,观点相对第一篇乐观。 经济刺激对软件工程困境的解决有很大帮助。同时认为终极的解决方案是基于复用和互换的软件工业革命。 面相对象的重点在于将注意力从构建对象的过程转移到对象本身。这样我就可以像操纵现实中的物体一样操纵软件。 可复用的组件是重要的方式。达到像硬件那样的复用水平是最理想的状态。 同时作者作了更远的展望:非文字的编程,可以使每个计算机的使用者都成为编程者。 第三篇文章:Big Ball of Mud

自我介绍+软工五问

自古美人都是妖i 提交于 2020-03-06 11:30:15
自我介绍: 姓名:林梓琦 学校专业:广东工业大学软件工程(在读) 联系方式:19924339851 技术偏好:Java后端 软工五问: 1. 软件工程能给我实际开发中带来什么 2. 软件工程在团队开发中如何运用 3. 如何使用软件工程的知识解决代码冗余问题 4. 软件工程知识在工作中的帮助是什么 5. 一个大规模的项目的实现流程是什么 来源: https://www.cnblogs.com/JackyLin18/p/12425341.html

自我介绍+软工5问

Deadly 提交于 2020-03-06 11:24:29
个人简历 姓名:吴梓华 学校:广东工业大学 专业:软件工程 掌握程序语言:C,PASCAL,HTML/HTML5,CSS/CSS3,JavaScript 软工五问 什么是软件工程? 软件工程与计算机科学与技术的区别? 软件工程的实际应用? 我能从软件工程课中学到什么? 软件工程的前景(包括就业,发展)? 来源: https://www.cnblogs.com/chi8wah/p/12425348.html

构建之法阅读笔记05

守給你的承諾、 提交于 2020-03-06 09:35:25
   时光冉冉,转眼间这就是这学期的第六周,很开心的是,我按时完成了我给自己制定的《构建之法》阅读计划,在这一学习周,我读完了《构建之法》的最后两章。在对这两章的学习中,我学到了不少知识。   在第十六章的学习中,我对IT行业的创新有了自己的认识。对于创新,有一些似是而非的观点和传说,比如说“灵光一现,伟大的创新紧随其后”、“大家都喜欢创新”、“好的想法会赢”、“创新者都是一马当先”、“要成为领域的专家才能创新”等。但是,所谓创新,在我看来,需要掌握良好的时机,正如书上所说的黄金点问题,掌握了良好的时机才能才能取得胜利。创新都是需要比大众先走一步。例如现在的软件市场,软件公司每开发一种新的软件,都会抢占先机地发布,不然就会失去他的创新性,失去市场。一个团队的产品和众多竞争对手在各个市场上竞争,谁都想赢,影响创新的因素有框架介绍:SWOT分析、动量和加速度、技术产品的发展周期、效能过剩和竞争的各个阶段、影响产品竞争的各种因素(分别有产品行业的因素,公司和市场因素,团队执行因素,产品的价值因素)、四个象限划分产品(即第一象限:解决用户的刚需,同时又是自身的杀手功能,第二象限:解决用户的刚需,但提供的是外围设备功能,大家都能做到 ,第三象限:不是用户的刚需,而是辅助功能,大家都能做到,第四象限:不是用户刚需,而是辅助功能,但是我们有独特的办法做的更好)、打出组合拳和套路。  

UML建模系列文章总结

冷暖自知 提交于 2020-03-06 06:47:19
一、为什么要学习 UML 二、 UML 的历史 三、 UML 的特点 四、 UML 中的视图 五、 UML 建模工具 六、 UML 的应用领域 七、 UML 的构成 1 、 需求阶段如何书写 Use Case 2 、 设计阶段如何画用例图( Use-Case Diagram ) 3 、 类与类之间的关系图 (Class Diagram,UML 图 ) 4 、 UML 建模之活动图介绍( Activity Diagram ) 5 、 UML 建模之状态图( Statechart Diagram ) 6 、 UML 建模之时序图( Sequence Diagram ) 7 、 UML 建模之业务处理模型( Business Process Model,BPM ) 8 、 UML 建模之数据建模( Data Model Diagram ) 八、总结 一、为什么要学习 UML UML 是 Unified Modeling Language (统一建模语言)的简称。 UML 是对软件密集型系统中的制品进行可视化、详述、构造和文档化的语言。制品 {Artifact} 是指软件开发过程中产生的各种各样的产物,如模型、源代码、测试用例等。 Ø UML 建模可以达到以下目的: Ø 使用模型可以更好地理解问题 Ø 使用模型可以加强人员之间的沟通 Ø 使用模型可以更早地发现错误或疏漏的地方 Ø

2020软工个人阅读博客作业

巧了我就是萌 提交于 2020-03-06 03:47:45
2020软工个人阅读博客作业 项目 内容 课程链接 2020春季计算机学院软件工程(罗杰 任健) 作业要求 个人博客作业 课程目标 系统学习软件开发理论和流程,通过实践积累软件开发经验 本博客的收获 初步了解了软件和软件工程,阅读了一本好书并做了自己的思考 问题一:快速看完整部教材(《构建之法》),列出你 仍然不懂 的5到10个问题,发布在你的个人博客上。 单元测试最适合程序作者完成? 原文中在2.1节提到: 单元测试必须由最熟悉代码的人(程序的作者)来写。代码的作者最了解代码的目的、特点和实现的局限性。所以,写单元测试没有比作者更适合的人选了。 在这里,我可以理解为程序作者最了解所写程序的运行逻辑和过程,因此可以通过编写单元测试达到100%的代码覆盖率。然而测试覆盖率达到100%就一定意味着功能正确吗? 从我自身经历来看,程序作者虽然可以通过编写测试用例使得程序在运行过程中,执行到每一条代码,但程序作者毕竟只是一个人,存在思维上的局限性,导致在完成模块功能需求的时候出现漏洞,遗漏了某种特殊情况,这种思维上的漏洞即使到了编写测试阶段,在没人提醒的情况下也不会发现。 例如:在曾经的OO课程作业表达式求导中,我们寝室三人一块编写各种极端测试用例,自以为程序已经百毒不侵,然后愉快的上床睡大觉。结果第二天早晨起来,收到别人发的一个我们没有考虑到的很简单的测试用例把程序炸掉

个人博客作业

谁说胖子不能爱 提交于 2020-03-05 23:35:41
项目 内容 这个作业属于哪个课程 班级博客 这个作业的要求在哪里 作业要求 我在这个课程的目标是 学好并应用好软件工程 这个作业在哪个具体方面帮助我实现目标 阅读教材快速了解软件工程,了解目前流行的源程序版本管理软件和项目管理软件 作业正文 如下 任务一 快速看完 邹欣老师的博客园讲义 ,列出你仍然不懂的5到10个问题,发布在你的个人博客上。 问题一: 现代软件工程讲义 3 结对编程和两人合作 中提到: 结对编程有如下的好处: (3)在心理上, 当有另一个人在你身边和你紧密配合, 做同样一件事情的时候, 你不好意思开小差, 也不好意思糊弄。 以及 结对编程的过程也是一个互相督促的过程,每个人的一举一动都在别人的视线之内,所 有的想法都要受到对方的评价。由于这种督促的压力,使得程序员更认真地工作。结对 编程“迫使”程序员必须频繁地交流,而且要提高自己的技术能力以免被别人小看。 书中的描述与我的直接经验矛盾,我对此产生了疑问;两个人中如果能力差距太大,可能会导致编程往往是能力强的人独立完成的,能力弱的人如果遇到问题经常提问的话,或许会影响编程的效率;而两个人能力差距不大的话,结对编程与单独编程所学到的东西以及效率可能是差不多的。 问题二: 现代软件工程讲义 3 代码规范与代码复审 中10.3.2提到: 在面对面的复审中,一般是开发者控制流程,讲述修改的前因后果

软工第一次博客作业

我怕爱的太早我们不能终老 提交于 2020-03-04 23:50:58
软工第一次博客作业 项目 内容 课程:北航-2020-春-软件工程 博客园班级博客 要求:阅读《构建之法》并回答问题 个人博客作业 我在这个课程的目标是 提升自己的专业能力,审视自己所学的知识 这个作业在哪个 具体方面 帮助我实现目标 了解软件工程的大体流程,概念以及过去的实例 关于PM 微软的PM 有独特的历史和价值, 正如 Steven Sinofsky 讲的: 一直被拷贝, 但很少成功复制… PM作为一种非常优秀的制度,在行业能广泛采用.那么微软的PM到底和其他公司的PM有什么不同之处?无法被成功拷贝的关键点在哪里?以及一个真正优秀的PM是如何成长的,他们是从猪逐渐演变而来还是从鹦鹉变成的? 关于软件工程结构 根据理论描述,软件工程包括了软件需求分析, 软件设计, 软件构建, 软件测试, 和软件维护。然而在现实生活中,对于一些规模比较小的公司,由于人员限制或者业务比较基础单一,并不需要那么多的流程和步骤,或者由于人数或者专业水平不够无法达到完整的流程。那么在现实工作中对于不同的业务哪些流程可以被简化甚至舍弃?以及是否存在只专注于单个或几个流程的外包公司?若存在,那么外包方和承包方是如何进行交流以及验收成果有效性的? 敏捷开发 敏捷开发是一种形式上较为松散的组织形式,以人之间的互动为导向。由此看来敏捷开发更加强调参与者之间的素质以及专业技能,相较于形式化开发缺少文档的支持内容

软件工程01—那些有的没的

喜你入骨 提交于 2020-03-04 21:56:26
1、自我介绍 我是 031702540 陈**; 我的爱好是看动漫; 福大食堂中最喜欢的一道菜是紫荆二楼的水煮肉; 目前最喜欢的一首歌是 カントリー・ロード ; 敲完这行代码就能去睡觉了。 2、阅读与思考 2.1、初入大学时对计算机专业的畅想 当初你是如何做出选择计算机专业的决定的? 当初是因为高考成绩恰好在福大计算机专业的分数线左右,又咨询了许多人,感觉计算机的前景不错,所以就选了这个专业。 你认为过去两年中接触到的课程是否符合你对计算机专业的期待,为什么? 感觉并不是很符合我自己在上大学前的期待。原本以为计算机专业是很忙的,就是一天到晚对着电脑敲代码。结果发现实际上要学的不仅仅是计算机专业的知识,还有很多很多的公共基础课。不过打基础也是为了更上一层楼吧。 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗? 感觉还行,喜欢敲出代码时的成就感。计算机感觉是很大的一类,专业性很强,要想达到擅长的地步感觉还要再继续深入学习。 将来你会选择从事计算机相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因。 既然选择了这个专业,以后肯定是要从事与之相关的职业。以后想去深圳或者杭州,BAT (想想就好) 。 2.2、即将大三的你,对照前人们走过的路和描述未来发展,现在的你 自我感觉你已经具备的专业知识、技能、能力有哪些? 对计算机相关的一些基础理论知识有了初步的了解