Fundamental of Software Engineering
Fundamental of Windows Programming
Course Code: CoSc4152 & Course ECTS: 5
Course Syllabus
Regular 4th Year Sec I-III 2020/21
Instructor’s Contact Information Course Information
Name: Eshetu D., Honelet E. Academic Year: 4th
Email: eshetu.deresu3@[Link] Academic Semester: I
hoenmune@[Link]
Phone: (251) 910-432224 Meeting day: Working day
(251) 968-123854
Office No: Ground 1 Meeting time: Before & After Class
Office Hour: After and Before Class Meeting location: @ Office
Course Description
This course provides an introduction to the problems of software development and
maintenance and the processes and methods used to address them. All phases in the
software development life cycle will be introduced. The course also deals with software
project planning, cost estimation, tracking and control, staffing, risk management, and
software configuration plan.
Prerequisite: None
Course Goals or Learning Outcomes:
Upon completion of this course students will:
1. Understand the basic principles of Software Engineering
2. Write requirements specification documents
3. Design a system, component, or process to meet desired needs.
4. Verify and validate a Software system practice effective communication skill.
Required Materials
• Ian Sommerville (2011), Software Engineering 8th or later edition. Pearson
Education Ltd.
• Pressman, Roger (2001), Software Engineering: A Practitioner's Approach. Fifth
Edition.
Page 1 of 4
Fundamental of Software Engineering
• McGraw-Hill. Pankaj Jalote (2005), An Integrated Approach to Software
Engineering, 3rd Edition, Springer.
• Fundamental Software Engineering by Rajib Mall 2nd ed, Prentice Hall, india,
2004
Weekly lecture notes at: [Link]
programming
Grading
Project 40% These consist of activities for directly applying and integrating
the concepts presented in the course. In some cases, you will
be given a case scenario to use in the development of the
project. These projects will require you to use critical thinking
skills, logical analysis, and creativity. They may be individual
or group projects.
Midterm 20% There will be one midterm exam given about halfway through
Exam the course. A review sheet will be provided.
Final Exam 40% There will be one comprehensive final exam, which will count
for 40% of your course grade. A review sheet will be provided.
Academic Dishonesty
Your assignments should be done without consultation with other students (or the Internet)
and you should not share your work with others. Any assignment submitted that is
essentially the same as someone else’s will not receive credit.
Grading Formula
A+ 90 or > B- 65 – 69 Fx 30-40
A 85 – 89 C+ 60 – 64 F <30
A- 80 – 85 C 55 – 60
B+ 75 – 80 C- 50 – 55
B 70– 75 D 40-50
Late Policy
Homework and project deadlines will be hard. Late homework will be accepted with a 10%
reduction in grade for each class period they are late by. However, once a homework
assignment is discussed in class or the solution is posted, submissions will no longer be
accepted. All assignments must be turned in before the start of class on the due date.
Page 2 of 4
Fundamental of Software Engineering
Course Schedule, Class and Assignment/Project Due Dates
Assignments/Projects
Week Topic Class Due Date
Due Date
1 Chapter 1 - Introduction [1-2]/11/2018
Chapter 2 - Systems Engineering
• Emergent system properties
• Systems and their environment
2 • System modelling [8-9]/11/2018 15/11/2018
• The system engineering
process
• System procurement
Chapter 3 - Software Processes
• Software process models
• Process iteration
• Software specification [15-23]/11/2018
3 • Software design and 30/11/2018
Midterm Exam
implementation Fri 16/11/2018
• Software validation
• Software evolution
• Automated process support
Chapter 4 - Software Requirements
• Functional and non-functional
requirements
[29-30]/11/2018
4 • User requirements 7/12/2018
• System requirements
• The software requirements
document
Page 3 of 4
Fundamental of Software Engineering
Chapter 5 - Requirements Engineering
Processes
• Feasibility studies
5 • Requirements elicitation and [6-7]/12/2018 14/12/2018
analysis
• Requirements validation
• Requirements management
Chapter 6 – Software cost estimation
• Productivity
6 • Estimation techniques [13-14]/12/2018 21/12/2018
• Algorithmic cost modelling
• Project duration and staffing
Chapter 7 – Software Design
• Software Design
7 • Software Architecture [20-21]/12/2018 28/12/2018
• Function Oriented Design
• Detailed Design
Chapter 8 - Software Testing
• Defect testing
• Integration testing
8 [27-28]/12/2018 4/01/2019
• Object-oriented testing
• Testing workbenches
Final Exam Week Final Exam End of Sem.
Approval Form
Instructor’s Department Head Quality Assurance
________________________ ________________________ _______________________
Page 4 of 4