This class was tough.
Introduction to the Engineering and Computing professions, professional ethics. Overview of ECS curricula, connections among ECS fields and to the basics of sciences, other fields. Basic study, problem solving and other skills needed to succeed as an ECS major. Engineering design and quantitative methods using MATLAB. Multi-disciplinary team projects designed to replicate decision processes in real-world situations
This course provides a general introduction to software engineering. It introduces concepts such as software processes and agile methods, and essential software development activities, from initial specification through to system maintenance. Formalisms and tools to assist in software development are also presented, including common design patterns and UML notation. There is a focus on software testing, from unit testing to the testing of software releases. Project management and professional software engineering practice will also be covered. Case studies provide practical examples for many of these concepts.
Hours per week:
Advice for students:
At the end of this course, you should be able to: 1. Understand the issues of producing quality software 2. Produce a system design using UML notation 3. Be aware of human issues in the software engineering profession: ethics and professional practice 4. Understand the different aspects of project management in producing quality software