|
ECC 811:
SOFTWARE ENGINEERING
Course
Purpose
The purpose of this course is to provide students with the principles of
suitable structured high level language programming techniques, the software
planning, design, development, implementation, testing and maintenance required
for problem solving in electrical/computer engineering applications.
Expected Learning Outcomes
At the end of the course the student should be able to:
1.
Solve electrical/computer engineering problems using suitable structured high
level language programing methodologies.
2.
Plan, design, develop, test,
implement and maintain software applied to solving related electrical/computer
engineering problems.
Course Content
Software Engineering Description Software design: top-down design; Introduction to object-oriented software design. Software validation. Software test: test plan, documentation.
Software maintenance:
waterfall model. Introduction to formal methods of program specification,
program construction and proof of correction. Software Processes. Software Requirements. Analysis
and Specification. Software Architecture. Planning a Software Project.
Function-Oriented Design. Object-Oriented Design. Detailed Design. Coding.
Testing
Mode of Delivery
Lectures, tutorials, self-paced/guided e-learning, practicals, system modelling,
computer simulations and hardware design exercises.
Course Assessment
During the period of the course, assessment will be conducted by Continuous
Assessment Tests (CATs) and final Examination at end of the course. The course
will be evaluated by 60% final examination and 40% CATs
Prescribed Textbook
1.
Pankaj
Jalote, An integrated approach to software engineering, 3rd
Edition (2005 or Later Edition), Springer, ISBN: 81-7319-702-4.
Recommended Textbooks |