Академический Документы
Профессиональный Документы
Культура Документы
IT3205
MINOR MODIFICATIONS
When minor modifications are made to this syllabus, those will be reflected in the Virtual
Learning Environment (VLE) and the latest version can be downloaded from the relevant course
page of VLE. Please inform your suggestions and comments through the VLE. http://vle.bit.lk
ONLINE ASSIGNMENTS
The assignments consist of two quizzes, assignment quiz 1 (It covers the first half of the
syllabus) and assignment quiz 2 (It covers the second half of the syllabus). Maximum mark
for a question is 10, minimum mark for a question is 0 (irrespective of negative scores).
Final assignment mark is calculated considering 40% of assignment quiz 1 and 60% of
assignment quiz 2. Pass mark for the online assignments in a course is 50. You are advised
to do online assignments before the final exam of the course. It is compulsory to pass all
online assignments to partially qualify to obtain year 2 certificate.
Page 1
IT3205
FINAL EXAMINATION
Final exam of the course will be held at the end of the semester. Each course in the
semester 3 is evaluated using a two hour question paper which consists of 20-25 MCQs and
3-4 structured questions.
OUTLINE OF SYLLABUS
Topic
Hours
1. Introduction
04
08
08
4. Design
08
5. Coding
03
08
7. Software Maintenance
03
03
45
REQUIRED MATERIALS
Main Reading
Ref. 1: Software Engineering by Ian Sommerville, 7th edition, Addison-Wesley, 2006.
Ref. 2: Software Engineering: A practitioner's approach by Roger S. Pressman, 6th edition,
McGraw-Hill International edition, 2005.
Ref. 3: http://www.softwareengineering-9.com/
Page 2
IT3205
DETAILED SYLLABUS
Describe what software is, different types of software and software quality attributes
Describe with the problems associated with software and software development
Sub Topics
1.1.
1.2.
Software
1.1.1.
What is software?
1.1.2.
Types of software
1.1.3.
Characteristics of Software
1.1.4.
Software Engineering
1.2.1.
1.2.2.
1.2.3.
1.2.4.
1.2.5.
Professional Practice
Page 3
IT3205
Identify the most appropriate software process model for a given problem
Identify how CASE tools can be used to support software process activities
Sub Topics
2.1.
2.2.
2.3
2.3.
2.2.1.
2.2.2.
Evolutionary development
2.2.3.
Process Iteration
2.3.1.
Incremental delivery
2.3.2.
Spiral development
Agile methods
2.4.2.
Extreme programming
2.4.3.
2.4.4.
Software prototyping
2.4.
2.5.
2.6.2.
Page 4
IT3205
Sub Topics
3.1.
3.2.
3.3.
3.2.1.
3.2.2.
Domain requirements
3.2.3.
User requirements
Overview of techniques
3.3.2.
Viewpoints
3.3.3.
Interviewing
3.3.4.
Scenarios
3.3.5.
Use-cases
3.3.6.
Ethnography
3.4.
Requirement validation
3.5.
Requirement specification
3.6.
Feasibility
Page 5
IT3205
Sub Topics
4.1.
4.2.
Design concepts
4.1.1.
Abstraction
4.1.2.
Architecture
4.1.3.
Patterns
4.1.4.
Modularity
4.1.4.1.
Cohesion
4.1.4.2.
Coupling
4.1.5.
Information hiding
4.1.6.
Functional independence
4.1.7.
Refinement
Architectural design
4.2.1.
Repository model
4.2.2.
Client-server model
4.2.3.
Layered model
4.2.4.
Modular decomposition
4.3.
4.4.
4.5.
4.4.1.
Human-computer interaction
4.4.2.
Information presentation
4.4.3.
Interface evaluation
Design notations
Page 6
IT3205
Select appropriate programming language and development tools for a given problem
Identify the features of a good program, good programming practices and program
documentation
Sub Topics
5.1.
5.2.
5.3.
Design test cases and write test programs for a given simple software problem
Sub Topics
6.1.
6.2.
Techniques of testing
6.3.
6.2.2.
6.2.3.
Inspections
Levels of testing
6.3.1.
Unit testing
6.3.2.
Integration Testing
Page 7
IT3205
6.3.3.
Interface testing
6.3.4.
System testing
6.3.5.
6.3.6.
Regression testing
6.3.7.
6.3.8.
6.3.9.
6.4.
6.5.
6.6.
6.7.
Standards
6.7.1.
ISO9000
6.7.2.
Sub Topics
7.1.
7.1.1.1.
Fault repair
7.1.1.2.
Software adaptation
7.1.1.3.
7.1.2.
Maintenance prediction
7.1.3.
Re-engineering
Page 8
IT3205
Importance of CM
7.2.2.
Configuration items
7.2.3.
Versioning
Sub Topics
8.1.
8.2.
Management activities
Page 9