Learner Guide - WordPress.com

sweetleafnotebookMobile - Wireless

Nov 12, 2013 (3 years and 4 months ago)

88 views

Date Revised: (07/2013)

Revised by: (A.Govender
)





Learner Guide


2013




FACULTY: ACCOUNTING & INFORMATICS



DEPARTMENT
: INFORMATION TECHNOLOGY





QUALIFICATION: ND: COMPUTER SYSTEMS



QUALIFICATION CODE: NDCSY2




SUBJECT :



PROGRAMMING 2


SUBJECT CODE:


PRGM201


SAQA CREDITS:


0.083





It always seems impossible until it is done. Nelson Mandela

Page
2


Name
of Lecturer


:

A. Govender (Miss)

Office




: Dept. of IT, East Wing

Campus location


: Ritson Road

Telephone



: 031 373 5587

Fax No



: 086 674 0190

E
-
Mail




: Anushag@dut.ac.za


Consultation times with Lecturer:

To be discussed in lectures.

.

Head
of
Department

: Mrs K.Singh

Campus location


: Ritson Road

Room number


:
East

Wing

Telephone



: 031 373 5
640
/
5596

Fax No



: 031 373 55
98


Departmental Secretary

:

Fiona Naidoo

Contact details


:

031 373 559
6


Lectures



: 2


Practicals



: 2



Lecture
Venue


: S8219

Practical Venue


:

S8203

Duration



: 13 Weeks


Relevant Policies and rules:
Refer to the departmental and Institutional
handbooks
.


It always seems impossible until it is done. Nelson Mandela

Page
3



1.

Welcome


Congratulations on passing Programming 1! I would like to welcome you to a
year filled with excitement, self
-
growth, development and hard work. My aim
is to assist you in becoming an effective and successful software developer.
This course will be implemen
ting the 7 Habits of Highly Effective People by
Stephen R Covey .


Covey believes that the three aspects that result in attaining success and
being effective are:



Knowledge


The
theory

of
what

needs to be known/learnt and

why
?



Skill


The
practical

of
ho
w to
complete the task.



Motivation


The
desire
to
want to

complete the task.


I am committed to being your guide throughout this semester as YOU obtain
the knowledge, apply YOUR skills and increase your desire to develop
software. The
S
even Habits of High
ly effective People by Stephen R Covey
are:




HABIT 1

Be Proactive



HABIT 2

Begin with the end in mind



HABIT 3

Put first things first



HABIT 4

Think Win
-
Win



HABIT 5

Seek to be understanding then to be understood



HABIT 6

Synergize



HABIT 7

Sharpen the Saw



You are required to visit
http://www.stephencovey.com

and use Google or
any search engine to find out more about the seven habits. A copy of this
book is also available at the library.



2.

Introduction to the
subject


The purpose of the subject is to provide you with a unified view of the broad
field of Object
-
Oriented Programming. It is intended to provide the learner
with the basic competence in the understanding and appreciation of the
Object Oriented approa
ch to software development.



3.

Learning outcomes and assessment criteria



(see Page 6)


It always seems impossible until it is done. Nelson Mandela

Page
4



4.

Learning, teaching and assessment strategies


a)

Delivery of the subject

The credit value of the subject is 0.083.

Contact


-

4 hours per week

Practicals

-

2 hours per
week

Assessments

-

3 Tests, 2 assignments, 1 Group Project


b)

Assessment



Week of

(Subject to Change)
:

Test

15 August

Theory Test 1

19 September

Practical Test

16 October

Theory Test 2

23 October

Make Up Test


Please note that if a test is missed, you

will get 0 for the test unless a Medical
Certificate is completed by your doctor and handed to the subject lecturer,
within seven days from your return to lectures after your illness.



Ass
ignment and Group Project due dates are

(Subject to Change)
:


Date

Assignment

8 August

Assignment 1

12 September

Assignment 2

17 October

Group Project


The course mark will be calculated as follows
(Subject to Change)
:


Assessment Type

%

Test 1 [Theory]

15

Test 2 [Practical]

20

Test 3 [Theory]

2
0

Assignments

10

Group Project

20

Tutorials

-

Online

participation and submissions

15


A 3 hour written exam
ination will take place in November


The final mark will be calculated as follows:



Semester mark


= 40%



Examination mark


= 60%


A final composite
mark of 50% must be obtained to receive a credit for
Programming 2.




It always seems impossible until it is done. Nelson Mandela

Page
5


c)

Activities to promote learning


Educational websites that include tools, articles etc. to assist in the
learning process.


Wiki to promote online collaboration


d)

Library orientation

Comp
leted in Department Orientation.


5.

Copyright and plagiarism


Plagiarism is the use of any work, writings or ideas belonging to someone
else and presenting it as your own. No form of plagiarism will be accepted
and disciplinary action will be taken against
any learner perpetrating this
crime.


6.

Student support


The Student Counselling centre is situated in the basement of the Cecil
Renaud Theatre on Steve Biko Campus. They assist with study skill
programmes,


Please make use of the consultation times with
the lecturer to improve your
academic performance.

Additional tutorial lessons will be conducted to assist students who are
experiencing major difficulties in coping with the subject.

Spot tests will be conducted on a regular basis to assess learner’s
perf
ormance.



7.

Work Integrated Learning (WIL), industry, community, and occupation
-
related information.


The group project aims to integrate the hardware and software by merging
the outcomes of subjects like Electronics 1 and Programming 1.


8.

Quality assurance
and enhancement


Lecturer (LEQ) and Subject (SEQ)

evaluations will be conducted during the
semester to obtain feedback from students. It is important that you provide
honest feedback, as this will enable the lecturer to make positive changes to
enhance the

teaching and learning process.






Template updated: September2009 by the CQPA and CELT

It always seems impossible until it is done. Nelson Mandela

Page
6




Learning outcomes

Assessment criteria

Assessment methods



Create and
manipulate data in a
matrix




Read, convert and
search string data
types and pointers







Read from and write
to secondary storage
media.







Create abstract data
types.







Single inheritance.








Communicating with
hardware attached to
the parallel port.





Develop and deploy
a Mobile application








Design programs
that use 2D arrays
to
solve problems




Design programs
that use string
manipulation
functions and
pointers.




Design an
application that
reads from and
writes to a
secondary storage
media.




Create an
application that
uses abstract data
types.





Create an
application that
derives
classes
from existing
classes.




An application that
communicates with
the parallel port.





Design and host a
mobile application

Weekly tutorials.

Assignment 1


08/08



Weekly tutorials.

Test 1


15/08





Weekly tutorials.

Assignment 2


12/09






Weekly tutorials

Practical Test
-

19/09





Weekly Tutorials

Test 3


16/10










Group Project
-

17/10

It always seems impossible until it is done. Nelson Mandela

Page
7




Scheme of work:

WK

TOPIC

COMPLETED

1

1.

Multi
-
Dimensional Arrays

1.1. Problem solving with matrices


2

2.

String Class

2.1.

String Manipulation

2.2.

Functions
(Converting to char etc.)


3

3. File Processing

3.1. Create, read, write and update files

3.2. Sequential File processing

3.3. Random Access file processing


4




4. OOP

4.1. Create classes


constructor, destructor

4.2. Set and get methods

4.3.
Overloading constructors




5.

5. OOP

5
.1.

Composition

5
.2. Array of Objects


6.

6. OOP

6.1. Single Inheritance



7.

7.Bits, Characters, Strings and Structures

7.1. Structure Definitions

7.2. typedef

7.3. Bitwise operators

7.4. Fields


8.

8.
Graphics in C++


9.

9. Interfacing with the Hardware

9.1

Writing to hardware

9.2 Reading from hardware


10.

Introduction Mobile Development




Relevant readings/references

Books on C++ or G++ Introduction to programming


Websites

http://www.programmersheaven.com

http://www.codeproject.com

http://www.ibm.com
/developerworks/mobile/worklight/getting
-
started.html

or a Google search on programming in C++


Dates for submission of assignments

Assignment return/feedback dates

Assignment 1 8 August

Assignment 2 12 September

Group Project 17
October

15 August

19 September

23 October


It always seems impossible until it is done. Nelson Mandela

Page
8




ASSIGNMENT 1





DUE DATE:

8 August


You
are required to

design
your own version of the game called
Tic
-
Tac
-
Toe
. If you
are not familiar with this game, you are required to research it and design your
versio
n of the game.


Proposed Mark Allocation:
(Subject to Change)

Creativity, Innovation









5

Validate input










5

Functionality











10

Program design

(Appropriate use of functions etc. )





5

Word Processed Report

( Refer to Appendix A)






10

Additional











5


Total












40




ASSIGNMENT 2





DUE DATE
:

12

September


The introduction of computers/technology is believed to make manual time
-
consuming tasks much simpler, better and faster.

This assignment requires you to
integrate your Computer Systems knowledge with
Programming 2. You are required to identify a problem in one of your other subjects
and design a suitable computer solution in g++. Your solution must be well
-
designed
and well
-
documented.

You must use
Classe
s
,

Files

and Characters/Strings
.


The problem statement (must be relevant to a subject) and your details must be
included as comments at the beginning of your program.


Proposed Ma
rk Allocation
(Subject to Change)

Problem Statement
(clearly worded problem
from one of your other courses)

5

Menu

(User
-
friendly, user must decide when to exit)





5

Class Definition (problem area/processing)






18

Creating, Updating Files, Strings/Characters






12

Driver Program










10

Word Processed Report ( Refer

to Appendix A)






10

Total












60




It always seems impossible until it is done. Nelson Mandela

Page
9



GROUP PROJECT





DUE DATE
:
17 October


You are required, as part of a group (Min. 5 & Max. 6), to develop a
software
application for a mobile device.
This software program must also be professionally
presented. Each group must document the process of software development from
the proposal (conception of the idea) to the implementation of the software program.
Yo
u will be required to use the
6
th

Habit


Synergize
from the 7 Habits of highly
effective people, extensively. Co
-
operate with each other using your knowledge and
skills from each other as well as from your other subjects (Digital Comms, Networks,
Electron
ics etc.)


Evidence of research must be presented in your documentation

using
Harvard
Referencing
.




SUBMISSION OF PROJECT


All projects must be submitted professionally
with
the following:



Printed copy of User Manual and Programmers/Developers Manual



Software on a CD/DVD



Hosted live on the web



A Testing document that shows extensive test data (test cases etc)



Failure to submit the project professionally wi
ll result in your group losing 5
% of the


overall mark.




PROPOSED MARK ALLOCATION
(Subject
to Change)

Topic / Concept

Marks

1. Idea, Project Proposal


5

2.
User Interface Design


5

3.
Data Validation. User Friendliness

(Online Help)

10

4.
User and Developer Manual
(Evidence of Testing )

10

5.
Functionality

25

6.
Hardware, Networks


hosting the application

10

7.
Oral Presentation

15

8 Additional
Features.
Each additional concept contributes 5 marks.
Group qualifies for
1
0 if they have implemented 4 additional topics.

10

9. Word
-
processed report

(Refer to Appendix A)


10


It always seems impossible until it is done. Nelson Mandela

Page
10


Appendix A


Hargreaves, FP (2011), How To: Write a Programming Report
http://imada.sdu.dk/~thiesp07/howto_report.pdf


Format of

the
Word processed document
that
must be submitted for all
assignments and
the group
project
.


You MUST include a cover page with your details (student no, full name), title (eg.
Assignment 1 ..), a table of contents and References page

(Harvard Referencing)
.


The report should include th
e following sections:




Problem statement




Specification

Describe the task at hand. Make sure to distinguish between the given
problem and your own additional goals (if any). Be very brief and concise.




Design

Describe the algorithm(s) that was (were) desi
gned. Avoid describing how the
design was produced, rather, show different versions of the design if relevant.

Use pseudo code to avoid ambiguity





Implementation

Show the implementation. The goal of this section is to show and explain the
most important p
arts of the code. Listing the code with highlighting and
possibly line numbering is essential. Explain the code by referring to line
numbers, function calls and variable names. Leave out trivial parts
(initialization, parameter
-
tuning, etc…)




Testing

Show tests of final code version. Tests include correct input, incorrect input,
special cases and stress tests. Method of testing will vary with the problem at
hand. This section is
very important
. Display tests with this format:

o

Input

o

Expected output

o

Actu
al output

o

Comments




Conclusion

Describe to which degree the product meets the requirements of the project. If
relevant, describe how the performance of the product compares to your
expectations
.





Appendices

o

Full source code listing

o

Extensive test output

(if relevant)