DOC PREVIEW
SJSU CMPE 133 - Notes

This preview shows page 1-2-3-4-5 out of 14 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 14 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Software engineeringFrom Wikipedia, the free encyclopedia.TerminologyOriginsMeaningsLevelsSoftware engineerSoftware engineering todayImpact of software engineeringRoom for improvementEducationGraduateUndergraduateSecondaryTasksTechnologies and practicesTechnologiesProcesses and methodologiesRoles in industryComparing related fieldsWhat is the nature of SE?Branch of which field?History60 year time lineFuture directions for software engineeringConferences, organizations and publicationsConferencesOrganizationsPublicationsQuotesWhat Is Software Engineering?http://www.sei.cmu.edu/about/overview/whatis.htmlThe establishment and use of sound engineering principles (methods) in order to obtain economically software that is reliable and works on real machines (Bauer, F. L. Software Engineering. Information Processing 71., 1972). Mr. Bauer was a principal organizer of the 1968 NATO conference that led to the widespread use of the term "software engineering." Software engineering. (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1) IEEE Std 610-1990. Software engineering is the technological and managerial discipline concernedwith systematic production and maintenance of software products that are developed and modified on time and within cost estimates (Fairley, R. SoftwareEngineering Concepts. New York: McGraw-Hill, 1985). Software engineering is the computer science discipline concerned with developing large applications. Software engineering covers not only the technical aspects of building software systems, but also management issues, such as directing programming teams, scheduling, and budgeting ( WebReference Webopaedia). SEI software engineering definition from 1990 SEI Report on Undergraduate Software Engineering Education (CMU/SEI-90-TR-003): - Engineering is the systematic application of scientific knowledge in creating and building cost-effective solutions to practical problems in the service of mankind. - Software engineering is that form of engineering that applies the principles of computer science and mathematics to achieving cost-effective solutions to software problems. For additional information about software engineering, see the SEI Report about Undergraduate Software Engineering Education CMU/SEI-90-TR-003 , IEEE Std 610-1990 or WebReference Webopaedia. -------------------------Software Engineering: The computer science discipline concerned with developing large applications. Software engineering covers not only the technical aspects of building software systems, but also management issues, such as directing programming teams, scheduling, and budgeting.---------------------------------------Software engineeringFrom Wikipedia, the free encyclopedia.Software engineering (SE) is the profession concerned with specifying, designing, developing and maintaining software applications by applying technologies and practices from computer science, project management, and other fields.SE applications are used in a wide range of activities, from industry to entertainment. Software applications improve user productivity and quality of life. Application software examples: office suites, video games, and the world wide web. System software examples: embedded systems and operating systems.SE technologies and practices improve the productivity of developers and the quality of the applications they create. Software engineering examples: databases, languages, libraries, patterns, and tools. Computer science examples: algorithms and data structures. Project management examples: processes.The SE community includes 630,000 practitioners and educators in the U.S. and an estimated 1,400,000 practitioners in the E.U., Asia, and elsewhere; it is about 60% the size of traditional engineering. SE pioneers include Barry Boehm, Fred Brooks, C. A. R. Hoare, and David Parnas.Related terms: software engineer.See also List of software engineering topics.Contents [hide] 1 Terminology1.1 Origins1.2 Meanings1.3 Levels1.4 Software engineer2 Software engineering today2.1 Impact of software engineering2.2 Room for improvement3 Education3.1 Graduate3.2 Undergraduate3.3 Secondary4 Tasks5 Technologies and practices5.1 Technologies5.2 Processes and methodologies5.3 Roles in industry6 Comparing related fields6.1 What is the nature of SE?6.2 Branch of which field?7 History7.1 60 year time line7.2 Future directions for software engineering8 Conferences, organizations and publications8.1 Conferences8.2 Organizations8.3 Publications9 Quotes[edit]Terminology[edit]OriginsThe term software engineering was used occasionally in the late 1950sand early 1960s. Software engineering was popularized by the 1968 NATO Software Engineering Conference held in Garmisch, Germany and has been in widespread use since.[edit]MeaningsAs of 2004, in common parlance the term software engineering is usedwith at least three distinct meanings:- As the usual contemporary term for the broad range of activities that was formerlycalled programming or systems analysis; - As the broad term for the technical analysis of all aspects of the practice, as opposed to the theory of computer programming; - As the term embodying the advocacy of a specific approach to computer programming, one that urges that it be treated as an engineering profession rather than an art or a craft, and advocates the codification of recommended practices in the form of software engineering methodologies. [edit]LevelsThere are currently no widely accepted criteria for distinguishing someone who is a software engineer from someone who is not a software engineer. In addition, the industry is in the midst of a complexdebate on the licensing of practicing software engineers. For the localities that do not license software engineers, some hiring classifications are made based on education and experience. Classification levels may include: entry-level, mid-level, and senior.Typical entry-level software engineers have a bachelors degree and zero to five years of experience. Typical mid-level software engineers have a bachelors or masters degree and have five to ten years of experience. Typical senior-level software engineers have an advanced degree and have ten or more years of experience. Note that these are only guidelines that are trends seen in hiring practices and that many exceptions exist.[edit]Software


View Full Document

SJSU CMPE 133 - Notes

Download Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?