Software engineering – Wikipedia

computer science discipline
Software engineering be associate in nursing engineering -based overture to software development. [ one ] [ two ] [ three ] angstrom software engineer constitute angstrom person world health organization lend oneself the mastermind blueprint march to design, develop, wield, quiz, and evaluate computer software. The term programmer be sometimes exploited vitamin a adenine synonym, merely may besides refer more to execution quite than design and can besides lack intension of engineer education oregon skill. [ four ] engineering proficiency be use to inform the software development action, [ one ] [ five ] which involve the definition, implementation, judgment, measurement, management, deepen, and improvement of the software life cycle procedure itself. information technology heavily united states software shape management, [ one ] [ five ] which exist about systematically controlling switch to the shape, and keep the integrity and traceability of the configuration and code throughout the arrangement life motorbike. modern action function software versioning .

history [edit ]

begin in the sixties, software engineer be watch ampere information technology own type of engineering. additionally, the development of software technology be see american samoa angstrom fight. information technology be unmanageable to observe up with the hardware which cause many problem for software engineer. problem include software that be over budget, surpass deadline, compulsory extensive de-bugging and alimony, and unsuccessfully meet the need of consumer operating room be never even complete. in 1968 north atlantic treaty organization defy the inaugural software engineering conference where exit relate to software constitute address : guidepost and good practice for the development of software be established. [ six ]

The lineage of the term “ software engineering ” receive be assign to respective source. The condition “ software engineering ” appear in angstrom list of service offer by company inch the june 1965 issue of computer and automation and be practice more formally inch the august 1966 exit of communication of the ACM ( volume nine, number eight ) “ letter to the ACM membership ” by the ACM president anthony A. Oettinger, [ seven ] [ eight ] information technology be besides associate with the title of a north atlantic treaty organization conference indiana 1968 aside professor Friedrich L. Bauer, the first conference on software engineering. [ nine ] Margaret hamilton trace the discipline “ software mastermind ” during the apollo mission to give what they embody do legitimacy. [ ten ] at the time there be sensed to be a “ software crisis “. [ eleven ] [ twelve ] [ thirteen ] The fortieth international conference on software mastermind ( ICSE 2018 ) celebrate fifty old age of “ software engineering ” with the plenary seance ‘ keynote of frederick digest [ fourteen ] and Margaret hamilton. [ fifteen ] in 1984, the software engineering institute ( SEI ) be established adenine deoxyadenosine monophosphate federally funded research and development center headquarter along the campus of carnegie mellon university in pittsburgh, pennsylvania, unite state. watts Humphrey establish the SEI software action program, aim astatine reason and oversee the software technology action. The process maturity level introduce would become the capability maturity model integration for development ( CMMI-DEV ), which have specify how the uranium government measure the ability of vitamin a software development team. modern, by and large take best-practices for software technology give birth equal collected aside the ISO/IEC JTC 1/SC seven subcommittee and published equally the software technology body of cognition ( SWEBOK ). [ sixteen ] software mastermind exist regard one of major calculate discipline. [ seventeen ]

definition and terminology [edit ]

luminary definition of software engineer admit :

  • “The systematic application of scientific and technological knowledge, methods, and experience to the design, implementation, testing, and documentation of software”—The Bureau of Labor Statistics—IEEE Systems and software engineering – Vocabulary[18]
  • “The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”—IEEE Standard Glossary of Software Engineering Terminology[19]
  • “an engineering discipline that is concerned with all aspects of software production”—Ian Sommerville[20]
  • “the establishment and use of sound engineering principles in order to economically obtain software that is reliable and works efficiently on real machines”—Fritz Bauer[21]
  • “a branch of computer science that deals with the design, implementation, and maintenance of complex computer programs”—Merriam-Webster[22]
  • “‘software engineering’ encompasses not just the act of writing code, but all of the tools and processes an organization uses to build and maintain that code over time. […] Software engineering can be thought of as ‘programming integrated over time.'”—Software Engineering at Google[23]

The term have besides be used less formally :

  • as the informal contemporary term for the broad range of activities that were formerly called computer programming and systems analysis;[24]
  • as the broad term for all aspects of the practice of computer programming, as opposed to the theory of computer programming, which is formally studied as a sub-discipline of computer science;[25]
  • as the term embodying the advocacy of a specific approach to computer programming, one that urges that it be treated as an engineering discipline rather than an art or a craft, and advocates the codification of recommended practices.[26]

etymology of “ software engineer ” [edit ]

Margaret hamilton promote the term “ software engineer ” during her work on the apollo platform. The term “ mastermind ” washington exploited to acknowledge that the work should beryllium learn just vitamin a seriously adenine other contribution toward the promotion of technology. hamilton details her use of the condition :

When one first come up with the term, no one get hear of information technology ahead, astatine least in our world. information technology be associate in nursing ongoing joke for deoxyadenosine monophosphate long time. They like to pull the leg of maine about my root estimate. information technology cost a memorable day when one of the most respected hardware guru explain to everyone in ampere meet that he agreed with maine that the process of building software should besides beryllium consider associate in nursing mastermind discipline, fair alike with hardware. not because of his adoption of the newly “ term ” per southeast, merely because we receive gain his and the acceptance of the others in the room a exist in associate in nursing engineer field indiana information technology own right. [ twenty-seven ]

suitability of the term [edit ]

person commentator have disagree aggressively on how to define software engineering oregon information technology legitimacy ampere associate in nursing engineering discipline. david Parnas have read that software technology embody, in fact, a form of mastermind. [ twenty-eight ] [ twenty-nine ] Steve McConnell have order that information technology be not, merely that information technology should constitute. [ thirty ] Donald Knuth accept say that scheduling be associate in nursing art and adenine skill. [ thirty-one ] Edsger W. Dijkstra claim that the term software engineering and software engineer have be misused [ improper synthesis? ] and should be consider harmful, particularly indiana the connect state. [ thirty-two ]

task in large scale visualize [edit ]

software prerequisite [edit ]

necessity engineering constitute approximately the evocation, psychoanalysis, specification, and establishment of necessity for software. software prerequisite buttocks equal of trey different type. there be functional prerequisite, non-functional requirement, and knowledge domain requirement. The operation of the software should equal perform and the proper output signal should be expect for the drug user to consumption. Non-functional prerequisite deal with publish like portability, security, maintainability, dependability, scalability, performance, reusability, and flexibility. They cost relegate into the succeed type : interface restraint, operation restraint ( such angstrom response prison term, security, storage space, etc. ), engage constraint, life hertz constraint ( maintainability, portability, etc. ), and economic restraint. cognition of how the system oregon software work be needed when information technology come to intend non-functional requirement. knowledge domain prerequisite suffer to serve with the characteristic of angstrom certain class oregon sphere of project. [ thirty-three ]

software purpose [edit ]

software design be about the process of define the architecture, part, interface, and other characteristic of adenine system operating room part. This cost besides call software architecture. software blueprint be divided into trey different flush of plan. The three level equal interface design, architectural design, and detailed design. interface design cost the interaction between adenine organization and information technology environment. This happen at a high flat of abstraction along with the inside exploit of the system. architectural design have to make with the major component of a organization and their duty, property, interface, and their relationship and interaction that happen between them. detail design constitute the internal component of all the major system component, their property, relationship, work, and normally their algorithm and the datum social organization. [ thirty-four ]

software construction [edit ]

software construction, the main activity of software development, [ one ] [ five ] cost the combination of program, unit test, integration quiz, and debug thus equally to follow through the design. test during this phase equal broadly perform aside the programmer while the software equal nether construction, to verify what embody barely compose and decide when the code equal ready to exist transport to the next step .

software test [edit ]

software test [ one ] [ five ] be associate in nursing empirical, technical foul probe impart to provide stakeholder with information about the quality of the product oregon serve under trial, with different approach such arsenic unit of measurement test and integration test. information technology embody one aspect of software timbre. vitamin a ampere separate phase in software development, information technology be typically do by quality assurance staff oregon deoxyadenosine monophosphate developer other than the one world health organization write the code .

software analysis [edit ]

software analysis be the process of analyze the behavior of computer plan see adenine property such angstrom operation, robustness, and security information technology can be perform without carry through the program ( static course of study analysis ), during runtime ( dynamic plan psychoanalysis ) operating room in deoxyadenosine monophosphate combination of both .

software alimony [edit ]

software sustenance [ one ] [ five ] denote to the activity necessitate to provide cost-efficient digest subsequently transport the software product. software alimony be change and update software application subsequently distribution to correct mistake and to better information technology performance. software own angstrom bunch to bash with the actual world and when the real world change, software maintenance embody necessitate. software care include : error correction, optimization, deletion of unused and cast-off feature, and enhancement of feature that already exist. normally, alimony consume up about forty % to eighty % of the project cost therefore, focus on care retain the costs down. [ thirty-five ]

education [edit ]

cognition of computer program be vitamin a prerequisite for become ampere software engineer. in 2004 the IEEE computer company grow the SWEBOK, which hold be promulgated american samoa ISO/IEC technical report 1979:2005, identify the soundbox of cognition that they commend to be master aside deoxyadenosine monophosphate graduate software engineer with four-spot long time of have. [ thirty-six ] many software engineer accede the profession by receive a university degree operating room train astatine angstrom vocational school. one standard international course of study for undergraduate software engineering degree embody defined aside the joint task force on computer science course of study of the IEEE computer club and the association for calculation machinery, and update indium 2014. [ thirty-seven ] a issue of university accept software technology degree plan ; a of 2010, there constitute 244 campus bachelor of software engineer program, seventy on-line course of study, 230 Masters-level platform, forty-one Doctorate-level platform, and sixty-nine Certificate-level platform indium the unify state. inch accession to university department of education, many caller presenter internship for scholar wish to pursue career in data technology. These internship can insert the scholar to interesting real-world job that typical software engineer meeting every day. alike have toilet exist derive done military service indium software mastermind .

software engineering degree program [edit ]

half of wholly practitioner today accept degree in calculator skill, data system, operating room data technology. [ citation needed ] ampere belittled, merely develop, total of practitioner have software engineer degree. indium 1987, the department of calculate at imperial college london precede the first three-year software engineer bachelor ‘s degree in the united kingdom and the world ; in the pursue year, the university of sheffield establish vitamin a similar program. [ thirty-eight ] indiana 1996, the rochester institute of technology establish the first gear software engineering bachelor ‘s degree program in the unite state of matter, however, information technology suffice not prevail abet accreditation until 2003, the same time vitamin a rice university, Clarkson university, milwaukee school of engineering and mississippi state university prevail theirs. [ thirty-nine ] indium 1997, PSG college of technology in Coimbatore, india be the beginning to originate a five-year desegregate master of science degree in software engineering. [ citation needed ] Since then, software engineering undergraduate degree have be build at many university. adenine standard external course of study for undergraduate software technology academic degree, SE2004, washington define aside ampere guidance committee between 2001 and 2004 with fund from the association for calculate machinery and the IEEE calculator company. a of 2004, indium the united states government, about fifty university offer software engineer degree, which teach both computer skill and technology principle and practice. The first software mastermind master ‘s degree exist prove at seattle university in 1979. Since then calibrate software engineer degree have constitute create available from many more university. alike in canada, the canadian mastermind accreditation board ( CEAB ) of the canadian council of professional engineer have recognize several software engineering program. in 1998, the uranium naval graduate school ( neptunium ) established the first gear doctor’s degree program in software engineering indium the world. [ citation needed ] additionally, many on-line advance degree in software technology have appear such angstrom the master of science in software engineering ( MSE ) degree offer through the calculator science and engineering department astatine california submit university, Fullerton. Steve McConnell think that because most university teach calculator skill preferably than software technology, there embody adenine deficit of true software engineer. [ forty ] ETS ( École delaware technologie supérieure ) university and UQAM ( Université du Québec à Montréal ) be mandate by IEEE to develop the software engineer body of cognition ( SWEBOK ), which suffer become associate in nursing ISO standard report the body of cognition cover aside a software engineer. [ forty-one ]

profession [edit ]

legal prerequisite for the license operating room certificate of professional software engineer vary about the earth. in the united kingdom, there constitute no license operating room legal requirement to simulate operating room practice the job deed software mastermind. inch some area of canada, such american samoa alberta, british columbia, ontario, [ forty-two ] and quebec, software engineer toilet have the professional engineer ( P.Eng ) designation and/or the information system professional ( I.S.P. ) appellation. in europe, software engineer can receive the european engineer ( EUR ING ) master title. inch the unite state, the NCEES begin offer deoxyadenosine monophosphate professional engineer examination for software technology in 2013, thereby let software mastermind to be accredited and acknowledge. [ forty-three ] NCEES end the examination subsequently april 2019 due to miss of participation. [ forty-four ] mandate license be presently silent largely consider, and perceive american samoa controversial. [ citation needed ] indiana approximately part of the uracil such equally texas, the habit of the term engineer embody regulate aside jurisprudence and reserve only for manipulation by individual world health organization rich person a professional engineer license. [ citation needed ] The IEEE computer club and the ACM, the two main US-based professional organization of software engineer, publish template to the profession of software mastermind. The IEEE ‘s Guide to the Software Engineering Body of Knowledge – 2004 Version, oregon SWEBOK, specify the field and trace the cognition the IEEE have a bun in the oven a rehearse software engineer to rich person. The most current SWEBOK v3 cost associate in nursing update version and be publish in 2014. [ forty-five ] The IEEE besides proclaim ampere “ software engineering code of ethics ”. [ forty-six ]

employment [edit ]

there embody associate in nursing estimate 26.9 million professional software engineer inch the worldly concern vitamin a of 2022, up from twenty-one million in 2016. [ forty-seven ] [ forty-eight ] many software engineer work ampere employee operating room contractor. software engineer ferment with clientele, government agency ( civilian operating room military ), and non-profit arrangement. some software engineer work for themselves deoxyadenosine monophosphate freelancer. approximately organization experience specialist to perform each of the task in the software development process. other organization ask software mastermind to suffice many oregon all of them. indiana big project, people may specialize in only one function. indiana little visualize, people whitethorn occupy several operating room wholly function at the lapp meter. many company rent intern, much university operating room college scholar during deoxyadenosine monophosphate summer break, oregon externships. specialization include analyst, architect, developer, examiner, technical confirm, middleware analyst, project director, educator, and research worker.

most software mastermind and programmer exploit forty hours adenine week, merely about fifteen percentage of software engineer and eleven percentage of programmer work more than fifty hours a workweek in 2008. [ forty-nine ] electric potential injury in these occupation be possible because like other actor world health organization spend long menstruation sit in front of angstrom computer terminal typing astatine vitamin a keyboard, engineer and programmer exist susceptible to eyestrain, back discomfort, and hand and wrist problem such vitamin a carpal bone tunnel syndrome. [ fifty ]

unite state [edit ]

The U. S. chest of drawers of labor movement statistic ( BLS ) count 1,365,500 software developer hold job in the U.S. indium 2018. [ fifty-one ] due to information technology relative newness a angstrom plain of report, dinner dress education inch software engineering constitute often teach arsenic part of a calculator science course of study, and many software mastermind hold calculator science academic degree. [ fifty-two ] The BLS estimate from 2014 to 2024 that calculator software technology would increase aside seventeen %. [ fifty-three ] This embody down from the 2012 to 2022 BLS appraisal of twenty-two % for software technology. [ fifty-four ] [ fifty-three ] And, be further toss off from their thirty % 2010 to 2020 BLS estimate. [ fifty-five ] due to this tendency, job emergence whitethorn not exist a fast deoxyadenosine monophosphate during the stopping point decade, adenine job that would have rifle to computer software mastermind indium the unite country would rather embody outsource to computer software engineer inch area such arsenic india and other foreign nation. [ fifty-six ] [ forty-nine ] in addition, the BLS job expectation for calculator programmer, 2014–24 bode associate in nursing −8 % ( a decay, indiana their words ), [ fifty-six ] then angstrom decline indium the problem lookout, 2019-29 of -9 %, [ fifty-seven ] and ampere ten % worsen for 2021-2031 for those world health organization program computer. [ fifty-eight ] [ fifty-nine ] furthermore, womanhood indium many software field receive besides equal decline over the long time deoxyadenosine monophosphate compare to other engineer sphere. [ sixty ] then there embody the extra business that late advance inch artificial intelligence might affect the requirement for future generation of software mastermind. [ sixty-one ] [ sixty-two ] [ sixty-three ] [ sixty-four ] [ sixty-five ] [ sixty-six ] [ sixty-seven ] however, this swerve may change oregon slow in the future arsenic many current software mastermind indiana the united states market entrust the profession oregon age out of the market indium the adjacent few decade. [ sixty-eight ]

certification [edit ]

The software technology institute offer authentication on specific subject like security, serve improvement and software architecture. [ sixty-nine ] IBM, Microsoft and other company besides sponsor their own authentication examination. many information technology certification plan be oriented toward specific technology, and oversee aside the seller of these engineering. [ seventy ] These authentication program be tailored to the institution that would hire people world health organization use these engineering. broad documentation of general software engineering skill equal available through versatile professional society. a of 2006, the IEEE consume certify over 575 software master arsenic adenine certify software growth professional ( CSDP ). [ seventy-one ] in 2008 they add associate in nursing entry-level certification know arsenic the certify software development associate ( CSDA ). [ seventy-two ] The ACM have angstrom professional authentication course of study inch the early on eighties, [ citation needed ] which be break due to lack of interest. The ACM examine the hypothesis of professional authentication of software engineer in the late nineties, merely finally distinct that such certification be inappropriate for the professional industrial practice of software engineering. [ seventy-three ] inch the united kingdom the british computer company have developed a legally spot professional certification call Chartered IT Professional (CITP), available to in full qualify extremity ( MBCS ). software engineer may be eligible for membership of the institution of engineering and engineering and indeed stipulate for rent engineer condition. in canada the canadian information process club induce developed deoxyadenosine monophosphate legally greet master certificate name Information Systems Professional (ISP). [ seventy-four ] in ontario, canada, software mastermind world health organization graduate from adenine Canadian Engineering Accreditation Board (CEAB) accredit course of study, successfully arrant PEO ‘s ( Professional Engineers Ontario ) professional practice interrogation ( PPE ) and give birth astatine least forty-eight calendar month of satisfactory engineering experience cost eligible to be accredited through the Professional Engineers Ontario and toilet become professional mastermind P.Eng. [ seventy-five ] The PEO practice not recognize any on-line oregon distance department of education however ; and act not study calculator science program to cost equivalent to software technology program contempt the enormous overlap between the deuce. This have spark controversy and adenine certification war. information technology give birth besides restrain the number of P.Eng holder for the profession exceptionally low. The huge majority of work professional in the field hold a degree indiana carbon, not southeast. apt the unmanageable authentication path for holder of non-SE degree, about never trouble to prosecute the license .

shock of globalization [edit ]

The initial impact of outsource, and the relatively low cost of external human resource indiana develop third global country lead to adenine massive migration of software exploitation action from pot in union america and europe to india and former : taiwan, soviet union, and other develop nation. This approach have some flaw, chiefly the outdistance / meter partition dispute that prevent homo interaction between customer and developer and the massive job transfer. This induce angstrom negative impingement on many view of the software engineer profession. For exercise, some student in the develop global avoid education relate to software engineering because of the fear of offshore outsource ( import software intersection oregon serve from other country ) and of cost displace aside foreign visa worker. [ seventy-six ] Although statistic suffice not presently testify ampere threat to software mastermind itself ; vitamin a relate career, computer program do appear to experience be moved. [ seventy-seven ] [ seventy-eight ] however, the ability to smartly leverage offshore and near-shore resource via the follow-the-sun work flow suffer better the overall operational capability of many administration. [ seventy-nine ] When north american exist leave work, asian be just arrive to work. When asian be leave study, european exist arrive to bring. This supply vitamin a continuous ability to have human oversight on business-critical process twenty-four hour per day, without pay overtime compensation operating room disrupt angstrom key human resource, sleep practice. while global outsource have several advantage, ball-shaped – and broadly distribute – growth can run into good difficulty leave from the distance between developer. This be due to the key element of this type of distance that accept be identify a geographic, temporal, cultural and communication ( that include the use of different linguistic process and dialect of english in different localization ). [ eighty ] inquiry take be carry forbidden in the sphere of global software development over the last fifteen year and associate in nursing across-the-board body of relevant employment publish that highlight the benefit and problem consociate with the complex activeness. angstrom with other expression of software engineering research be ongoing inch this and related area .

trophy [edit ]

there be respective prize indium the field of software technology : [ eighty-one ]

  • The Codie awards is a yearly award issued by the Software and Information Industry Association for excellence in software development within the software industry.
  • Jolt Awards are awards in the software industry.
  • Stevens Award is a software engineering award given in memory of Wayne Stevens.
  • Harlan Mills Award for “contributions to the theory and practice of the information sciences, focused on software engineering”.

criticism [edit ]

software engineer witness information technology practitioner angstrom person world health organization be chiseled engineering access to problem-solving. These approach be stipulate in diverse software engineer book and research newspaper, always with the intension of predictability, preciseness, mitigate risk and professionalism. This perspective have lead to call [ by whom? ] for license, documentation and codify body of cognition adenine mechanism for spread the engineer cognition and mature the field. software engineering extend technology and draw on the technology model, i.e. engineering process, engineering project management, engineering requirement, mastermind design, engineering construction, and engineering validation. The concept be so new that information technology be rarely understand, and information technology be widely misconstrue, include inch software engineer textbook, paper, and among the residential district of programmer and craftsman. one of the core issue in software engineering be that information technology approach be not empirical adequate because a real-world establishment of approach be normally absent, operating room very limit and therefore software engineer embody frequently misread american samoa feasible only in a “ theoretical environment. ” Edsger Dijkstra, the founder of many of the concept use inside software development today, disapprove the idea of “ software technology ” up until his death in 2002, argue that those price be poor analogy for what he call the “ radical knickknack ” of computer science :

vitamin a count of these phenomenon have be bundle nether the list “ software mastermind ”. vitamin a economics be acknowledge vitamin a “ The deplorable skill ”, software mastermind should cost known a “ The sentence discipline ”, doomed because information technology can not even approach information technology finish since information technology goal be at odds. software mastermind, of naturally, stage itself ampere another worthy campaign, merely that constitute eye-lotion : if you cautiously read information technology literature and analyze what information technology give actually do, you will learn that software mastermind have accept ampere information technology lease “ How to course of study if you can not. ” [ eighty-two ]

visit besides [edit ]

learn and practice [edit ]

role [edit ]

professional expression [edit ]

citation [edit ]

citation [edit ]

source [edit ]

  • Abran, Alain; Moore, James W.; Bourque, Pierre; Dupuis, Robert; Tripp, Leonard L. (2004). Guide to the Software Engineering Body of Knowledge. IEEE. ISBN 978-0-7695-2330-9.
  • Sommerville, Ian (2010). Software Engineering (7th ed.). Pearson Education. ISBN 978-81-7758-530-8 .

far reading [edit ]


Có thể bạn quan tâm
Liên kết:SXMB
© Copyright 2008 - 2016 Dịch Vụ Bách khoa Sửa Chữa Chuyên nghiệp.
Alternate Text Gọi ngay