AI Summary
[DOCUMENT_TYPE: study_guide]
**What This Document Is**
This study guide explores the foundational distinctions between computer science and software engineering, delving into the specific skills and knowledge considered essential for success in the field of software engineering. It’s based on established principles and aims to define what constitutes “proficient” practice within the discipline. The material presents a framework for understanding the core competencies expected of professionals building and maintaining modern computing systems.
**Why This Document Matters**
This resource is particularly valuable for students enrolled in advanced software engineering coursework, such as Software Engineering II (EEL 6883) at the University of Central Florida. It’s also beneficial for practicing software engineers seeking to benchmark their skillset or identify areas for professional development. Use this guide to gain a clearer understanding of the expectations surrounding a software engineering career and to assess your preparedness for tackling complex projects. It’s ideal for supplementing lectures and textbook material, providing a focused perspective on professional standards.
**Topics Covered**
* The relationship between theoretical computer science and practical software engineering.
* Defining core competencies for software engineers.
* The importance of both theoretical knowledge and practical application.
* The role of economic considerations in software development.
* Characterizing “proper professional practice” in software engineering.
* The concept of a well-rounded software engineering team.
* The value of computing theory in design processes.
**What This Document Provides**
* A clear articulation of the definitions of science, engineering, computer science, and software engineering.
* A proposed framework for evaluating software engineering proficiency.
* Insights into the skills and knowledge needed for cost-effective system development.
* A vision of an “ideal” software engineer’s skillset.
* Considerations for team composition and leveraging individual expertise.
* A foundation for understanding the importance of continuous learning and skill development in the field.