|
Competence in Software Technology (CST) Examination : Syllabus
- Level G
General Aptitude (GA)
Same as for E Level
Computer Organization and Operating Systems (CO)
Same as that for D-Level
Data Structures and Algorithms (DS)
Same as that for D-Level
Web Technology
General
HTTP: Overview - HTTP Basics, Client request, Server response; HTTP
Headers; Session Management - Persistent connections, Cookies.
General concepts on web server: Apache Configuration & Administration;
Virtual hosting
General concepts of Caching Proxy Server
Web Security
SSL; Digital Signatures; Authentication.
Client side technologies
HTML: Structure of HTML Document - Meta tags, Links, Text, Lists, Tables,
Inclusions (Objects, Images, and Multimedia contents); Presentation
of HTML Document - Style Sheets, Alignment, Fonts, Frames; Interactive
HTML Document - Forms, Scripts.
XML: Overview; Schemas-DTD (Document Type Definitions), XML Data, Namespaces;
Document Object Model, XSLT.
Java Applets: Lifecycle of Applets; Applet context; Limitations of Applets
Client Side JavaScript: Object Reference - Objects, Methods and Properties,
Event Handlers; Language constructs - Statements and Operators.
Server side technologies
CGI, Java Servlets: HTTP Servlet Basics, Servlet Life Cycle, Session
Tracking, Interservlet Communication, Overview of ASP & JSP, SSI:
SSI Directives; SSI Environment Variables; SSI Formats.
Computer Networks
TCP/IP: reference model and concepts of networking protocols.
Physical layer: Theoretical concepts in data communication
(Fourier Analysis, bandwidth, baud rate, bit rate, error rate, transmission
delays), Transmission Media ,Communication Satellites, PSTN, Trunks
and Multiplexing, Switching, Modems, xDSL, Mobile Telephone System,
Internet Over Cable.
Data Link Layer: Design issues,Error Detection and Correction,
Elementary Data Link Protocols, Sliding Window Protocols, Example Data
Link Protocols
Medium Access Control Sublayer: The channel allocation problem,
multiple access protocols, Ethernet, Wireless LANs, Broadband Wireless,
Data Link Layer switching
Network layer: Design issues, routing algorithms, congestion
control algorithms, Quality of Service, Internetworking, Network Layer
in the Internet.
Transport layer: Theoretical Aspects of Transport Protocols,
UDP, TCP
Common networking applications: E-mail, The World Wide Web,
and DNS
Network Security: Symmetric-Key Algorithms, Public-Key Algorithms,
Digital Signatures, Digital Certificates, IPsec, Firewalls, Virtual
Private Networks, Wireless Security, Authentication Protocols.
Database Management
Database Systems - Basic Concepts: data, database, database
systems, database management system; data models, data abstraction,
data independence, three level architecture, data definition language,
data manipulation language, overall system architecture of DBMS, data
dictionary, schema processor, query processor, three classical data
models (hierarchical, network and relational)
Relational Data Model: relational structure - tables (relations),
rows (tuples), domains, attributes, keys, candidate keys, primary key,
entity integrity constraints, referential integrity constraints; Query
languages - relational algebra, relational calculus, SQL
Database Design: relational database design, normalization based
on functional dependencies and multi-valued dependencies, Normal forms
1, 2, 3, BCNF, 4 and 5, conceptual design, entity-relationship model,
translation of E-R schemes to relational schemes (logical design), physical
design
DBMS storage structures and access methods: hash, ISAM, B-Tree
and B-Tree variants, dynamic hashing, primary index, secondary index.
Query Processing: query expression trees, equivalence, query
expression, tree optimization, cost estimation, implementation of relational
algebra operations.
Transaction Processing: recovery techniques, WAL based recovery,
check pointing, concurrency control, serializability, lock-based concurrency
control, strict two-phase locking, multiple granularity locking, time-stamp
based concurrency control.
Other Issues: security & integrity, authorization and views,
security specification in SQL, types of integrity constraints, triggers
in SQL, declarative constraints in SQL.
Software Engineering
Software Engineering Principles: how is software engineering
an `engineering' discipline?, information system characteristics, software
development process models, life cycle concepts, software phases and
deliverables, software development strategies.
Technical Development: structured systems analysis and design,
risk analysis and management, requirements collection and specification,
dataflow and logical data modelling, cost benefit analysis, feasibility
study, architectural and detailed design, process, data, network, control
and user interface designs, physical data design, dynamic modelling
for real-time systems.
Software Project Management: principles of software project
management, organisational and team structure, project planning, project
initiation and project termination; technical, quality, and management
plans, project controls, cost estimation methods - function points and
COCOMO, tools.
Software Quality Management: quality control, quality assurance,
quality standards, software metrics, verification and validation, testing,
quality plans, tools.
Configuration Management
Software Development Methods & CASE: formal, semi-formal
and informal methods, data, function, and event-based modelling, some
of the popular methodologies such as Yourdon's SAD, SSADM etc, CASE
tools, CST 2007 (PDF) 43.CASE standards.
Implementation: in 3GL environments, in 4GL environments, in
client-server environments, coding styles, Documentation, Software Maintenance.
Java Technologies
Language Fundamentals: Data representation, Operators and Expressions,
Control Flow and Looping Constructs, Classes and Objects, Interfaces,
Inheritance, Exception handling, Packages.
Core API Packages (As specified in Java 2 Standard Edition v 1.4.x):
lang, util, io, math, awt, applet.
Concepts: Swings (JFC), Thread Management, Serialization, Remote
Method Invocation, Java Beans, Security Model, Collections, JDBC, Enterprise
Java Beans 2.1
Object-Oriented Programming and C++
OO Concepts: Objects, classes, messages, inheritance, dynamic
binding, polymorphism, OO paradigm, reusability and extensibility, abstract
data types, encapsulation, information hiding, genericity.
Data Abstraction in C++: Classes, ADT implementation, interface
and implementation, members, methods, static member and member functions,
initialization, constructors and destructors, operator and function
overloading, parameter passing by value and by reference, function signatures
and name mangling, dynamic memory allocation and new and delete operators,
assignment operator overloading, shallow and deep copies, copy constructor,
friend functions and classes, template functions and classes. Container
classes, iterators, iostream class library, error handling and exceptions
in C++.
Inheritance and C++: Base and derived classes, public, private
and protected derivations, control of access and visibility using public/private/protected
keywords, type compatibility among super- and sub-types, value/pointer/reference
assignment semantics, virtual functions, multiple inheritance and repeated
inheritance, virtual derived classes. Object oriented design and programming
using classes and inheritance.
|