SEG Software Engineering 2011 Module Description: Hanoi University Faculty of Information Technology

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

HANOI UNIVERSITY Faculty of Information Technology

SEG Software Engineering 2011 Module Description


Contact Lecturers: Office: Tel: Email: Le Minh Duc Building C, Room 210, Hanoi University 8544338 (ext 3236) duclm@hanu.edu.vn Information Technology SEG330 Software Engineering Undergraduate Five (5) PCP, POS, IPG at least 10 hours of self-study each week 2011

1. Module Details Faculty Module code Module name Level Credits Prerequisites Suggested study Year

2. Nature of the module This module is a practical introduction to software engineering. It consists of two parts. Part I teaches the students the core object oriented programming concepts and techniques in Java. Part II introduces the students to the software engineering method and uses the materials introduced in Part I to teach the students the process of analysing, designing, implementing and testing a real-world software. The students will apply this software engineering method to a small software project. 3. Learning objectives Upon completion of this module, students are expected to: 3.1 develop clear, concise, and sufficiently formal requirements for extensions to an existing system, based on the requirement needs of end users 3.2 apply design principles and patterns while designing and implementing a system 3.3 apply an essential sub-set of the analysis and design artefacts of the Unified Modelling Language to model aspects of the domain, system behaviour, and software architecture 1

3.4 apply the full software development process to a small software project Learning Resources Prescribed text book: Liskov B. and Guttag J., Program Development in Java: Abstraction, Specification, and Object Oriented Design, Addison Wesley, 2001 Supplementary text books: TB2 Sommerville, I., Software engineering, 9th ed, Addison Wesley, 2011 TB3 Larman C., Applying UML And Patterns: An Introduction to ObjectOriented Analysis and Design and the Unified Process, 2001

Assessment The module consists of the following components: Assessments Software engineering project Final Test Weights 5% 5% 10% 20% 60% Brief Description Requirement definition Requirement analysis Software design Software implementation and testing Covers all the materials that have been studied during the semester Learning objectives 3.1-3 3.1-3

Grading scheme There are two components of the module grade. The first component is the final mark and the second component is the final grade. The final mark, which is in the scale of 10, is a weighted average of all the assessments. The final grade, on the other hand, is determined from the final mark according to the following scheme: Mark Grade less than 5 Fail 5 Pass 6-7 Good 8-10 Excellent Pass Criteria Students must pass the internal assessment in order to take the final test. To pass the module, you must (1) attend at least 80% of lectures and tutorials and (2) achieve a Pass grade (as explained above). If you failed the module then you are permitted to retake the final test once.

Weekly Schedule Weeks 1 Descriptions Introduction to Object Programming in Java object, decomposition, abstraction program structure, packages, API Input/Output streams
References: Chapters 1, 2

Tutorials Ex 2.1,2,4,7 Running Eclipse

PART I OO Programming Concepts and Techniques

Procedural Abstraction and Specification Procedural abstraction Specifications Exceptions


References: Chapters 3,4,9

Ex 3.1,2,3,4 Ex 4.1,2,3,4 Ex 9.2,5

Data abstraction abstraction function and rep invariant specification & implementation reasoning about data abstraction design issues
References: Chapter 5

Ex 5.18 Homeworks: 1,2,3

4 5

Type hierarchy and other abstractions Iteration abstraction Type hierarchy Polymorphic abstractions
References: Chapter 6,7,8

Ex 6.1,2,510 Ex 7.17 Ex 8.17

Testing and debugging testing methods and procedures testing abstractions and type hierarchy testing tool: JUnit debugging and defensive programming
References: Chapter 10

Ex 10.13,7 Homework: 4

Design patterns factory flyweights, singletons, state bridge procedural patterns composites publish-subscribe
References: Chapter 15

Ex 15.1* Review

PART II OO Software Engineering using Java 8 Software engineering method

introduction to software engineering systems development life cycle engineering design


References: Chapter 11, TB2: Chapters 2,3

Case study: keyword search engine (KEngine)


Project specification released 9 Requirement Engineering types of requirement requirement capturing techniques requirement analysis process requirement documentation
References: Chapter 11,12, TB2: Chapter 4

(i) application
domain selection (ii) requirement specification for the selected domain entities (iii) extending the requirements Ex 11.1*, HW 11.1

KEngine requirements

10

Requirement Modelling use case diagram class diagram component diagram sequence diagram
References: Chapter 12, TB2: Chapter 5, TB3: Chapters 6, 1011

(i) modelling the


information requirements (ii) extending the system models (iii) extending the requirement specification Ex 12.1*, HW 12.1

KEngine requirement modelling


11 Architectural Modelling architectural views and patterns common patterns: layered, model-viewcontroller, client-server modelling the architecture using UML
References: Chapter 13, TB2: Chapter 6, TB3: Chapters 30, 32

(i) KEngine
architectural modelling Ex 13.12*

KEngine architectural model


12 Object Oriented Design the design process interaction diagram
References: Chapter 13, TB3: Chapters 14, 15

(i) system design


extension Ex 13.7*

KEngine design
13 Implementation from design to code
References: Chapter 14

(i) implementation
plan for an extension (ii) implementing a system extension Ex 14.5,6* 4

KEngine implementation

14

Testing system testing KEngine testing Review Lecture Project due Review weeks

(i) testing a system


extension Ex Test.1

15

16

Final Test

Academic Honesty and Misconduct Hanoi University expects all students and staff to act with honesty and integrity in all matters.

You might also like