ECE 30861 - Software Engineering
Note:
This course ran as ECE 46100 prior to Fall 2022.
Course Details
Lecture Hours: 3 Credits: 3
Counts as:
- EE Elective
- CMPE Selective
Normally Offered:
Each Fall
Campus/Online:
On-campus only
Requisites:
ECE 36800
Requisites by Topic:
Programming and Data Structures.
Catalog Description:
This course provides an introduction to software engineering principles, with special emphasis on the process, methods, and tools needed to develop and test quality software products and systems.
Required Text(s):
- Software Engineering , 10th Edition , Sommerville, Ian , Pearson , 2016 , ISBN No. 978-9814718585
- Software Engineering at Google , 1st Edition , Titus Winters, Tom Manshreck, and Hyrum Wright , O'Reilly , 2020 , ISBN No. 978-1492082798
Recommended Text(s):
- Design Patterns: Elements of Reusable Object-Oriented Software , 1st Edition , Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides , Addison-Wesley , ISBN No. 978-0201633610
- Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software , 2nd Edition , Eric Freeman, Elisabeth Robson, Bert Bates and Kathy Sierra , O'Reilly , ISBN No. 978-1492078005
- The Mythical Man-Month: Essays on Software Engineering , Frederick P. Brooks , 1995 , ISBN No. 978-0201835953
Learning Outcomes:
- an ability to conduct object-oriented design and use unified modeling language. [1,3]
- an ability to understand different models of software development processes. [1,2]
- an ability to analyze requirements and write project specifications. [1,2]
- an ability to successfully develop a team software project on time and meet the specifications. [1,2,3,4]
Lecture Outline:
Weeks | Major Topics |
---|---|
1 | Introduction to class, project description, team organization |
2 | A survey of project-relevant engineering tools (project management software, version control, code review, bug tracking, web stack, databases, SQL, etc.) |
1 | Software engineering processes |
8 | Core software engineering activities: Requirements; Design; Implementation; Validation; Maintenance |
1 | Engineering Ethics |
2 | Special topics |
1 | Project postmortems and presentations |
Engineering Design Content:
- Analysis
- Construction
- Testing
Engineering Design Consideration(s):
- Economic
- Environmental
- Ethical
- Sustainability
Assessment Method:
Students must demonstrate basic competency in all the outcomes in order to receive a passing grade for the course. Outcomes i and ii will be assessed by homework and examination. A student must obtain 40% of the points and exceed two standard deviations below the median score to pass the outcomes. Outcomes iii and iv will be evaluated using homework and programming projects. Students must receive 50% of the points to pass the outcomes.