0% found this document useful (0 votes)
79 views10 pages

Subject For Software Engineering Course Malaysia

The document provides course synopses for core courses in computer science. It describes 15 courses that cover topics like discrete structures, computational mathematics, programming techniques I and II using C++ and Java, information systems, digital logic, network communications, web programming, databases, system analysis and design, probability and statistical analysis, data structures and algorithms, software engineering, object oriented programming using Java, and computer organization and architecture. The synopses emphasize that the courses aim to equip students with theoretical knowledge and practical skills relevant to computer science.

Uploaded by

afiqzaqwan001
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
79 views10 pages

Subject For Software Engineering Course Malaysia

The document provides course synopses for core courses in computer science. It describes 15 courses that cover topics like discrete structures, computational mathematics, programming techniques I and II using C++ and Java, information systems, digital logic, network communications, web programming, databases, system analysis and design, probability and statistical analysis, data structures and algorithms, software engineering, object oriented programming using Java, and computer organization and architecture. The synopses emphasize that the courses aim to equip students with theoretical knowledge and practical skills relevant to computer science.

Uploaded by

afiqzaqwan001
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

COURSE SYNOPSIS

CORE COURSES

SECI1013 Discrete Structure


This course introduces students to the principles and applications of discrete structure
in the field of computer science. The topics that are covered in this course are set
theory, proof techniques, relations, functions, recurrence relations, counting methods,
graph theory, trees and finite automata. At the end of the course, the students should
be able to use set theory, relations and functions to solve computer science problems,
analyse and solve problems using recurrence relations and counting methods, apply
graph theory and trees in real world problems and use deterministic finite automata
finite state machines to model electronic devices and problems.

SECI1113 Computational Mathematics


This course is a combination of linear algebra and numerical methods as preparation
for computer science student to apply mathematics knowledge in core knowledge of
computer science. The first part of this course is an introduction to linear algebra. The
topics that are covered in linear algebra are linear equations, linear combinations,
linear independence, linear transformation, and vector spaces. The second part of this
course covers numerical methods that can be used to solve non-linear equation, linear
systems, eigenvalue problems, interpolation, differentiation and integration. At the
end of the course, students should be able to apply mathematics knowledge to solve
mathematical problems. Implementation of engineering tools such as MATLAB, would
enhance student to use simple programming technique for solving mathematical
problems.

SECJ1013 Programming Technique I


As a fundamental subject, this course equips the students with theory and practice on
problem solving techniques by using the structured approach. Students are required
to develop programs using C++ programming language, in order to solve simple to
moderate problems. The course covers the following: pre-processor directives,
constants and variables, data types, input and output statements, control structures:
sequential, selection and loop, built-in and user-defined functions, single and two-
dimensional arrays, file operations, pointers, and structured data types.

SECJ1023 Programming Technique II


Pre-requisite: SECJ1013 Programming Technique I
This course presents the concept of object orientation and object-oriented
programming (OOP) techniques using the C++ programming language. It equips the
students with the theory and practice on problem solving techniques using the object-
oriented approach. It emphasizes on the implementation of the OOP concepts
including encapsulations, associations and inheritance. At the end of this course,
students should be able to apply the OOP techniques to solve problems.
SECP1513 Technology & Information System
As a primer subject, this course will introduce students to information systems and
technology (IS/IT), as well as its uses in daily life both at home and at work. Various
aspects of IS/IT encompassing hardware, software, network, communications,
internet, multimedia, graphics and systems applications will be introduced. Students
will be equipped with basic skills in handling PC installation and productivity tools via
practical
work in the labs, which shall comprise a major part of the study. At the end of the
course, student should be able to distinguish basic IS/IT component and applications.

SECR1013 Digital Logic


Digital electronics is the foundation of all microprocessor-based systems found in
computers, robots, automobiles, and industrial control systems. This course
introduces the students to digital electronics and provides a broad overview of many
important concepts, components, and tools. Students will get up-to-date coverage of
digital fundamentals-from basic concepts to programmable logic devices. Laboratory
experiments provide hands-on experience with the simulator software, actual devices
and circuits studied in the classroom.

SECR1213 Network Communications


This course will discuss the basic topics of computer network and data
communications. Based on TCP/IP Internet protocol stack, the course will apply top
down approach. Starts with the important and usage of computer network in
commonly applications, the approach will go further detail in the technical aspect in
data communication. At the end of this course, students will have an understanding
and appreciation of how the network works.

SECV1223 Web Programming


This course is designed to introduce students the fundamental of knowledge,
technologies and components for web application developments. The basic topics
includes the standard HTML for content creation, CSS for content presentation,
JavaScript for client-side logics, PHP for server-side logics and MySQL for database
processing. At the end of the course, the students should be able to apply the web
base technologies and then implement it all in the creating functional data-centric
online system project.

SECD2523 Database
This course introduces students to the concept of database system and how it is used
in daily human life and profession. The focus of the course is to equip students with
the knowledge and skills on important steps and techniques used in developing a
database, especially in the conceptual and logical database design phase. Among
topics covered are database environment, database design, entity relationship
diagram, normalization, and structured query language (SQL). Students will be taught
to use a database management system (DBMS). Students are required to design and
develop the database component of an information system using the learned
techniques, DBMS and a development tool. At the end of the course, students should
be able to apply the knowledge of designing and
developing a good database system.
SECD2613 System Analysis and Design
The main focus of this course is to provide a practical approach of systems analysis
and designing skills for the students using structured methodology. Hence the course
enables students to study information system requirements for any system application
within an organizational context. The contents are sequentially organized directly from
planning, analysis, designing and implementation phases. From the resulting output
of the planning and analysis phase shall enable students to form input, output and
interface design. Hence a prototype design can be demonstrated.

SECl2143 Probability & Statistical Data Analysis


This course is designed to introduce some statistical techniques as tools to analyse
the data. In the beginning the students will be exposed with various forms of data.
The data represented by the different types of variables are derived from different
sources; daily and industrial activities. The analysis begins with the data
representation visually. The course will also explore some methods of parameter
estimation from different distributions. Further data analysis is conducted by
introducing the hypothesis testing. Some models are employed to fit groups of data.
At the end of course the students should be able to apply some statistical models in
analysing data using available software.

SECJ2013 Data Structure and Algorithm


Pre-requisite: SECJ1023 Programming Technique II
This course emphasis on data structure concepts theoretically and practically with
detail algorithms for each of data structure. Students will learn abstract data type
concepts using class and apply the concept in the implementation of data structures.
Apart from it, student will learn recursive concept as a programming style and
algorithm efficiency analysis with Big O notation. Various sorting and searching
techniques will be discussed as data structure operations. Analysis of each algorithm
will also be explained. Further, students will be exposed to linear data structures such
as linked lists, stack and queue. Non-linear data structures such as tree and binary
search tree will be discussed. Along the course, studentsshould be able to implement
and apply the theory and concepts of data structure in the assignments and mini
project which are conducted in group.

SECJ2203 Software Engineering


This course is designed to give students an introduction to an engineering approach
in the development of high-quality software systems. It will discuss the important
software engineering concepts in the various types of the common software process
models. The students will also learn the concepts and techniques used in each
software development phase including requirements engineering, software design and
software testing. This course will also expose the students to utilizing object-oriented
method (e.g. UML) and tools in analysing and designing the software. At the end of
this course, students are expected to be able to appreciate most of the common
software engineering concepts and techniques as well as producing various software
artefacts, documentations, and deliverables.
SECJ2154 Object Oriented Programming
Pre-requisite: SECJ1023 Programming Technique II
This course presents the concepts of object orientation and object-oriented
programming techniques using Java programming language. It provides students with
a thorough look at the basic constructs of the Java programming language such as its
basic data types and operations. It also emphasizes on the use of standard Java APIs
that allow students to develop text-based and GUI applications. It will also provide
the programming techniques on exception handling and input/output files. At the end
of this course, students should be able to use the basic constructs in object-oriented
programming and utilize the selected Java APIs.

SECR2033 Computer Organisation and Architecture


Pre-requisite: SECR1013 Digital Logic
This course was designed to give the understanding of basic concept of computer
organization and architecture. Topics covered in this subject will be on computer
performance, types of data and the representative, arithmetic manipulation,
instruction execution, micro programmable control memory, pipelining, memory,
input/output and instruction format. At the end of this course, the student should be
able to understand the concept of overall computer component and realize the current
technology in computer hardware.

SECR2043 Operating Systems


This course covers introduction to operating systems, which serve as an interface
between computer hardware and the user. The operating system is responsible for
the management and coordination of processes, sharing of limited resources of the
computer. Students will be exposed to the techniques and algorithms that may be
applied in designing an operating
system. Topics covered include process management, concurrency and
synchronization, deadlock, memory management, file management, secondary
storage management and I/O management. At the end of the course, the student
shall have a clear understanding on the general concepts that underlie of an operating
system.

SECV2113 Human Computer Interaction


This course will introduce students to human-computer interaction theories and design
processes. The emphasis will be on applied user experience (UX) design. The course
will present an iterative evaluation centred UX lifecycle and will introduce a broader
notion of user experience, including usability, usefulness, and emotional impact. The
lifecycle should be viewed as template intended to be instantiated in many different
ways to match the constraints of a particular development project. The UX lifecycle
activities we will cover include contextual inquiry and analysis, requirements
extraction, design-informing models, design thinking, ideation, sketching, conceptual
design, and formative evaluation.

SECD3761 Technopreneurship Seminar


This 1-credit course will provide module and training for students on how to generate
digital income through crowdsourcing platforms and methods. Crowdsourcing is a
method to generate online income which the work is offered and implemented digitally
in global platforms.
SECJ3203 Theory of Computer Science
Pre-requisite: SECI1013 Discrete Structure
The goal of this course is to provide students with an understanding of basic concepts
in the theory of computation. This course introduces students to formal languages and
automata theory. It will emphasize on languages, grammars and abstract machines
i.e. Regular Language, Context Free Language, Regular Grammar, Context Free
Grammar, Finite Automata, Push Down Automata and Turing Machine. The course will
also provide practice on the acceptability of input string by these machines. At the
end of the course, students should be able to apply the theory in constructing these
abstract machines and testing them with the right input strings.

SECR3032 Computer Networks & Security Project I


Pre-requisite: SECR3104 Application Development
This is the initial part of a 2-part Final Year Project that every student must fulfil
successfully. Students are introduced to the methodologies of research and application
development through a series of lectures. Students are guided through a step-by-step
practice to complete the initial stages of proposal, planning and design of a project.
Students must also meet regularly with supervisor(s) who will monitor their
continuous progress. Students are required to prepare a report and present their initial
work.

SECR4118 Industrial Training (HW)


Pre-requisite: 92 credits AND CGPA >= 2.0
Industrial Training refers to the placement of a student at an organization for a
minimum of 20 weeks to elevate students’ knowledge and skills in a specific database
profession and at the same time produce graduates who are credible, creative and
proficient. This course aims to provide a platform for the students apply their
knowledge learned in the university and boost their skills which needed by a
profession. It is also intended for the students to gain exposure in every aspect of real
career life. The students will be evaluated based on two components; 1) student
performance evaluation by organisation supervisor and 2) student performance
evaluation by faculty supervisor. The organization supervisor is expected to assess
the student performance based on work performance and student’s personality. The
assessment by faculty supervisor more focusing on students’ generic skills.

SECR4114 Industrial Training Report


Pre-requisite: 92 credits AND CGPA >= 2.0
Industrial Training Report refers to the placement of a student at an organization for
a minimum of 20 weeks to experience and apply their theoretical knowledge in the
industrial training. The students will be evaluated based on four components; 1)
technical report, 2) oral presentation, 3) logbook and 4) ethics. The aim of the
technical report is to educate the students in producing related technical report and
able to explain a specific detail on the tasks that have been done during the training.
Students need to follow specified format in writing the technical report and submit it
within the predetermined date. The students are required to present their training
achievement to Industrial Training supervisors (organization and supervisor).
Students need to fill in the online logbook daily for the purpose of close monitoring
between the students and supervisors. Student also needs to practice the good ethical
values and work conduct throughout the training. The passing mark is 60%.
SECR4134 Computer Networks & Security Project II
Pre-requisite: SECR3032 Computer Networks & Security Project I
This is the second part of a 2-part Final Year Project that every student must fulfil
successfully. In this installation, students are required to execute the next phases of
their development plan from Part1. Students are now required to code and integrate
the different modules that make up the proposed project. Students will test the
developed modules and the final fully integrated project following software
development and research testing practices. Students must meet regularly with
supervisor(s) who will monitor their continuous progress. Students are required to
prepare a report and present their final work.

COMPULSORY PROGRAMME COURSES

SECR2242 Computer Networks & SECR2941 Computer Networks Lab


Pre-requisite: SECR1213 Network Communications
This course will discuss the routing and switching concepts in computer networking
specifically in local area network (LAN). The course starts with the architecture,
components and operation of routers and switches and furthermore discusses the
operation of Virtual LAN (VLAN), Access control list (ACL) and Network Address
Translation (NAT).

SECR3104 Applications Development


Pre-requisite: SECD2523 Database, SECV1213 Web Programming,
SECJ2203 Software Engineering, SECR3413 Computer
Security
Application Development is a comprehensive service-learning course which requires
student to solve a real community problem by developing an application. Students will
learn how to practice design thinking, adopting Agile development methodology. This
involves an iterative process starting from community engagement, requirement
elicitation and analysis, design solution, application construction and iterative
verification process. Students are required to do reflection on the outcome of the
project. In this course students should be able to develop their soft skills such as
leadership, team collaboration, documentation process and communication skill.

SECJ3553 Artificial Intelligence


Pre-requisite: SECJ2013 Data Structure and Algorithm
This course offers students a new perspective on the study of Artificial Intelligence
(AI) concepts. The essential topics and theory of AI are presented, but it also includes
practical information on data input and reduction as well as data output (i.e. algorithm
usage). In particular, this course emphasizes on theoretical and practical aspects of
various search algorithms, knowledge representations, and machine learning
methods. The course features practical implementations through assignments
undertaken both individually and in groups
SECR3242 Inter-Network Technology & SECR3941 Inter-Network
Technology Lab
Pre-requisite: SECR2242 Computer Networks & SECR2941 Computer
Networks Lab
This course will discuss related to scaling and connecting networks in a wide area
network (WAN). The course starts with enhancing LAN and discusses two most popular
routing protocols i.e. EIGRP and OSPF. Furthermore, the course will cover on WAN
interconnection, security issues and Quality of Service). At the end of this course,
students will be able to design and configure enhanced VLAN, WAN connection and
network troubleshooting

SECR3413 Computer Security


Pre-requisite: SECR2043 Operating Systems
This course helps to equip students with basic principles in computer security including
its issues and requirements. It covers the topics of the threats to computer as well
as other general security areas such as program and network, evaluating the relative
risks of these threats and developing cost-effective and user-friendly
countermeasures. At the end of this course, the student should gain some knowledge
and experience with respect to the risks of secure computing.

SECR3443 Cryptography
Pre-requisite: SECR3413 Computer Security
This course will introduce the concepts of fundamental cryptography and its
applications. The topics that will be covered are evolution of cryptography, number
theory, information theory, symmetric and asymmetric cryptography and message
authentication. Several cryptographic structures and the characteristics of the
algorithms that provide the strength to the algorithms will also be discussed. At the
end of the course, the student should be able to apply the knowledge in developing
application with security features.
PROGRAMME ELECTIVE COURSES

SECR3223 High Performance & Parallel Programming


Pre-requisite: SECJ1023 Programming Technique II
High performance computing/parallel computing is widely used, nowadays, to execute
complex systems and computations of complex problems that need to be solved with
minimal time as possible. This course introduces the students to architectures of
parallel computers, parallel algorithm design and parallel application programming
using MPI and OpenMP packages in C/C++ programming language. Student will
experience hands-on programming practices on cluster computer.

SECR3253 Network Programming


Pre-requisite: SECR1213 Network Communications
This course covers various techniques and technologies to develop network
applications. Topics cover from networking fundamentals, to remote procedure call,
including TCP and UDP sockets, multicasting, multimedia network application, and
peer-to-peer computing.

SECR3263 Wireless Sensor Network


Pre-requisite: SECR1213 Network Communications
This course will discuss on the topics of Wireless Sensor Networks (WSNs) technology,
which collect information and pass the information via wireless networks to achieve a
high level of desired monitoring and control in coordinated manners. In this course,
the student will be expose to various protocols proposed for WSNs based on top-down
approach at each layer of OSI model. Furthermore, the analyses of advantages and
disadvantages of those protocols and their applicability and performance in different
application will be carried out. In this way the students will be exposed to the creation
of technology as the evolution of different technologies before. At the end of this
course the student will have an understanding in the area of Wireless Sensor
Networks.

SECR4283 Network Analysis & Design Simulation


Pre-requisite: SECR2242 Computer Networks
This course presents the main ideas on how to study a LAN performance, to design a
new computer network using latest technologies with basic security features, and how
to forecast computer network performance using simulation technique with NS3
simulator.

SECR4433 Penetration Testing


Pre-requisite: SECR2043 Operating System & SECR3413 Computer
Security
This course will discuss issues pertaining to penetration testing, finding vulnerabilities
in various computer systems and exploiting them in an ethical manner. Emphasis is
given on the fundamental theory and as well as hands on practice. Topics covered
include information reconnaissance, web application pen testing, wireless pen testing,
network pen testing, and mobile application pen testing.

SECR4453 Network Security


Pre-requisite: SECR2941 Computer Networks Lab & SECR3413 Computer
Security
This course educates students about the overall security process based on a security
policy design, implementation and management. Emphasis is placed on security
technologies, products and solutions; and on firewall and secure router design,
installation, configuration, and maintenance. The course covers authentication,
authorization, and accounting (AAA) implementation using routers and firewalls and
security the network at both Layer 2 and 3 of the OSI model, intrusion prevention
system (IPS) and virtual private network (VPN) implementations using routers and
firewalls. Finally, managing a secure network is also discussed during the lecture.

SECR4473 Security Management


Pre-requisite: SECR3413 Computer Security
The course is aimed at imparting knowledge and skill sets required to assume the
overall responsibilities of administration and management of security of an enterprise
information system. This course covers issues related to administration and
management of security of enterprise information systems. Topics include auditing
and data management, risk management, contingency planning, incident handling
and responses. The course will study in detail principles and tools related to these
topics. The course will also cover security standards, evaluation and certification
process; security planning, ethical and legal issues in information and privacy.

SECR4483 Secure Programming


Pre-requisite: SECJ1023 Programming Technique II, SECR2043 Operating
System SECR3413 Computer Security
This course covers various techniques and technologies to develop secure applications
using Java Programming Language. Topics cover from Basic Security Concepts to
Authentication and Authorization, including Cryptography Fundamental, Keys &
Certificates, Key Management, Message Digests, Digital Signatures, Cipher‐based
Encryption and SSL & HTTPS. At the end of this course student should be able to
design and develop secure application based on current security technologies.

SECR4493 Computer Forensic


Pre-requisite: SECR3413 Computer Security
This course educates students on the overall computer forensic principles and
practices. Emphasis is given on the fundamental knowledge of digital forensics
investigations, such as types of crimes and evidences, basic computer investigation,
evidence acquisition and legal and ethical issues. Hands on practice on selected tools
are also added to give a more holistic view of an investigation process. Real case
examples are studied and discussed to enhance critical and investigative thinking.

SECR4973 Special Topics on Network & Security


Pre-requisite: Depends on the topic
This course is aimed to expose students to specific topics in Computer networks and
Security. Topics such as optical networks, wireless sensor networks and cloud
computing will be discussed. Students will learn the concepts, application domain,
trends and security challenges of these topics. Students will be given self-reading
assignments to further enhance their understanding of the course. Student will learn
how to write.

You might also like