Software engineering work 1-- Prologue

Software engineering work 1-- Prologue

project content
This work belongs Spring 2020 Computer Software Engineering Institute (Roger Ren Jian)
This is a job requirement Personal blog jobs
My aim in this course is Master the software engineering team approach to improve the ability of self-programming software
In particular aspects of the job which helped me achieve goals Combined curriculum project tasks and time points, reading materials for practice blueprint
Text of the job as follows

Prologue

  • When I saw the first four issues of jobs, the first reaction is to check what the search engines what keywords to get an answer.
    • The first question, read a book "Building of the law," to ask questions.
    • Then find the electronic version of the book, and found very thick, nearly 400 face, look at the title is not yet quite understand what to say.
    • Then turn a few notes to read this book and see what this book focuses? Others gain from this book what?
    • Saw two blog [1] [2] , from the book focus and see the whole picture of this work had a new understanding.
  • Our courses are three major personal project, pair, team practice course "Construction of Law", if the last warm-up operation is a book of "EDITORIAL", a practice of Vision and hoping, that this course work is the Prologue of the future experimental instructions dozen-week course. Through curriculum project tasks and time points, with the book and the work, to think about
    1. What we will do in the future? What course objective is?
    2. What practical skills curriculum project?
    3. What problems in the future we may encounter?
  • The next question is what do not understand on 1 and 2:00, questions by reading the first 3:00

Questions after reading

Personal Growth

  • One problem: In section 2.3 of the book personal development process P35, there are college students and engineers PSP data comparison table (screenshot below), have the following questions after reading thinking
    • Students and engineers in demand for PSP program analysis, what is the difference between the specific reasons for the long coding, testing links are generated?
    • What a long time the best PSP allocation is? Paradigm is time engineers spend it?
    • What the students experienced the process of the transition program to grow engineers?
    • When faced with a specific project, we have to predict what time allocation and project schedule?

1.1.1.PSP1
1.1.1.PSP2

Pair Programming

  • Question two: books 4.5.2 Why pair programming P85, in the course of three weeks have pair programming project, I have some doubts and knots on the course of the programming method.
    • Pair programming would be a project to enhance the quality of most software engineering skills?
      • Pair programming is not commonly used in the actual development, although in some respects with the odd, such as Google's Dean & Sanjay Ghemawat Jeff , but it seems only present in some degree of understanding of two very high level of complementarity same programmers who
    • Fit between the two, the process of practice to achieve the coding style habits dispute, the overhead of repeatedly reviewed, compared to double sub-module determines interface development, whether it can improve the quality and efficiency?
    • Running between two teammates, the pressure seems to urge cooperation on long-term programming advantage, why we use a curriculum project a week to practice, you can get some results?

teamwork

  • Question three: 6.1 books agile processes introduced P116, curriculum required to achieve the sprint for 10 days recorded daily meetings, which have a certain confusion.
    • Developed interval of daily meetings, once a day is not too frequent? Especially when faced with a complex bug detection and development issues.
    • Combined with my own experience of actual research projects, once Can one week regular supervision and a project schedule, spend more time left to individuals to explore and dig deeper?
    • Although the nature of scientific research and engineering work to achieve a big difference, but once a day job would not spend too much time on team communication?

1.1.3. Specific development process

  • Question 4: 6.5 books. Agile Q & P128, quick scope in the following table.
    • Agile planning, the scope of these three formal development methodology? Is not to be understood as agile development applicable to the present fast iteration speed of most Internet companies develop, plan-driven project delivery type is suitable for development, formal development method is suitable for large-scale military or civilian high safety requirements of the development?
    • Why do we want to emphasize agile development courses this way? Rather than the latter two?

1.1.3.Agile Scope

  • 问题五:第8章 需求分析 P157,我结合自己实际科创科研创新对于软件工程的需求分析有一些问题。
    • 相比创新创业式的需求分析,软工方法的各种基于已有数据的分析方法(比如调查问卷、EyeTracking),具有多大的现实意义?是不是书本中的几个方法只针对软件开发中的产品迭代更新时的需求分析改善,而不在于产品创新?
      • 需求分析,我在做科创项目的时候,最常被问到的一个问题就是,你的项目解决了什么痛点满足了什么需求,而且能开发出一款独特的、满足或者创造公众新需求的产品的公司,从产品研发来看已经成功,比如微信或者拼多多,或者阅读链接中的 对于三线城市的实践需求分析方法。
    • 公司的创新性功能是不是大多数由PM在原始想法中提出?
    • 假设软件工程的需求分析大多由PM提出,那么全方面的NABCD似乎在很多大的公司中是多个部分合作完成的,在软件工程开发里面讨论,是意味着软工开发需求分析人员也很需要和公司其他部门建立深入联系或者内嵌入其他部门吗?
  • 问题六:在书本9.3. PM做开发和测试之外的所有事情 P195
    • 之前听说艺术行业的一句话“多快好省本身就是个悖论,多了没法快,好了没法省”,所以软件行业中,可能满足在多快好省中三选二吗?有具体的案例吗?而优秀PM在其中的作用和对PM的要求又是什么?

1.1.3. Multi-block good save

  • 问题七:在书本11.5.5. 小强地狱 P250
    • 小强地狱的方法是否在可行性上,对于不同层次的程序员值得分开讨论?
    • 对于编程能力强的程序员团队,小强地狱是一项有效的平衡项目推进和bug消除的方式,但对于编程能力太弱的程序员团队,似乎很难在bug阈值设定、团队稳定开发和避免小bug导致“大怪物”之间权衡,很容易出现bug阈值设置太低导致程序员只能去debug,而影响稳定开发,设置过高之后,导致测试人员无法正常工作,甚至出现“大怪兽”,是不是这套软件工程方法或者说很多的工程方法的适用范围在编程能力相对较高的程序员上,而对于能力较弱的程序员反而累赘?
      1.1.3.bugHell

软件和软件工程词汇的出现

  • 参考Wiki,软件(software)一词出现于1958年John Wilder Tukey的The Teaching of Concrete Mathematics 论文

In 2000, Fred Shapiro, a librarian at the Yale Law School, published a letter revealing that John Wilder Tukey's 1958 paper "The Teaching of Concrete Mathematics"[5][6] contained the earliest known usage of the term "software" found in a search of JSTOR's electronic archives, predating the OED's citation by two years.[7] This led many to credit Tukey with coining the term, particularly in obituaries published that same year,[8] although Tukey never claimed credit for any such coinage. In 1995, Paul Niquette claimed he had originally coined the term in October 1953, although he could not find any documents supporting his claim.[9] The earliest known publication of the term "software" in an engineering context was in August 1953 by Richard R. Carhart, in a Rand Corporation Research Memorandum.

软件工程发展的冷知识

  1. 电脑病毒设计的初衷是为了证明,电脑可以被染上病毒

史上第一款电脑病毒,竟然是由防御技术专家Fred Cohen亲手设计出来的。他创造电脑病毒的目的仅仅是为了证明程序对电脑感染的可行性,从未希望借此对电脑造成任何危害。但这款程序却能够对电脑进行感染,并且能通过软盘等移动介质在不同计算机之间进行传播,因而命名为病毒。后来,他又创造出一种主动式电脑病毒,主要目的是帮助电脑用户找到未受感染可执行文件。

  1. Git使用SHA-1值不是为了安全,而是为了完整

Linux kernel开创者和Git的开发者——Linus说,Git使用了SHA-1并非是为了安全性,而是为了数据的完整性;它可以保证,在很多年后,你重新checkout某个commit时,一定是它多年前的当时的状态,完全一摸一样,完全值得信任。

源程序版本和项目管理软件

  • 参考wiki博客回答可以知道现有源程序管理软件的使用现状和特征分析

1.3. Source code version

管理平台 优点 缺点
github 1. 开源代码、开源项目数量多
2. 入门难度低公开仓库免费。
3.分享平台用户多,可以交流程序的各种问题。
1.私有仓库访问有限制
2.上手容易,但想充分使用,需要大量学习时间。
gitlab 1. Use large private library and free
2. Support Gitlab + Docker + Jenkins co-operation
1. expand the functionality fee
2. Some features require dual verification
gitee Country code hosting platform, access speed Each warehouse has a limited capacity of 1G
Apple Xcode 1. automatically create a classification chart
2. Provide automatic undo, redo and save functions
After the updated version, some plug-ins may fail.
Bitbucket 1. For a small team to provide unlimited free storage library, limited only five members
2. submit large files fast and
3. have flexible access control, can be customized domain name, support wiki
1. Use groups and the amount of code is better GitHub
2. domestic use private warehouse hosting platform is better GitLab
Mercurial 1. version control tools (VCS) better
2. Server is easy to deploy
3 for Windows
Branch management is not flexible, not many big teams use

Guess you like

Origin www.cnblogs.com/yzy11235/p/12421892.html