Core Elements of a Degree Program in Software Engineering(based on work of the curriculum task force of the Joint Committee on Software Engineering as a Profession)
Computer Science and Engineering basics:
- algorithms and data structures, computer architecture, operating systems and networking, databases, programming languages
Software Engineering processes and techniques for developing and maintaining large systems
- requirements analysis, software architecture and design, testing and quality assurance, software project management, selection and use of software tools and components, human-computer interaction, documentation
- Ethical, legal, social, economic and safety issues
- Methods for technical and economic decision making