Software Engineering

haya's picture
Course Code: 
66312
Course Outline: 

An Najah National University

Faculty of Engineering

Department of Computer Engineering

 

 

Course title and number

Software Engineering -66312

Instructor(s) name(s)

Eng. Haya Sammaneh

Contact information

(Email, Office location, other information)

hayasam@najah.edu

Faculty of Engineering – Third Floor .

Office number :1410

Semester and academic year

Second Semester 2011

Compulsory /Elective

Compulsory

Prerequisites

Object Oriented Language Java- 66212

Course Contents(description)

The content of the course concentrate on introductory and intermediate and some advanced level.

Level 1: Course Introduction and What is software engineering  (1 week)

Level 2:Socio-technical systems, emergent system properties, and the system engineering process.(2 weeks )

Level 3: Critical Systems (1 week)

Level 4: Software Processes(2 weeks)

Level 5: Project management(2 week)

Level 6: Software requirements(1 week)

Level 7: Requirements engineering process(1 week)

Level 8: System and context models(1 weeks)

Level 9:Architectural design (1week)

Level 10: UML : Unified Modeling Language(1 week)

Level 11: Software Testing (2 week)

Course Objectives

1-The main objective of this course is to provide students with a broad perspective on Software  Engineering, an overview of the software engineering discipline

2- Present the differences between software engineering discipline and other discipline of engineering;   introduce the ethical and professional responsibility of the software engineer.

3- Explain the project management and the role of management on the success of the project.

4- Explain the process of software engineering, feasibility study, collecting requirements, validation and verification. Introduce the system models.

5- Explain the architectural design and the effect of the environment on the type of design we choose for the system.

 

Intended Learning Outcomes and Competences

  • Fundamental knowledge in software process and the activities of this process, the differences of software process and system engineering process.
  • Fundamental knowledge in the management activities, planning, scheduling and monitoring…
  • Fundamental knowledge in the requirements engineering process and its activities.
  • Fundamental knowledge in system and its model such as context, behavioral, data, and object models, context diagram.
  • Fundamental knowledge in system architectural design such system structuring, control models, and modular decompositions
  • The ability to analyze, design, constructs, realize and validate systems from hard- and software using principles and techniques of software engineering.
  • The ability to translate specific requirements on hard- and software systems into correct and efficient solutions.
  • The ability to participate in a group project involving design using UML and implementation of the design.
  • The ability to develop alternative design solutions to a given problem and recommend the best one within limitations of cost, time, knowledge, existing systems, and organizations.

 

Textbook and References (online resources)

Software Engineering, Ian Sommerville, Addison Wesley, 2004, 7th.

Software Engineering, Ian Sommerville, Addison Wesley, 9th.

 

Assignment Criteria

Activity

Percent(%)

Midterm Exams

40 (First + Second)

Homework and quizzes

10

Other criteria(Research, Discussion. etc)

 

Final Exam

50

Week

 

Subject

1

Course Introduction and What is software engineering

2,3

Socio-technical systems, emergent system properties, and the system engineering process

4

Critical Systems

5,6

Software Processes

7,8

Project management

9,10

Requirements engineering process

11,12,13

System and context models , Architectural design ,UML

14,15

Software Testing