Académique Documents
Professionnel Documents
Culture Documents
Page 1 of 46
FPGDST Course – Handbook 2010
Page 2 of 46
FPGDST Course – Handbook 2010
It also contains general information about the course (Section-2) and an overview of
each module of the course (Section-4).
Module handbooks may be distributed at the start of each module of the course, and
will contain the detailed lecture schedule and the presentation slides. If there is a
change in any of the information given in this handbook, it will be intimated to
students through the module handbooks and respective course portal.
Intended Audience
Past, current and prospective students of the courses
Course Faculty and Course Administration
Prospective employers
Visitors interested in knowing about this course
Module Handbook
Additional information, specific to each module, such as detailed schedule, syllabus,
evaluation scheme, passing criteria, slides and updates, if any, to the information
provided here, shall be given in the module handbook.
Useful URLs
Description URL
C-DAC, Mumbai Home page http://www.cdacmumbai.in/
Education portal http://education.cdacmumbai.in
CST portal http://cst.cdacmumbai.in
Page 3 of 46
FPGDST Course – Handbook 2010
Page 4 of 46
FPGDST Course – Handbook 2010
CONTENTS
1. C-DAC, Mumbai & Electronics City, Bengaluru ..................................................................................7
2. About the Post-Graduate Diploma Course ............................................................................................8
2.1 Overview .......................................................................................................................... 8
2.2 Auditing Modules ............................................................................................................. 8
2.3 General Information for the course .................................................................................. 8
2.4 Attendance ....................................................................................................................... 9
2.5 Assessment...................................................................................................................... 9
2.6 Norms for completion of a module and course .............................................................. 11
2.7 Results ........................................................................................................................... 11
2.8 Re-evaluation ................................................................................................................. 11
2.9 Certificates and Transcripts ........................................................................................... 12
2.10 Identity Cards ............................................................................................................... 13
2.11 Student Id and Student Account .................................................................................. 13
2.12 Registration .................................................................................................................. 13
2.13 Repeaters..................................................................................................................... 14
2.14 Fees ............................................................................................................................. 14
2.15 Transfer........................................................................................................................ 15
2.16 Refund of Fees ............................................................................................................ 15
2.17 Course Material............................................................................................................ 15
2.18 Online Resources ........................................................................................................ 15
2.19 Expectations from Students ......................................................................................... 16
2.20 Code of Honour............................................................................................................ 16
2.21 Comments and Feedback............................................................................................ 17
3. Full-time Post-Graduate Diploma in advanced Software Technology (FPGDST) ...........................18
3.1 Pre-requisites ................................................................................................................. 18
3.2 Open Admissions Eligibility Criteria: .............................................................................. 18
3.3 General Information ....................................................................................................... 18
3.4 Norms for Completion of a module ................................................................................ 19
3.5 Norms for Completion of the course .............................................................................. 20
3.6 Schedules ...................................................................................................................... 21
3.7 Placements .................................................................................................................... 22
3.8 Repeaters....................................................................................................................... 22
4. Modules ...................................................................................................................................................23
4.1 Programming Fundamentals (PRGF) ............................................................................ 24
4.2 Mathematical Foundations of Computer Science (MFCS) ............................................ 25
4.3 Systems and Networks (SNET) ..................................................................................... 26
4.4 Soft Skills (SSKL)........................................................................................................... 27
4.5 Application Development using DBMS and WEB (ADWE) ........................................... 28
4.6 Object-Oriented Analysis and Design & Software Engineering with Project (OOSP) ... 30
4.7 Machine Graded Programming Test (MGPT)................................................................ 33
Appendix-A: About MGPT................................................................................................... 34
Appendix-B: About MGPA (Machine Graded Programming Assignment) and SAA (Self
Assessment Assignment) .................................................................................................... 39
Appendix-C: Fee Payment Schedule for FPGDST.............................................................. 40
Appendix-D: Payment schedule for FPGDST repeaters (2009 batch) ................................ 41
Appendix-E: Registration form for Re-Project...................................................................... 43
Appendix-F: C-DAC (M&B)’s Course Centres ..................................................................... 44
Appendix-G: Proforma for Declaration of Originality and Division of Work ......................... 45
Appendix-H: Transfer Request Form ................................................................................... 46
Page 5 of 46
FPGDST Course – Handbook 2010
Page 6 of 46
FPGDST Course – Handbook 2010
C-DAC, Mumbai & Electronics City, Bengaluru are involved in R&D activities in
the area of Software Technology and related disciplines with an objective to create
focus on Advanced Information Technologies, High Performance Computing, High
End Academics and Training relevant to R&D societies and Industry.
Career Opportunities
C-DAC (M&B)’s recruitment is done based on CST score (G, D and I levels) along
with other academic records. C-DAC (M&B) course students interested in
employment opportunities at C-DAC (M&B) should appear for the CST examination.
For details, refer to the CST brochure or visit http://cst.cdacmumbai.in.
Page 7 of 46
FPGDST Course – Handbook 2010
Our faculty keeps working towards maintaining the high quality standards set for the
courses. This course demands that the students prove their ability in writing real
programs and running them successfully on the computer. In other words, the course
goes beyond coverage of concepts - it demands demonstration of significant
professional skills.
2.1 Overview
We offer full-time diploma course – FPGDST. The FPGDST course is of One-year
duration. The course consists of a set of modules. The course is geared towards
providing fresh or experienced graduates an opportunity to pursue further education in
the field of software technology.
The FPGDST course requires completion of five compulsory core modules of varying
duration. Lectures are held for a minimum of 3 hours daily (Monday thru Friday). The
course is rigorous and expects a student to spend at least 25-30 hours on study per
week.
This course is currently being offered at C-DAC, Mumbai, (Kharghar) and C-DAC,
Bengaluru, (Electronics City).
Participants registering under this category will receive a participation certificate after
successfully completing the respective module. However, this will not earn them
any credit towards the diploma programmes.
In all other respects e.g. fees, course material, laboratory facilities and assessments,
such participants will be governed by the same norms as regular students.
2.4 Attendance
At least 70% attendance in the lecture sessions for each module is mandatory for
completion of the module. Students will be required to mark their attendance by
signing in the register provided for this purpose.
A student having shortfall in attendance may apply for a waiver with justification in
the prescribed form to the course committee. The course committee will scrutinize the
request and make a recommendation as it may deem fit.
Please note that requests for attendance waiver should be submitted in the prescribed
form to the course administration within 3 working days from the completion of the
module. Requests received after this period will not be entertained under any
circumstances.
2.5 Assessment
Assessments are held periodically, module-wise during the course. Evaluation is
based on performance in these assessments. Assessment details would be provided in
the individual module handbooks.
Each module has (in general) two components of assessment:
Theory
The theory component will consist of quizzes as described below.
Quizzes
Typically, each module will have a minimum of two quizzes: Mid-Module-Quiz
(MQ) and End-Module-Quiz (EQ). Additional quizzes may also be conducted and
these will be communicated to the students at the commencement of the module.
The quizzes are typically of one-hour duration and may be administered on paper or
on-line using “VEDA” testing system. Quizzes normally have a multiple-choice,
objective format.
MQ will test the syllabus covered from the start of the module until the quiz date,
while EQ will test what has been covered after MQ until the end of the module. EQ,
in some cases, may include the entire syllabus. If so, this will be explicitly
communicated to the students at the commencement of the module.
Additionally, every module has a Re-quiz (RQ) and an End-Course-Quiz (ECQ) that
tests the entire module syllabus and caters to those who were unable to clear or attend
the earlier quizzes, or, those who wish to improve their scores. The ECQ is a paid-
quiz and students will have to pay a prescribed fee to attempt these quizzes. These
ECQ are scheduled at the end of the course after completion of all modules.
Page 9 of 46
FPGDST Course – Handbook 2010
The weights carried by each of the quizzes for a module will be communicated to the
students at the commencement of the module.
The final quiz score will be compiled based on the performance in the various quizzes
and the weights associated with them.
The schedule of quizzes for various modules of FPGDST-2010 is available in section
3.6 of this handbook.
Note that MQ, EQ and any other intermediate quizzes must be taken in the same
batch.
Practical
The practical component of a module consists of a Project or hands-on assignments.
For some modules it comprises Classroom Assignments as well.
From the academic year 2010-2011, FPGDST course completion can lead to either a
diploma or a diploma with honors. The difference between a diploma and a diploma
with honors would be that the candidates who would fulfill the MGPT requirement
(as given in Appendix-A of this handbook) would be eligible for a diploma with
honors.
In the MGPT, students are given a problem statement, including the complete
input/output specification. They are required to understand the problem, devise a
suitable solution method, code it in the specified language and get it working on the
computer. The computer will do the evaluation automatically, by comparing the
outputs produced by the student's program against expected outputs, for pre-set
inputs.
The MGPT requirement for a given module must be cleared in same batch.
In order to clear the MGPT requirement and thus be eligible for diploma with
honors, a student must clear a minimum of 4 problems from the entire set of 16
problems available. The schedule for MGPTs is available in Section 3.6 of this
handbook.
Appendix-A provides more details of this test including the scoring procedures, the
programming environment called Parikshak, that is used to conduct the test and
provides guidelines on how to approach this test.
Page 10 of 46
FPGDST Course – Handbook 2010
This test is difficult and students are advised to prepare for it seriously from the very
beginning.
Projects
For FPGDST, the modules SNET, ADWE and OOSP include a project component.
Projects require students to form groups of 3-5 members, pick a topic in consultation
with the faculty members and carry out the implementation. Faculty from the
respective centres will guide the students.
Sample project topics for each module may be given in the module handbook along
with the evaluation criteria. Local faculties have to be consulted for approval of topics
outside the list specified in the module handbook.
Assignments
Assignments are given to ensure that students understand a concept and can apply it
correctly in practice. Details of the assignment, where applicable, will be given in the
module handbook.
2.6 Norms for completion of a module and course
The norms for successful completion of the modules and the course respectively are
described in detail in Section 3.4 and 3.5 of this handbook.
2.7 Results
Results of every examination are made available at the respective course portal on the
web and the student notice board within a maximum of two weeks of the examination
date. Students are required to check and verify the results when announced. Any
discrepancies should be reported to Course Administration, at the respective locations
within two weeks of the announcement of results. After this period, queries related to
results will not be entertained under any circumstances.
2.8 Re-evaluation
A student may apply for re-evaluation of a quiz under the following circumstances:
The student fails to enter his/her Student Id or Booklet Id on the answer sheet. No
refund is admissible in this case.
Page 11 of 46
FPGDST Course – Handbook 2010
The student is not satisfied with the result. In this case, if there is any change in
the result, the re-evaluation fee will be refunded to the student.
Those who complete all the requirements of a course, should apply for their certificate
by sending a written request giving complete details such as student id, name, address,
telephone numbers of office and residence, mobile number, email address, and course
title to Course Administration.
Before applying for their certificates, students are requested to verify, on the web, all
the details of their results (such as, if the name is spelt correctly, marks given are
correct and complete, etc.).
Those who have not yet completed the course may apply for a partial transcript that
gives their current completion status. A processing fee of Rs. 200/- in cash is payable
with each application.
Those who have completed their course requirements may apply for a provisional
certificate to meet any urgent requirement. This will be issued at no charge. The
application procedure is the same as that for final diploma certificates. These
certificates will be ready within a week of receipt of the request.
Page 12 of 46
FPGDST Course – Handbook 2010
Students must produce their identity cards, without fail, for all assessments. Those
without an identity card may not be allowed to appear for the assessment.
Students must report the loss of identity cards immediately to the security and course
administration. They will be given a duplicate identity card on submitting a written
request and a copy of their passport-size photograph along with a payment of Rs.
200/- in cash.
2.12 Registration
For FPGDST, registration is done for all modules at one time. Repeaters from earlier
batches may register for only modules or evaluations of their interest.
The course is fast paced and expects the student to be regular to be able to cope with
the course.
Candidates are not allowed to join any module later than one-week from
commencement of the module. In all cases of delay in joining, the respective centre
must be informed, in writing, well in advance.
However, in very special cases, permission will be granted to join the course by
skipping one or more modules. It will be the responsibility of the candidate to catch
up with the relevant parts of the contents of the skipped modules. However, for course
Page 13 of 46
FPGDST Course – Handbook 2010
completion, they will need to formally take the skipped modules when they are
offered next, by paying the required fees.
2.13 Repeaters
A ‘Repeater’ is:
a) A student whose attendance was not adequate in a module and therefore has to
register again for the module.
b) A student who has satisfied the attendance requirement for the module, but
could not meet the requirements for clearing the module, may complete the
module by registering for only the assessments.
Unless otherwise stated, repeaters will be governed by the norms prevailing at the
time of their admission to the course. In case of a dispute, C-DAC (M&B)'s decision
will be final. Repeater policy for the course is given in Section 3.
2.14 Fees
The fee payment schedule for the FPGDST course is given in Appendix-C. All fees
must be paid by a demand draft.
Dishonoured Cheques
In case a cheque is dishonoured, Course Administration will try to inform the
concerned student and he/she will have to pay the entire fee amount in cash along
with a fine of Rs. 500/-. If Course Administration is not able to contact the student or
if the payment is not received within three days, the student is likely to lose the
module/assessment admission.
Students must not issue ‘Stop Payment’ instructions on a cheque that is deposited at
C-DAC, Mumbai or Bengaluru. Please remember that stopping payment of an issued
cheque is an offence that is punishable by law.
Fee Receipts
Receipts for the first fee instalment are issued by C-DAC, Mumbai and posted
directly to students.
For subsequent instalments, the centre at which the fee is paid will issue receipts.
Students will have to check with the respective centre, about the procedure for
collecting receipts for such payments.
Page 14 of 46
FPGDST Course – Handbook 2010
2.15 Transfer
Change of Centre
Requests for transfer from one centre to another are normally not entertained. No
transfer in the middle of module/s will be permitted under any circumstance
The local centre will assess the case and forward the application to Course
Coordinator of the centre where the transfer is being sought.
On approval of the transfer, a transfer notice will be issued to the candidate, to the
current centre and to the destination centre. The candidate may then contact the
allotted destination centre along with the transfer notice.
2.16 Refund of Fees
Refund or carry-forward of fees for FPGDST is not permitted under any
circumstances.
Cancellation of registration for an MGPT/Quiz/Re-project is also not
permitted. The fee for any of these events will not be refunded or carried
forward under any circumstances.
2.17 Course Material
One or more textbooks are normally distributed to students at the start of each
module. Assessment information specific to the module, lecture slides, information on
project and assignments, and the detailed module schedule would be available on the
respective course portal.
2.18 Online Resources
The course portal at http://education.cdacmumbai.in provides current and
comprehensive information on all courses. The information includes detailed course
schedules and, (module-wise and assessment-wise) and integrated results. Any
changes, updates and announcements relating to the course are also posted here.
Information given on the course portal will supersede the information in this
handbook.
The portal provides a discussion board, for students to post their questions (technical
and general) for faculty or fellow students to answer. This medium may be used for
seeking clarifications on specific aspects of the course, assignments, etc. as well as for
interaction with other students across centres.
The portal may include links to resources such as books, articles, online resources,
other relevant portals, etc. that can be used by those interested in exploring a topic
further.
Page 15 of 46
FPGDST Course – Handbook 2010
For FPGDST course, a learning management system called Moodle will be used for
all course related matters including schedules, assignment submissions, journal, trial
exams, project submissions, learning resources, notices etc. All participants must
ensure that they have an account on the Moodle server and monitor the same
regularly.
Students must ensure that their contact address and email address, if any, are up to
date. We urge all students without an email address to acquire one and check it
regularly. Urgent and important information specific to individual students may be
communicated through email, if available.
2.19 Expectations from Students
This is a rigorous course. A student must necessarily devote sufficient time to study
and to acquire relevant skills such as programming. A common reason for poor
performance in a course is inadequate devotion of time to the course. It is essential
that students attend every session of lectures, quiz/test, complete their assignments
and carry out project work in time.
Students are urged to work steadily right from the beginning - if things are postponed
till the end, it will be virtually impossible to catch up. The course is largely self-
instructional. Reading through books and other course material and working on the
computer is necessary.
Computer and infrastructure facilities provided should not be misused. All care should
be taken to handle property and equipment at the centre in a responsible manner.
Any breach of these conditions will invite disciplinary action, which could include
expulsion from the course for a number of years. The minimum penalty for any
malpractice would be resetting of the complete scores in a module to zero.
Page 16 of 46
FPGDST Course – Handbook 2010
If you have any difficulties or require any help, please approach the faculty handling
the respective module at your centre. Each centre has a Course Coordinator whom
you may approach to discuss general problems and difficulties.
For administrative matters you may contact Course Administration at your respective
centre as per the contact details given in Appendix-F. All formal communication
regarding the course should be given in writing only. This will ensure proper follow
up of your communication.
You may also email your comments to the FPGDST coordinators at:
(Mumbai): vtyagi@cdacmumbai.in
(Bengaluru) supriya@cdacbangalore.in
Page 17 of 46
FPGDST Course – Handbook 2010
3.1 Pre-requisites
Graduate in any subject from a recognized Board/University OR a Diploma holder
in Engineering from a State Board of Technical Education. Candidates have to
appear for the General Aptitude (GA) and Computer Concepts (CC) papers and
qualify.
In order to enroll for the FPGDST program, the participants have to appear for the
E-Level (or any higher level) of the CST examination or should have successfully
completed PGDST/FPGDST course of C-DAC Mumbai.
The course is also well aligned with the IEEE CSDA certification syllabus to
prepare the student to get certification from a prestigious body like IEEE.
Please visit the following website for more details:
(http://www2.computer.org/portal/web/csda)
The FPGDST course for the academic year 2010-11 will have the following
modules:
In addition to classroom lectures, the PRGF module will also comprise of MGPA
(Machine Graded Programming Assignments) sessions.
Detailed syllabus, evaluation criteria and schedule for each of the modules will be
available at the commencement of each module.
”25 notional hours of study (including 12 contact hours) per week constitutes 1
credit”
As per this norm, the credits for various modules work out as follows:
PRGF module 8 Credits
MAEF module 5 Credits
SNET Module 9 Credits
SSKL (Soft Skills) No Credits
ADWE Module 10 Credits
OOSP Module 16 Credits
MGPT No Credits but successful completion will lead
to eligibility for Diploma with Honours
Page 19 of 46
FPGDST Course – Handbook 2010
Grades will be given for each module as per the following map:
Grade A 85% and above
Grade B 75 – 84.99%
Grade C 60 – 74.99%
Grade D 50 – 59.99%
Grade F 0 – 49.99% (Fail)
In order to complete the FPGDST Course, a student joining the course in 2010-11
batch must:
• Complete all modules as specified under “Norms for Completion of a
module”
Within 2 years from the date of commencement of the course, i.e. 31st July
2012.
Please Note:
• The course validity period will be for a maximum of 2 years including the
year in which the student has registered for the course.
• The modules offered may change from year to year. If a module needs to be
repeated and the module is not available in the following year, the student
will need to choose from the list of available modules.
• Efforts will however be made to offer quizzes and projects for all modules
of a particular year in the following year.
Page 20 of 46
FPGDST Course – Handbook 2010
3.6 Schedules
Course Calendar (See Appendix-F for lecture timings at centres)
QUIZ-ASSIGNMENT-PROJECT
S.No Module Evaluation Date
Mid Module Quiz-1 30 August 2010
Mid Module Quiz-2 28 September 2010
1 PRGF End Module Quiz 26 October 2010
Viva 29 October 2010
Re-Quiz 13 November 2010
Mid Module Quiz 17 September 2010
2 MFCS End Module Quiz 27 October 2010
Re-Quiz 20 November 2010
Mid Module Quiz 08 December 2010
End Module Quiz 04 January 2011
3 SNET
Project Evaluation 5 & 6 January 2011
Re-Quiz 19 February 2011
Project-Mid Review-1 17 February 2011
Mid Module Quiz-1 (Database) 18 February 2011
Project-Mid Review-2 14 March 2011
4 ADWE Mid Module Quiz-2 (WEB) 15 March 2011
Project-Final Review 05 April 2011
End Module Quiz (ENCO) 06 April 2011
Re-Quiz 30 April 2011
OOAD End Quiz 27 April 2011
OOAD Re-Quiz 20 May 2011
SE End Quiz 06 June 2011
SE Re-Quiz 27 June 2011
5 OOSP
SRS, Project Plan Review 13 June 2011
Design and Test Plan Review 20 June 2011
Mid Project Review 11 July 2011
Final Project Review 26, 27, 28, 29 July 2011
Page 21 of 46
FPGDST Course – Handbook 2010
END-COURSE-QUIZ
1 PRGF, MFCS and SNET Monday, 01 August 2011
2 ADWE, OOSP Tuesday, 02 August 2011
MGPT SCHEDULE (FOR HONOURS DIPLOMA)
3.7 Placements
The placement activity (on-campus and off-campus) will commence in
May/June 2011. Students are required to fill up the “Placement Profile” form
available with the course administration and submit the same to the course
administration at Kharghar and Bengaluru latest by December 31st 2010.
To be eligible for placements, a student should secure a minimum of 25 credits
at the time of commencement of campus placement activity.
3.8 Repeaters
For a general definition of a “Repeater”, refer to Section-2.13 in this handbook.
Students from FPGDST 2009 batch may avail of various evaluation opportunities as
follows on payment of the appropriate fee:
MGPT: Students can register for the MGPTs of current batch. The
schedule is given in Appendix-D of this handbook.
Page 22 of 46
FPGDST Course – Handbook 2010
4. Modules
A list of all the modules being offered in the FPGDST course is given in the table
below. Detailed description for each module is given in the pages that follow.
Page 23 of 46
FPGDST Course – Handbook 2010
The stress in the module is equally on programming practice along with theory.
Practical sessions complement the theory sessions nearly on a daily basis and thus the
topics covered get a rigorous treatment even from implementation aspect. At the end
of the module the course participant is expected to be confident in terms of abstraction
and visualization of computing problems and implementation of solutions.
1. Head First Java, 2nd Edition, by Kathy Sierra and Bent Bates, O'Reilly Inc.
2. Data Structures, Algorithms and Applications in Java, 2nd edition, by Sartaj
Sahni, Universities Press, 2005
3. "The C Programming Language", 2nd edition, Brain Kernighan and Dennis
Ritchie
Page 24 of 46
FPGDST Course – Handbook 2010
Apart from topics in discrete mathematics, the module covers elementary concepts in
theoretical computer science and logic. It also introduces introductory glimpse of
modelling and simulations Attempts have been made to present the concepts with
carefully selected examples and problem sets to emphasize the relevance with respect
to computer science. Unlike other modules in the course, MFCS does not have a
practical component.
Syllabus:
• Basic Logic and Proof Techniques
• Sets, Functions and Relations
• Sequences, Summation and Logarithms
• Induction and Recursion
• Number Theory
• Algorithm Analysis
• Matrices
• Elementary Combinatorics
• Graphs and Trees
• Boolean Algebra
• Theory of Computation
• Discrete probability and Probability Distributions
• Binary Number systems
• Basic modelling and Simulation
Page 25 of 46
FPGDST Course – Handbook 2010
The module covers Linux, UNIX, and Windows as case studies to illustrate some of
the concepts in operating systems. The concepts of computer organization,
architecture and operating systems are not tied to any particular implementation or
operating system. The emphasis here will be on understanding what the concepts
mean and not too much about how they are implemented in a particular OS. The
delivery of “networking concepts” is tailored to follow a layered approach for better
clarity and to understand the interfaces individually as well as a whole stack.
Syllabus:
Page 26 of 46
FPGDST Course – Handbook 2010
Objective:
In today's world, it is essential that apart from technical expertise, professionals also
excel in soft skills. Since everyone has to work in a team, the importance of
communicating well can never be over emphasized. Excellent soft skills enable
professionals to communicate with their surroundings better. In this module we
propose to focus on the following:
1 Communication Skills
2 Problem Solving
3 Time Management
4 Stress Management
5 Personal Effectiveness
6 Team Building
7 Conflict Resolution
Page 27 of 46
FPGDST Course – Handbook 2010
Syllabus
The syllabus covers the following concepts in Databases, Web Technologies and
Enterprise Computing.
Databases:
Database Concepts & Data Models, Database Design using E-R Model, Relational
Model, Relational Algebra, SQL, Normalization, Database Design, ER to Relational
Mapping, Storage Structures, Query Processing, Transactional Processing and Crash
Recovery, Concurrency Control, Database Integrity & Security
Web Technologies:
Overview of Web Applications and Architecture, HTML, XHTML, CSS, Java Script,
JSP, Servlets, Web Usability, XML, DOM, SAX Parsers, XSL, XPath, AJAX,
Overview of MVC, Java Annotations, Build tools(Ant)
Enterprise Computing:
Enterprise application evolution, J2EE architecture, JDBC, RMI, JNDI, ORM
(Hibernate), EJB 3.0 architecture, Session bean, Message driven bean, JPA,
Transaction, Middleware services(timer, injection, security)
Recommended Text Books:
Page 28 of 46
FPGDST Course – Handbook 2010
Reference Books
1. Head First Servlets and JSP, by Bryan Basham, Kathy Sierra, Bert Bates
2. Core Servlets and Javaserver Pages: Core Technologies, Volume 1, by Marty
Hall, and Larry Brown, 2nd Edition.
3. Beginning XML, (Programmer to Programmer) by David Hunter, Jeff Rafter, Joe
Fawcett, and Eric van der Vlist, 4th Edition
4. Learning XML by Erik T. Ray, 2nd Edition, O’Reilly Publications
5. Mastering Enterprise JavaBeans 3.0, 4th Edition by Rima Patel Sriganesh, Gerald
Brose, Micah Silverman, Wiley
6. Component Software: beyond Object Oriented Programming by Clemens
Szyperski. Publisher: Addison-Wesley
Page 29 of 46
FPGDST Course – Handbook 2010
This module has two objectives. First is to impart a good understanding to the
students in concepts, methods, tools and application of Object-oriented Analysis and
Design (OOAD) techniques using UML and secondly to provide a strong foundation
in knowledge and application of Software Engineering methods and techniques in
developing software systems.
Today, software plays an important role in bringing ease of use, efficiency, accuracy,
productivity in almost all domains of human activities - banking, telecommunications,
government applications, education, defense, satellite control systems, social
networking, etc,. These are large software applications and some are critical systems.
Software errors in such large applications can undesirably affect the lives, livelihood
and businesses of many people. Studies also reveal that software maintenance costs
are far greater (about 70% of total SW life cycle cost) than software development
cost. Such reliable software systems cannot be built, just by a few programmers,
cooperating in an adhoc way. It needs an “engineering approach” and hence software
engineering has emerged as an important discipline in software development.
“Software Engineering is the application of a systematic, disciplined, quantifiable
approach to the development, operation, and maintenance of software; that is, the
application of engineering to software” -- IEEE. The module will impart students a
sound understanding of the concepts, methods and tools used in the core software
development activities namely in – requirements, design, construction, testing and
also the supporting activities of project management, quality assurance, configuration
management, team management and process management. The software engineering
concepts and methods part will be about 6 weeks duration.
The module includes a project component wherein the students have to work in teams
and attempt to put into practice the software engineering methods learned to develop a
software solution to a given problem by performing all the SDLC activities viz.
requirements analysis, design, testing, coding, project management and configuration
Page 30 of 46
FPGDST Course – Handbook 2010
Syllabus:
Principles of OOAD
OOAD using UML
SW Engineering principles
Software requirements analysis, specification and management
Software design principles, designs methods
Software construction principles, techniques, tools
Software verification and validation methods
Software testing principles, methods, test plan
Software maintenance
Software configuration management
Software Project Planning and management
Software Quality
Software Process management, process and product metrics
Introduction to New Paradigms (Agile, Agent Oriented, Service Oriented)
Project component
Page 31 of 46
FPGDST Course – Handbook 2010
Software Engineering
Page 32 of 46
FPGDST Course – Handbook 2010
From the academic year 2010-2011, FPGDST course completion can lead to either a
diploma or a diploma with honors. The difference between a diploma and a diploma
with honors would be that the candidates who would have successfully completed
MGPT would be eligible for a diploma with honors.
In order to clear the MGPT requirement and thus be eligible for diploma with
honors, a student must clear a minimum of 4 problems from the entire set of 16
Problems that are available. Students can appear for MGPTs in any language (C or
Java.)
MGPTs test the ability to solve programming problems using the Java and C
programming language and knowledge of data structures and algorithms covered in
the module. A series of four MGPTs each for Java and C will be offered through the
course, each containing two problems.
The MGPT requirement for the module has to be cleared in one batch. Partial results
cannot be carried forward.
Page 33 of 46
FPGDST Course – Handbook 2010
In order to clear the MGPT requirement and thus be eligible for diploma with
honors, a student must clear a minimum of 4 problems from the entire set of 16
Problems that are available. Students can appear for MGPTs in any language (C or
Java.)
MGPT Results
When you submit your program for evaluation in the Parikshak environment, it will
report the status of evaluation incrementally and end with a consolidated result
indicating if your program is correct or wrong. It also makes a suitable entry in the log
file. Normally, the indication by Parikshak on the screen is confirmation of the result.
However, a consolidated result of each MGPT will be announced in all centres as well
as the course portal within two weeks of the exam. All participants must verify their
result against this and report any discrepancies to the course coordinator immediately.
Please note that since Parikshak checking is purely input/output based, the faculty
reserves the right to manually examine the submitted file against malpractices,
reported errors and adherence to problem specifications. When there is adequate
ground, the faculty may override Parikshak’s verdict by granting/denying credit.
Such changes will be notified to affected candidates by email (if available) and
suitable messages on the centres’ notice boards.
Page 34 of 46
FPGDST Course – Handbook 2010
You need to prepare and develop good debugging skills. Use of a debugger is not
always possible; nor is it required for a majority of problems. Here are some tips,
which will help you in this.
Preparation of Test Cases:
Before trying to solve the problem, prepare a set of at least 5 to 6 test inputs as per the
specifications of the problem. Do not do random variations in the input for this.
Carefully think about the special cases.
For example, consider a program to find the maximum of a set of numbers. Some of
the possibilities to be checked here are:
the sequence has only one number
the sequence includes duplicates
the maximum value itself occurs multiple times
the maximum value is the first element in the sequence
the maximum value is the last element in the sequence
the sequence consists of only negative numbers (most of us tend to
initialise the variable for the maximum value to zero; if negative numbers
are present in the input, that assumption will cause trouble).
As another example, when deleting a node from a tree, the different possibilities are:
key to be deleted does not occur in the tree
key corresponds to the root node
key corresponds to an intermediate node (with one or two child nodes)
key is a leaf node
there are multiple instances of the key in the tree
Some of these cases may be ruled out by the specification. In such cases you don't
need a corresponding test case; however, it is a good idea to provide a check for such
cases in the program, which will prove to be useful while testing your program. For
all other cases you must have at least one test case.
Page 35 of 46
FPGDST Course – Handbook 2010
Add Print Statements at Strategic Places: Rarely does one’s program function
correctly in the first attempt for all test cases. Thus debugging is a serious and
important aspect of programming. We have often noticed students struggling hard at
this stage. Some planning will help you significantly.
While developing the program add print statements to your code. At entry and exit of
various procedures, add a print statement saying something like entering procedure
make-table with n =.... Add some significant input parameters to this print statement.
Similarly at exit, add to the print statement values of significant output parameters or
results of computations. You can also add some simple print statements before and
after major loops.
These enhancements to the program will, in most cases, tell you directly where the
problem is, when a problem is noticed. If the program loops, you know where it is
looping. Note down the values of variables. Then you can go to the relevant loop-code
and manually simulate the part for the case given by these values. You will most
likely find some test omitted or wrongly given.
If the problem is a wrong output, trace through the outputs of the print statements. Do
the procedure calls match with what you had intended? Does the variable display
make sense? These questions will lead you to the location of the problem faster.
Please note that any print statement you put in for debugging must end with a
newline. Otherwise, the buffering process will hold up the output. This can lead you to
believe that the control has not reached there, whereas in reality the program has
gone much beyond that.
The Parikshak environment is essentially a restricted Linux shell. Many of the Linux
commands have been disabled in this environment. Some additional commands are
provided, which are described below.
You will be using the Parikshak environment under two modes, one for solving the
assignments (SAAs) and the other for the programming tests (MGPAs and MGPTs).
The environment is almost identical in these two modes. The Parikshak environment
is entered from your login shell, using the command testme.
• testme
testme is used to enter the Parikshak environment. Type testme -a to start the
Parikshak in assignment mode. testme -t is the command for entering the
MGPA/MGPT mode. In the assignment mode, Parikshak will prompt you for the
assignment number. In the MGPT mode, you will be prompted for the evaluation
number and batch number (which will be intimated to you during the test). Once
you enter that, the system will display some instructions. Read them carefully.
The time taken by you to read the instructions is not counted in the time you have
to solve the problems. After you have finished reading the instructions, the system
will display the Parikshak prompt. In assignment mode, the problem statement
will also be displayed. The system will start timing you from this point. After the
preset time, normally 90 minutes, the system will terminate the Parikshak
environment and put you back in your login shell.
Page 36 of 46
FPGDST Course – Handbook 2010
After you have finished reading the problem statement, you'll reach the system
prompt. Here you can use vi or nano to create/edit your programs.
Please note that vi and nano are the only editors available in Parikshak
environment. So you should be comfortable using at least one of these before
appearing for the MGPT.
• submit
submit is used to submit your program to Parikshak for testing. Type submit
<filename>, where <filename> is the name of the file that contains your program.
The system will prompt for problem number (which is mentioned on the question
paper). The system will compile the program, listing compilation errors, if any. If
the program has no compilation errors, the system will run your program and give
it test inputs and check if it generates the correct output. For each input, the
system will display a .Y. if your program generated the correct output, and a .X.
otherwise.
By default your program will be tested against all the pre-defined test inputs. You
can also specify a subset of test inputs to be tested. For example, if you get an .X.
for the 2nd and 5th input and if you want to test your program against these inputs
only, then submit the program and enter the input numbers (separated by a space)
as shown below:
PARIKSHAK [studentid]>$ submit test.java
You are in Batch: 1.
Problem Number: 1
Test inputs to be graded [All] ('h' for help): 2 5
Compiling....
. . . Grading Started . . . .
Inputs:. 1 . 2 . 3 . 4 . 5 .
Status: . - . X . - . - . X .
A .-. denotes, that the program is not tested for the corresponding input number.
If you submit the program for testing against ALL the test inputs and a .Y. is
displayed for each test input, this indicates that your program is correct.
If you don't type the filename, the system will ask you for it.
The submit command can be invoked any number of times, as long as you are in
the Parikshak environment.
timeleft
If at any stage you want to find out the amount of time you are left with for
solving the problem in the current session, type timeleft at the prompt.
exit
Type ‘exit’ at the prompt to exit from Parikshak. The system will ask you for a
confirmation before its exit. Ensure that you exit the Parikshak environment after
you have completed your work. The system will not allow you to log in to
Parikshak, if it finds a session in which you are already logged in.
Page 37 of 46
FPGDST Course – Handbook 2010
helpme
This command gives you a list of special commands available in the Parikshak
environment. You can use the helpme command with any of the special
commands supported by Parikshak.
Other commands
In addition to this, commands such as ls, vi, javac, etc. will work as expected.
However commands involving pipes or I/O redirection will not work.
Normally, for both the assignment and test modes, the number of times you can enter
the Parikshak environment is limited. Relaxing this requires faculty approval and a
change in the Parikshak set up of the assignment/test. So make sure you are ready
with your logic and source code before entering Parikshak to solve any problem.
While taking the programming test, only one attempt will be allowed. The faculty in
charge will take suitable action, in case problems such as hanging terminal arise.
The system will give you a warning five minutes before you run out of time for the
current session. After your time runs out, the system will log you out from Parikshak
automatically. You can maintain multiple copies of your program, of course in
different files, while you are in Parikshak. Just make sure to specify the appropriate
one in the submit command.
Page 38 of 46
FPGDST Course – Handbook 2010
SAA
SAAs can be solved by students and submitted to Parikshak any time during the
module/year. A set of SAA problems will be published at the start of the module.
MGPA
MGPAs will be proctored assignments. During each of these sessions, the students
will be taken through the entire process of finding solution to a specific problem.
Sessions on MGPA discussion may be included in the lecture schedule. The MGPA
will later be available as an SAA. The details of the eligibility criteria will be
announced at the start of the module.
MGPA/SAA Results
When you submit your program for evaluation in the Parikshak environment, it will
report the status of evaluation incrementally and end with a consolidated result
indicating if your program is correct or wrong. It also makes a suitable entry in the log
file. Normally, the indication by Parikshak on the screen is confirmation of the result.
However, a consolidated result of each SAA will be announced in all centres as well
as the course portal at the end of the module. All participants must verify their result
against this and report any discrepancies to the course coordinator immediately.
Please note that since Parikshak checking is purely input/output based, the faculty
reserves the right to manually examine the submitted file against malpractices,
reported errors and adherence to problem specifications. When there is adequate
ground, the faculty may override Parikshak’s verdict by granting/denying credit.
Such changes will be notified to affected candidates by email (if available) and
suitable messages on the centres’ notice boards.
Page 39 of 46
FPGDST Course – Handbook 2010
The FPGDST-2010 course is commencing from August 9, 2010. The total course fee
for FPGDST is Rs. 65,000/- payable in two instalments as follows:
*NOTE: Service tax as applicable at the time of making payment will be charged
extra.
A late fee of Rs. 500/- will become applicable, if fee payments are made up to 1
week after the due date
Page 40 of 46
FPGDST Course – Handbook 2010
FPGDST:
Available MGPTs
The regular registration fee for an MGPT is Rs. 500/-
The late registration fee is twice the normal examination fee i.e. Rs. 1000/-
Repeaters who have cleared Java-MGPT need to appear only for C-MGPTs and clear
minimum 2 problems.
Repeaters who have cleared C-MGPT need to appear only for Java-MGPTs and clear
minimum 2 problems.
Available Quizzes
The regular registration fee for a Quiz is Rs. 300/-
The late registration fee is twice the normal examination fee i.e. Rs. 600/-
Those who have not completed the project requirement must select a project in
consultation with the local faculty. The project has to be completed within a
maximum of four calendar weeks from the date of registration. Computer resources
will be made available for this duration at the respective centre. Projects submitted as
per this scheme will be evaluated for the full credit of project in that module.
Page 41 of 46
FPGDST Course – Handbook 2010
The commencement date for the registration will be announced on the web-site and
also on the NB at the C-DAC centres where the course will run.
To register for a re-project, students have to fill in the form in Appendix-E, providing
their details (student-id, name, address, phone nos., e-mail address) and the student-
ids and names of other group members, if any. A downloadable version of this form is
available online via the “Registration” link of the respective course portal. This form
will have to be submitted along with the Re-project fee to Course Administration at
Juhu/Kharghar/Electronics City, Bengaluru. After obtaining the necessary approval
from the module co-ordinator, Course Administration will intimate the student
accordingly.
Page 42 of 46
FPGDST Course – Handbook 2010
Residence Address:
Telephone:
Residence:
Office:
Mobile No., if any:
E-mail address:
Course Name:
Module Name:
Student Signature:
--------------------------------- To be filled by module coordinator --------------------------------
Start date of Project & Machine account:
End date of Project & Machine account:
Coordinator’s remarks:
Coordinator’s Signature:
name:
Date:
---------------------------------------------------------------------------------------------------------------
Course
Administrator’s name: Signature:
Page 43 of 46
FPGDST Course – Handbook 2010
Page 44 of 46
FPGDST Course – Handbook 2010
Location:
Guide:
[This must be signed by all group members, and submitted as a separate sheet with the
final report]
Page 45 of 46
FPGDST Course – Handbook 2010
Page 46 of 46