Unit 41 Programming in Java and Unit 35 Web Application development ([email protected])

profileAssignmenthelp1234
programming_in__java.docx

HND Assignment Brief

Session: September 2015

Programme title

BTEC HND in Computing and Systems Development

Unit number and title

41

Programming in Java (L5)

Assignment number & title

1 of 1

Programming in Java (L5)

Unit Leader

DR Gebremichael

Assessor (s)

Yonas Gebremichael and Hassan Baajour

Issue Date

30 Sept 2015

Final assignment submission deadline

28 May 2015 – 09 Sept 2015

Late submission deadline

11 – 16 September 2015

The learners are required to follow the strict deadline set by the

College for submissions of assignments in accordance with the BTEC level 4 – 7 submission guidelines and College policy on submissions. They should also refer to Merit and Distinction criteria that require evidence of meeting agreed timelines and ability to plan and organise time effectively without which the learner may not expect to receive a higher grade.

Resubmission deadline

TBA

Feedback

In-class feedback will be available from draft submissions on a taskby-task basis as a formative feedback and also for initial submission. Final feedback will be available within 2 – 3 weeks of the assignment submission date.

General

Guidelines

1. The work you submit must be in your own words. If you use a quote or an illustration from somewhere you must give the source.

2. Include a list of references at the end of your document. You must give all your sources of information.

3. Make sure your work is clearly presented and that you use readily understandable English.

4. Wherever possible use a word processor and its “spell-checker”.

Internal verifier

Dr. Hasan

Signature (IV of the brief) *

Dr. Hasan

Date

06/05/15

ICON College of Technology and Management

BTEC HND in Computing and Systems Development

(CSD)

Unit41: Programming in Java (L5)

Session: May\Sept 2015

Coursework

Recommended maximum words: 4,000

This Unit will be assessed by assignment and Presentation.

You are strongly recommended to read “Preparation guidelines of the Coursework Document” before answering/solving your assignment.

Scenario:

White Chapel Academy has asked you to develop a Student Information Management System (SIMS). The system shall hold the details of every student and tutor and admin staff in the school as well as storing information about the courses that are available at the school. It shall enable the school staff to enrol students to the school and manage student’s fee payments.

Once the students are enrolled, a system administrator will create classes in the system and allocate date, time and tutor for each class to enrol students to. The system shall also be used for managing students’ class attendance as well as track their progress in the course. The system shall have a facility for registered parents to login and check their sons’ or daughters’ attendance, academic progress, behaviour at school.

When a student first enrols at the school, he or she will receive a timetable with a list of classes and date/time for each class in a term. During student registration, the system shall verify whether the student has satisfied the necessary prerequisites for each term by referring to the student’s online transcript of courses completed and grades received (the student can review his or her transcript online at any time as can his or her parents).

Assuming that (a) the prerequisites for enrolment are satisfied, (b) there is room available in each of the classes, the student is enrolled in the classes else he or she is placed on a first-come, first-served waiting list. If a class/section that he or she was previously waitlisted for becomes available (either because some other student has dropped the class or because the seating capacity for the class has been increased), the student is automatically enrolled in the waitlisted class, and an email message to that effect is sent to the student and parents. Other optional features include:

· Calendar events

· Records of detention

· Keeping correspondence history between the school & parents

· Messaging facility between students as well as students and staff/tutors

User Interface

· Users shall have access to the system using user friendly menu system.

· The UI implementation will be a graphical user interface.

Data Persistence

Data shall be persisted in a text file in the form of simple tab or comma-delimited file.

Programming Environment

NetBeans with latest JDK available at the time.

Task 1

1.1 Briefly list and describe three main features of programming in Java [P1.1]

1.2 What do we mean by BYTECODE and JVM in Java? [P1.2, M1]

To achieve M1, you must demonstrate a clear understanding of the core principles of Java programming & compilation, interpretation process and will have met the deadline to submit the tasks and achieve the unit assessment criteria.

Task 2

2.1 Design a Java programming solution to the SIMS scenario using use-case diagram that shows how users will interact with the system. [P2.1, M2]

2.2 Identify the components and file structures required to implement the SIMS. [P2.2]

2.3 Use UML class diagrams to show the classes in your system, attributes and operations of each class and the relationship between classes. Define clearly each class, main methods and properties [P2.2, D1].

· To achieve M2, you should have applied the relevant theories and use case diagrams in the design process and you must justify the design methods and techniques used.

· To achieve D1, you must show the use of critical reflection to evaluate your own work and justify valid conclusions. The validity of results must be evaluated using defined criteria, Realistic improvements have been proposed against defined characteristics for success.

Task 3

In this section you should apply the appropriate fundamental programming concepts (such as variables, constants, arrays, strings, methods, constructs, inheritance, encapsulation etc.) and make use of appropriate Java API classes (such as Scanner, String etc.). In addition your program should incorporate appropriate error handling. Comments are also to be inserted to improve program clarity. To this end you have to:

3.1 Implement the SIMS based on your design. [P3.1, D2]

3.2 Implement classes using inheritance relationship. [P3.2, D3]

3.3 Use methods and attributes in different classes using instances/objects. [P3.3, D2]

3.4 Identify and implement opportunities for error handling and reporting. [P3.4, D3]

3.5 Make effective use of the Netbeans (IDE). [P3.5]

· To achieve D2, you should have made alternative approach and critical evaluation procedures, demonstrating autonomy and independence. Also will have met the deadline to submit the tasks and achieve the unit assessment criteria and thus taken the responsibility for managing and organising activities.

· To achieve D3, you should have demonstrated effective thinking has taken place in the context of implementing object behaviors, idea generation and decision making in the implementation process and finally demonstration of self-evaluation has taken place.

Task 4

In this section you need to provide overall documentation for the system analysis, design and implementation as follows:

4.1 critically review and test your solution. [P4.1, M3]

4.2 analyse actual test results against expected results to identify discrepancies. [P4.2, M3]

4.3 evaluate independent feedback on your solution and make recommendations for improvements [P4.3, M3].

4.4 create user documentation for the solution. [P4.4]

4.5 create technical documentation for the support and maintenance of your system. [P4.5]

To achieve M3, The appropriate structure and approach has been used, coherent, logical development of principles/concepts for the intended audience and demonstration of self-evaluation has taken place. A range of methods of presentation (technical and user documents) has been used and technical language have been accurately used, Communication has taken place in familiar and unfamiliar contexts,

Additional Specs, Hints & Good Programming Practices

The marking scheme for this coursework will assign marks for Functionality, Quality of Code, Program Design, Style, Documentation and Testing. Style and Documentation are crucial – you must neatly comment your code.

Try and break the coursework down into doable chunks as identified by the task list. These are distinct programs in the coursework, so try and modularise your effort – for instance in Task 3 first you need to set up the menu system and build functionalities of each menu item one by one. This approach will help in the testing and debugging process of your code.

DEBUGGING HINT: Compile and test your program after every change, even if it was as simple a change as adding a single line. This will allow you to find and fix errors early before you write more code. This is another reason why you have to write the skeleton program which runs first even if it does not do anything yet.

In addition to the above, follow good programming practices. Below are some of the common good practices generally accepted as industry standard and followed by those in industry who are using programming in general and the C/C++/C#/Java in particular. You will get more marks for following good programming practices. Some examples are given below. When naming identifiers

· Do not start with underscore (used for technical programming). e.g. _grades (this is bad practice)

· Write single word variables in all lower case , e.g. int grades, roots;

· Space is not allowed in identifiers, e.g. ‘student grades’ is wrong! write this as studenGrades or student_grades. Note the use of capitalisation or the underscore.

· Use CAPITAL LETTERS TO DECLARE CONSTANTS, e.g. SIZE = 100 or PI = 3.14;

· Start function names with capital letters. e.g. AverageGrades(). Spaces are not allowed in function names. ‘Average Grades()’ is wrong. Use AverageGrades() or Average_grades().

· Make a habit of using Meaningful identifier and Function Names to make your code easier for others to understand. Think about it, what does "g" mean? Is it grades, garbage, grave, etc. Thus do not use cryptic identifier names, e.g. Use ‘grades’ to refer to student grades rather than ‘g’. Similarly, use sensible function names. If you want to write a function that assigns student’s grades, then call it StudentGrades(). Do not use your names or names of your pets or any name that does not describe what the function does, but at the same time do not use more than 3 words, i.e. do not use a sentence to name a function. e.g.

ThisIsMyAverageFunction() while syntactically correct is not good programming practice.

· Remember Java is case sensitive so ‘Grades’ and ‘grades’ are not the same as identifier names. Thus be case and spelling consistent. Use an identifier name only once and spell it (upper and lower case) the same way within your program.

Finally give the project a sensible name like E.g. Unit41_CW_ID3344

Presentation

As part of the overall assessment of this assignment, the students need to prepare an oral presentation of their individual work. You will use power point presentation or similar presentation package of your choice. The presentation will last no more than 10-15 minutes. You will be marked on content, presentation style and clarity of delivery.

Relevant Information

To gain a Pass in a BTEC HND Unit, you must meet ALL the Pass criteria; to gain a Merit, you must meet ALL the Merit and Pass criteria; and to gain a Distinction, you must meet ALL the Distinction, Merit and Pass criteria.

1. Outcomes of the unit and assessment criteria

Outcomes

Assessment criteria for pass To achieve each outcome a learner must demonstrate

Questions reflecting the outcome

1. Understand the principles of programming in Java

1.1 Briefly describe the principles, characteristics and features of programming in Java?

1.2 Briefly describe environmental flexibility of programming in Java?

Task 1 & presentation

2. Be able to design Java solutions

2.1 design a distributed software application for a given problem

2.2 explain the components and data and file structures required to implement a given design

Task 2 & presentation

3. Be able to implement Java solutions

3.1 implement a distributed software application solution based on a prepared design

3.2 define relationships between components to implement design requirements

3.3 identify and implement opportunities for error handling and reporting

3.4 make effective use of an Integrated

Development Environment (IDE) including code and screen templates

Task 3 & presentation

4. Be able to test and document Java solutions

4.1 critically review and test a distributed software application

4.2 analyse actual test results against expected results to identify discrepancies

4.3 evaluate independent feedback on a developed distributed software application and make recommendations for improvements

4.4 create user documentation for the developed distributed software application

4.5 create technical documentation for the support and maintenance of a distributed software application.

Task 4 & presentation

2. Grading Criteria for Merit and Distinction of this coursework

Merit (M1, M2, M3)

Distinction (D1, D2, D3)

Descriptors

Indicative characteristics

Descriptors

Indicative characteristics

M1. Identify and apply strategies to find appropriate solution

· Pass requirements achieved

· effective judgment have been made

· an effective approach to study and research has been applied

D1. Use critical reflection to evaluate own work and justify valid conclusions

Pass and Merit requirements achieved

· The validity of results has been evaluated using

defined criteria

· Realistic improvements have been proposed against defined

characteristics for success

M2.

Select/design

 Relevant theories and techniques have been

D2. Take responsibility for managing and

 Autonomy/independence has been demonstrated

and apply appropriate methods/techniq ues

applied

· A range of sources of information has been used

· The design of methods and techniques/sources has been justified

organising activities

· Substantial activities, projects or investigations have been planned, managed and organised

· Activities have been managed

· The importance of independence has been recognised and achieved

M3. Present and communicate appropriate findings

· The appropriate structure and approach has been used

· Coherent, logical development of

principles/concepts for the intended audience

· A range of methods of presentation has been used and technical language have been accurately used

· Communication has taken place in familiar and unfamiliar contexts

D3. Demonstrate convergent/lateral/crea tive thinking

· Ideas have been generated and decisions taken

· Convergent and lateral thinking have been applied

· Problems have been solved

· Innovation and creative though have been applied

· Receptiveness to new ideas is evident

· Effective thinking has taken place in unfamiliar contexts

3. Preparation guidelines of the Coursework Document

a. All coursework must be word processed.

b. Document margins must not be more than 2.54 cm (1 inch) or less than 1.9cm (3/4 inch).

c. Font size must be within the range of 10 point to 14 point including the headings and body text (preferred font size is 11).

d. Standard and commonly used type face such as Arial should be used.

e. All figures, graphs and tables must be numbered.

f. Material taken from external sources must be properly refereed and cited within the text using

Harvard standard

g. Do not use Wikipedia as a reference.

h. Word limit must be strictly followed.

4. Plagiarism and Collusion

Any act of plagiarism or collusion will be seriously dealt with according to the College regulations. In this context the definition and scope of plagiarism and collusion are presented below:

Plagiarism is presenting somebody else’s work as your own. It includes copying information directly from the Web or books without referencing the material; submitting joint coursework as an individual effort.

Collusion is copying another student’s coursework; stealing coursework from another student and submitting it as your own work.

Suspected plagiarism or collusion will be investigated and if found to have occurred will be dealt with according to the college procedure. (For details on Plagiarism & Collusion please see the student hand book)

5. Submission

a. Initial submission of coursework to the tutors is compulsory in each unit of the course.

b. Student must check their assignments on ICON VLE with plagiarism software Turnitin to make sure the similarity index for their assignment stays within the College approved level. A student can check the similarity index of their assignment three times in the Draft Assignment submission point located in the home page of the ICON VLE.

c. All Final coursework must be submitted to the Final submission point into the unit (not to the Tutor). A student would be allowed to submit only once and that is the final submission.

d. Any computer files generated such as program code (software), graphic files that form part of the coursework must be submitted as an attachment to the assignment with all documentation.

e. Any portfolio for a unit must be submitted as a hardcopy to examination office.

f. The student must attach a tutor’s comment in between the cover page and the answer in the case of Resubmission.

6. Good practice

a. Make backup of your work in different media (hard disk, memory stick etc.) to avoid distress for loss or damage of your original copy.

7. Extension and Late Submission

a. If you need an extension for a valid reason, you must request one using an Exceptional Extenuating Circumstances (EEC) form available from the College examination office and ICON VLE. Please note that the lecturers do not have the authority to extend the coursework deadlines and therefore do not ask them to award a coursework extension. The completed form must be accompanied by evidence such as a medical certificate in the event of you being sick.

b. Late submission will be accepted and marked according to the college procedure. It is noted that late submission may not be graded for Merit and Distinction.

c. All Late coursework must be submitted to the Late submission point into the unit (not to the Tutor). A student would be allowed to submit only once and that is the final submission.

8. Submission deadlines

Formative feedback

Week 11

Presentation

Week 12

Final Submission

28 May 2015 – 09 Sept 2015

Late submission

11 – 16 Sept. 2015

Submit to: Online to the ICON VLE only

Glossary:

Analyse: Break an issue or topic into smaller parts by looking in depth at each part. Support each part with arguments and evidence for and against (Pros and cons).

Critically Evaluate/Analyse: When you critically evaluate you look at the arguments for and against an issue. You look at the strengths and weaknesses of the arguments. This could be from an article you read in a journal or from a text book.

Discuss: When you discuss you look at both sides of a discussion. You look at both sides of the arguments. Then you look at the reason why it is important (for) then you look at the reason why it is important (against).

Explain: When you explain you must say why it is important or not important.

Evaluate: When you evaluate you look at the arguments for and against an issue.

Describe: When you give an account or representation of in words.

Identify: When you identify you look at the most important points.

Department of Information Technology Page 1 of 7

Department of Information Technology Page 1 of 7

Department of Information Technology Page 8 of 8