Software engineering: Wikis

  
  
  

Encyclopedia

From Wikipedia, the free encyclopedia

.
The Airbus A380 uses a substantial amount of software to create a "paperless" cockpit.
^ But it is all focused to one degree or another on the lifecycle process around the creation, verification, and delivery of software artifacts using recognized engineering practices.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ The environment includes the hardware platform(s), operating system(s), and all the software tools used to create a software system.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

Software engineering maps and plans the millions of lines of code constituting the plane's software
.Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software.^ 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.
  • Teaching software development vs. software engineering 18 January 2010 14:014 UTC www.ibm.com [Source type: FILTERED WITH BAYES]

^ Software development: applied software engineering .
  • Teaching software development vs. software engineering 18 January 2010 14:014 UTC www.ibm.com [Source type: FILTERED WITH BAYES]

^ Software development is still more a craft than an engineering discipline.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

[1]
.The term software engineering first appeared in the 1968 NATO Software Engineering Conference and was meant to provoke thought regarding the current "software crisis" at the time.^ We currently have 211 jobs for Software engineering .
  • Software engineering Jobs at Computer Weekly 18 January 2010 14:014 UTC www.computerweekly.com [Source type: News]

^ The ICSE tutorial program provides conference participants with the opportunity to gain new insights, knowledge, and skills in a broad range of areas of software engineering.
  • 27th International Conference on Software Engineering 18 January 2010 14:014 UTC www.cs.wustl.edu [Source type: Academic]

^ Methodology A term for a codified set of procedures for some phase of software engineering, such as analysis and design.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

[2][3] .Since then, it has continued as a profession and field of study dedicated to designing, implementing, and improving software that is of higher quality, more affordable, maintainable, and quicker to build.^ A UML-based language will be designed and implemented to enable fully visual and platform independent software development.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ However, most computer science curricula today emphasize building software more than studying its scientific, and thus quantifiable, underpinnings.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ It also means that it is more likely that the software designers that developed the top level design are still around to do the detailed design.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

.Since the field is still relatively young compared to its sister fields of engineering, there is still much debate around what software engineering actually is, and if it conforms to the classical definition of engineering.^ Much, if not most, of the software we create is still produced , not precisely engineered.
  • Teaching software development vs. software engineering 18 January 2010 14:014 UTC www.ibm.com [Source type: FILTERED WITH BAYES]

^ None of this is original thinking, but almost 30 years after the software engineering revolution began, software development is still seen as an undisciplined art compared to other engineering professions.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Software Engineer salaries start around $73,000, and System Specialists can earn more than $80,000.
  • Software Engineering Degrees & Software Engineering Colleges 18 January 2010 14:014 UTC www.guidetocomputertraining.com [Source type: FILTERED WITH BAYES]

.It has grown organically out of the limitations of viewing software as just computer programming.^ These degrees usually require that students take courses in math, science, computer networks, principles of software engineering classes, and programming courses, such as Java and C++.
  • Software Engineering Degrees & Software Engineering Colleges 18 January 2010 14:014 UTC www.guidetocomputertraining.com [Source type: FILTERED WITH BAYES]

^ Most software engineers work with computer systems, applications and networks, and they mostly program computers.
  • Software Engineering Degrees & Software Engineering Colleges 18 January 2010 14:014 UTC www.guidetocomputertraining.com [Source type: FILTERED WITH BAYES]

^ This book provides a developer's view of programming practice and software engineering.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

.Software development, a much used and more generic term, does not necessarily subsume the engineering paradigm.^ SE Software Engineering, the methods used in developing software.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Software development: applied software engineering .
  • Teaching software development vs. software engineering 18 January 2010 14:014 UTC www.ibm.com [Source type: FILTERED WITH BAYES]

^ Software development is still more a craft than an engineering discipline.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

Although it is questionable what impact it has had on actual software development over the last more than 40 years,[4][5] the field's future looks bright according to Money Magazine and Salary.com who rated "software engineering" as the best job in the United States in 2006.[6]

Contents

History

.When the first modern digital computers appeared in the early 1940s,[7] the instructions to make them operate were wired into the machine.^ First-generation languages are machine languages, in which instructions are particular sequences of ones and zeros that digital computers can understand.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ HOLs are typically translated by a tool called a compiler into machine-level instructions that can be understood by the computer.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ MIMD Multiple Instruction Multiple Data: a form of parallelism in multiprocessor computing where there are several instruction streams (programs) operating concurrently on several data streams.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.Practitioners quickly realized that this design was not flexible and came up with the "stored program architecture" or von Neumann architecture.^ Eventually, we have to create the real software design, and it will be in some programming language.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Ultimately, the design will end up coded in some programming language.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ C++ is a programming language suitable for real world projects that is also a more expressive software design language.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

.Thus the first division between "hardware" and "software" began with abstraction being used to deal with the complexity of computing.^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

^ Being able to emulate hardware during the software development phase of a project gives the developer the ability to get his code up and running much earlier.
  • Wind River Blog Network: Software Engineering 18 January 2010 14:014 UTC blogs.windriver.com [Source type: General]

^ In many ways, software bears more resemblance to complex social or organic systems than to hardware.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

.Programming languages started to appear in the 1950s and this was also another major step in abstraction.^ This translation or 'Program Transformation' allows for writing in one representation or language, and translating to another.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ Another option is translation to programming or Meta-programming languages so the information can be re-used by developers who are creating systems with these languages.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ This provides a way to create programs that create programs so enabling the 3 step translation process used in this thesis, and this enables translations between people, between systems, and between languages.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

.Major languages such as Fortran, ALGOL, and Cobol were released in the late 1950s to deal with scientific, algorithmic, and business problems respectively.^ FORTRAN FORmula TRANslating system: a programming language widely used for many years in scientific applications.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Algol A high-level programming language developed in the 1950s .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.E.W. Dijkstra wrote his seminal paper, "Go To Statement Considered Harmful",[8] in 1968 and David Parnas introduced the key concept of modularity and information hiding in 1972[9] to help programmers deal with the ever increasing complexity of software systems.^ In many ways, software bears more resemblance to complex social or organic systems than to hardware.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ When considering how to replace an old, outdated software system, several choices are possible.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Hadi Hariri wrote re: Rejecting Software Engineering on 06-26-2007 12:34 PM You mention that every software system is different.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.A software system for managing the hardware called an operating system was also introduced, most notably by Unix in 1969. In 1967, the Simula language introduced the object-oriented programming paradigm.^ OODBMS Object-oriented database management system.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Window manager In a window system , a program which manages windows on a screen.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ OOP Object-oriented programming.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.These advances in software were met with more advances in computer hardware.^ In many ways, software bears more resemblance to complex social or organic systems than to hardware.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ However, most computer science curricula today emphasize building software more than studying its scientific, and thus quantifiable, underpinnings.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Tunes A project to design a new computing environment at all levels of software - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

In the mid 1970s, the microcomputer was introduced, making it economical for hobbyists to obtain a computer and write software for it. .This in turn led to the now famous Personal Computer (PC) and Microsoft Windows.^ Microsoft A vendor of systems and application software for personal computers and similar platforms - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ PC Personal Computer .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.The Software Development Life Cycle or SDLC was also starting to appear as a consensus for centralized construction of software in the mid 1980s.^ Watts Humphrey begins by illuminating the central role of software development in virtually every organization -- technical and non-technical alike.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ After reviewing the software development life cycle as I understood it, I concluded that the only software documentation that actually seems to satisfy the criteria of an engineering design is the source code listings.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ This course will review the strengths and weakness of various life cycle models and review major activities in the software development life cycle.
  • Software Quality Engineering Course 18 January 2010 14:014 UTC www.westfallteam.com [Source type: Academic]

.The late 1970s and early 1980s saw the introduction of several new Simula-inspired object-oriented programming languages, including C++, Smalltalk, and Objective C.^ MDL An early object-oriented language from MIT .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ OOP Object-oriented programming.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ OODL Object-oriented Dynamic Language.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.Open-source software started to appear in the early 90s in the form of Linux and other software introducing the "bazaar" or decentralized style of constructing software.^ Processes for open source software; 2.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ Development Environment The development environment consists of everything used in the software system development, and it is also used for reengineering as well as all other forms of maintenance.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Use of a generic standard keeps open the possibility of communication with the widest possible range of other software systems.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

[10] .Then the Internet and World Wide Web hit in the mid 90s, changing the engineering of software once again.^ That computer software delivers its performance in the world and it is subject to the contingencies of engineered artifacts just the same as physical and mechanical fabrications.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Web-time development: high-speed software engineering (Dave Thomas) 20.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ WWW World-Wide Web: a project originated at CERN , aimed at providing hypertext -style access to information from a wide range of sources - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.Distributed systems gained sway as a way to design systems, and the Java programming language was introduced with its own virtual machine as another step in abstraction.^ One of the ways to use all the cores of course is multi-threaded programming in combination with an SMP operating system that can schedule over all the cores (SMP being Symmetric Multi Processing).
  • Wind River Blog Network: Software Engineering 18 January 2010 14:014 UTC blogs.windriver.com [Source type: General]

^ This translation or 'Program Transformation' allows for writing in one representation or language, and translating to another.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ Hermes An experimental object-oriented distributed systems language from IBM Watson Research Centre.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.Programmers collaborated and wrote the Agile Manifesto, which favored more lightweight processes to create cheaper and more timely software.^ This was one of the best books on software I'd read in a long time, for all the reasons listed in the above comments and more.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Systematic Software Testing Book Description Gain an in-depth understanding of software testing management and process issues that are critical for delivering high-quality software on time and within budget.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ Nu Thena A software vendor specialising in rapid prototyping tools for real-time hardware and software systems, collaborating with DAZIX .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

The current definition of software engineering is still being debated by practitioners today as they struggle to come up with ways to produce software that is "cheaper, bigger, quicker".

Profession

.Legal requirements for the licensing or certification of professional software engineers vary around the world.^ Intended for professional software developers including testers, and for university students, this book is suitable for courses on software engineering, testing, specification, or applications of formal methods.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ The announcement one year ago that Symbian will be open sourced under a license free platform in 1HCY10 was heard around the world.
  • Wind River Blog Network: Software Engineering 18 January 2010 14:014 UTC blogs.windriver.com [Source type: General]

^ I would like to add to the list of good books suitable for all software engineers is Gause, Weinberg, "Exploring Requirements: Quality Before Design".
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

.Many states of the United States license software engineers[citation needed].^ Arguably, if software engineers could draw on a better/defined body-of-knowledge or discipline like Civil or Electrical Engineers, software would be in a better state.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ The book is also valuable for software engineers and project managers who need an objective guide to the state of the art in this area.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ Many people working in the software industry have degrees with names such as Information Systems, Computer Science, or Software Engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.In the UK, the British Computer Society licenses software engineers and members of the society can also become Chartered Engineers (CEng), while in some areas of Canada, such as Alberta, Ontario,[11] and Quebec, software engineers can hold the Professional Engineer (P.Eng)designation and/or the Information Systems Professional (I.S.P.) designation; however, there is no legal requirement to have these qualifications.^ A software engineering technique - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ It holds true in electronics (I am an electronic engineer) and also in software.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Software Design 11.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

.The IEEE Computer Society and the ACM, the two main professional organizations of software engineering, publish guides to the profession of software engineering.^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

^ The software engineering factors listed in Table 3 in the main document are given in italics in the following discussion.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ This fictional work is recommended for reading by Computer Science, Information Technology, and Software Engineering students.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

.The IEEE's Guide to the Software Engineering Body of Knowledge - 2004 Version, or SWEBOK, defines the field and describes the knowledge the IEEE expects a practicing software engineer to have.^ That's how we collectively advance software engineering-- by building our shared memory and history in the field.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ This book provides a developer's view of programming practice and software engineering.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ The ICSE tutorial program provides conference participants with the opportunity to gain new insights, knowledge, and skills in a broad range of areas of software engineering.
  • 27th International Conference on Software Engineering 18 January 2010 14:014 UTC www.cs.wustl.edu [Source type: Academic]

The IEEE also promulgates a "Software Engineering Code of Ethics".[12]

Employment

.In 2004, the U. S. Bureau of Labor Statistics counted 760,840 software engineers holding jobs in the U.S.; in the same time period there were some 1.4 million practitioners employed in the U.S. in all other engineering disciplines combined.^ It holds true in electronics (I am an electronic engineer) and also in software.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Software engineering is just that – an engineering discipline.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Software engineers measure software in terms of running time, efficiency, and virtual space occupation (memory, f.ex.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

[13] .Due to its relative newness as a field of study, formal education in software engineering is often taught as part of a computer science curriculum, and as a result most software engineers hold computer science degrees.^ It holds true in electronics (I am an electronic engineer) and also in software.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Computer science should be the science supporting the study of computer software.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Fourth, software engineering IS predicated on science - it's called computer science and mathematics.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

[14]
.Most software engineers work as employees or contractors.^ This fictional work is recommended for reading by Computer Science, Information Technology, and Software Engineering students.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ The most important factor in software work is the quality of the programmers.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Approximately 80% of a software engineer's work is science, and the other 20% is art.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.Software engineers work with businesses, government agencies (civilian or military), and non-profit organizations.^ Watts Humphrey begins by illuminating the central role of software development in virtually every organization -- technical and non-technical alike.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ This fictional work is recommended for reading by Computer Science, Information Technology, and Software Engineering students.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ In particular, the process must consider that software development is a people-oriented business, and people need a structured and disciplined environment in which to do cooperative work.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.Some software engineers work for themselves as freelancers.^ This fictional work is recommended for reading by Computer Science, Information Technology, and Software Engineering students.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Some companies allow engineers to estimate the time to do their work and I guess other companies don't.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Methodology A term for a codified set of procedures for some phase of software engineering, such as analysis and design.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.Some organizations have specialists to perform each of the tasks in the software development process.^ Graduate students who earn a masters (MS) or PhD degree in software engineering can become directors of software development, software engineering specialists, software engineering managers, lead software engineers and more.
  • Software Engineering Graduate Schools & Programs, Masters Degree (MS) in Software Engineering – GradSchools.com 18 January 2010 14:014 UTC www.gradschools.com [Source type: News]

^ Watts Humphrey begins by illuminating the central role of software development in virtually every organization -- technical and non-technical alike.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ Method and Process Establishing methods for developing software systems has been an issue of software engineering since before it was called software engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.Other organizations require software engineers to do many or all of them.^ Customized Courses : Our Software Quality Engineering courses are modularized so that they can be easily customized for in-house course offerings that focus on the specific content and topics needed to meet your organizations exact training requirements.
  • Software Quality Engineering Course 18 January 2010 14:014 UTC www.westfallteam.com [Source type: Academic]

^ As these systems become inadequate for todays requirements, many organizations are realizing they do not have to throw this investment away.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Scott wrote re: Rejecting Software Engineering on 06-29-2007 12:03 AM " In the other disciplins you simply can't ship a product that isn't finished, but we do it all the time" .
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.In large projects, people may specialize in only one role.^ Only a few individual programs deal with the issues of building large, complex software systems, an activity that requires the cooperative effort of many people.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.In small projects, people may fill several or all roles at the same time.^ For all project managers and software professionals who may be called upon to manage projects.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ We do it all of the time, when we take the time to be self-conscious about it and notice what our projects are.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ At the same time, disciplined project management, consciously undertaken, has developed a substantial body of knowledge, and there is an established body of knowledge and certification procedures for project management itself.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

.Specializations include: in industry (analysts, architects, developers, testers, technical support, managers) and in academia (educators, researchers).^ I'm sure that these are amongst the questions that product, business, and technical managers across the embedded software industry have asked themselves on several occasions throughout their careers.
  • Wind River Blog Network: Software Engineering 18 January 2010 14:014 UTC blogs.windriver.com [Source type: General]

^ Developing WS-Management Solutions for Intel® Active Management Technology sponsored by Intel TECHNICAL ARTICLE: This article describes how to develop flexible WS Management-based solutions for Intel® Active Management Technology using the .NET development environment.
  • Computer-Aided Software Engineering Tools White Papers ( CASE Tools ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: Academic]

^ UIMS User Interface Management System: a system supporting the development and execution of user interfaces, usually on top of windowing systems.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.There is considerable debate over the future employment prospects for software engineers and other IT professionals.^ Intended for professional software developers including testers, and for university students, this book is suitable for courses on software engineering, testing, specification, or applications of formal methods.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ Although I sometimes wonder where System Architecture ends and Software Engineering begins, there are topics that clearly seem to be predominately in the domain of Software Engineering and Development.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Education and Training Good software will not be produced without good people, and there are many good software professionals in the work force today.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.For example, an online futures market called the "ITJOBS Future of IT Jobs in America"[15] attempts to answer whether there will be more IT jobs, including software engineers, in 2012 than there were in 2002.^ A software engineering technique - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Method and Process Establishing methods for developing software systems has been an issue of software engineering since before it was called software engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Although I sometimes wonder where System Architecture ends and Software Engineering begins, there are topics that clearly seem to be predominately in the domain of Software Engineering and Development.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

Certification

.Professional certification of software engineers is a contentious issue, with some professional organizations supporting it,[16] and others claiming that it is inappropriate given the current level of maturity in the profession.^ The software engineering factors listed in Table 3 in the main document are given in italics in the following discussion.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Intended for professional software developers including testers, and for university students, this book is suitable for courses on software engineering, testing, specification, or applications of formal methods.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ Method and Process Establishing methods for developing software systems has been an issue of software engineering since before it was called software engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

[17] Some see it as a tool to improve professional practice; "The only purpose of licensing software engineers is to protect the public".[18]
The ACM had a professional certification program in the early 1980s,[citation needed] which was discontinued due to lack of interest. .The ACM examined the possibility of professional certification of software engineers in the late 1990s, but eventually decided that such certification was inappropriate for the professional industrial practice of software engineering.^ And without software engineering, it would not be possible.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Industries such as software publishers, government agencies, manufacturers of computers and related electronic equipment, financial institutions and insurance providers are places where software engineers are hired.
  • Software Engineering Associate Degree pre-register form 18 January 2010 14:014 UTC www.cie-wc.edu [Source type: FILTERED WITH BAYES]

^ Intended for professional software developers including testers, and for university students, this book is suitable for courses on software engineering, testing, specification, or applications of formal methods.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

[17] As of 2006, the IEEE had certified over 575 software professionals.[16] .In the U.K. the British Computer Society has developed a legally recognized professional certification called Chartered IT Professional (CITP), available to fully qualified Members (MBCS).^ British Computer Society 2007.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ British Computer Society's Sociotechnical group .
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ Booking has now opened for the joint annual British Computer Society/Royal Signals Institution Lecture to be held on Tuesday 1 April 2008, 6pm for 6.40pm lecture.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

.In Canada the Canadian Information Processing Society has developed a legally recognized professional certification called Information Systems Professional (ISP)[19].^ Method and Process Establishing methods for developing software systems has been an issue of software engineering since before it was called software engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ An international organization formed to develop, nurture and enhance the system engineering approach to multi-disciplinary system product development - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ CNRI Corporation for National Research Initiatives, Reston, VA. A US research and development organisation in information processing technology - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.The Software Engineering Institute offers certification on specific topic such as Security, Process improvement and Software architecture[20].^ Software Specification and Design: An Engineering Approach offers a foundation for rigorously engineered...
  • CRC Press Online - Book: Software Engineering Quality Practices 18 January 2010 14:014 UTC www.crcpress.com [Source type: FILTERED WITH BAYES]

^ Software engineering templates 20.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Engineering programs are now offering Software Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.Most certification programs in the IT industry are oriented toward specific technologies, and are managed by the vendors of these technologies.^ OMG Object Management Group: a consortium aimed at setting standards in object-oriented programming, especially for distributed applications - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ I'm sure that these are amongst the questions that product, business, and technical managers across the embedded software industry have asked themselves on several occasions throughout their careers.
  • Wind River Blog Network: Software Engineering 18 January 2010 14:014 UTC blogs.windriver.com [Source type: General]

^ These Meta languages and standards also link with an objective of networked Meta-Programming using Semantic Web and Semantic Grid Technologies.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

[21] .These certification programs are tailored to the institutions that would employ people who use these technologies.^ Who would be interesting in using it?

^ The curricula these people studied were individually defined by the institution they attended, and these curricula address software issues in various ways.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ A group of people who make technical and other contributions to the engineering and evolution of the Internet and its technologies.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.In some countries the software engineer is an actual engineering degree (Bachelor of Science or Bachelor of Engineering), as an example in Education in Israel software engineer has the right to be written in the engineering registry, and it would be a felony If a person describe himself as an engineer ( The engineering law defines that a person stating himself as an engineer without the proper license / registration could be sentenced to up to 6 months in Jail).^ And without software engineering, it would not be possible.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ This fictional work is recommended for reading by Computer Science, Information Technology, and Software Engineering students.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Arguably, if software engineers could draw on a better/defined body-of-knowledge or discipline like Civil or Electrical Engineers, software would be in a better state.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

Impact of globalization

.Many students in the developed world have avoided degrees related to software engineering because of the fear of offshore outsourcing (importing software products or services from other countries) and of being displaced by foreign visa workers.^ Do software developers design softwares the way engineers design products?
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

^ This fictional work is recommended for reading by Computer Science, Information Technology, and Software Engineering students.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

[22] .Although statistics do not currently show a threat to software engineering itself; a related career, computer programming does appear to have been affected.^ Engineering programs are now offering Software Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Industries such as software publishers, government agencies, manufacturers of computers and related electronic equipment, financial institutions and insurance providers are places where software engineers are hired.
  • Software Engineering Associate Degree pre-register form 18 January 2010 14:014 UTC www.cie-wc.edu [Source type: FILTERED WITH BAYES]

^ The duties performed by computer software engineers will change quickly, reflecting new areas of specialization or changes in technology, as well as the preferences and practices of employers.
  • Software | Online Software Engineering Degree and Online Software Engineering Certification Schools | Directory of Schools 18 January 2010 14:014 UTC www.directoryofschools.com [Source type: Academic]

[23][24] .Often one is expected to start out as a computer programmer before being promoted to software engineer.^ Likewise, a software engineer is just a programmer.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Method and Process Establishing methods for developing software systems has been an issue of software engineering since before it was called software engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Also, who says one can't liken building bridges to engineering software?
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.Thus, the career path to software engineering may be rough, especially during recessions.^ Dr.Dichotomous wrote re: Rejecting Software Engineering on 06-28-2007 8:47 AM It strikes me as odd that people care whether software engineering is in fact engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Rejecting Software Engineering on 06-26-2007 9:33 PM "*some* software development may not be done by some people based on "scientific knowledge"...
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Software Engineering » Blog Archive » Software Engineer Says Cab Computers May Be Vulnerable wrote Software Engineering » Blog Archive » Software Engineer Says Cab Computers May Be Vulnerable on 01-07-2008 3:53 PM Pingback from Software Engineering » Blog Archive » Software Engineer Says Cab Computers May Be Vulnerable .
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.Some career counselors suggest a student also focus on "people skills" and business skills rather than purely technical skills because such "soft skills" are allegedly more difficult to offshore.^ It adds a collection of commands to simplify typesetting, and lets the user concentrate on the structure of the text rather than on formatting commands - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ It may seem more reasonable to rate how much education/training is required for a language rather than how much has been completed.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ An important part of the project will be to investigate the use of Semantic Web languages for programming, rather than just for representation of information, this would expand on languages such as SPARQL [5].
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

[25] .It is the quasi-management aspects of software engineering that appear to be what has kept it from being impacted by globalization.^ Software engineering manager extraordinaire.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Software-Engineering » Blog Archive » Software Engineering Manager wrote Software-Engineering » Blog Archive » Software Engineering Manager on 07-04-2007 10:35 AM Pingback from Software-Engineering » Blog Archive » Software Engineering Manager .
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ In view of this, it seems important to consider to what extent industrial and academic software engineering research has had an impact (positive or negative) on the practice of software engineering.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

[26]

Education

.A knowledge of programming is the main pre-requisite to becoming a software engineer, but it is not sufficient.^ Engineering programs are now offering Software Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ The software engineering factors listed in Table 3 in the main document are given in italics in the following discussion.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Arguably, if software engineers could draw on a better/defined body-of-knowledge or discipline like Civil or Electrical Engineers, software would be in a better state.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.Many software engineers have degrees in Computer Science due to the lack of software engineering programs in higher education.^ Fourth, software engineering IS predicated on science - it's called computer science and mathematics.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Today, however, software engineering is a discipline that is still included in many computer science programs.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Engineering programs are now offering Software Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.However, this has started to change with the introduction of new software engineering degrees, especially in post-graduate education.^ Rejecting Software Engineering on 09-07-2007 12:43 AM You can't be called an Engineer unless you graduate from an accredited School of Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ "Although the book is intended as a general introduction to software engineering, it is oriented towards my own interests in system requirements engineering and critical systems.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Eventually, curricula dealing with the issues of large, complex software systems should be called Software Engineering degree programs.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.A standard international curriculum for undergraduate software engineering degrees was defined by the CCSE.^ Arguably, if software engineers could draw on a better/defined body-of-knowledge or discipline like Civil or Electrical Engineers, software would be in a better state.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Eventually, curricula dealing with the issues of large, complex software systems should be called Software Engineering degree programs.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Many people working in the software industry have degrees with names such as Information Systems, Computer Science, or Software Engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.Steve McConnell opines that because most universities teach computer science rather than software engineering, there is a shortage of true software engineers.^ It holds true in electronics (I am an electronic engineer) and also in software.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Fourth, software engineering IS predicated on science - it's called computer science and mathematics.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ The MUST School of Computer Science offers college degrees to learn about computer expertise and conducts research in basic and advanced computer science, software engineering, Network Management, Software Engineering, Web Development, Multimedia and Animation.
  • Online Master’s Degree in Software Engineering – MS Software Engineering – School of Computer Science – MUST University 18 January 2010 14:014 UTC mustuniversity.com [Source type: FILTERED WITH BAYES]
  • Online Doctorate Degree in Software Engineering – DCS Software Engineering – School of Computer Science – MUST University 18 January 2010 14:014 UTC mustuniversity.com [Source type: FILTERED WITH BAYES]

[27] .In 2004 the IEEE Computer Society produced the SWEBOK, which has become an ISO standard describing the body of knowledge covered by a software engineer[citation needed].^ Industries such as software publishers, government agencies, manufacturers of computers and related electronic equipment, financial institutions and insurance providers are places where software engineers are hired.
  • Software Engineering Associate Degree pre-register form 18 January 2010 14:014 UTC www.cie-wc.edu [Source type: FILTERED WITH BAYES]

^ According to the U.S. Department of Labor, computer software engineers are one of the careers projected to grow the fastest and add the most new jobs over the 2006 -2016 decade.
  • Software Engineering Associate Degree pre-register form 18 January 2010 14:014 UTC www.cie-wc.edu [Source type: FILTERED WITH BAYES]

^ This fictional work is recommended for reading by Computer Science, Information Technology, and Software Engineering students.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

.The European Commission within the Erasmus Mundus Programme offers a European master degree called European Master on Software Engineering for students from Europe and also outside Europe[28].^ Likewise, a software engineer is just a programmer.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ So you should not call a software programmer an engineer either.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Engineering programs are now offering Software Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

This is a joint program (double degree) involving four universities in Europe.

Sub-disciplines

Software engineering can be divided into ten subdisciplines. They are:[1]
.
  • Software requirements: The elicitation, analysis, specification, and validation of requirements for software.
  • Software design: The design of software is usually done with Computer-Aided Software Engineering (CASE) tools and use standards for the format, such as the Unified Modeling Language (UML).
  • Software development: The construction of software through the use of programming languages.
  • Software testing
  • Software maintenance: Software systems often have problems and need enhancements for a long time after they are first completed.^ Design Design is usually considered to be the phase of software development following analysis, and concerned with how the problem is to be solved.
    • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

    ^ One can use engineering formulas to validate a design ahead of time.
    • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

    ^ This book provides a developer's view of programming practice and software engineering.
    • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

    This subfield deals with those problems.
  • Software configuration management: Since software systems are very complex, their configuration (such as versioning and source control) have to be managed in a standardized and structured method.
  • Software engineering management: The management of software systems borrows heavily from project management, but there are nuances encountered in software not seen in other management disciplines.
  • Software development process: The process of building software is hotly debated among practitioners with the main paradigms being agile or waterfall.
  • Software engineering tools, see Computer Aided Software Engineering
  • Software quality

Related disciplines

.Software engineering is related to the disciplines of computer science, project management, and systems engineering.^ Computer-based system engineering 3.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Fourth, software engineering IS predicated on science - it's called computer science and mathematics.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Software engineering is just that – an engineering discipline.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

[29][30]

Computer science

.Software engineering is considered a subfield of computer science by many academics.^ Fourth, software engineering IS predicated on science - it's called computer science and mathematics.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

^ Industries such as software publishers, government agencies, manufacturers of computers and related electronic equipment, financial institutions and insurance providers are places where software engineers are hired.
  • Software Engineering Associate Degree pre-register form 18 January 2010 14:014 UTC www.cie-wc.edu [Source type: FILTERED WITH BAYES]

.February 2010" style="white-space:nowrap;">[citation needed] Many of the foundations of software engineering come from computer science.^ Fourth, software engineering IS predicated on science - it's called computer science and mathematics.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

^ Industries such as software publishers, government agencies, manufacturers of computers and related electronic equipment, financial institutions and insurance providers are places where software engineers are hired.
  • Software Engineering Associate Degree pre-register form 18 January 2010 14:014 UTC www.cie-wc.edu [Source type: FILTERED WITH BAYES]

Project management

.The building of a software system is usually considered a project and the management of it borrows many principles from the field of Project management.^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

^ That's how we collectively advance software engineering-- by building our shared memory and history in the field.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Design Design is usually considered to be the phase of software development following analysis, and concerned with how the problem is to be solved.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

Systems engineering

.Systems engineers have been dealing with the complexity of large systems for many decades and their knowledge is applied to many software engineering problems.^ The issues involved in creating large, complex software are many and varied.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

^ Course Description Associates of Applied Science in Software Engineering As software becomes more widespread in everything from autos to entertainment devices, there is a burgeoning demand for professionals who can design, develop and implement specialized software systems.
  • Software Engineering Associate Degree pre-register form 18 January 2010 14:014 UTC www.cie-wc.edu [Source type: FILTERED WITH BAYES]

See also

References

  1. ^ a b SWEBOK executive editors, Alain Abran, James W. Moore ; editors, Pierre Bourque, Robert Dupuis. (2004). Pierre Bourque and Robert Dupuis. ed. Guide to the Software Engineering Body of Knowledge - 2004 Version. IEEE Computer Society. p. 1–1. ISBN 0-7695-2330-7. http://www.swebok.org. 
  2. ^ Peter, Naur; Brian Randell (7–11 October 1968). "Software engineering: Report of a conference sponsored by the NATO Science Committee" (PDF). Garmisch, Germany: Scientific Affairs Division, NATO. http://homepages.cs.ncl.ac.uk/brian.randell/NATO/nato1968.PDF. Retrieved 2008-12-26. 
  3. ^ Randell, Brian (10 Aug 2001). "The 1968/69 NATO Software Engineering Reports". Brian Randell's University Homepage. The School of the Computer Sciences, Newcastle University. http://homepages.cs.ncl.ac.uk/brian.randell/NATO/NATOReports/index.html. Retrieved 2008-10-11. "The idea for the first NATO Software Engineering Conference, and in particular that of adopting the then practically unknown term "software engineering" as its (deliberately provocative) title, I believe came originally from Professor Fritz Bauer." 
  4. ^ The end of software engineering and the start of economic-cooperative gaming
  5. ^ 35 years on: to what extent has software engineering design achieved its goals?
  6. ^ Kalwarski, Tara; Daphne Mosher, Janet Paskin and Donna Rosato (2006). "Best Jobs in America". MONEY Magazine. CNN. http://money.cnn.com/magazines/moneymag/bestjobs/2006/. Retrieved 2006-04-20. 
  7. ^ Leondes (2002). intelligent systems: technology and applications. CRC Press. ISBN 9780849311215. 
  8. ^ Dijkstra, E. W. (March 1968). "Go To Statement Considered Harmful". Communications of the ACM 11 (3): 147–148. http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD215.PDF. Retrieved 2009-08-10. 
  9. ^ Parnas, David (December 1972). "On the Criteria To Be Used in Decomposing Systems into Modules". Communications of the ACM 15 (12): 1053–1058. doi:10.1145/361598.361623. http://www.acm.org/classics/may96/. Retrieved 2008-12-26. 
  10. ^ Raymond, Eric S. The Cathedral and the Bazaar. ed 3.0. 2000.
  11. ^ Williams, N.S.W. (19-21 Feb 2001). "Professional Engineers Ontario's approach to licensing software engineering practitioners". Software Engineering Education and Training, 2001 Proceedings. 14th Conference on. Charlotte, NC: IEEE. pp. 77–78. 
  12. ^ Software Engineering Code of Ethics
  13. ^ Bureau of Labor Statistics, U.S. Department of Labor, USDL 05-2145: Occupational Employment and Wages, November 2004, Table 1.
  14. ^ "Software Engineering". http://computingcareers.acm.org/?page_id=12. Retrieved 2008-02-01. 
  15. ^ Future of IT Jobs in America
  16. ^ a b IEEE Computer Society. "2006 IEEE computer society report to the IFIP General Assembly" (PDF). http://www.ifip.org/minutes/GA2006/Tab18b-US-IEEE.pdf. Retrieved 2007-04-10. 
  17. ^ a b ACM (July 17, 2000). "A Summary of the ACM Position on Software Engineering as a Licensed Engineering Profession". Association for Computing Machinery (ACM). http://www.cs.wm.edu/~coppit/csci690-spring2004/papers/selep_main.pdf. Retrieved 2009-03-03. "At its meeting in May 2000, the Council further concluded that the framework of a licensed professional engineer, originally developed for civil engineers, does not match the professional industrial practice of software engineering. Such licensing practices would give false assurances of competence even if the body of knowledge were mature; and would preclude many of the most qualified software engineers from becoming licensed." 
  18. ^ Kruchten, Philippe, "Licensing Software Engineers?", IEEE SOFTWARE nov/dec 2008
  19. ^ Canadian Information Processing Society. "I.S.P. Designation". http://www.cips.ca/standards/isp. Retrieved 2007-03-15. 
  20. ^ SEI certification page
  21. ^ Wyrostek, Warren (March 14, 2008). "The Top 10 Problems with IT Certification in 2008". InformIT. http://www.informit.com/articles/article.aspx?p=1180991. Retrieved 2009-03-03. 
  22. ^ As outsourcing gathers steam, computer science interest wanes
  23. ^ Computer Programmers
  24. ^ Software developer growth slows in North America | InfoWorld | News | 2007-03-13 | By Robert Mullins, IDG News Service
  25. ^ Hot Skills, Cold Skills
  26. ^ Dual Roles: The Changing Face of IT
  27. ^ McConnell, Steve (July 10, 2003. Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers. ISBN 978-0321193674.
  28. ^ http://ec.europa.eu/education/programmes/mundus/index_en.html
  29. ^ Ian Sommerville (2004). Software Engineering. 7th edition. Chapter 1. Bezien 20 Okt 2008.
  30. ^ Table 2 in Chapter 1,"Guide to the Software Engineering Body of Knowledge". February 6, 2004. http://www.swebok.org/swebokcontents-ch1.html#ch1. Retrieved 2008-02-21. 

Further reading

  • Pressman, Roger S (2005). .Software Engineering: A Practitioner's Approach (6th ed.^ A Software Engineering Approach to LabView Download Link: Code: [Only Registered users can see links .
    • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

    ^ Fundamental Approaches to Software Engineering Download Link: Code: [Only Registered users can see links .
    • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

    ^ MrHatken wrote re: Rejecting Software Engineering on 06-30-2007 6:11 AM The question is not whether software development is engineering or not but why don't developers take an engineering approach to software development?
    • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

    ). Boston, Mass: McGraw-Hill. ISBN 0072853182.
     
  • Sommerville, Ian (2007) [1982]. .Software Engineering (8th ed.^ Software Engineering , ed.6.
    • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

    ). Harlow, England: Pearson Education. ISBN 0-321-31379-8. .http://www.pearsoned.co.uk/HigherEducation/Booksby/Sommerville/. 
  • Jalote, Pankaj (2005) [1991].^ Systems/Software Engineering Funding Calls - http://www.cems.uwe.ac.uk/amrc/seeds/proposallinks.htm#SystemsSoftwareEngineering .
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    ^ A prototype of an ontology to computer code translator has been created and examples from this are at - http://www.cems.uwe.ac.uk/~phale/#InteractiveExamples .
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    ^ End User Programming and the Semantic Web - http://www.cems.uwe.ac.uk/~phale/EndUserProgrammingusingtheSemanticWeb .
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    .An Integrated Approach to Software Engineering (3rd ed.^ It is good practice to use an integrated approach to selecting supporting hardware and software for a development project, making final selections based on established system requirements.
    • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

    ^ A Software Engineering Approach to LabView Download Link: Code: [Only Registered users can see links .
    • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

    ^ MrHatken wrote re: Rejecting Software Engineering on 06-30-2007 6:11 AM The question is not whether software development is engineering or not but why don't developers take an engineering approach to software development?
    • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

    ). Springer. ISBN 0-387-20881-X. .http://www.springer.com/east/home?SGWisbn=5-102-22-52090005-0&changeHeader=true. 
  • Ghezzi, Carlo (2003) [1991].^ MetaEdit+ DSM environment - http://www.metacase.com/ - MetaEdit+ is aimed at the expert developer looking to gain productivity by generating full code directly from models.
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    ^ Sys-Con Events - http://events.sys-con.com/ - AJAXWorld - October 20-22, 2008 San Jose, CA. - and other events SOA, Virtualization.
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    ^ IADIS (International Association for Development of the Information Society) - http://www.iadis.org/ - Home page with Conference Details.
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    .Fundamentals of Software Engineering (2nd (International) ed.^ Fundamental Approaches to Software Engineering Download Link: Code: [Only Registered users can see links .
    • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

    ^ International Journal of Software Engineering and Knowledge Engineering, 11, pp 259-279 - http://www.cse.sc.edu/~huhns/journalpapers/HuhnsIJSEKE.pdf .
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    ^ International Conference on Software Engineering, Proceeding of the 28th international conference on Software engineering - SESSION: Software engineering: achievements & challenges: domain-specific challenges 751 - 760 - ISBN:1-59593-375-1.
    • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

    ). Pearson Education @ Prentice-Hall. 

External links


Study guide

Up to date as of January 14, 2010

From Wikiversity

Contents

.
Software Engineering is the art of designing programs (or software) and its associated documentation (IEEE).
^ I perceive engineering as the design of software.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Robust design method for software engineering.
  • Statistical Software Engineering 18 January 2010 14:014 UTC www.nap.edu [Source type: Academic]

^ Engineering programs are now offering Software Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.The design of the software should there help solve some of the many problems that are around us.^ Designers should use anything that helps.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ There is seldom one best design solution to a software problem.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ The overwhelming problem with software development is that everything is part of the design process.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

.For instance, when one goes to a game and uses an electronic VISA card to pass through the gates...most of the time that happens, we don't imagine all the complex processes that run through the transactional system before our ticket is processed.^ When you build a product or system, it is important to go through a series of predictable steps a road map helps you create a timely, high quality result.
  • Software Engineering: A Practitioners Approach 18 January 2010 14:014 UTC webpage.pace.edu [Source type: Academic]

^ One can use engineering formulas to validate a design ahead of time.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ The added-value of this book is the in-depth explanation of all processes and relevant methodologies and tools to address this complexity.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

.Let us take a look at what could take place, hypothetically speaking.^ Let's take a look at Dictionary.com for a moment.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

  • you swipe your card
  • a card reader reads all necessary information in place like the serials, and other embedded securities and attributes of the cards
  • this goes to a database...
  • a checking account that should be reliable to give the exact balance of account
  • this may eventually go through a computer network...commonly referred to as the Public domain, or simply put, The Internet.
  • this all trips into your bank
  • through all security
  • and finally your account which is situated in a database!
.All the above processes are just part of a huge jig-saw puzzle that software engineers construct...^ There is a huge disparity in skill amongst all engineers....not just in software.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Likewise, a software engineer is just a programmer.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ So, I think software engineering is just that.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.The prospects of engineering are great and highly applicable in almost everything that goes on in our lives.^ Almost everything that we see on our screens now is antialised.

^ Computer engineering is a fast-growing field with no signs of slowing down as computers help us in many differing areas of our lives.
  • Software Engineering Professions Video: Becoming a Computer Software Engineer 18 January 2010 14:014 UTC education-portal.com [Source type: Academic]

.To be a great software engineer, Mathematics is one subject you shall never neglect...more precisely discrete mathematics and probability are used a lot.^ A software engineering technique - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Find chemical engineering software suppliers with programs you can use .
  • Engineering Software Information | Business.com 18 January 2010 14:014 UTC www.business.com [Source type: FILTERED WITH BAYES]

^ One more point: are software engineers artists?
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.Programming is definitely the blood of almost every software that is produced on this planet (may someday, we'll have nano-beings doing all that!^ One of the ways to use all the cores of course is multi-threaded programming in combination with an SMP operating system that can schedule over all the cores (SMP being Symmetric Multi Processing).
  • Wind River Blog Network: Software Engineering 18 January 2010 14:014 UTC blogs.windriver.com [Source type: General]

^ Master's degree programs in software engineering may also offer courses in management, which are designed to help the software engineer advance to a management level within his corporation or business.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

^ Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

) .And just like calculus is to engineering, programming is to software engineering.^ Likewise, a software engineer is just a programmer.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ So, I think software engineering is just that.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Software engineering is just that – an engineering discipline.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

Software engineering: a definition

.When building software, one approach is that starts at its usefulness...the services the completed program will render to humanity.^ Also, who says one can't liken building bridges to engineering software?
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Software visualization combines techniques from areas like software engineering, programming languages, data mining, computer graphics, information visualization and human-computer interaction.
  • 27th International Conference on Software Engineering 18 January 2010 14:014 UTC www.cs.wustl.edu [Source type: Academic]

^ Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

.This approach is commonly known as SOA, Service Oriented Architecture.^ SE 457 Service-Oriented Architecture .
  • MS in Software Engineering 18 January 2010 14:014 UTC www.cdm.depaul.edu [Source type: Academic]

^ Her interests include designing and implementing robust service oriented architectures, and distilling patterns and best practices.
  • 27th International Conference on Software Engineering 18 January 2010 14:014 UTC www.cs.wustl.edu [Source type: Academic]

^ In this Enterprise Software Architecture specialization, you will analyze IT problems in distributed enterprises and refine your ability to design, propose, implement, and manage solutions using technologies such as service-oriented architecture (SOA), distributed databases, and Web services.

We've got to see the end from the beginning!
.With time, we'll see a wide spread of Internet usage (I mean in places like Africa, remote ASIA and other similarly undeveloped nations), and programs will have to be aligned to the data communications network through which they will traverse.^ Locus A distributed system project supporting transparent access to data through a network-wide file system.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Most software engineers work with computer systems, applications and networks, and they mostly program computers.
  • Software Engineering Degrees & Software Engineering Colleges 18 January 2010 14:014 UTC www.guidetocomputertraining.com [Source type: FILTERED WITH BAYES]

^ Software visualization combines techniques from areas like software engineering, programming languages, data mining, computer graphics, information visualization and human-computer interaction.
  • 27th International Conference on Software Engineering 18 January 2010 14:014 UTC www.cs.wustl.edu [Source type: Academic]

.We will look at network programming, however, we shall still have stand-alone software, software that may not rely on a computer network.^ Although government statistics do not currently show a threat to software engineering itself; a related career, computer programming does appear to have been affected.
  • 02 Why Software Engineering? 18 January 2010 14:014 UTC www.slideshare.net [Source type: Reference]

^ Master's degree programs in software engineering may also offer courses in management, which are designed to help the software engineer advance to a management level within his corporation or business.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

^ WordWeb is a free comprehensive dictionary and thesaurus that works with several word processors or as a stand alone program.

I mentioned something about programming earlier on. .Software Engineering involves the design of programs.^ I perceive engineering as the design of software.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Robust design method for software engineering.
  • Statistical Software Engineering 18 January 2010 14:014 UTC www.nap.edu [Source type: Academic]

^ Engineering programs are now offering Software Engineering.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.To design programs (software) we need a language (or languages).^ This is not an argument for a graphical software design notation instead of a programming language.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Eventually, we have to create the real software design, and it will be in some programming language.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Program design language , see PDL .
  • Pressman Software Engineering Resources: Glossary 18 January 2010 14:014 UTC www.rspa.com [Source type: Reference]

.A language has certain semantics it follows to instruct a computer.^ Computational approaches to natural language semantics'.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ In this appendix, the discussion begins with a section on Computer Languages, and this is followed by the major section on Software Engineering Factors.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ The use of Semantic Web languages as programming languages would assist greatly with interoperability as these languages are standardised for use in a wide range of computer systems.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

We have two main forms of programming:
  • Object Oriented Programming
  • Functional programming (also know as logical programming)
.There are other kinds of programming but for now we'll stick to the common styles.^ For now, I'll leave to others the loftier goal of making software engineering more like other types of engineering.
  • Teaching software development vs. software engineering 18 January 2010 14:014 UTC www.ibm.com [Source type: FILTERED WITH BAYES]

^ The style of user interface made popular by the Apple Macintosh and now available in other GUI s, such as OSF / Motif and NeWS .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ I can't go into all of the other points I disagree with because I am "fake" engineering software right now but I assure you there are many.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.A program interfaces with Machine code; machine code interfaces with a processor and an array of complex digital electronics.^ Model-Driven Programming involves creation of a high level interface for editing a model that represents the user's ideas, and can be translated to program code and alternative visualisations.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ API Application Program Interface: a term for the interface by which an application program gains access to operating system and other services, defined at source-code level.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

Mathematics and its relevance to Software Engineering.

In the first place, Mathematics is a language. .A language in which we can use to interpret the situations around us.^ This is particularly useful for language independent programming, or for high level and end-user translation to a language more easily interpreted by computer systems.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

Let's have a quick review of Logic. We could use prepositional logic to gather our thoughts against a list of options. For example;
  • if I go to New York, I will have milk shake
  • if you pass the paper, I will eat my shirt!
.The above gives us a glimpse of what could happen when we are faced with choices as we always are!^ But with the right tools, the editor could work directly with the graph structure, and give us freedom to use any visual representation we like in the editor.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

.In this course we'll be able to merge concepts that you may have encountered in mathematic concepts.^ On one hand you have z-prime style development that is more mathematical and strict, including efforts to consolidate concepts into "theory".
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

Programming: choice of a language

Programming is software "blood"... without a language we won't have a platform on which to present solutions to our worldly problems .(or making sure that they won't happen) in a clear-cut tool like many programs used today!^ Many different software design notations are potentially useful -- as auxiliary documentation and as tools to help facilitate the design process.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ A means to make programming possible using open standard languages is use of RuleML [17] and SWRL Semantic Web Rule Languages [18].
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ As these systems become inadequate for todays requirements, many organizations are realizing they do not have to throw this investment away.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.Software Engineering is a serious discipline where all those involved observe some form of seriousness.^ Software engineering is just that – an engineering discipline.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Methodology A term for a codified set of procedures for some phase of software engineering, such as analysis and design.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ I would like to add to the list of good books suitable for all software engineers is Gause, Weinberg, "Exploring Requirements: Quality Before Design".
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

.A small error in a product design could lead to a huge disaster.^ This lead to a lot of infighting where developers would cross team boundaries and try to impose their biases and design preferences upon other teams which was horrible for productivity.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

Look at Traffic lights for instance. .A huge city might need to develop its own traffic management software.^ The Westfall Team can also customize this course or any of our other standard courses or develop unique software engineering, quality and project management courses to meet your exact in-house training needs and specifications.
  • Software Quality Engineering Course 18 January 2010 14:014 UTC www.westfallteam.com [Source type: Academic]

^ In particular, the process must consider that software development is a people-oriented business, and people need a structured and disciplined environment in which to do cooperative work.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ The book is also valuable for software engineers and project managers who need an objective guide to the state of the art in this area.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

Let's break this up a bit... .In many cases, well at most, we may not know what could control all those lights (Red, Green and Orange)...^ This would fit in well with the structure of RDF, which is also a graph structure, an interactive editable tree/graph of models could be produced, in order to relate models and sub models, and ontologies, and sub ontologies all to each other.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ Agile process), documentation, testing, requirements analysis - all things that apply to physical engineering too (well, okay, maybe not source control).
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.
  • Firstly...a few questions must be asked...especially when fairness is being talked about: how many motor vehicles should pass before the light signal changes?^ What do I mean by a naive version (since there are many naive ways of doing things depending on the system that we are talking about)?

    ^ I mean, when engineers go about designing that bridge we're talking about, you have a choice of a few well established types and toolsets, and most people agree on what to do when.
    • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

    ^ The paper itself does a good job of talking about related work so you can read it and have a good idea of how it compares to a system that you are familiar with.

    When should there a be a transition state between a Red and an Orange?
.Well...all this involves yet a another concept, Algorithms.^ Ultimately, all systems within a domain share many foundational concepts, and knowledge of one system can provide insight into another.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

Algorithms are instructions that are usually logical phrases with some mathematical representation.
  • An algorithm written for traffic lights could involve a variable of weight...or in some advanced designs we could use video capture forms of vehicles to know that a particular number of cars has passed; here we are using the number for fairness!
.It would not be fair if you designed software without knowing its sole purpose and hence one should be fully aware of the surrounding environment or environment of the software's operation, be it in a business setting, a banking environment or the usually chit chat programs.^ When should one stop software testing?
  • Statistical Software Engineering 18 January 2010 14:014 UTC www.nap.edu [Source type: Academic]

^ And without software engineering, it would not be possible.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Design Design is usually considered to be the phase of software development following analysis, and concerned with how the problem is to be solved.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.What I've just expounded on a little bit is part of a bigger picture; systems engineering.^ The framework is of interest for structuring the current system, but, if it is to be developed as a part of the application development, an even bigger consideration is its suitability for reuse in future systems within the same application domain.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ As an ex-engineer turned developer I'd like to quibble a little bit.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.Systems Engineering Systems engineering is concerned with organization.^ An international organization formed to develop, nurture and enhance the system engineering approach to multi-disciplinary system product development - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Co-organization of a 2004 international Dagstuhl seminar on model-based testing; co-organization of ICSE 04 and 05 workshops on SW engineering for automotive systems.
  • 27th International Conference on Software Engineering 18 January 2010 14:014 UTC www.cs.wustl.edu [Source type: Academic]

^ Others have extended the definition to emphasize that engineering is generally a concern with large, complex systems.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.A system is made of different components decisively put together to function as one.^ Object-oriented methods have taken the strengths of function-oriented methods in describing function and the strengths of data-oriented methods in describing data, and they have combined these strengths into a different overall way of viewing a system.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Restructuring The transformation from one representation form to another at the same relative abstraction level, while preserving the subject system's external behavior (functionality and semantics).
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ RPC Remote Procedure Call: a call to a routine that results in code being executed on a different system from the one where the request originated.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

Over the next few sections, we'll just do a lot of SE
Vicmiclovich 13:26, 14 July 2008 (UTC)Victor Miclovich Kisitu

see also


Wikibooks

Up to date as of January 23, 2010
(Redirected to Software Engineering article)

From Wikibooks, the open-content textbooks collection

.
The idea of this wikibook is to couple together the different wikibooks on the different subjects of software engineering.
^ Browse subject: Software engineering .

^ The idea of this wikibook is to couple together the different wikibooks on the different subjects of software engineering.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ As such, we conduct human subject studies on various software engineering methods and techniques.
  • Empirical Software Engineering - Mississippi State University 18 January 2010 14:014 UTC www.cse.msstate.edu [Source type: Academic]

.Currently the only wikibook linked is Computer programming.^ Currently the only wikibook linked is Computer programming .
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Although government statistics do not currently show a threat to software engineering itself; a related career, computer programming does appear to have been affected.
  • 02 Why Software Engineering? 18 January 2010 14:014 UTC www.slideshare.net [Source type: Reference]

^ If you have previous installed the LOOPS program and wish to update the executable only the current version of the executable only can be downloaded by clicking on the update below.
  • UCF: CEE Software 18 January 2010 14:014 UTC cee.ucf.edu [Source type: FILTERED WITH BAYES]

Wikibooks on the other subjects should be added over time.
.As written in the Computer Programming Wiki book, coding is only a small part of software engineering.^ Today, source code in software is written rather than engineered.
  • Apollo 11: 40 years on, where is software engineering today? - 17/07/2009 - Computer Weekly 18 January 2010 14:014 UTC www.computerweekly.com [Source type: News]

^ This book provides a developer's view of programming practice and software engineering.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Responsibilities :The Software Engineer will be an integral part of a software ...

.This wiki book is intended as an introduction to the realm of software engineering.^ An Introduction to Software Engineering course includes: .
  • Software Engineering Training Course 18 January 2010 14:014 UTC www.edistalearning.com [Source type: Reference]

^ This wiki book is intended as an introduction to the realm of software engineering.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ If you're interested in software engineering books, here are some titles I suggest .

Contents

The Basics

What is software engineering?

.A systematic approach to the analysis, design, implementation and maintenance of software.^ A systematic approach to the analysis, design, implementation and maintenance of software.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The methods in software engineering are the Systematic Approach for examination design execution and maintenance of Software.
  • Software Engineering Methods | free Computer Training 18 January 2010 14:014 UTC www.vtcselakui.org [Source type: Reference]

^ Software Engineering A systematic approach to the analysis, design, implementation and maintenance of software.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]


.Software engineering is the engineering discipline through which software is developed.^ Software engineering is the engineering discipline through which software is developed.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software development: Engineering or Craftsmanship?
  • Software development: Engineering or Craftsmanship? | Making Good Software 18 January 2010 14:014 UTC www.makinggoodsoftware.com [Source type: General]

^ Software Engineering The design, development and documentation of software.
  • software engineering Resources | ZDNet 18 January 2010 14:014 UTC updates.zdnet.com [Source type: General]

.Commonly the process involves finding out what the client wants, composing this in a list of requirements, designing an architecture capable of supporting all of the requirements, designing, coding, testing and integrating the separate parts, testing the whole, deploying and maintaining the software.^ Testing is a fundamental part of the design validation and refinement process.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Software Design & Test/CIS 310 .
  • SOFTWARE ENGINEERING 18 January 2010 14:014 UTC www.gannon.edu [Source type: Academic]

^ SE 4352 Software Architecture and Design .
  • Software Engineering - Erik Jonsson School of Engineering and Computer Science - 2009 UT Dallas Undergraduate Catalog Supplement 18 January 2010 14:014 UTC www.utdallas.edu [Source type: Academic]


.Programming is only a small part of software engineering.^ Only a small fraction of software engineering is addressed to construction of programs: programming.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

^ Part of the SEI Series in Software Engineering series.
  • InformIT: Discipline for Software Engineering, A 18 January 2010 14:014 UTC www.informit.com [Source type: General]

^ Programming is only a small part of software engineering.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.The discipline is still in its infancy (=early stage of growth/development) as an engineering discipline.^ Software engineering is the engineering discipline through which software is developed.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software development is still more a craft than an engineering discipline.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Software development is not an engineering discipline .
  • Software Engineering@Everything2.com 18 January 2010 14:014 UTC everything2.com [Source type: FILTERED WITH BAYES]

.We haven't had enough experience, nor gathered enough empirical data to systematically understand and predict the life-cycle of a software project.^ We haven't had enough experience, nor gathered enough empirical data to systematically understand and predict the life-cycle of a software project.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ For each of various software project scenarios, describe the project's place in the software life cycle, identify the particular tasks that should be performed next, and identify metrics appropriate to those tasks.
  • SE — SIGCSE Official Site 18 January 2010 14:014 UTC www.sigcse.org [Source type: Academic]

^ The specialization covers the software development life-cycle models, object-oriented analysis and design, design patterns, frameworks, software architecture, and software project management.
  • Software Engineering 18 January 2010 14:014 UTC www.ms.se.sjsu.edu [Source type: Academic]

The Software Engineering Body of Knowledge (SWEBOK) divides software engineering into 10 knowledge areas:
  1. Software requirements
  2. Software design
  3. Software construction
  4. Software testing
  5. Software maintenance
  6. Software configuration management
  7. Software engineering management
  8. Software engineering process
  9. Software engineering tools and methods
  10. Software quality

The content of the field

.Note: the following summaries are originally from wikipedia.^ Note: the following summaries are originally from wikipedia.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.These are here only temporarily.^ These are here only temporarily.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

The titles aren't final, nothing on this page is final yet(or even near final).

Vision and Scope

.The practice of software engineering in the corporate or industrial sector, starts with the business and ends with the business.^ Software engineers are the professionals behind this industry.
  • Computer Science/Software Engineering BEng/MEng 18 January 2010 14:014 UTC www.cs.bham.ac.uk [Source type: Academic]

^ Software Engineering is independent of Oracle Corporation.
  • +1 Software Engineering Company 18 January 2010 14:014 UTC www.plus-one.com [Source type: FILTERED WITH BAYES]

^ The software engineering sector is continually advancing.
  • Software Engineering | Faculty of Engineering and Applied Science 18 January 2010 14:014 UTC www.engineering.uoit.ca [Source type: Academic]

.Although computers, programming languages, and creative problem solving are what fill the engineer with interest in the field, without servicing and enabling the user, the exercise would be pointless.^ Software engineers must analyze and solve computer application problems.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

^ Although computers, programming languages, and creative problem solving are what fill the engineer with interest in the field, without servicing and enabling the user, the exercise would be pointless.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ This differentiates it from software engineering, which produces computer programs and user manuals.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.Thus the first stage in any software engineering process, is the Vision and Scope document, or some equivalent meeting.^ But software engineering is where the rubber meets the road.
  • Dr. Dobb's | Software Engineering ≠ Computer Science | June 4, 2009 18 January 2010 14:014 UTC www.ddj.com [Source type: FILTERED WITH BAYES]

^ Thus the first stage in any software engineering process, is the Vision and Scope document, or some equivalent meeting.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ This process is called software engineering.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.A vision of the system to be built is described by the user or Product Champion.^ A vision of the system to be built is described by the user or Product Champion .
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Accelix has built a number of successful Internet products, including a conference registration system, an lot-based auction system, a powerful...
  • Software Development & Design : software engineering tools 18 January 2010 14:014 UTC www.zoominfo.com [Source type: Reference]

^ These cases describe a user action or a specific feature of the system.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.The business context that it will service is described.^ The business context that it will service is described.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ THE QUALITY IN THE CONTEXT OF BUSINESS ENVIRONMENT - Quality is viewed in terms of the products and services being provided by the business in which the software is embedded.
  • 02 Why Software Engineering? 18 January 2010 14:014 UTC www.slideshare.net [Source type: Reference]

.The key stakeholders are enumerated including their interests, risks, etc.^ The key stakeholders are enumerated including their interests, risks, etc.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.The success conditions are listed, so that it is understood what will be completed and how to measure success.^ The success conditions are listed, so that it is understood what will be completed and how to measure success.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ It shows how systematically and cost-effectively a software project can be handled and successfully completed assuring higher success rates.
  • Software Engineering - Reason and a Concept! 18 January 2010 14:014 UTC www.buzzle.com [Source type: FILTERED WITH BAYES]

.Business opportunities are discussed, to justify why the project should be invested with the blood, sweat, and tears of programmers, testers, project managers, and program managers.^ Business opportunities are discussed, to justify why the project should be invested with the blood, sweat, and tears of programmers, testers, project managers, and program managers.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ It instantly organizes the administrative and project management portions of any business that involves people and projects (or jobs, cases, accounts, etc.
  • Engineering utility programs useful for all engineers 18 January 2010 14:014 UTC www.engineering-software.com [Source type: FILTERED WITH BAYES]

^ Master's degree programs in software engineering may also offer courses in management, which are designed to help the software engineer advance to a management level within his corporation or business.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

.The Scope of the project is made clear and if it is to be in phases, the scope of each phase at a high level is laid out.^ The Scope of the project is made clear and if it is to be in phases, the scope of each phase at a high level is laid out.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Agilex leverages proven, enterprise-level methodologies to deliver software engineering projects on-time, on-scope and on-budget as promised.
  • Agilex : Services : Software Engineering 18 January 2010 14:014 UTC www.agilex.com [Source type: Reference]

^ Failure to do so may lead to project failure due to scope creep, project overruns, poor quality, or high costs.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.The priorities of the project are recorded.^ The priorities of the project are recorded.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.With an understanding of the business' vision, the engineers begin to ask questions.^ CTOs often begin their careers in software engineering and earn graduate degrees in management or business .
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

^ Once we stop asking the wrong question of, “What is software development currently?” and start asking the right question of, “ Should professional software development be engineering?” we can start answering the really interesting questions.
  • Software Engineering, Not Computer Science 18 January 2010 14:014 UTC www.stevemcconnell.com [Source type: FILTERED WITH BAYES]

^ WWW Virtual Library WWW Virtual Library: Engineering Related Subjects: WWW Virtual Library: Computing WWW Virtual Library: Concurrent Systems USENET FAQs , USENET's Frequently Asked Questions for the comp.software-eng group.

Requirements Analysis

.Extracting the requirements of a desired software product is the first task in creating it.^ Extracting the requirements of a desired software product is the first task in creating it.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The first phase is of definition which the whole lot about the software is accumulated in which each and every information which is desired to develop software is gathered.
  • Software Engineering Methods | free Computer Training 18 January 2010 14:014 UTC www.vtcselakui.org [Source type: Reference]

^ He or she has to be concerned with user requirements, cost constraints, timely delivery of a product, feasibility of the customer's concept, quality of the software product, reliability, safety, and long-term maintenance.
  • Clarkson University: Software Engineering 18 January 2010 14:014 UTC www.clarkson.edu [Source type: FILTERED WITH BAYES]

.The processes is called requirements elicitation.^ The processes is called requirements elicitation.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.While customers probably believe they know what the software is to do, it may require skill and experience in software engineering to recognize incomplete, ambiguous or contradictory requirements.^ They do that with software, and that demands software engineers."
  • Graduating Engineer » Articles » Software Engineering 18 January 2010 14:014 UTC www.graduatingengineer.com [Source type: FILTERED WITH BAYES]

^ May 14, 2009 in Software Engineering .
  • .: Software Engineering 18 January 2010 14:014 UTC work.tinou.com [Source type: Original source]

^ They will know how to write software that matches the requirements and test that software.
  • Teaching software development vs. software engineering 18 January 2010 14:014 UTC www.ibm.com [Source type: FILTERED WITH BAYES]

Analyst Role

.The role of analyst can be fulfilled typically by three types of people.^ The role of analyst can be fulfilled typically by three types of people.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ It is also quite common for software engineers to work closely with the business people and customers associated with a project, and this programmer/analyst role can be quite beneficial to the projects success rate.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.A technical project manager, a software engineer, or a dedicated analyst.^ Manager, Software Engineering jobs .
  • Manager, Software Engineering jobs - US News 18 January 2010 14:014 UTC jobs.usnews.com [Source type: News]

^ D civil software for your civil engineering projects .

^ Software project management [core] SE9.
  • SE — SIGCSE Official Site 18 January 2010 14:014 UTC www.sigcse.org [Source type: Academic]

.In some organizations it is unthinkable to engineers that they would serve the analyst role, as they are "technical" and would consider dealing directly with the customer unthinkable.^ In some organizations it is unthinkable to engineers that they would serve the analyst role, as they are "technical" and would consider dealing directly with the customer unthinkable.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ In fact, they are some of the most complex systems faced by software engineers in the world, requiring around 10 million lines of code.
  • ASML: Careers - Software Engineering 18 January 2010 14:014 UTC www.asml.com [Source type: General]

^ Some engineering companies report that they automatically regard projects with labor constituting more than 50 percent of project cost as high risk.
  • Software Engineering, Not Computer Science 18 January 2010 14:014 UTC www.stevemcconnell.com [Source type: FILTERED WITH BAYES]

.This is purely a cultural stance that varies between companies and organizations.^ This is purely a cultural stance that varies between companies and organizations.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The engineers also might set up the company's intranets, namely the networks that link computers within the organization and ease communication among the various departments.
  • Drexel ECE : Software Engineering 18 January 2010 14:014 UTC www.ece.drexel.edu [Source type: Reference]

^ A companys intranet (the network which links computers inside a organization and ease communication among the various departments) is also constructed by these engineers.
  • Computer Software Engineering Careers, Jobs and Career Information 18 January 2010 14:014 UTC www.careeroverview.com [Source type: FILTERED WITH BAYES]

.It is also quite common for software engineers to work closely with the business people and customers associated with a project, and this programmer/analyst role can be quite beneficial to the projects success rate.^ It is also quite common for software engineers to work closely with the business people and customers associated with a project, and this programmer/analyst role can be quite beneficial to the projects success rate.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software engineering projects tend to involve large numbers of people.
  • software engineering > prospective students > what is software engineering? 18 January 2010 14:014 UTC www.softeng.uwaterloo.ca [Source type: FILTERED WITH BAYES]

^ Likewise, a software engineer is just a programmer.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

.As you are gathering requirements, you can subject them to analysis.^ As you are gathering requirements, you can subject them to analysis.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Once you have gathered requirements, captured them into a specification, and the customer agrees with it, it is possible to take a snapshot or baseline of the project requirements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Focusing on the analysis and specification of requirements, you will be taken through the planning and management of software development processes.
  • Software Engineering BSc (Hons) 2010 18 January 2010 14:014 UTC www.solent.ac.uk [Source type: FILTERED WITH BAYES]

.Does the requirement in question conflict with others?^ To which Gates replies, "If your question is, does Microsoft know how to turn the other cheek?...
  • Software Engineering 18 January 2010 14:014 UTC www.virtualschool.edu [Source type: FILTERED WITH BAYES]

What is its priority? Where did it come from? .Does it need further clarification?^ So simple it does not need a help file or further information.
  • Software Engineering software for Windows, Mac, Linux (page one) - Forte downloads 18 January 2010 14:014 UTC www.fortedownloads.com [Source type: General]

Use Cases

.Once the vision and scope of a engineering project has been established the requirements gather process begins.^ Once the vision and scope of a engineering project has been established the requirements gather process begins.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Begins with requirements gathering.
  • Software Engineering: A Practitioners Approach 18 January 2010 14:014 UTC webpage.pace.edu [Source type: Academic]

^ Elan is seeking "Test Engineer" to join a Global IT Team Main tasks … Work closely with the Test Manager to create the required testing scope documents and to design test cases for each application, according to the associated project needs.
  • Software engineering Jobs at Computer Weekly 18 January 2010 14:014 UTC www.computerweekly.com [Source type: News]

.One tool for communicating between the customer, analyst, developers, and testers is a set of Use Cases.^ Oracle*CASE A set of CASE tools from Oracle.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ It usually involves the use of CASE tools .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ One tool for communicating between the customer, analyst, developers, and testers is a set of Use Cases.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.A Use Case typically has a name, a short description, and then a number set of steps which a user would go through to accomplish a task.^ Do not expect to go through the steps in order and be done.
  • CIS Department > Tutorials > Software Design Using C++ > Software Engineering 18 January 2010 14:014 UTC cis.stvincent.edu [Source type: FILTERED WITH BAYES]

^ A Use Case typically has a name, a short description, and then a number set of steps which a user would go through to accomplish a task.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ For instance, the waiter in a restaurant might have a use case as follows: " A. Actor approaches customer table, introduces self and recites a description of the day's specials.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Use cases are sometimes grouped together in a UML or other format of diagram depicting users, the system, external entity and specific use cases.^ Summary Modeling is An abstract representation… … of some complex knowledge or design… … to help communicate it UML Use Cases model requirements from the user view UML Activity Diagrams model workflow from the system view Formal version of flowcharts Activity Diagrams include: Branching (decision making) Forks and Join (parallel activities) Swimlanes (logical partitioning) + hoosfoos , 2 years ago .
  • Software Engineering: Models 18 January 2010 14:014 UTC www.slideshare.net [Source type: Reference]

^ For this fall in particular, we will study UML (the Unified Modeling Language) and use it for capturing requirements, building models and specifications, mapping out designs, refining the designs, and viewing systems in multiple interrelated ways.
  • Annie Liu's CSE308: Software Engineering (Fall `01) 18 January 2010 14:014 UTC www.cs.sunysb.edu [Source type: Academic]

^ This is sometimes called Workflow Useful for communicating order and dependency But they do not show Interactions, Data or State Other UML diagrams for this!
  • Software Engineering: Models 18 January 2010 14:014 UTC www.slideshare.net [Source type: Reference]

Granularity

.Use Cases are typically coarse-grained and don't dive into every detail and functional requirement of the system.^ Use Cases are typically coarse-grained and don't dive into every detail and functional requirement of the system.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Practice session to derive functional requirements from a use case.
  • Process Impact -- Software Engineering Seminars and Presentations 18 January 2010 14:014 UTC www.processimpact.com [Source type: FILTERED WITH BAYES]

^ Elements of this website require JavaScript, and will not function unless you enable it or use another browser with JavaScript support.
  • 2010 Catalogue of Papers: Software Engineering 18 January 2010 14:014 UTC papers.waikato.ac.nz [Source type: Academic]

.A business person or software engineer should be able to read through all of the use cases and get an idea of the entire scope of what the project will deliver.^ Software engineering is the engineering discipline through which software is developed.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ A business person or software engineer should be able to read through all of the use cases and get an idea of the entire scope of what the project will deliver.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software projects are different from engineering projects that use physical materials.
  • Software Engineering, Not Computer Science 18 January 2010 14:014 UTC www.stevemcconnell.com [Source type: FILTERED WITH BAYES]

Formality of Use Cases

.Agile driven projects may skip these cases, or at least only record the attributes discussed above.^ Agile driven projects may skip these cases, or at least only record the attributes discussed above.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Plan driven methodologies may give additional attributes to Use Cases such as alternative paths after covering the main steps, trace requirements covered by the use case back to their source, and have an error handling section for each use case.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Project Schedule Revision 1.6 (organizational issues) Project Schedule 1.2 Revision 1.2 (for reference only) Next, here's a more technical description of the actual project, at least of the most fundamental requirements.
  • UCR / CSE / CS 180: Software Engineering / Fall 2004 18 January 2010 14:014 UTC www.cs.jhu.edu [Source type: FILTERED WITH BAYES]

.Plan driven methodologies may give additional attributes to Use Cases such as alternative paths after covering the main steps, trace requirements covered by the use case back to their source, and have an error handling section for each use case.^ Plan driven methodologies may give additional attributes to Use Cases such as alternative paths after covering the main steps, trace requirements covered by the use case back to their source, and have an error handling section for each use case.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ These courses cover the development and management methodologies and tools used throughout the software lifecycle from the feasibility study and requirements definition to the design, development, documentation, configuration management, testing, deployment, and maintenance of software.
  • Onsite Training: Software Engineering Courses 18 January 2010 14:014 UTC www.eogogics.com [Source type: News]

^ The main section : Where you can read the page you are reading right now, my personal/professional profile page and the classification systems used and supported across the knowledge base.
  • Software Engineering Knowledge Base - SoftwareEnginering 18 January 2010 14:014 UTC sekb.net [Source type: FILTERED WITH BAYES]

.THE STAGES OF ANALYSIS Analysis is typically accomplished in two stages.^ THE STAGES OF ANALYSIS Analysis is typically accomplished in two stages.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The second stage, Systems Analysis consists of an examination of the proposed improvements and a recommendation on what computer environment and software technology is best suited to accomplish those improvements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.The first stage, Business Analysis includes an in-depth examination of the customer's present set of business or manufacturing processes and procedures with an eye toward how they might be improved by automation.^ The first stage, Business Analysis includes an in-depth examination of the customer's present set of business or manufacturing processes and procedures with an eye toward how they might be improved by automation.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ This paper presents an initial set of findings from an empirical study of social processes, technical system configurati Read more .
  • software and engineering Articles, Videos, Photos and Opinions | silicon.com 18 January 2010 14:014 UTC www.silicon.com [Source type: General]

^ By automating tasks with software, businesses are able to offer more products and services to their customers than they can by mechanical or manual means.
  • Online Bachelor Degrees in Software Engineering & Development 18 January 2010 14:014 UTC mybachelorsdegree.org [Source type: Academic]

.The second stage, Systems Analysis consists of an examination of the proposed improvements and a recommendation on what computer environment and software technology is best suited to accomplish those improvements.^ THE STAGES OF ANALYSIS Analysis is typically accomplished in two stages.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The second stage, Systems Analysis consists of an examination of the proposed improvements and a recommendation on what computer environment and software technology is best suited to accomplish those improvements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The task force made the decision to provide curriculum guidance in a set of volumes, one for each major area of computing: a Computer Science Volume, a Computer Engineering Volume, a Software Engineering Volume, and an Information Systems Volume.
  • Software Engineering 2004 18 January 2010 14:014 UTC sites.computer.org [Source type: Academic]

.BUSINESS ANALYSIS STAGE From the Business Analyst's in-depth understanding of the customer's present environment, he or she creates a set of "business use-cases", which are short descriptions of the role that each of the business's "actors" perform within each process or procedure.^ BUSINESS ANALYSIS STAGE From the Business Analyst's in-depth understanding of the customer's present environment, he or she creates a set of "business use-cases", which are short descriptions of the role that each of the business's "actors" perform within each process or procedure.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ SYSTEMS ANALYSIS STAGE The second stage of the analysis process, Systems Analysis begins from the foundation laid by the business analyst.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ For instance, the waiter in a restaurant might have a use case as follows: " A. Actor approaches customer table, introduces self and recites a description of the day's specials.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.For instance, the waiter in a restaurant might have a use case as follows: " A. Actor approaches customer table, introduces self and recites a description of the day's specials.^ For instance, the waiter in a restaurant might have a use case as follows: " A. Actor approaches customer table, introduces self and recites a description of the day's specials.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ So… what approach to use in each case: Engineering or Craftsmanship?
  • Software development: Engineering or Craftsmanship? | Making Good Software 18 January 2010 14:014 UTC www.makinggoodsoftware.com [Source type: General]

^ They might spend two days hand-tuning a sorting algorithm instead of two hours using a code library or copying a suitable algorithm from a book.
  • Software Engineering, Not Computer Science 18 January 2010 14:014 UTC www.stevemcconnell.com [Source type: FILTERED WITH BAYES]

.B. Actor presents a beverage menu and inquires if customer would like to order a beverage.^ B. Actor presents a beverage menu and inquires if customer would like to order a beverage.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ D. Actor presents the tag to bar-keep and makes a mental note to check back within a customary time to see if the drink order is complete.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ C. If yes, actor writes each customer's order on a drink tag and proceeds to bar area.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.C. If yes, actor writes each customer's order on a drink tag and proceeds to bar area.^ C. If yes, actor writes each customer's order on a drink tag and proceeds to bar area.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The customer might be adamant about providing the waiter with a handheld device to replace the drink tag and to make the trip to the bar unnecessary before the drink order is ready to serve.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ D. Actor presents the tag to bar-keep and makes a mental note to check back within a customary time to see if the drink order is complete.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.D. Actor presents the tag to bar-keep and makes a mental note to check back within a customary time to see if the drink order is complete.^ C. If yes, actor writes each customer's order on a drink tag and proceeds to bar area.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ D. Actor presents the tag to bar-keep and makes a mental note to check back within a customary time to see if the drink order is complete.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The customer might be adamant about providing the waiter with a handheld device to replace the drink tag and to make the trip to the bar unnecessary before the drink order is ready to serve.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.E. If no, Actor presents a dinner menu and helps customers to make selections.^ E. If no, Actor presents a dinner menu and helps customers to make selections.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ D. Actor presents the tag to bar-keep and makes a mental note to check back within a customary time to see if the drink order is complete.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ B. Actor presents a beverage menu and inquires if customer would like to order a beverage.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.As each new party of customers is seated, actor repeats procedure, beginning from step A." With a set of raw use-cases like the proceeding, the business analyst can, with the customer's collaboration, examine how each use-case might be automated and can thereby define an official system requirement which becomes one of maybe hundreds of requirements that define the future software application.^ Once the programming and run-time environment is decided, then the systems analyst can begin turning the business use-cases and requirements into a set of "system use-cases," which are descriptions of how the actors will interact with the proposed system.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ From the set of business use cases and their resultant software requirements, the Systems Analyst makes recommendations as to the most suitable software technology to accomplish those requirements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software system requirements and design specifications.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.As might be surmised, the effective Business Analyst must not only have extensive experience with and knowledge of the business world, but must also have expertise in the potentialities offered by modern software systems and how those systems map to the reality of the business world.^ Learn how software engineering management works in the real world.
  • InformIT: Fallacies of Software Engineering Management > About Management 18 January 2010 14:014 UTC www.informit.com [Source type: FILTERED WITH BAYES]

^ As might be surmised, the effective Business Analyst must not only have extensive experience with and knowledge of the business world, but must also have expertise in the potentialities offered by modern software systems and how those systems map to the reality of the business world.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ How to get reliable software systems 19.
  • Readings in Software Engineering and Development 18 January 2010 14:014 UTC orcmid.com [Source type: Academic]

.SYSTEMS ANALYSIS STAGE The second stage of the analysis process, Systems Analysis begins from the foundation laid by the business analyst.^ SYSTEMS ANALYSIS STAGE The second stage of the analysis process, Systems Analysis begins from the foundation laid by the business analyst.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The first stage, Business Analysis includes an in-depth examination of the customer's present set of business or manufacturing processes and procedures with an eye toward how they might be improved by automation.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Likewise, expanding electronic data-processing systems in business, telecommunications, government, and other settings continue to become more sophisticated and complex.
  • Computer Software Engineering Careers, Jobs and Career Information 18 January 2010 14:014 UTC www.careeroverview.com [Source type: FILTERED WITH BAYES]

.From the set of business use cases and their resultant software requirements, the Systems Analyst makes recommendations as to the most suitable software technology to accomplish those requirements.^ From the set of business use cases and their resultant software requirements, the Systems Analyst makes recommendations as to the most suitable software technology to accomplish those requirements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software system requirements and design specifications.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ System vs. Software Requirements .
  • Software Quality Engineering Course 18 January 2010 14:014 UTC www.westfallteam.com [Source type: Academic]

.In some cases, the hardware environment limits choices of software technologies.^ In some cases, the hardware environment limits choices of software technologies.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Atherton Atherton Technology developed the Software BackPlane CASE framework.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Computer structures Aim To provide a comprehensive overview of core software and hardware technologies.
  • Master of Science in Software Engineering - Laureate Online Education & University of Liverpool - Online Masters Degrees 18 January 2010 14:014 UTC uol.ohecampus.com [Source type: FILTERED WITH BAYES]

.For instance, in the restaurant scenario, above.^ For instance, in the restaurant scenario, above.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.The customer might be adamant about providing the waiter with a handheld device to replace the drink tag and to make the trip to the bar unnecessary before the drink order is ready to serve.^ C. If yes, actor writes each customer's order on a drink tag and proceeds to bar area.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The customer might be adamant about providing the waiter with a handheld device to replace the drink tag and to make the trip to the bar unnecessary before the drink order is ready to serve.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ For instance, the waiter in a restaurant might have a use case as follows: " A. Actor approaches customer table, introduces self and recites a description of the day's specials.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.In such a case, the systems analyst might be constrained to using only those operating systems and APIs that are supported on the preferred handheld device.^ Only Metric system is used in this version.
  • Engineering utility programs useful for all engineers 18 January 2010 14:014 UTC www.engineering-software.com [Source type: FILTERED WITH BAYES]

^ We might be able to use it to detect such a problem.
  • CIS Department > Tutorials > Software Design Using C++ > Software Engineering 18 January 2010 14:014 UTC cis.stvincent.edu [Source type: FILTERED WITH BAYES]

^ In such a case, the systems analyst might be constrained to using only those operating systems and APIs that are supported on the preferred handheld device.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Once the programming and run-time environment is decided, then the systems analyst can begin turning the business use-cases and requirements into a set of "system use-cases," which are descriptions of how the actors will interact with the proposed system.^ Once the programming and run-time environment is decided, then the systems analyst can begin turning the business use-cases and requirements into a set of "system use-cases," which are descriptions of how the actors will interact with the proposed system.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ At this point we put the program into use and the maintenance phase begins.
  • CIS Department > Tutorials > Software Design Using C++ > Software Engineering 18 January 2010 14:014 UTC cis.stvincent.edu [Source type: FILTERED WITH BAYES]

^ Those system use-cases, taken together now comprise the actual blueprint that will be used by software architects to begin laying out the classes or other software modules that will define a road map for the software coding and development process which follows.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Those system use-cases, taken together now comprise the actual blueprint that will be used by software architects to begin laying out the classes or other software modules that will define a road map for the software coding and development process which follows.^ SE 470 Software Development Processes .
  • MS in Software Engineering 18 January 2010 14:014 UTC www.cdm.depaul.edu [Source type: Academic]

^ These are other documents for use in our Software Process: .
  • CSCI 250 Software Engineering 18 January 2010 14:014 UTC cs.clarku.edu [Source type: FILTERED WITH BAYES]

^ Using UML, the unified software development process defines the components that will be used to build the system and the interfaces that will connect the components.
  • Software Engineering: A Practitioners Approach 18 January 2010 14:014 UTC webpage.pace.edu [Source type: Academic]

Specification

.Specification is the task of precisely describing the software to be written, in a mathematically rigorous way.^ Formal mathematical specification of computer software.
  • Software Engineering: A Practitioners Approach 18 January 2010 14:014 UTC webpage.pace.edu [Source type: Academic]

^ Specification is the task of precisely describing the software to be written, in a mathematically rigorous way.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ For each of various software project scenarios, describe the project's place in the software life cycle, identify the particular tasks that should be performed next, and identify metrics appropriate to those tasks.
  • SE — SIGCSE Official Site 18 January 2010 14:014 UTC www.sigcse.org [Source type: Academic]

.In reality, most successful specifications are written to understand and fine-tune applications that were already well-developed.^ In reality, most successful specifications are written to understand and fine-tune applications that were already well-developed.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ MindTree offers Optimized Image Compression IPs around JPEG and HDPhoto, as well as Porting, Optimization, and fine tuning of Vision-based algorithms for Automotive safety and Surveillance applications.
  • MindTree | R&D Services | Software Engineering | Embedded Software | Digital Signal Processing 18 January 2010 14:014 UTC www.mindtree.com [Source type: Reference]

^ If a framework is valid for many applications within an application domain, not only can it be reused, but components, and even subsystems, that have already been developed for it may also be reusable.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.Specifications are the most important for external interfaces that must remain stable.^ Obviously, the actual design documents are the most important, but they are not the only ones that must be produced.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

Requirements Management

.Once you have gathered requirements, captured them into a specification, and the customer agrees with it, it is possible to take a snapshot or baseline of the project requirements.^ As you are gathering requirements, you can subject them to analysis.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Once you have gathered requirements, captured them into a specification, and the customer agrees with it, it is possible to take a snapshot or baseline of the project requirements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ It takes a C source file, annotated with high-level specifications, and pre-processes the specifications into executable C code.
  • Brad Appleton's Software Engineering Links 18 January 2010 14:014 UTC www.cmcrossroads.com [Source type: Academic]

.This allows one to manage existing requirements and process new incoming ones.^ This allows one to manage existing requirements and process new incoming ones.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ They might work to modify existing software applications or creating new ones from scratch.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

^ Most have a section on analysis, although at least one bundles analysis with requirements management and design.
  • Teaching software development vs. software engineering 18 January 2010 14:014 UTC www.ibm.com [Source type: FILTERED WITH BAYES]

.The specification is placed under configuration management, such as a tool like CVS so that the requirements can be versioned and tracked.^ At the same time, the courses provide theoretical material from the computer science discipline, as required by ACM. Some emphasize the requirement and specification stage, some place an emphasis on design and project management, others on implementation and testing.
  • Software Engineering Bachelor of Science at Embry-Riddle in Daytona Beach 18 January 2010 14:014 UTC www.erau.edu [Source type: Academic]

^ The concept of object attributes provides a basis for storing management information with versions and passing this information between individual tools.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Several of these tools, including the adaptation of a database for use as a CM repository, were designed to implement improved software configuration management.
  • Welcome to SEPT-Supplying Software Engineering Standards Information to the World 18 January 2010 14:014 UTC www.12207.com [Source type: Reference]

Rejecting Requirements

It is important to reject requirements that
  • Don't fit within the project scope
  • Cannot show a positive return on investment
  • Won't make the system competitive
  • Aren't technically feasible
.A requirement rejected doesn't have to be further analyzed, implemented, documented, or tested.^ We will emphasize the development of reliable and maintainable software via system requirements and specifications, software design methodologies including object-oriented design, implementation, integration, and testing.
  • Annie Liu's CSE308: Software Engineering (Fall `01) 18 January 2010 14:014 UTC www.cs.sunysb.edu [Source type: Academic]
  • Annie Liu's CSE308: Software Engineering (Fall `04) 18 January 2010 14:014 UTC www.cs.sunysb.edu [Source type: FILTERED WITH BAYES]

^ Topics include requirements and specification; system design and implementation; debugging, testing, and quality assurance; reengineering; project management; software process; tools; and environments.
  • UCR / CSE / CS 180: Software Engineering / Fall 2004 18 January 2010 14:014 UTC www.cs.jhu.edu [Source type: FILTERED WITH BAYES]

^ Covering the entire requirements engineering process, this course describes dozens of tested methods that can help any organization improve the way it gathers, documents, and analyzes software requirements.
  • Process Impact -- Software Engineering Seminars and Presentations 18 January 2010 14:014 UTC www.processimpact.com [Source type: FILTERED WITH BAYES]

.Every requirement costs the company and must be thought through.^ Every requirement costs the company and must be thought through.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ In every branch of Engineering Science, the intellectual integrity of the discipline, as well as its practical utility, requires that these cultures must not collide.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ Cost models have been constructed from information chosen by users through an interface that interacts with people to establish what information is required, how it should be processed, what calculations should be made, and how it should be displayed, e.g.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

Change Control

.Regardless of whether your methodology is agile or plan driven, you should create some form of change control to process new requirements.^ Regardless of whether your methodology is agile or plan driven, you should create some form of change control to process new requirements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Plan driven methodologies may give additional attributes to Use Cases such as alternative paths after covering the main steps, trace requirements covered by the use case back to their source, and have an error handling section for each use case.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Starting with your finished and delivered system, add one feature or improve one performance specification in a way that preserves all of the quality attributes that you could measure in the original system, plus any new attributes that are relevant to your change.

.Failure to do so may lead to project failure due to scope creep, project overruns, poor quality, or high costs.^ Failure to do so may lead to project failure due to scope creep, project overruns, poor quality, or high costs.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Some engineering companies report that they automatically regard projects with labor constituting more than 50 percent of project cost as high risk.
  • Software Engineering, Not Computer Science 18 January 2010 14:014 UTC www.stevemcconnell.com [Source type: FILTERED WITH BAYES]

^ Cost and time overruns, terrible quality, non-acceptance by users, and obsolescence before completion are just a few of the problems that plague software development.
  • Why Software Engineering Is Not B.S. 18 January 2010 14:014 UTC www.chc-3.com [Source type: FILTERED WITH BAYES]

.Change control can be as simple as a development manager reviewing specification, to an elaborate tool supported process with forms and a board of people with change control authority.^ Change control can be as simple as a development manager reviewing specification, to an elaborate tool supported process with forms and a board of people with change control authority.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Reviews software design, change specifications, and plans against contractual and/or ...

^ The Cleanroom method, which involves incremental development of software under statistical process control, is used in all the Laboratory's development work, and continuous improvement of the Cleanroom process is an objective in all projects.

.Lack of communication about changes to a specification can lead to costly wasted work by developers, testers, or analysts.^ Intended for professional software developers including testers, and for university students, this book is suitable for courses on software engineering, testing, specification, or applications of formal methods.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

^ It is often, if not usually, easier to redevelop the component than to make the necessary changes to an existing component when the component was not specifically developed with reuse in mind.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ Good communications between the end-users, the testers, the developers and all other stake holders helps to minimize misunderstandings.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

.The time it takes to change one requirement in a specification, may cost 100 times the person hours to realize the decision.^ Software requirements and specifications [core] Minimum core coverage time: 4 hours .
  • SE — SIGCSE Official Site 18 January 2010 14:014 UTC www.sigcse.org [Source type: Academic]

^ The time it takes to change one requirement in a specification, may cost 100 times the person hours to realize the decision.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Being within 30 hours of graduation, a student admitted to the graduate program and accepted into the Fast Track program may, during the senior year, take 15 graduate hours that may be used to complete the baccalaureate degree and also to satisfy the requirements for the master's degree.
  • Software Engineering - Erik Jonsson School of Engineering and Computer Science - 2009 UT Dallas Undergraduate Catalog Supplement 18 January 2010 14:014 UTC www.utdallas.edu [Source type: Academic]

Design and Architecture

.Design and architecture are the activities involved in specifying how the software will actually work.^ SE 4352 Software Architecture and Design .
  • Software Engineering - Erik Jonsson School of Engineering and Computer Science - 2009 UT Dallas Undergraduate Catalog Supplement 18 January 2010 14:014 UTC www.utdallas.edu [Source type: Academic]

^ Design and architecture are the activities involved in specifying how the software will actually work.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software Architecture and Component-based Design .
  • Software Engineering Masters | Courses | Stevens WebCampus 18 January 2010 14:014 UTC webcampus.stevens.edu [Source type: Academic]

.This phase frequently described as being divided into two main phases, which might be described as "business design" and "technical design". Business design generally specifies the "why" of the system, indicating how data will be used and how it will flow.^ Business design generally specifies the "why" of the system, indicating how data will be used and how it will flow.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Data Flow Diagram A graphical notation used to describe how data flows between processes in a system.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ Technical design generally specifies the "how" of the system, or how its components will be arranged, what their features will be, and what kind of hardware the system will require.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Technical design generally specifies the "how" of the system, or how its components will be arranged, what their features will be, and what kind of hardware the system will require.^ Software system requirements and design specifications.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Technical design generally specifies the "how" of the system, or how its components will be arranged, what their features will be, and what kind of hardware the system will require.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Functional requirements specify functions that a system or system component must be capable of performing.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.These two phases can often be conducted roughly simultaneously, with business design usually starting first and technical design ending last.^ These two phases can often be conducted roughly simultaneously, with business design usually starting first and technical design ending last.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Also, a good deal of concentration as well as an eye for detail is required of these candidates because they often deal with a number of tasks simultaneously.
  • Computer Software Engineering Careers, Jobs and Career Information 18 January 2010 14:014 UTC www.careeroverview.com [Source type: FILTERED WITH BAYES]

^ Design Design is usually considered to be the phase of software development following analysis, and concerned with how the problem is to be solved.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.Of all of the phases, the design phase can often consume the most time, and many engineers consider it the most important.^ Error removal Error removal is the most time-consuming phase of the lifecycle.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ Of all of the phases, the design phase can often consume the most time, and many engineers consider it the most important.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Many modern systems are designed for short lifetimes—five years at most before replacement—and it is assumed that the original programmers will be available for maintenance.
  • TRUST in software engineering - 2009-06-01 06:00:00 | Control Engineering 18 January 2010 14:014 UTC www.controleng.com [Source type: FILTERED WITH BAYES]

.A poor design can cause the failure of a project, even after considerable resources are spent during the construction phase of the project building it.^ A poor design can cause the failure of a project, even after considerable resources are spent during the construction phase of the project building it.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Black & Veatch Parent/holding company with high-tech operating units involved in providing engineering, project development, consulting, construction, financial management, design-build and turnkey services.
  • Engineering Software Information | Business.com 18 January 2010 14:014 UTC www.business.com [Source type: FILTERED WITH BAYES]

^ If any aspect of the design is frozen out of the refinement process, it is hardly surprising that the final design will be poor or even unworkable.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

.It is important for the design and architecture of the system to be complete enough that it can be validated and then used to develop the system.^ Software Engineering Computer Architecture and Operating Systems Oracle Database Administration Enterprise Portal Design and Development Using XML Positions across all technology fields are considered to be among the fastest-growing occupations in the job market.
  • Master of Science in Software Engineering and Database Technologies Degree - Regis University CPS 18 January 2010 14:014 UTC cps.regis.edu [Source type: Academic]

^ This course is designed for people who are responsible for specifying, acquiring, developing, evaluating, supporting or managing software intensive systems.
  • Software Engineering Training Course | Project Performance International 18 January 2010 14:014 UTC www.ppi-int.com [Source type: Academic]

^ One can use engineering formulas to validate a design ahead of time.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

Coding

.Reducing a design to code may be the most obvious part of the software engineering process, but it is not necessarily the largest portion.^ The overwhelming problem with software development is that everything is part of the design process.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Software engineering is responsible for developing the software design, coding the design, and developing software components.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Responsibilities :The Software Engineer will be an integral part of a software ...

.In fact, many software engineers only work on the analysis and design process, then the coding work is handed off to computer programmers to implement.^ Software engineering is responsible for developing the software design, coding the design, and developing software components.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Developer of engineering analysis software.
  • Engineering Software Information | Business.com 18 January 2010 14:014 UTC www.business.com [Source type: FILTERED WITH BAYES]

^ A systematic approach to the analysis, design, implementation and maintenance of software.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.This trend is increasing in many companies, where software engineers are hired domestically and the implementation is out-sourced to a country where programming labor is less expensive.^ This trend is increasing in many companies, where software engineers are hired domestically and the implementation is out-sourced to a country where programming labor is less expensive.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Intermetrics A software engineering company .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ GEI A German software engineering company.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.In spite of this trend, many software engineers still go through the entire process and do coding as well as design.^ Software engineering is responsible for developing the software design, coding the design, and developing software components.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ I perceive engineering as the design of software.
  • Coding Horror: Revisiting The Facts and Fallacies of Software Engineering 18 January 2010 14:014 UTC www.codinghorror.com [Source type: General]

^ This process is called software engineering.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

Testing

.The purpose of testing is not only to prove that the code performs in accordance with the design specifications, but to prove that it does not fail when subjected to undefined inputs.^ The purpose of testing is not only to prove that the code performs in accordance with the design specifications, but to prove that it does not fail when subjected to undefined inputs.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Testing is the execution of a program or partial program, with known inputs and outputs that are both predicted and observed for the purpose of finding errors.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Not only may it be necessary to add code that does not fit the original design but just determining how software works at some point after it is completed may require significant effort by a software engineer.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.There are several types of testing.^ There are several types of testing.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Unit testing tests one module of code for correct inputs, outputs, and functionality.^ Unit testing tests one module of code for correct inputs, outputs, and functionality.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Unit testing is one of those practices that everybody agrees is good and desirable, to the extent that it's almost taboo to say anything remotely negative regarding unit testing.
  • .: Software Engineering 18 January 2010 14:014 UTC work.tinou.com [Source type: Original source]

^ Testing is the execution of a program or partial program, with known inputs and outputs that are both predicted and observed for the purpose of finding errors.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.System testing tests all the modules of a software system together.^ System testing tests all the modules of a software system together.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Those system use-cases, taken together now comprise the actual blueprint that will be used by software architects to begin laying out the classes or other software modules that will define a road map for the software coding and development process which follows.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ It encompasses all phases of the life cycle of a software system.
  • SE — SIGCSE Official Site 18 January 2010 14:014 UTC www.sigcse.org [Source type: Academic]

.User acceptance testing is a form of systems testing to see if not only the system works, but it meets the requirements of the business user.^ The most important aspect of any software system is that it meets the requirements of its users.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ User acceptance testing is a form of systems testing to see if not only the system works, but it meets the requirements of the business user.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ These changes should include additions to the unit and/or system-level tests, in the form of a regression test to show the defect and therefore show that it has been fixed (and to keep it from recurring later).
  • Software Engineering - Wikilivres 18 January 2010 14:014 UTC wikilivres.info [Source type: FILTERED WITH BAYES]

.Regression testing is testing performed after a system change to make sure that all system features are still present after the change.^ Regression testing is testing performed after a system change to make sure that all system features are still present after the change.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Starting with your finished and delivered system, add one feature or improve one performance specification in a way that preserves all of the quality attributes that you could measure in the original system, plus any new attributes that are relevant to your change.

^ Generally speaking, it is an accepted industry practice for system testing and validation to be performed by a separate person, team, or department, or in some cases, by an outside entity.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.To perform systems and verifications testing, Use cases are developed.^ To perform systems and verifications testing, Use cases are developed.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Those system use-cases, taken together now comprise the actual blueprint that will be used by software architects to begin laying out the classes or other software modules that will define a road map for the software coding and development process which follows.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ ALSO CALLED: CASE , Computer-Aided Systems Engineering , Computer-Assisted Software Engineering DEFINITION: CASE (computer-aided software engineering) is the use of a computer-assisted method to organize and control the development of software, especially on large, complex projects involving many software components and people.
  • Computer-Aided Software Engineering White Papers ( CASE, Computer-Aided Systems Engineering, Computer-Assisted Software Engineering ) Software Downloads, Definition and Webcasts - Bitpipe 18 January 2010 14:014 UTC www.bitpipe.com [Source type: General]

.These cases describe a user action or a specific feature of the system.^ These cases describe a user action or a specific feature of the system.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Use cases are sometimes grouped together in a UML or other format of diagram depicting users, the system, external entity and specific use cases.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ A vision of the system to be built is described by the user or Product Champion .
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.These cases are very useful during the construction phase of the system, and are usually specified as a deliverable of the design phase.^ It usually involves the use of CASE tools .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

^ These cases are very useful during the construction phase of the system, and are usually specified as a deliverable of the design phase.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Use cases are sometimes grouped together in a UML or other format of diagram depicting users, the system, external entity and specific use cases.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.The use cases are generally gathered into test scripts which describe testing activities in a reproducible way.^ The use cases are generally gathered into test scripts which describe testing activities in a reproducible way.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The “T” stands for test cases and test scripts.
  • TRUST in software engineering - 2009-06-01 06:00:00 | Control Engineering 18 January 2010 14:014 UTC www.controleng.com [Source type: FILTERED WITH BAYES]

^ Generally speaking, it is an accepted industry practice for system testing and validation to be performed by a separate person, team, or department, or in some cases, by an outside entity.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.These scripts may be executed manually by testers, or they may be executed by automated testing software.^ These scripts may be executed manually by testers, or they may be executed by automated testing software.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ While customers probably believe they know what the software is to do, it may require skill and experience in software engineering to recognize incomplete, ambiguous or contradictory requirements.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Intended for professional software developers including testers, and for university students, this book is suitable for courses on software engineering, testing, specification, or applications of formal methods.
  • Software Engineering / Software Testing Ebooks - Noeman GSM 18 January 2010 14:014 UTC www.noeman.org [Source type: FILTERED WITH BAYES]

.Generally speaking, it is an accepted industry practice for system testing and validation to be performed by a separate person, team, or department, or in some cases, by an outside entity.^ Generally speaking, it is an accepted industry practice for system testing and validation to be performed by a separate person, team, or department, or in some cases, by an outside entity.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ To perform systems and verifications testing, Use cases are developed.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Use cases are sometimes grouped together in a UML or other format of diagram depicting users, the system, external entity and specific use cases.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Testing is considered a specialized skill, with a skill set that is very different from system development.^ Specialized systems development [elective] .
  • SE — SIGCSE Official Site 18 January 2010 14:014 UTC www.sigcse.org [Source type: Academic]

^ Identify and discuss different specialized systems.
  • SE — SIGCSE Official Site 18 January 2010 14:014 UTC www.sigcse.org [Source type: Academic]

^ Testing is considered a specialized skill, with a skill set that is very different from system development.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.It also is generally considered a bad practice for software developers to test their own systems, since they can form habits that do not exercise the system thoroughly, and because they can frequently test around system failures.^ Testing is frequently considered part of validation.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Software development is an art form, not a science.
  • Rejecting Software Engineering - Eric Wise - CodeBetter.Com - Stuff you need to Code Better! 18 January 2010 14:014 UTC codebetter.com [Source type: FILTERED WITH BAYES]

^ Software Engineer salaries start around $73,000, and System Specialists can earn more than $80,000.
  • Software Engineering Degrees & Software Engineering Colleges 18 January 2010 14:014 UTC www.guidetocomputertraining.com [Source type: FILTERED WITH BAYES]

Documentation

.An important (and often overlooked) task is documenting the internal design and external functionality of software for the purpose of future maintenance and enhancement.^ An important (and often overlooked) task is documenting the internal design and external functionality of software for the purpose of future maintenance and enhancement.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ The purpose of the courses is for the student to gain an understanding of the selected application domain, and its use of software to support functions/operations within that domain.
  • SOFTWARE ENGINEERING 18 January 2010 14:014 UTC www.gannon.edu [Source type: Academic]

^ We also have external documentation in the form of an analysis and design document, essentially the paragraphs above on that subject.
  • CIS Department > Tutorials > Software Design Using C++ > Software Engineering 18 January 2010 14:014 UTC cis.stvincent.edu [Source type: FILTERED WITH BAYES]

.Software documentationis important.^ Software documentation is important.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ This means that auxiliary documentation is as important for a software project as it is for a hardware project.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

.Without documentation, software can be unusable, because the end user does not know how to operate a program.^ Without documentation, software can be unusable, because the end user does not know how to operate a program.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Whiteside also used XML based meta programming to allow end user programming of games with Simkin [2].
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

^ Software Engineering graduate programs are devoted to the branch of computer science that deals with the design, development, documentation and management of software.
  • Software Engineering Graduate Schools & Programs, Masters Degree (MS) in Software Engineering – GradSchools.com 18 January 2010 14:014 UTC www.gradschools.com [Source type: News]

.Without documentation, an application can be incorrectly installed on a server, causing components to fail.^ Without documentation, an application can be incorrectly installed on a server, causing components to fail.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Data Aware JavaBean & EJB Components Suite for Building Client/Server Database Applications By Xiaoqin Feng .
  • Software Engineering 18 January 2010 14:014 UTC www.ms.se.sjsu.edu [Source type: Reference]

.Documentation is most important for external interfaces.^ Specifications are the most important for external interfaces that must remain stable.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Documentation is most important for external interfaces.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.There are several means by which software can be documented, including flowcharts, deployment guides, user's manuals, and maintenance manuals.^ There are several means by which software can be documented, including flowcharts, deployment guides, user's manuals, and maintenance manuals.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ For example, an online futures market called the Future of IT Jobs in America attempts to answer whether there will be more IT jobs, including software engineers, in 2012 than there were in 2002 .
  • 02 Why Software Engineering? 18 January 2010 14:014 UTC www.slideshare.net [Source type: Reference]

^ Final products include software, user manuals, training manuals, and so forth.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.Development team members may write their own documentation, or a professional technical writer may write or edit the documents for readability and style.^ Development team members may write their own documentation, or a professional technical writer may write or edit the documents for readability and style.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ There may also be a program librarian when there are a large number of source code and other files involved, specialized people to write documentation, etc.
  • CIS Department > Tutorials > Software Design Using C++ > Software Engineering 18 January 2010 14:014 UTC cis.stvincent.edu [Source type: FILTERED WITH BAYES]

^ Software.com Engineering Software Centralize your project documents and manage your team members.
  • Engineering Software Information | Business.com 18 January 2010 14:014 UTC www.business.com [Source type: FILTERED WITH BAYES]

.It's important to note that testing is or should be done during or at the end of every stage.^ It's important to note that testing is or should be done during or at the end of every stage.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ In addition, you should take good notes during the lectures.
  • Annie Liu's CSE308: Software Engineering (Fall `01) 18 January 2010 14:014 UTC www.cs.sunysb.edu [Source type: Academic]

^ You should also take good notes during the lectures.
  • Annie Liu's CSE308: Software Engineering (Fall `04) 18 January 2010 14:014 UTC www.cs.sunysb.edu [Source type: FILTERED WITH BAYES]

.If this is not done, inputs into the next stage can not be very complete.^ If this is not done, inputs into the next stage can not be very complete.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

Documentation may also be sketchy or none existent.

Maintenance

.Maintaining and enhancing software to cope with newly discovered problems or new requirements can take far more time than the initial development of the software.^ Software development is still more a craft than an engineering discipline.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Maintaining and enhancing software to cope with newly discovered problems or new requirements can take far more time than the initial development of the software.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Graduate students who earn a masters (MS) or PhD degree in software engineering can become directors of software development, software engineering specialists, software engineering managers, lead software engineers and more.
  • Software Engineering Graduate Schools & Programs, Masters Degree (MS) in Software Engineering – GradSchools.com 18 January 2010 14:014 UTC www.gradschools.com [Source type: News]

.Not only may it be necessary to add code that does not fit the original design but just determining how software works at some point after it is completed may require significant effort by a software engineer.^ Software engineering is responsible for developing the software design, coding the design, and developing software components.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Learn how software engineering management works in the real world.
  • InformIT: Fallacies of Software Engineering Management > About Management 18 January 2010 14:014 UTC www.informit.com [Source type: FILTERED WITH BAYES]

^ Some software may require registration after an evaluation period.

.About 2/3 of all software engineering work is maintenance, but this statistic can be misleading.^ First, realize that Software Engineering is all about building complex software.
  • Nerdlife » Why Software Engineering Sucks 18 January 2010 14:014 UTC nerdlife.net [Source type: FILTERED WITH BAYES]

^ About 2/3 of all software engineering work is maintenance, but this statistic can be misleading.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software engineering emphasizes topics such as software design, software quality assurance, software requirements analysis, software project management, software maintenance, and formal methods for software development.
  • Miami University: Majors: Software Engineering 18 January 2010 14:014 UTC www.miami.muohio.edu [Source type: Academic]

.A small part of that is fixing bugs.^ A small part of that is fixing bugs.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Most maintenance is extending systems to do new things, which in many ways can be considered new work.^ Most maintenance is extending systems to do new things, which in many ways can be considered new work.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ In many ways, software bears more resemblance to complex social or organic systems than to hardware.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Most software engineers work with computer systems, applications and networks, and they mostly program computers.
  • Software Engineering Degrees & Software Engineering Colleges 18 January 2010 14:014 UTC www.guidetocomputertraining.com [Source type: FILTERED WITH BAYES]

.Similarly, about 2/3 of all civil engineering, architecture, and construction work is maintenance in a similar way.^ Similarly, about 2/3 of all civil engineering, architecture, and construction work is maintenance in a similar way.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ About 2/3 of all software engineering work is maintenance, but this statistic can be misleading.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Pick civil engineering software programs that work with your business.
  • Engineering Software Information | Business.com 18 January 2010 14:014 UTC www.business.com [Source type: FILTERED WITH BAYES]

Applied Software Engineering

.The process of software engineering differs between different software types.^ The process of software engineering differs between different software types.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ This is the difference between craft and engineering.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ This process is called software engineering.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.Building a word processor has differed requirements and design methods than building a 3D first person shooter.^ Building a word processor has differed requirements and design methods than building a 3D first person shooter.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software engineering emphasizes topics such as software design, software quality assurance, software requirements analysis, software project management, software maintenance, and formal methods for software development.
  • Miami University: Majors: Software Engineering 18 January 2010 14:014 UTC www.miami.muohio.edu [Source type: Academic]

^ Software designers do not have or use more formal methods of validating their designs because of the simple economics of the software build cycle.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

.These sections cover the differences and unique properties of the different software types.^ These sections cover the differences and unique properties of the different software types.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Application Domains It seems apparent that, although there are certain principles and methods that can be applied to any type of software, the specific use for the software also makes for some distinct differences among different types of applications.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

^ The process of software engineering differs between different software types.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

SE on Application software

SE on Server Software

.Software engineering for server software is more complex then development for the desktop computers.^ Developer of engineering analysis software.
  • Engineering Software Information | Business.com 18 January 2010 14:014 UTC www.business.com [Source type: FILTERED WITH BAYES]

^ Software engineering is the engineering discipline through which software is developed.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ A software engineering technique - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.A server is more complex, has more requirements and features then an ordinary, consumer system.^ A server is more complex, has more requirements and features then an ordinary, consumer system.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software systems have become larger and more complex than ever.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Technical design generally specifies the "how" of the system, or how its components will be arranged, what their features will be, and what kind of hardware the system will require.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Server software can have client-server as well as central architecture.^ Server software can have client-server as well as central architecture.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Security testing - testing tasks that probe the vulnerability of both client-side and server-side software .
  • Pressman Software Engineering Resources: Glossary 18 January 2010 14:014 UTC www.rspa.com [Source type: Reference]

^ The main reason server software is more complex is that communication between 2 computers -- the server and the client -- is inherently more complex and prone to failure than communication between parts of a program running on a single computer.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

.Development and testing of server software is also different from the development and testing of the desktop software.^ Software engineering for server software is more complex then development for the desktop computers.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Development and testing of server software is also different from the development and testing of the desktop software.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Saleem has worked on various roles from Software Development to Product Consultancy consequently this has led to an interest in the interaction of different company products and services resulting SOMIAi.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

.Not every programming language is suitable for implementation of server software.^ Not every programming language is suitable for implementation of server software.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ This trend is increasing in many companies, where software engineers are hired domestically and the implementation is out-sourced to a country where programming labor is less expensive.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ A UML-based language will be designed and implemented to enable fully visual and platform independent software development.
  • Software Engineering and Model-Driven Programming 18 January 2010 14:014 UTC www.cems.uwe.ac.uk [Source type: Academic]

.In conclusion, SE on server software requires special methods and processes to successfully complete.^ In conclusion, SE on server software requires special methods and processes to successfully complete.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software engineering emphasizes topics such as software design, software quality assurance, software requirements analysis, software project management, software maintenance, and formal methods for software development.
  • Miami University: Majors: Software Engineering 18 January 2010 14:014 UTC www.miami.muohio.edu [Source type: Academic]

^ Method and Process Establishing methods for developing software systems has been an issue of software engineering since before it was called software engineering.
  • Appendix D: Software Engineering Factors - Guidelines for Choosing a Computer Language: Support for the Visionary Organization 18 January 2010 14:014 UTC archive.adaic.com [Source type: FILTERED WITH BAYES]

.The main reason server software is more complex is that communication between 2 computers -- the server and the client -- is inherently more complex and prone to failure than communication between parts of a program running on a single computer.^ Real software runs on computers.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ Software systems have become larger and more complex than ever.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ X-terminal An intelligent terminal with a built-in implementation of an X server , which can therefore communicate with computers running X clients .
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

SE on Simulations

Scientific and engineering simulations

Games

.Designing software for gaming simulations can be quite challenging, since it requires a diverse background in software.^ Software system requirements and design specifications.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Designing software for gaming simulations can be quite challenging, since it requires a diverse background in software.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software engineering emphasizes topics such as software design, software quality assurance, software requirements analysis, software project management, software maintenance, and formal methods for software development.
  • Miami University: Majors: Software Engineering 18 January 2010 14:014 UTC www.miami.muohio.edu [Source type: Academic]

.For example, a game designer might have to write software that simulates physics as well as software that renders 3-dimensional images.^ For example, a game designer might have to write software that simulates physics as well as software that renders 3-dimensional images.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ While there are certainly examples of hardware designs that are arguably as complex as software designs, note two facts about modern hardware.
  • What is software engineering 18 January 2010 14:014 UTC www.bleading-edge.com [Source type: FILTERED WITH BAYES]

^ We might then write out pseudocode for what the function is to do, but this example is so simple that it is not worth the effort.
  • CIS Department > Tutorials > Software Design Using C++ > Software Engineering 18 January 2010 14:014 UTC cis.stvincent.edu [Source type: FILTERED WITH BAYES]

.However, many software engineers in the gaming industry are able to use 3rd party engines that make their job much easier.^ However, many software engineers in the gaming industry are able to use 3rd party engines that make their job much easier.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Software engineering Jobs at Computer Weekly .
  • Software engineering Jobs at Computer Weekly 18 January 2010 14:014 UTC www.computerweekly.com [Source type: News]

^ We currently have 211 jobs for Software engineering .
  • Software engineering Jobs at Computer Weekly 18 January 2010 14:014 UTC www.computerweekly.com [Source type: News]

.Nonetheless, they must follow the software engineering process closely, since small issues in the software can make the product fail in the consumer market.^ Nonetheless, they must follow the software engineering process closely, since small issues in the software can make the product fail in the consumer market.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ (Special issue on software quality and productivity.
  • Statistical Software Engineering 18 January 2010 14:014 UTC www.nap.edu [Source type: Academic]

^ Specifically, software engineering is the following: .
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

.Writing software for games is a high-risk industry and only a small percentage of games are financially successful.^ Writing software for games is a high-risk industry and only a small percentage of games are financially successful.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ However, many software engineers in the gaming industry are able to use 3rd party engines that make their job much easier.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ For example, a game designer might have to write software that simulates physics as well as software that renders 3-dimensional images.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

SE on Embedded software

.Software engineers that work with embedded computer systems need more knowledge of hardware than most software engineers, since embedded systems typically introduce more constraints on memory availability and processing power than, say, gaming PCs.^ Most software engineers work with computer systems, applications and networks, and they mostly program computers.
  • Software Engineering Degrees & Software Engineering Colleges 18 January 2010 14:014 UTC www.guidetocomputertraining.com [Source type: FILTERED WITH BAYES]

^ Software systems have become larger and more complex than ever.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ A software engineering technique - More information.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.Designing software for embedded systems can indeed be challenging, since most embedded processors cannot handle the overhead produced by compiling high-level languages.^ Software system requirements and design specifications.
  • STSC CrossTalk - Software System Engineering: A Tutorial - Oct�2007 18 January 2010 14:014 UTC www.stsc.hill.af.mil [Source type: Academic]

^ Designing software for embedded systems can indeed be challenging, since most embedded processors cannot handle the overhead produced by compiling high-level languages.
  • Software Engineering - Wikibooks, collection of open-content textbooks 18 January 2010 14:014 UTC en.wikibooks.org [Source type: FILTERED WITH BAYES]

^ Modula-2 A high-level programming language designed by N.Wirth.
  • Software engineering glossary 18 January 2010 14:014 UTC www.apl.jhu.edu [Source type: Reference]

.This often forces software engineers to implement embedded software, at least partially, in assembly.^ The B Engineering (Software) program uses the WAM as a measure for determining honours, and shall grade on the WAM equivalent to the following grades (in accordance with the Embedded Honours Models Structures Policy - 000743): .
  • Bachelor of Engineering (Software) / Program Handbook / The University of Newcastle, Australia 18 January 2010 14:014 UTC www.newcastle.edu.au [Source type: Academic]

^ Software engineering majors often get the earliest opportunities to experiment with new technologies.
  • Software Engineering Major | What Can You Do With a College Degree in Software Engineering? 18 January 2010 14:014 UTC www.worldwidelearn.com [Source type: FILTERED WITH BAYES]

^ Expanding Semiconductor client in Bristol now requires an Embedded Software Engineer to join their small R&D team.
  • Software Engineering Jobs at Electronics Weekly Jobs 18 January 2010 14:014 UTC www.electronicsweekly.com [Source type: News]

External Links


Simple English

Software engineering is a field of Computer science, concerned with designing and writing programs for computers. A software engineer tries to change software so that it is of a better quality. Better quality software is easier to understand, to maintain, or to extend. Becoming a software engineer is a higher education, done at the university level, usually. Software engineering can be very difficult work. Today it is mostly done in a team. Software engineering can broadly be split into the following:

  • Requirements say what the software should do.
  • Software design is usually done on paper. It says what the different components of the software are, and how they interact.
  • When the design phase is done, the software is implemented, the different components are coded.
  • At the end of the implementation, tests are done to see if the components meet the requirements. Note that the requirements can change over time.

Other pages



Citable sentences

Up to date as of December 20, 2010

Here are sentences from other pages on Software engineering, which are similar to those in the above article.








Got something to say? Make a comment.
Your name
Your email address
Message