"Modern software engineering - Construction of the law," the first chapter finishing

 

 

= 1.1 software program (data structures + algorithms) + Software Engineering

 

= + Software enterprise software business model

 

Four stages of software development : 1, toy stage

                                          2, hobby stage

                                          3, the exploratory phase

                                          4, mature industry stage

 

1.2 What is Software Engineering

 

Software Engineering: the systematic, orderly, quantifiable method is applied to the process of software development, operation and maintenance.

 

Including the areas of software engineering: software requirements analysis, software design, software builds, software testing, software maintenance

 

Software Engineering related disciplines: computer science, computer engineering, management, mathematics, project management, quality management, software ergonomics, systems engineering, industrial design and user experience design.

 

: Software ordered set of software to run on computers and electronic equipment instructions and data

 

Software Category: 1, the system software

                    2, application software

                    3, malicious software 

 

1.2.1 Software particularity:

1, the complexity (Complexity)

2, invisibility (Invisiblity)

 3, volatility (Changeability)

 4, obedience (Conformity)

 5, non-continuous (Discontinuity)

 

Other software features: There are many different programming languages, software tools and software development platform

 

                         There are many different software development process

 

                    Many different roles exist in the software team

 

                    Software can either be stored on magnetic tape, it can also be stored on CD / DVD


 

Relations 1.2.2 software engineering and computer science

 

College students in mainland China generally speaking computer software organization:

(1) or the Department of Computer Science and Technology Institute

 

(2) Software College

 

(3) Department of Software Engineering, Software Engineering Institute

 

Partial areas of theoretical computer science: computer theory, information theory and coding, algorithms and data structures, formal methods, programming languages

 

Computer science and technology bias practice areas:

 

Computer architecture, parallel computing and distributed systems, real-time systems and embedded systems, operating systems, computer networks, scientific computing, security and cryptography, artificial intelligence, computer graphics, computer vision, multimedia, database, and large-scale data processing

World Wide Web, natural language processing and speech, human-computer interaction, software engineering

 

Different emphasis in computer science and software engineering

computer science

Software Engineering

Discovery and study of the long-term objective truth

The actual short-term results (specific software become obsolete)

Idealized 

Compromise of various factors

Certainty, perfection, versatility

Uncertainty and risk management, good enough, the specific application

Various disciplines independent in-depth study, made achievements

Attention and knowledge of the various disciplines related applications, to solve the problem

Unified theory

Flourishing practices

Emphasis on originality 

The best, proven practices

Formal pursuit concise formula

Established in practice, inspiration and intuition

Correctness

reliability

 

 

 

1.2.3 knowledge of the field of software engineering

 

Life Cycle : software requirements, software design, software builds, software testing, software maintenance

 

Areas of specialization : Software configuration management, software project management, software engineering processes, software engineering models and methods of software quality

 

Rationale: calculation based on a mathematical basis, foundation engineering

 

Target 1.2.4 software engineering - to create a "good enough" software

 

User satisfaction: users found a lot of problems when using the software, the user affects the efficiency of the use of the software.

 

Reliability : a software crash often, from time to time an operating system crash, a site often can not get board when it is most needed.

 

The quality of software processes: too many problems of software development teams and processes, leading team members can not collaborate with each other, delivering software. This can also be said that the software team Bug.

 

Maintainability: a software too difficult to maintain, the press played a gourd dipper, fixes a problem, another problem came out again. There is no adequate documentation, maintenance personnel need more money and time to maintain the software, even down to rewrite suggestions.

*******************************************************************************************************************************************************************************************************************************

*******************************************************************************************************************************************************************************************************************************

P18-2

Do not understand the question

1, page 82 in the book and they work two-person issue although a small group can express their thoughts opinions, people expect the two to communicate, good aspects, consistent with the idea of ​​two people can work together to realize the project, but not the good, everyone has a different idea may run counter to expectations, it will face a crisis of disintegration groups, thus wasting more time and energy, so be your own work projects they want to get in the process of realization of the project development the results still should get them to cooperate, if someone how to develop cooperation projects to reduce run-in period, how to avoid the disintegration of the crisis together to accomplish a mutually satisfactory project?

2, page 118 in the book Agile leaders say the problem to adopt agile development process is no plan, no documentation, write code right away, ready to complain, really said this way has many beneficial effects on the book like it ? I think aside staff implement technology aside, to find a clear project development process, know the contents of each work project members, terms of reference and clear project objectives, project developers need not always easy, so if the above conditions are not reached, after determining how they use agile development methods, all items are correct direction, if something goes wrong, not a waste of time and energy?

3, in the book on page 234 of the daily management of the development phase is behind closed doors free exchange of good or good. I think in project development if closed develop a person's thinking is somewhat simple, some items may not do Shipping demand analysis, but if the free exchange members who may have a variety of random tasks, self-management time may be affected, impact of the project process, it is closed by the development of good or good exchanges developed in the project development process?

4, the book says on page 261 most software engineers main concern is the efficiency of the software, but this is only a small part of the user experience design so if in the future we are engaged in software development work as a software engineer should be based on the efficiency of software code and software-based readability or to focus on user experience mainly do?

5, the first 309 characters in this book to be an independent test out? I read the second chapter, said the unit test must (to write the author of the program) by the person most familiar with the code, because the author of the best understanding of the code and the object code, to achieve the characteristics and limitations of the book 309 but said the software team should independent testing role, if separation is really the role of a single independent test, conducted by the project are not familiar with this independent testing staff will not increase the difficulty of testing?

 

 

*******************************************************************************************************************************************************************************************************************************

*******************************************************************************************************************************************************************************************************************************

P18-3

My phone software category:

Learning software: scallops English words back, the text are live, the proper way translator, Baidu network disk, tomato ToDo

Sports software: the Keep, campus sports world

Social software: QQ, micro-channel, micro-blog, know almost

Audio and video software: mango tv, video Youku, love Fantastic Art, Tencent, Netease cloud music

Shopping Software: Taobao, Jingdong Mall

 

1, Baidu network disk:

Download reason: Middle School holiday, want to see a unit of drama (vip can see in advance) students recommended Baidu network disk free app can find resources dump Baidu network disk, for viewing.

Whether it is profitable Software: Yes, some large files ordinary users do not have enough space to store, need to recharge super affiliate, to be able to get enough space to store large files.

Evaluation of Baidu network disk: At first download Baidu network disk just because you want to watch TV, but this is not the main reason for me to be the main reason for Baidu network disk loyal customers are after college, is more important is to have students self-learning ability , while Baidu network disk can become such a media, students can access to learning resources (such as the high number of courses CET courses) through various channels to find their favorite teachers were listening, so as to enhance their own courses or specialized courses such as public ability, so I think Baidu network disk is a very good learning software and video playback software.

 

2, Ban'nasu ToDo

Download reason: the students recommended mobile phone entertainment app much to learn self-control is not strong tomato ToDo can assist students to enhance "learning self-control," learning Pa strict management mode can play phone case can also set the white list (the learning process may need to use app), white list and will not be blocked from running, greatly enhance learning efficiency.

Whether it is profitable Software: Yes, the card can purchase quarter unlimited add "customary matters", while ordinary users can only use the rights issue and other vip twice and ordinary users.

Evaluation of tomato ToDo: You can add your own collection agency, as well as to understand their own learning statistics, the number of days to record their focus on culture study habits so I think ToDo is a tomato can help students learn more effectively in an app, I temporarily that the only downside is: Apple ios system does not have permission to set the white list, if you want to find some information on tomato ToDo in the open learning Pa learning process might think you do not concentrate on learning, thus preventing you want to open a software used to check the information of .

 

 

 

 

 

Guess you like

Origin www.cnblogs.com/lzcl/p/11488477.html