Anda di halaman 1dari 14

School of Business Informatics and Software Engineering

MSc Software Engineering

PROGRAMME DOCUMENT

VERSION 1.1
MSE v1.1
July 2008

University of Technology, Mauritius


La Tour Koenig, Pointe aux Sables, Mauritius
Tel: (230) 234 7624 Fax: (230) 234 1747 Email: sobise@utm.intnet.mu
website: www.utm.ac.mu
MSc SOFTWARE ENGINEERING

A. Programme Information

The MSc in Software Engineering is primarily intended for graduates of computing subjects who want an in-depth
focused in the software engineering discipline. This programme is a basis for further study, research and
acquiring skills and knowledge in areas like design patterns, intelligent agent technologies and other specialist
fields. The course comprises of a six months industrial project where the student will apply acquired knowledge
and skills to solve real-life problem.

This course also helps the students to be conversant with all the software challenges that exist and shows them
the right path to delivering code to the highest levels of quality, reliability and maintainability at the lowest cost.

For the award of the Masters Degree, all modules taken must be passed overall with passes in the examinations,
coursework and other forms of assessment.

All modules will be assessed as follows: Written examinations carrying 60 % of total marks and continuous
assessment carrying 40 % of total marks. Continuous assessment can be based on seminars and/or
assignments or class tests.

B. Programme Aims

The MSc Software Engineering programme prepares students to act project leaders. Furthermore, the students
will be ready to join any public or private institution whether national or international where software development
and maintenance are the main key activities.

This programme is also an important step towards research.

C. Programme Objectives

At the end of the programme, the students should be able to :


- Apply skills and knowledge acquired to solve real problems.
- Work in any software development institution.
- Carry out research in the software engineering area.

MSE v 1.1/July 2008 Page 2 of 14


PART I - Regulations

D. General Entry Requirements

As per UTM Admission Regulations with reference to Masters Programmes.

E. Programme Entry Requirements

Applicants should have a computing background with programming and system design as strengths.

Admission decisions will be made by the School of Business Informatics and Software Engineering on a case by
case basis. The primary criteria for acceptance of an applicant are: his or her anticipated successful completion
of the programme.

The assessment of an applicant’s likelihood of success can be carried out in a variety of ways e.g. entrance
examination, interviews, etc. At the time of application, the student is expected to demonstrate his or her
background in the field.

F. Programme Mode and Duration

Full Time: 1 years


Part Time: 1½ years

G. Teaching and Learning Strategies

Lectures and tutorials form part of the curriculum. Student should be encouraged to do self learning wherever
applicable and interact with professionals in the industry via seminars, workshops and existing industry project.

H. Student Support and Guidance

Academic tutoring: weekly 2 hours session between the students and the lecturer. Guidance will be provided on
all aspects of the programmes through regular meetings with Programme Director and Programme Coordinator.
Regular meetings between student and internal/external supervisor for the MSc project

I. Attendance Requirements

As per UTM’s Regulations and Policy.

J. Credit System

1 module = 6 credits
Level 2 Industrial Project= 12 credits

K. Student Progress and Assessment

For the award of the Masters Degree, all modules must be passed overall with passes in the examinations,
coursework and other forms of assessment.

All modules will carry 100 marks and will be assessed as follows (unless otherwise specified):
Written examinations up to 3-hours’ duration and continuous assessment carrying up to 40% of total marks.

MSE v 1.1/July 2008 Page 3 of 14


A module can also be conducted as a project.

Continuous assessment can be based on seminars, practical labs and/or assignments or class tests.

Grading

Grade Marks x(%)


A x > 70
A- 65 < x < 70
B 60 < x < 65
B- 55 < x < 60
C 50 < x < 55
C- 45 < x < 50
D 40 < x < 45
F x< 40
A-D Pass
F Fail

L. Evaluation of Performance

Minimum Credits Required for Award of:


Master’s Degree: 42
Postgraduate Diploma: 30
Postgraduate Certificate: 18

Breakdown as follows:
(i) MSc Software Engineering
3 Core modules: 18 credits
+ 2 Electives: 12 credits
+Master Dissertation (Industrial Project): 12 credits
Candidates who obtain a mark of 70% and above will be awarded an MSc with Distinction.

(ii) Postgraduate Diploma Software Engineering


3 Core modules: 18 credits
+ 2 Electives: 12 credits

(iii) Postgraduate Certificate Software Engineering


3 Core modules: 18 credits

Note : There is no resit in project.

M. Award Classification

Overall weighted mark x (%) Classification


x  70 MSc with Distinction
40  x  70 MSc

N. Programme Organisation and Management

Programme Director and Co-ordinator: Mr. J. Narsoo


Contact Details : Tel: 234-7624 Fax: 234-1767 Email: jnarsoo@utm.intnet.mu

MSE v 1.1/July 2008 Page 4 of 14


PART II - Programme Structure

O. MSc Software Engineering – Full Time (Version 1.1)

Semester 1 Semester 2
Code Module L+T/P+S Credits Code Module L+T/P+S Credits
S S
OSS5101 Unix 2+2+2 6 WAT5101 Elective 2 2 + 2 +2
Programming
SDT5101 Design 2+2+2 6 PRJ5204 Industrial 12
Patterns Project
SEM5201 Software 2+1+3 6
Quality
Assurance
Elective 1
6

P. MSc Software Engineering – Part Time (Version 1.1)

Semester 1 Semester 2
Code Module L+T/P+S Credits Code Module L+T/P+S Credits
S S
OSS5101 Unix 2+2+2 6 SEM520 Software 6
Programming 1 Quality 2+1+3
Assurance
SDT5101 Design 2+2+2 6 Elective 2 6
Patterns
Elective 1 6

Semester 3
Code Module L+T/P+S Credits
S
Industrial 12
Project

Block A

Electives

Code Modules L+T/P+ Credits


SS
DBT5101 System Integration 2+2+2 6
ISM5101 Information Technology
2+1+3 6
Economics
WAT5101 Service Oriented
2+2+2 6
Architecture

MSE v 1.1/July 2008 Page 5 of 14


Block B

Electives

Code Modules L+T/P+ Credits


SS
SDT5203 Agile Programming
2+2+2 6
Techniques
ISM5102 Entrepreneurship 2 +1 + 3 6
ISM5104 Global IT Management 2+1+3 6

The above list is not a final elective list, other related electives can be considered.
Note:
 Registered students are required to submit a list of the electives they wish to take well before the
programme starts.
 The University reserves the right not to offer a given elective if the critical number of students is not
attained and/or for reasons of resource constraints.

MSE v 1.1/July 2008 Page 6 of 14


Q. MODULE OUTLINE

OSS5101: UNIX PROGRAMMING

Aims

The aims of this module are to give a hands-on contact on:


 Using standard UNIX system call API's
 Concurrent programming with processes and threads
 Network programming, including the client-server paradigm
 Writing shell scripts and portable application programs

Learning Outcomes

On successful completion of this module, students should be able to:


 Configure and manage a UNIX system
 Program under the UNIX environment
 Acquire programming experience in the following: concurrent programming with processes and threads,
network programming and shell scripting.

Module Outline

 A Tour of UNIX and Linux. Versions of UNIX.


 File I/O: File I/O, File Descriptors and Open File Descriptions, Symbols for File Permission Bits, open and
creat System Calls, umask System Call, unlink System Call, Creating Temporary Files, Disk Special Files
and File Systems, Hard and Symbolic Links, Pathnames, Accessing and Displaying File Metadata,
Directories, Changing an I-Node
 Terminal I/O: Reading from a Terminal, Sessions and Process Groups (Jobs),Setting Terminal Attributes,
Terminal-Identification System Calls
 Processes and Threads: exec System Calls, Implementing a Shell, fork System Call, exit System Calls and
Process Termination, User and Group Ids, Setting User and Group Ids, Process Ids, chroot System Call,
Priority
 Interprocess Communication: Pipes, dup, Unidirectional Pipes and Bidirectional Pipes, FIFOs, or Named
Pipes, Simple Messaging Interface (SMI), System V IPC (Interprocess Communication), System V
Message Queues, Semaphores, File Locking
 Networking and Sockets: Socket Basics, Socket Addresses, Socket Options, Simple Socket Interface (SSI),
Socket Implementation of SMI, Connectionless Sockets
 Signals and Timers: Signal Basics, Deprecated Signal System Calls, Realtime Signals Extension (RTS).
Global Jumps, Clocks and Timers.
 Shell programming

MSE v 1.1/July 2008 Page 7 of 14


SDT5101: DESIGN PATTERNS

Aims

The module aims to look into software development processes including an object-oriented approach which can be
used to deal with issues which arise in real-world software. The main overall themes are reusability and coping with
change. The aim of this module is also to develop the ability to apply and justify the use of patterns in software
engineering.

Learning Outcomes

On successful completion of this module, students should be able to:


 Analyse the importance of patterns in software development.
 Represent Patterns using UML
 Design and develop software using existing patterns.

Module Outline

 Review of software development processes


 Object Oriented modelling Using UML
 Introduction to Design Patterns
 Examples of design patterns:Singleton, Façade, Factory, Adapter, Bridge, Composite, Decorator,
Flyweight, Proxy, Builder, Prototype, Interpreter, Template, Chain of responsibility, Command, Iterator,
Mediator, Memento, Observer, State, Strategy, Visitor

MSE v 1.1/July 2008 Page 8 of 14


SEM5201: SOFTWARE QUALITY ASSURANCE

Aims

The module approaches the issue of quality assurance in the software development process at an advanced level.
This includes a rigorous account of the strategies for software testing and quality control. The module is focussed
around the notion of software process improvement.

Learning Outcomes

On successful completion of this module, students should be able to:


 Understand how quality issues affect each aspect of the software development life-cycle
 Know appropriate strategies for software testing and validation and how to implement them
 Implement a software quality assurance plan
 Relate quality to the current standards for process improvement.

Module Outline

 Quality : Differentiating between Quality Assurance, Quality Control and Testing, importance of quality, the
cost of quality, two views of quality, Quality attributes, Quality audits
 Quality and the Organisation : Management commitment to quality, Organisational structure, Placement
within the organization, Quality coordination, Setting quality standards
 Software Quality Assurance and CMMI: Process and product quality assurance, quality assurance goals,
Processes for each goal
 Risk identification and management
 Software Quality Management and ISO 9001: Management responsibility, Internal quality audits, Control
quality records, Document and data control, Training, Corrective and Preventive actions
 Quality Tools: Tools for ideas and information, numbers, presentation
 Software Quality Assurance Plan (SQAP): Relationship of SQAP to SQA program, SQAP components,
Purpose, Reference documents, Standards, practices, and conventions, Reviews and audits, Problem
reporting,Tools, techniques, and methodologies, Code control, Media control, Supplier control, Records
collection, maintenance, and retention
 Implementation of SQAP: Management acceptance, Acceptance by development personnel, Planning for
SQAP implementation, Resources, Scheduling, Risk Assessment, Training, Distribution of SQAP,
Execution of SQAP
 Introduction to Cyberlaws

MSE v 1.1/July 2008 Page 9 of 14


WAT5101: SERVICE ORIENTED ARCHITECTURE

Aims

This module aims is to examine the service oriented architecture and the different types of services that can be
implemented.

Learning Outcomes

On successful completion of this module, students should be able to:


 Understand the concepts of service oriented architecture
 Design and implement webservices and other service oriented applications

Module Outline

 Service-Oriented Architecture in the enterprise: response to change and transformation, The evolution of
the service idea, Managing upside and downside risk
 SOA and Business Process Management: Service-oriented government and business, Line-of-business
services and service domains, Service-level abstractions, Reusable business vs. technical services
 Fundamentals of service-oriented architecture: Architecture focus, the concepts of the service contract,
Enabling infrastructure
 The Enterprise Architecture perspectives, The Zachman Framework and SOA, Process and use-case
views, Data and information views, Logical view, Contract view, Implementation view
 Service-oriented prerequisites: Security, Service management, Process and composition, Metadata
management
 Key components for implementing SOA: SOA Meta model – Understanding the role of the service contract,
Policy-based services, Service-oriented processes, Atomic services and composite services
 Building a service and managing the business side: Granularity, Context/domain dependency, How to
identify services (processes), How to differentiate services
 Enabling Technologies and Standards: What are the current platform vendors offering, How are emerging
startups filling the gap? The standards state-of-the-art
 Developing the SOA Roadmap: What are the right starting points? Prioritizing service development and
infrastructure expenditures, Making the right organizational changes, Governance and using SOA to
increase visibility

MSE v 1.1/July 2008 Page 10 of 14


DBT5101: SYSTEM INTEGRATION

Aims

This module enables students to have knowledge and skills of handling very large volumes of data in a variety of
database applications.

Learning Outcomes

On completion of this module students will be able to:


 Provide a critical understanding of principal concepts and techniques for handling very large volumes of
data.
 Evaluate and apply different techniques used to manipulate, search and analyse very large data sets,
especially business oriented data sets.
 Discuss applications of very large databases related techniques, such as Distributed Database
Management Systems, Data Warehousing and Data Mining etc.
 Explain the effect of different query evaluation strategies upon the performance of a very large database.
 Discuss the role of the World Wide Web as a very large database and use of appropriate techniques to
developing web-database applications using Object Oriented Database System.

Module Outline

 Sources: Data Warehouses, Temporal, Scientific, The Web


 Sources and Storage: Distributed Databases, Data Warehouses, The Web.
 Manipulation: Data Mining, Online Analytical Processing (OLAP), Visualisation for Exploration.
 Web Browsers and Search Engines, Optimisation, Recover and Backup, Database Connectivity
technologies.

ISM5102: ENTREPRENEURSHIP

Aims

This module provides an overview of developing, planning, financing and launching new businesses in software
development. Consideration is given of the opportunities and issues specific to software development in small
business ventures during pre-startup, launch and initial growth stages.

Learning Outcomes

 Upon the successful completion of this module, students should be able to:
 Grasp and assess new business ideas.
 Understand the business structures, stages of growth and profit
 Develop a business plan for a new business.
 Identify key launch process and timeline points and identify market niches.

Module Outline

 The small business decision, Developing and defining the business concept, Identify Business
opportunities
 Methods of starting a business, Forms of business organisation, Financing, Start up strategy, Mission
Statements
 Product life cycle, Stages of business growth
 Development of a business plan, Case studies, Risk Management: Finance and Controls, Business Tax
 Measuring success, Future Trends and Issues

MSE v 1.1/July 2008 Page 11 of 14


SDT5203: AGILE PROGRAMMING TECHNIQUES

Aims

This module aims at providing the students with skills and knowledge required to build and deliver high quality
software in a rapid and regular way.

Learning Outcomes

On successful completion of this module, students should be able to:


 Understand the concepts and techniques
 Design and implement software using agile programming technique.

Module Outline

 Test Driven Development: Test Driven Development Rules, The TDD Development Cycle, TDD as a
Design Technique, TDD as Documentation, TDD Benefits, Unit Testing Patterns / Anti Patterns, Unit
Testing Legacy code, Managing Suites of Unit Tests, Refactoring Unit Test Code, Unit Testing Legacy
Code, TDD of GUI applications, TDD multi-threaded applications, Dealing with legacy applications
 Refactoring: Unit Testing Support, Introducing the Refactoring catalogueRefactoring Legacy Code, Idioms,
Refactorings and Design Patterns, Metrics
 Automated Acceptance Testing: Automating acceptance testing as executable requirements, Creating an
automated acceptance testing environment
 Placing it in Context: eXtreme Programming, XP Values, Principles and Practices, TDD and Refactoring
within the context of eXtreme Programming.

MSE v 1.1/July 2008 Page 12 of 14


ISM5101: INFORMATION TECHNOLOGY ECONOMICS

Aims

The module aims at assisting the students to understand the application of economic analysis to the market of
information technology infrastructure.

Learning Outcomes

On successful completion of this module, students should be able to:


 Identify, quantify and evaluate the costs and benefits of existing and proposed IT systems.
 Critically assess methods for evaluating the return on investments in IT.
 Employ appropriate economic qualitative and quantitative measures of the impact of IT in various business
context.

Module Outline

 Economic charateristics of Digital Products and Services: Distinctive economic and organisational
characteristics of Digital Products and Services, What is information product?, What is virtual product?
What is different about services? What are different digital product types and categories?
 Cost Structure of Virtual/Information/IT Products and Services: What should we know about costs from
Microeconomics and what are the specifics of the cost structure of IT Products? Costs of production, Fixed
costs, Variable costs, Costs of distribution - transaction costs, Costs of consumption - Search costs,
Switching costs.
 Market Structures, Competition and Regulatory Policy in the IT: From cost structure and consumer demand
to market structure, Consumer demand and differentiated quality, Cost structure and differentiated quality,
Imperfect competition in virtual product markets, Monopolistic competition and zero marginal costs
 Pricing of Digital Products and Services. Product Choices and Discriminatory Prices: Monopolistic pricing,
Price discrimination, Bundling, Versioning
 Management, Business strategies, Advertising, Feasibility and Efficiency of IT projects: Intersection with
the marketing discipline (advertising), Intersection with the accounting discipline (managerial and capital
accounting), Business planning, feasibility and efficiency analysis based on economic characteristics of IT
products, market structures and prevailing pricing mechanisms.
 Electronic Monetary Instruments and Electronic Payment Systems: Monetary Economics Perspective
 Economic Aspects of Copyright Protection: Information products are easy to reproduce – easy to copy
illegally! Banning/regulating vs proper marketing and managing

MSE v 1.1/July 2008 Page 13 of 14


ISM5104: GLOBAL IT MANAGEMENT

Aims

This module aims at sensitising and providing students with knowledge on global IT management.

Learning Outcomes

Students are expected to understand the processes involved in global IT management and design and implement a
proper framework.

Module Outline

 Global information technology environment


 Framework for building national information structure
 International business opportunities on the information superhighway
 Problem of data quality in a developing economy
 How can information technology enable developing countries to integrate into the global economy?
 Information technology planning and architectures for networked global organizations
 Information systems resource structure and management in multinational organizations
 Issues in Global Outsourcing
 Global software outsourcing
 Global management support systems
 Strategic application of information technology in global business
 Developing and implementing global information systems
 Introduction to Global Cyberlaws

MSE v 1.1/July 2008 Page 14 of 14

Anda mungkin juga menyukai