SlideShare a Scribd company logo
1 of 27
1 | I o a n T u n s - H N D C S D - P J - 19/12/14
Assignment Front Cover Sheet
PART 1 – To be completedby the student
StudentName IoanTuns
StudentIDNumber LON291101243
Module Name
(e.g.:BusinessEnvironment)
ProgramminginJava
Course (e.g.HNDBusiness) HND inCOMP & SD (Year2, Semester2)
AssignmentTitle StudentRecordKeepingSystems
Module Lecturer Rafiqul Islam
Numberof Words 2563
AssignmentDue Date 18/12/14
SubmissionDate 19/12/14
Firstsubmission  Resubmission(asperlecturer’s instruction) 
No cheating, dishonesty or plagiarism will be accepted from any learner who enrols for a
qualification/course.All sourcesmustbe properlyreferencedusingthe HarvardReferencingSystem.
Failure toproperlyreference anysource constitutes plagiarism whereby the learner will be subject
to disciplinary action, and will likely refer (fail) a unit.
All assignments must be submitted in electronic format through http://moodle.lsbm.org.uk. This
allows the College to check for plagiarism.
PART 2 – Studentdeclaration
By submitting this work to LSBM, I confirm that I have read and understood the Dishonesty and
Plagiarism Policy that is applicable to all assessments and assignments submitted by me.
I also confirm further that the work submitted here is my own work, save for where indicated by
properreferencing.ShouldInotabide by the policy and be found guilty of plagiarism by my course
lecturer or any other LSBM or appointed staff member I shall be bound by the decision of that
lecturer and/or staff member as well as the terms of the Dishonesty and Plagiarism Policy.
Please save your document in the following format before submitting through
Moodle:
Firstname- Surname–Course–Unit–Assignment-date.doc
E.g.:Rubin Gurung-APDMS-BO-Assignment-3Dec 09.doc
This page must be page 1 of your assignment. Start your work on page
2 | I o a n T u n s - H N D C S D - P J - 19/12/14
Student Record Keeping
Systems
3 | I o a n T u n s - H N D C S D - P J - 19/12/14
Table of Contents
0. Introduction.......................................................................................................................4
1. Principles of programming in Java ...............................................................................4
a) Principles, characteristics and features of programming in Java .....................4
b) Critically evaluate the environmental flexibility of programming in Java. ........5
2. Solution design ................................................................................................................6
a) Design solution..........................................................................................................6
b) Components, data and file structures required to implement a given design.6
3. Implement Java solutions ..............................................................................................7
a) Implement a Java programming solutions based on a prepared design.........7
b) Define relationships between objects to implement design requirements. .....7
c) Implement object behaviours using control structures to meet the design
algorithms. ............................................................................................................................7
d) Identify and implement opportunities for error handling and reporting. ...........8
e) Make effective use of an integrated development environment including
code and screen templates................................................................................................9
FootballClub.java.............................................................................................................9
Person.java ................................................................................................................... 12
Player.java..................................................................................................................... 13
Goalkeeper.java ........................................................................................................... 14
4. Test and Document Java solutions ........................................................................... 14
a) and b) Critically review and test a Java programming solution and analyse
test results against expected results to identify discrepancies. ................................ 14
Test case ....................................................................................................................... 15
Debugging ..................................................................................................................... 18
c) Evaluate independent feedback on a developed Java program solution and
make recommendations for improvements.................................................................. 18
d) Create user documentations for the development Java program solution... 19
e) Create technical documentation for the support and maintenance of a Java
program solution............................................................................................................... 23
5. Conclusion..................................................................................................................... 26
6. Bibliography................................................................................................................... 27
4 | I o a n T u n s - H N D C S D - P J - 19/12/14
0. Introduction
Java become faster one of the most used programing languages because facilitates
implementation from desktop to server solution (Cadenhead, 2013).
This piece of work intends to present a structure of Java application, from working
environments to the strong tools of error handling, debugging and cod
documentation.
1. Principles of programming in Java
Java Environment
Java programing language is one of the newest programing language is one of the
most versatile programing language, can be used in almost all kind of applications,
from business use to entertainment, from servers and computers to mobile devices,
and as well is free operating systems platform.
a) Principles, characteristics and features of programming in Java
It is simple. Java is one of the newest programing languages with a mixed structure
inheritance from C and C++. As well as provide an easy to write, readable and eye
catching structure (Gosling, J. , Joy, B. and others, 2014).
It is an Object Oriented Program. Because of inheritance from C++, Java it is an
OOP language. Provide a flexibility, modularity, clarity, and reusability through
encapsulation, inheritance, polymorphism, association, and composition using
specific Java classes and methods construction (Gosling, J. , Joy, B. and others,
2014).
It is a distributed platform. “Java is the foundation for virtually every type of
networked application (Java, 2014)”. Java can run in web browser, server or client
side create versatile application in different fields (Gosling, J. , Joy, B. and others,
2014).
It is interpreted, architecture-neutral and portable. Java it is an interpreted
programing language because have to run in top of Java Virtual Machine (JVM).
Java Virtual Machine transforms Java source-code to machine-code and runs
straightaway. Because of this construction Java can runs on top of all kind of
machines and architectures how long time on there can find a JVM (Gosling, J. , Joy,
B. and others, 2014).
It is robust. Java runtime has a good of error and exception handling; it is way
become of the most robust programing platform (Gosling, J. , Joy, B. and others,
2014).
It is secure. JVM integrate provides a high level of security throw a lot of tools. One
of this tools is called “sandbox” to block from execution untrusted code. Another one
5 | I o a n T u n s - H N D C S D - P J - 19/12/14
is security manager useful to block untrusted code from reading or writing on the
local computer file system (Gosling, J. , Joy, B. and others, 2014).
It is performance and dynamic because of JVM which can run the code without to be
recompiled; as well the code can be loaded on the fly (Gosling, J. , Joy, B. and
others, 2014)
b) Critically evaluate the environmental flexibility of programming in
Java.
Ability to use English language on source code defines a programing language like
high-level programing language, which is Java also. It is allows the programmer to
create a grammatical English structure in his code.
Object oriented Programing (OOP) is one of the most spread programing principles
over the world, method enhance the programmers to order the source code in a
structural way, to create classes and objects, to facilitate data structure and
operations, like a part of Java language syntax. Seeing that is a part of OOP family
languages provide all features like encapsulation, aggregation, encapsulation,
inheritance, polymorphism, association, and composition.
To can run on a computer, the source code has to be translated to a machine code.
Usually to make this kind of translation have to use a compiler or an interpreter.
Compilers transform all source code into machine-code file, and the machine-code
file is runs.
Figure 1 - Interpreter - Compiler structure
An interpreter translates each read source-code statement into machine-code or
virtual machine-code, and executes them straight away.
Figure 2 - Virtual machine structure
6 | I o a n T u n s - H N D C S D - P J - 19/12/14
Advantages of Java are to run on top of virtual machine, Java Virtual Machine, to
transform the source-code to java bytecode and run strait away. Because of this
capability a Java application allows to run in different platforms fast and within low
resource needs.
2. Solution design
A design of a software solution involves a graphical representation of customer
requirements, like interactions and relations inside of required application. Also
presents an object structures, file and data structure used on implementation.
a) Design solution
In current implementation, based on customer demand, identified three related
classes. These are person, player, and goalkeeper.
Figure 3 - ERD of Football Club
Person class handle general characteristic of a person, like first name, last name,
date of birth, height, weight.
Player class store player characteristics and history, like season when he play, no of
played games, and no of goals scored. It is an extension of person class to get all
person details.
Goalkeeper is inherited from player to get al player and person details, and in
addition store for a goalkeeper no of saved penalties.
b) Components, data and file structures required to implement a given
design.
Source code is structured in 4 files, one for each class. Main class, FootballClub,
runs from FootballClas.java file where perform all functions of application. This class
performing operations like create the working file based on user input, input values of
each parameter, display saved information from working file. Also perform menu
structure, graphical output and error handling of input operations.
Person.java runs Person class inherited from FootballClub class like an extension.
All functions described on ERD Football Club for this class are performs hear. As
well as defines necessary variables, like FirstName, LastName, Dob of type String
and height and weight of type int.
7 | I o a n T u n s - H N D C S D - P J - 19/12/14
Other two classes, Player and Goalkeeper, from ERD Football Club run in two
different files. Also presents inheritance, Player from Person and Goalkeeper from
Player using extension syntax.
Also a working file is created, or open if exits. This is a .txt file where all input data
are stored. Like operations in this file are performing open, writing and reading.
3. Implement Java solutions
a) Implement a Java programming solutions based on a prepared
design.
Full details about implementation are presented in task 3.e) where displays all
source code.
b) Define relationships between objects to implement design
requirements.
All objects of this implementation are inherited in a structural way using extend
statement. Top class is FootballClub to ensure all functions of application. Second
one is Person used to store all details of a person like first name, last name, and
date of bird, height, and weight. The next one on in inheritance chain is Player used
to store other behaviour of a player like season, number of games and how many
goals marks. Goalkeeper, inherited by Player, add for a player which is goalkeeper a
function to store number of penalties that the goalkeeper has saved.
c) Implement object behaviours using control structures to meet the
design algorithms.
For structure control has chosen to use an if statement, do-wile and switch.
If statement is used to check if the working directory has created.
Do-while is used to return back when a operation is done if the exit(), value 4,
function is not called to finish the program, case 4 of our switch.
8 | I o a n T u n s - H N D C S D - P J - 19/12/14
Switch is used to create the menu of application. Each case performs different
actions. Full details are presented in tack 3.e)
While statement is used to read working file on switch case 3.
d) Identify and implement opportunities for error handling and
reporting.
For error handling and reporting has used try-catch using IOException Java function
to store and display the error. Implementation is done like bellow. Full range of error
handling implementation are presented in task 3.e)
9 | I o a n T u n s - H N D C S D - P J - 19/12/14
e) Make
effective use of an integrated development environment including
code and screen templates
FootballClub.java
10 | I o a n T u n s - H N D C S D - P J - 19/12/14
11 | I o a n T u n s - H N D C S D - P J - 19/12/14
12 | I o a n T u n s - H N D C S D - P J - 19/12/14
Person.java
13 | I o a n T u n s - H N D C S D - P J - 19/12/14
Player.java
14 | I o a n T u n s - H N D C S D - P J - 19/12/14
Goalkeeper.java
4. Test and Document Java solutions
For testing purpose an investigation is carry on to prove the software meet functional
and quality requirement. As well as a good documentation is prepared to allow the
users to understand all functions provided by de application and an easy an fast
maintenance and further development to be on place.
a) and b) Critically review and test a Java programming solution and
analyse test results against expected results to identify
discrepancies.
Software testing is carrying on in meaning of identifying all software bugs and if all
functional requirements are in place. The stakeholders have to know at all-time what
is going on and how some problems can solved them out.
A software testing can be done in using various methods, like white-box and black-
box testing, or visual testing. All this testing does can be done using different
approach. One of this approach is call static testing where a reviews, walkthroughs,
or inspections are involves. The other one is called dynamic testing where uses test
cases (Hetzel, 1988).
15 | I o a n T u n s - H N D C S D - P J - 19/12/14
Test case
Each test has to provide an output, if the software meet or not meet the requirement.
This report can include also recommendations of improvements.
Case Test Case Expected results Return results
1 Insert a correct path file Move to next step
without error
PASS
2 Insert a wrong path file Return an exception
error message and
asking to insert
correct path file
PASS
3 Insert character like path file Return an exception
error message asking
to insert correct path
file
FAIL, application
move ahead with a
wrong working file.
16 | I o a n T u n s - H N D C S D - P J - 19/12/14
Improvements: Improve error handling implementation to return an error
message and ask for a correct path.
4 Insert character on all fields at
player insertion.
Expect return an error
message at DoB,
Height, Weight,
Games Played and
Goal Scored fields
FAILD
Accesept on DoB
field difrent data
type wirhout
returning error
At the Height field
return unexpected
error and stop
execution
Improvements For DoB field have to create a validation form to not accept other
input then date format.
Revise try-catch implementation on menu section to return an
error if inappropriate data type are inserted
5 Insert appropriate data in each
field, like first name and last
Have to record all
details in working file,
PASS
17 | I o a n T u n s - H N D C S D - P J - 19/12/14
name string type, DoB and
season played data type, and
height, weight, games played
and goals scored int type
and display a
massage “Player
FirstName LastName
added successfully!”
and return to main
menu
6 Insert integer type into first
name and last name fields
Return a massage
about not correct
name format
FAIL, application
doesn’t return an
error and accept to
insert a name with
an integer value.
Improvements: Create a form validation for fields First Name and Last
18 | I o a n T u n s - H N D C S D - P J - 19/12/14
Name to not accepts a single character or an integer like
first name or last name
7 List all team members from
working file.
Display on the screen
all records from
working file
PASS
Debugging
Debugging process has done using tools provided by IDE, in our case NetBeans
IDE.
No bugs found.
c) Evaluate independent feedback on a developed Java program
solution and make recommendations for improvements.
Feedback from Ciprian Hincu:
19 | I o a n T u n s - H N D C S D - P J - 19/12/14
The program that Ioan developed marks all the requirements that have been set up
in the scenario. It seems to perform relatively well as long as the input given is not
different than the data type assigned to the specific variable. One issue that I can
spot while viewing the code is that the commenting for different sections aren`t
accurate enough for me as a new programmer working with the same code to fully
understand Ion`s logic behind the program itself. I believe that a bit more instructions
should have been added along the code. One very important thing that wasn`t
documented within the program code was the file path for the created text file where
the program saves all its information. One separate section with instructions should
have been created to let other persons know that we must check and modify the file
path according to our own Operating System.
A strong suggestion would be to try and compile the program into an .exe application
to make it easier for non-programmers to run this application. Another aspect would
be to try and upgrade the program from the console/command line view to a more
interactive and easy to use interface; for that changes I recommend JavaFX library
or the JAVA SWING framework. At this point even if the program might run correctly
in the best case scenarios, it sure lacks some features that make it easier to
understand, use or altered.
However for the sake of demonstrating beginner Java skills, ION did a good work
when going from theory to practice?
d) Create user documentations for the development Java program
solution.
Each part of the application has a clear statement with on the fly helps and
instructions.
Each input have to be followed by enter to be validate.
Setup working directory:
- Start application using NetBeans IDE, go to FootballClub like bellow
- Press run button at the top
20 | I o a n T u n s - H N D C S D - P J - 19/12/14
- Is required to tape working directory in following format “C:filename.txt”
- If a wrong path is provided is required to insert a correct one.
- Main Menu
1. Add Player – perform input of player details
2. Add Goalkeeper – perform input of goalkeeper details
3. View Team List – display team list
4. Exit – exit from application
If any other value for menu are inserted a massage is display and ask you to
select the correct menu.
21 | I o a n T u n s - H N D C S D - P J - 19/12/14
- 1. Add player
Input 1 and press enter and start to ask you about inserting player details line
by line
When all details are inserted, details are saved in working directory and a
massage is display.
- Add Goalkeeper
Input 2 and press enter and start to ask you about inserting goalkeeper details
line by line
22 | I o a n T u n s - H N D C S D - P J - 19/12/14
When all details are inserted, details are saved in working directory and a
massage is display
- 3 View Team List
Input 3 and press enter – all saved details are displayed.
23 | I o a n T u n s - H N D C S D - P J - 19/12/14
- 4 – Exit
Input 4 and press enter – application is closed
e) Create technical documentation for the support and maintenance of
a Java program solution.
In general, the documentation is performed on a set of templates predefined.
However, with the development of the Web, a number of increasingly great articles
documentation can be found on wikis, specialized web pages, and blogs, especially
those intended for developers. Forms and MSDN Library documentation,
Documentation Java, GNU libc are available online.
Forms code documentation; interfaces include man pages, web pages, tutorials,
LaTeX documents, references etc. In general, most forms of documentation used
provides a web interface (MSDN library, man pages, info pages, reference libc, Java
API, Python Standard Library, PHP) to facilitate access and read them.
A possible form of code documentation, successfully used Java API documentation
is automatically generated from sources using Javadoc tool. Using a special style
commenting sources that do not affect readability code, applications automatically
generate documentation obtained in various formats, the most common being HTML,
information about using the / classes / methods exposed
Technical documentation has don by using in line comment like
Also because is a Java development has use Javadoc, is the Java API
Documentation Generator.
24 | I o a n T u n s - H N D C S D - P J - 19/12/14
FootballClub Class documentation
Goalkeeper Class
25 | I o a n T u n s - H N D C S D - P J - 19/12/14
Using Javadoc all related operations to documented functions and objects are
documented and present a clear view about what is going on.
Like create an instance of Goalkeeper show information about Goalkeeper Class
Or instance of setFname documented in FootballClub Class.
26 | I o a n T u n s - H N D C S D - P J - 19/12/14
5. Conclusion
Java is one of the most versatile programing languages because is platform
independent, is object oriented and provide a clear structure. As well as provide
strong security and debugging and documenting tools (Cadenhead, 2013).
.
27 | I o a n T u n s - H N D C S D - P J - 19/12/14
6. Bibliography
Bennett, S. and McRobb, S. and Farmer, R., n.d. Object-Oriented Systems Analysis
and Desing using UML. 3rd ed. s.l.:McGraw Hill.
Bloch, J., 2012. Effective Java. 2nd Edition ed. s.l.:Pearson Higher Education .
Cadenhead, R., 2013. Java in 21 Dayes. 6th ed. s.l.:Pearson Education.
Drake, Peter, 2013. Data Structures and Algorithms in Java. s.l.: Pearson.
Fortier, P. J. and Michel, H. E., 2003. Computer Systems Performance Evaluation
and Prediction. Burlington: Digital Press.
Gosling, J. , Joy, B. and others, 2014. The Java® Language Specification. [Online]
Available at: http://docs.oracle.com/javase/specs/jls/se8/html/index.html
[Accessed 02 12 2014].
Hetzel, B., 1988. The Complete Guide to Software Testing. 2nd ed. s.l.:John
Wiley&Sons Inc..
Java, 2014. New to Java Programming Center. [Online]
Available at:
http://www.oracle.com/technetwork/topics/newtojava/overview/index.html
[Accessed 04 12 2014].
Myers,G. J. and Standler, C. and Badgett, T., 2012. The art of software testing. 3-th
ed. New Jersey: Jhone Wiley& Sons Inc.

More Related Content

What's hot

6 Weeks Project Based Summer Training
6 Weeks Project Based Summer Training6 Weeks Project Based Summer Training
6 Weeks Project Based Summer TrainingTech Mentro
 
6 Weeks Summer Training on Java By SSDN Technologies
6 Weeks Summer Training on Java By SSDN Technologies6 Weeks Summer Training on Java By SSDN Technologies
6 Weeks Summer Training on Java By SSDN TechnologiesDavid Son
 
summer training report on java
summer training report on java  summer training report on java
summer training report on java Shiva Bhatt
 
Report summer training core java
Report summer training core javaReport summer training core java
Report summer training core javaSudhanshuVijay3
 
Neel training report
Neel training reportNeel training report
Neel training reportNeel Chandra
 
Summer training report on java se6 technology
Summer training  report on java se6 technologySummer training  report on java se6 technology
Summer training report on java se6 technologyShamsher Ahmed
 
An Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmAn Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmIRJET Journal
 
Java report by ravi raja
Java report by ravi rajaJava report by ravi raja
Java report by ravi rajaRaviRaja55
 
Advance java summer training report
Advance java summer training report Advance java summer training report
Advance java summer training report Nitesh Saini
 
JPT : A SIMPLE JAVA-PYTHON TRANSLATOR
JPT : A SIMPLE JAVA-PYTHON TRANSLATOR JPT : A SIMPLE JAVA-PYTHON TRANSLATOR
JPT : A SIMPLE JAVA-PYTHON TRANSLATOR caijjournal
 
Summer internship report
Summer internship reportSummer internship report
Summer internship reportIpsit Pradhan
 
Vikeshp
VikeshpVikeshp
VikeshpMdAsu1
 
Industrial training report
Industrial training reportIndustrial training report
Industrial training reportAnurag Gautam
 
Best Industrial training report
Best Industrial training reportBest Industrial training report
Best Industrial training reportShivam Saxena
 

What's hot (20)

6 Weeks Project Based Summer Training
6 Weeks Project Based Summer Training6 Weeks Project Based Summer Training
6 Weeks Project Based Summer Training
 
Ijetcas14 385
Ijetcas14 385Ijetcas14 385
Ijetcas14 385
 
6 Weeks Summer Training on Java By SSDN Technologies
6 Weeks Summer Training on Java By SSDN Technologies6 Weeks Summer Training on Java By SSDN Technologies
6 Weeks Summer Training on Java By SSDN Technologies
 
gopal hp
gopal hpgopal hp
gopal hp
 
summer training report on java
summer training report on java  summer training report on java
summer training report on java
 
Report summer training core java
Report summer training core javaReport summer training core java
Report summer training core java
 
Neel training report
Neel training reportNeel training report
Neel training report
 
Summer training report on java se6 technology
Summer training  report on java se6 technologySummer training  report on java se6 technology
Summer training report on java se6 technology
 
Core Java Training report
Core Java Training reportCore Java Training report
Core Java Training report
 
An Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting AlgorithmAn Efficient Approach to Produce Source Code by Interpreting Algorithm
An Efficient Approach to Produce Source Code by Interpreting Algorithm
 
Industrial Training report on java
Industrial  Training report on javaIndustrial  Training report on java
Industrial Training report on java
 
JAVA CORE
JAVA COREJAVA CORE
JAVA CORE
 
Java report by ravi raja
Java report by ravi rajaJava report by ravi raja
Java report by ravi raja
 
Advance java summer training report
Advance java summer training report Advance java summer training report
Advance java summer training report
 
Industrial training presentation
Industrial training presentationIndustrial training presentation
Industrial training presentation
 
JPT : A SIMPLE JAVA-PYTHON TRANSLATOR
JPT : A SIMPLE JAVA-PYTHON TRANSLATOR JPT : A SIMPLE JAVA-PYTHON TRANSLATOR
JPT : A SIMPLE JAVA-PYTHON TRANSLATOR
 
Summer internship report
Summer internship reportSummer internship report
Summer internship report
 
Vikeshp
VikeshpVikeshp
Vikeshp
 
Industrial training report
Industrial training reportIndustrial training report
Industrial training report
 
Best Industrial training report
Best Industrial training reportBest Industrial training report
Best Industrial training report
 

Viewers also liked

Implementing Data Structures and Algorithms
Implementing Data Structures and AlgorithmsImplementing Data Structures and Algorithms
Implementing Data Structures and AlgorithmsIoan Tuns
 
Rassegna Web Social "Ma il mare non vale una cicca?" 2015
Rassegna Web Social "Ma il mare non vale una cicca?" 2015Rassegna Web Social "Ma il mare non vale una cicca?" 2015
Rassegna Web Social "Ma il mare non vale una cicca?" 2015Marevivo Italia
 
Athletic club Setup a pilot site using Soft Systems Methodology
Athletic club Setup a pilot site using Soft Systems MethodologyAthletic club Setup a pilot site using Soft Systems Methodology
Athletic club Setup a pilot site using Soft Systems MethodologyIoan Tuns
 
Business Intelligence Report Ioan Tuns LON29101243
Business Intelligence Report Ioan Tuns LON29101243Business Intelligence Report Ioan Tuns LON29101243
Business Intelligence Report Ioan Tuns LON29101243Ioan Tuns
 
The Stars - Ioan Tuns
The Stars - Ioan TunsThe Stars - Ioan Tuns
The Stars - Ioan TunsIoan Tuns
 
Business Intelligence Property price analysis A dashboard visualisation
Business Intelligence Property price analysis A dashboard visualisationBusiness Intelligence Property price analysis A dashboard visualisation
Business Intelligence Property price analysis A dashboard visualisationIoan Tuns
 
_var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1...
_var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1..._var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1...
_var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1...Ioan Tuns
 

Viewers also liked (15)

Implementing Data Structures and Algorithms
Implementing Data Structures and AlgorithmsImplementing Data Structures and Algorithms
Implementing Data Structures and Algorithms
 
Rassegna Web Social "Ma il mare non vale una cicca?" 2015
Rassegna Web Social "Ma il mare non vale una cicca?" 2015Rassegna Web Social "Ma il mare non vale una cicca?" 2015
Rassegna Web Social "Ma il mare non vale una cicca?" 2015
 
橘子 Y10
橘子 Y10橘子 Y10
橘子 Y10
 
Athletic club Setup a pilot site using Soft Systems Methodology
Athletic club Setup a pilot site using Soft Systems MethodologyAthletic club Setup a pilot site using Soft Systems Methodology
Athletic club Setup a pilot site using Soft Systems Methodology
 
Medborgarundersökningen Mariehamn 2015 slideshow
Medborgarundersökningen Mariehamn 2015 slideshowMedborgarundersökningen Mariehamn 2015 slideshow
Medborgarundersökningen Mariehamn 2015 slideshow
 
Business Intelligence Report Ioan Tuns LON29101243
Business Intelligence Report Ioan Tuns LON29101243Business Intelligence Report Ioan Tuns LON29101243
Business Intelligence Report Ioan Tuns LON29101243
 
The Stars - Ioan Tuns
The Stars - Ioan TunsThe Stars - Ioan Tuns
The Stars - Ioan Tuns
 
Konjunkturläget på Åland våren 2016
Konjunkturläget på Åland våren 2016 Konjunkturläget på Åland våren 2016
Konjunkturläget på Åland våren 2016
 
Bobinado de un trafo
Bobinado de un trafoBobinado de un trafo
Bobinado de un trafo
 
Språk i det privata näringslivet på Åland 2016
Språk i det privata näringslivet på Åland 2016 Språk i det privata näringslivet på Åland 2016
Språk i det privata näringslivet på Åland 2016
 
Löner inom den privata sektorn 2014
Löner inom den privata sektorn 2014Löner inom den privata sektorn 2014
Löner inom den privata sektorn 2014
 
Q Magazine Analysis
Q Magazine AnalysisQ Magazine Analysis
Q Magazine Analysis
 
Ekonomisk översikt hösten 2015
Ekonomisk översikt hösten 2015Ekonomisk översikt hösten 2015
Ekonomisk översikt hösten 2015
 
Business Intelligence Property price analysis A dashboard visualisation
Business Intelligence Property price analysis A dashboard visualisationBusiness Intelligence Property price analysis A dashboard visualisation
Business Intelligence Property price analysis A dashboard visualisation
 
_var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1...
_var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1..._var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1...
_var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-1...
 

Similar to _var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-12-2014

Similar to _var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-12-2014 (20)

Sulthan's_JAVA_Material_for_B.Sc-CS.pdf
Sulthan's_JAVA_Material_for_B.Sc-CS.pdfSulthan's_JAVA_Material_for_B.Sc-CS.pdf
Sulthan's_JAVA_Material_for_B.Sc-CS.pdf
 
A CASE STUDY JAVA IS SECURE PROGRAMMING LANGUAGE
A CASE STUDY  JAVA IS SECURE PROGRAMMING LANGUAGEA CASE STUDY  JAVA IS SECURE PROGRAMMING LANGUAGE
A CASE STUDY JAVA IS SECURE PROGRAMMING LANGUAGE
 
CAR SHOWROOM SYSTEM
CAR SHOWROOM SYSTEMCAR SHOWROOM SYSTEM
CAR SHOWROOM SYSTEM
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Training report
Training reportTraining report
Training report
 
History Of C Essay
History Of C EssayHistory Of C Essay
History Of C Essay
 
java traning report_Summer.docx
java traning report_Summer.docxjava traning report_Summer.docx
java traning report_Summer.docx
 
Introduction to programing languages part 1
Introduction to programing languages   part 1Introduction to programing languages   part 1
Introduction to programing languages part 1
 
String class
String classString class
String class
 
(Ebook pdf) java programming language basics
(Ebook pdf)   java programming language basics(Ebook pdf)   java programming language basics
(Ebook pdf) java programming language basics
 
Introduction of Java Programming.ppt
Introduction of Java Programming.pptIntroduction of Java Programming.ppt
Introduction of Java Programming.ppt
 
3350703
33507033350703
3350703
 
Java seminar
Java seminarJava seminar
Java seminar
 
OOP Java
OOP JavaOOP Java
OOP Java
 
Java for C++ programers
Java for C++ programersJava for C++ programers
Java for C++ programers
 
Presentation5
Presentation5Presentation5
Presentation5
 
Java
JavaJava
Java
 
Java programming language basics
Java programming language basicsJava programming language basics
Java programming language basics
 
Java Basic.pdf
Java Basic.pdfJava Basic.pdf
Java Basic.pdf
 
Programming in java ppt
Programming in java  pptProgramming in java  ppt
Programming in java ppt
 

_var_www_moodledata_temp_turnitintooltwo_1014058337._Ioan_Tuns-HNDCSD-PJ-19-12-2014

  • 1. 1 | I o a n T u n s - H N D C S D - P J - 19/12/14 Assignment Front Cover Sheet PART 1 – To be completedby the student StudentName IoanTuns StudentIDNumber LON291101243 Module Name (e.g.:BusinessEnvironment) ProgramminginJava Course (e.g.HNDBusiness) HND inCOMP & SD (Year2, Semester2) AssignmentTitle StudentRecordKeepingSystems Module Lecturer Rafiqul Islam Numberof Words 2563 AssignmentDue Date 18/12/14 SubmissionDate 19/12/14 Firstsubmission  Resubmission(asperlecturer’s instruction)  No cheating, dishonesty or plagiarism will be accepted from any learner who enrols for a qualification/course.All sourcesmustbe properlyreferencedusingthe HarvardReferencingSystem. Failure toproperlyreference anysource constitutes plagiarism whereby the learner will be subject to disciplinary action, and will likely refer (fail) a unit. All assignments must be submitted in electronic format through http://moodle.lsbm.org.uk. This allows the College to check for plagiarism. PART 2 – Studentdeclaration By submitting this work to LSBM, I confirm that I have read and understood the Dishonesty and Plagiarism Policy that is applicable to all assessments and assignments submitted by me. I also confirm further that the work submitted here is my own work, save for where indicated by properreferencing.ShouldInotabide by the policy and be found guilty of plagiarism by my course lecturer or any other LSBM or appointed staff member I shall be bound by the decision of that lecturer and/or staff member as well as the terms of the Dishonesty and Plagiarism Policy. Please save your document in the following format before submitting through Moodle: Firstname- Surname–Course–Unit–Assignment-date.doc E.g.:Rubin Gurung-APDMS-BO-Assignment-3Dec 09.doc This page must be page 1 of your assignment. Start your work on page
  • 2. 2 | I o a n T u n s - H N D C S D - P J - 19/12/14 Student Record Keeping Systems
  • 3. 3 | I o a n T u n s - H N D C S D - P J - 19/12/14 Table of Contents 0. Introduction.......................................................................................................................4 1. Principles of programming in Java ...............................................................................4 a) Principles, characteristics and features of programming in Java .....................4 b) Critically evaluate the environmental flexibility of programming in Java. ........5 2. Solution design ................................................................................................................6 a) Design solution..........................................................................................................6 b) Components, data and file structures required to implement a given design.6 3. Implement Java solutions ..............................................................................................7 a) Implement a Java programming solutions based on a prepared design.........7 b) Define relationships between objects to implement design requirements. .....7 c) Implement object behaviours using control structures to meet the design algorithms. ............................................................................................................................7 d) Identify and implement opportunities for error handling and reporting. ...........8 e) Make effective use of an integrated development environment including code and screen templates................................................................................................9 FootballClub.java.............................................................................................................9 Person.java ................................................................................................................... 12 Player.java..................................................................................................................... 13 Goalkeeper.java ........................................................................................................... 14 4. Test and Document Java solutions ........................................................................... 14 a) and b) Critically review and test a Java programming solution and analyse test results against expected results to identify discrepancies. ................................ 14 Test case ....................................................................................................................... 15 Debugging ..................................................................................................................... 18 c) Evaluate independent feedback on a developed Java program solution and make recommendations for improvements.................................................................. 18 d) Create user documentations for the development Java program solution... 19 e) Create technical documentation for the support and maintenance of a Java program solution............................................................................................................... 23 5. Conclusion..................................................................................................................... 26 6. Bibliography................................................................................................................... 27
  • 4. 4 | I o a n T u n s - H N D C S D - P J - 19/12/14 0. Introduction Java become faster one of the most used programing languages because facilitates implementation from desktop to server solution (Cadenhead, 2013). This piece of work intends to present a structure of Java application, from working environments to the strong tools of error handling, debugging and cod documentation. 1. Principles of programming in Java Java Environment Java programing language is one of the newest programing language is one of the most versatile programing language, can be used in almost all kind of applications, from business use to entertainment, from servers and computers to mobile devices, and as well is free operating systems platform. a) Principles, characteristics and features of programming in Java It is simple. Java is one of the newest programing languages with a mixed structure inheritance from C and C++. As well as provide an easy to write, readable and eye catching structure (Gosling, J. , Joy, B. and others, 2014). It is an Object Oriented Program. Because of inheritance from C++, Java it is an OOP language. Provide a flexibility, modularity, clarity, and reusability through encapsulation, inheritance, polymorphism, association, and composition using specific Java classes and methods construction (Gosling, J. , Joy, B. and others, 2014). It is a distributed platform. “Java is the foundation for virtually every type of networked application (Java, 2014)”. Java can run in web browser, server or client side create versatile application in different fields (Gosling, J. , Joy, B. and others, 2014). It is interpreted, architecture-neutral and portable. Java it is an interpreted programing language because have to run in top of Java Virtual Machine (JVM). Java Virtual Machine transforms Java source-code to machine-code and runs straightaway. Because of this construction Java can runs on top of all kind of machines and architectures how long time on there can find a JVM (Gosling, J. , Joy, B. and others, 2014). It is robust. Java runtime has a good of error and exception handling; it is way become of the most robust programing platform (Gosling, J. , Joy, B. and others, 2014). It is secure. JVM integrate provides a high level of security throw a lot of tools. One of this tools is called “sandbox” to block from execution untrusted code. Another one
  • 5. 5 | I o a n T u n s - H N D C S D - P J - 19/12/14 is security manager useful to block untrusted code from reading or writing on the local computer file system (Gosling, J. , Joy, B. and others, 2014). It is performance and dynamic because of JVM which can run the code without to be recompiled; as well the code can be loaded on the fly (Gosling, J. , Joy, B. and others, 2014) b) Critically evaluate the environmental flexibility of programming in Java. Ability to use English language on source code defines a programing language like high-level programing language, which is Java also. It is allows the programmer to create a grammatical English structure in his code. Object oriented Programing (OOP) is one of the most spread programing principles over the world, method enhance the programmers to order the source code in a structural way, to create classes and objects, to facilitate data structure and operations, like a part of Java language syntax. Seeing that is a part of OOP family languages provide all features like encapsulation, aggregation, encapsulation, inheritance, polymorphism, association, and composition. To can run on a computer, the source code has to be translated to a machine code. Usually to make this kind of translation have to use a compiler or an interpreter. Compilers transform all source code into machine-code file, and the machine-code file is runs. Figure 1 - Interpreter - Compiler structure An interpreter translates each read source-code statement into machine-code or virtual machine-code, and executes them straight away. Figure 2 - Virtual machine structure
  • 6. 6 | I o a n T u n s - H N D C S D - P J - 19/12/14 Advantages of Java are to run on top of virtual machine, Java Virtual Machine, to transform the source-code to java bytecode and run strait away. Because of this capability a Java application allows to run in different platforms fast and within low resource needs. 2. Solution design A design of a software solution involves a graphical representation of customer requirements, like interactions and relations inside of required application. Also presents an object structures, file and data structure used on implementation. a) Design solution In current implementation, based on customer demand, identified three related classes. These are person, player, and goalkeeper. Figure 3 - ERD of Football Club Person class handle general characteristic of a person, like first name, last name, date of birth, height, weight. Player class store player characteristics and history, like season when he play, no of played games, and no of goals scored. It is an extension of person class to get all person details. Goalkeeper is inherited from player to get al player and person details, and in addition store for a goalkeeper no of saved penalties. b) Components, data and file structures required to implement a given design. Source code is structured in 4 files, one for each class. Main class, FootballClub, runs from FootballClas.java file where perform all functions of application. This class performing operations like create the working file based on user input, input values of each parameter, display saved information from working file. Also perform menu structure, graphical output and error handling of input operations. Person.java runs Person class inherited from FootballClub class like an extension. All functions described on ERD Football Club for this class are performs hear. As well as defines necessary variables, like FirstName, LastName, Dob of type String and height and weight of type int.
  • 7. 7 | I o a n T u n s - H N D C S D - P J - 19/12/14 Other two classes, Player and Goalkeeper, from ERD Football Club run in two different files. Also presents inheritance, Player from Person and Goalkeeper from Player using extension syntax. Also a working file is created, or open if exits. This is a .txt file where all input data are stored. Like operations in this file are performing open, writing and reading. 3. Implement Java solutions a) Implement a Java programming solutions based on a prepared design. Full details about implementation are presented in task 3.e) where displays all source code. b) Define relationships between objects to implement design requirements. All objects of this implementation are inherited in a structural way using extend statement. Top class is FootballClub to ensure all functions of application. Second one is Person used to store all details of a person like first name, last name, and date of bird, height, and weight. The next one on in inheritance chain is Player used to store other behaviour of a player like season, number of games and how many goals marks. Goalkeeper, inherited by Player, add for a player which is goalkeeper a function to store number of penalties that the goalkeeper has saved. c) Implement object behaviours using control structures to meet the design algorithms. For structure control has chosen to use an if statement, do-wile and switch. If statement is used to check if the working directory has created. Do-while is used to return back when a operation is done if the exit(), value 4, function is not called to finish the program, case 4 of our switch.
  • 8. 8 | I o a n T u n s - H N D C S D - P J - 19/12/14 Switch is used to create the menu of application. Each case performs different actions. Full details are presented in tack 3.e) While statement is used to read working file on switch case 3. d) Identify and implement opportunities for error handling and reporting. For error handling and reporting has used try-catch using IOException Java function to store and display the error. Implementation is done like bellow. Full range of error handling implementation are presented in task 3.e)
  • 9. 9 | I o a n T u n s - H N D C S D - P J - 19/12/14 e) Make effective use of an integrated development environment including code and screen templates FootballClub.java
  • 10. 10 | I o a n T u n s - H N D C S D - P J - 19/12/14
  • 11. 11 | I o a n T u n s - H N D C S D - P J - 19/12/14
  • 12. 12 | I o a n T u n s - H N D C S D - P J - 19/12/14 Person.java
  • 13. 13 | I o a n T u n s - H N D C S D - P J - 19/12/14 Player.java
  • 14. 14 | I o a n T u n s - H N D C S D - P J - 19/12/14 Goalkeeper.java 4. Test and Document Java solutions For testing purpose an investigation is carry on to prove the software meet functional and quality requirement. As well as a good documentation is prepared to allow the users to understand all functions provided by de application and an easy an fast maintenance and further development to be on place. a) and b) Critically review and test a Java programming solution and analyse test results against expected results to identify discrepancies. Software testing is carrying on in meaning of identifying all software bugs and if all functional requirements are in place. The stakeholders have to know at all-time what is going on and how some problems can solved them out. A software testing can be done in using various methods, like white-box and black- box testing, or visual testing. All this testing does can be done using different approach. One of this approach is call static testing where a reviews, walkthroughs, or inspections are involves. The other one is called dynamic testing where uses test cases (Hetzel, 1988).
  • 15. 15 | I o a n T u n s - H N D C S D - P J - 19/12/14 Test case Each test has to provide an output, if the software meet or not meet the requirement. This report can include also recommendations of improvements. Case Test Case Expected results Return results 1 Insert a correct path file Move to next step without error PASS 2 Insert a wrong path file Return an exception error message and asking to insert correct path file PASS 3 Insert character like path file Return an exception error message asking to insert correct path file FAIL, application move ahead with a wrong working file.
  • 16. 16 | I o a n T u n s - H N D C S D - P J - 19/12/14 Improvements: Improve error handling implementation to return an error message and ask for a correct path. 4 Insert character on all fields at player insertion. Expect return an error message at DoB, Height, Weight, Games Played and Goal Scored fields FAILD Accesept on DoB field difrent data type wirhout returning error At the Height field return unexpected error and stop execution Improvements For DoB field have to create a validation form to not accept other input then date format. Revise try-catch implementation on menu section to return an error if inappropriate data type are inserted 5 Insert appropriate data in each field, like first name and last Have to record all details in working file, PASS
  • 17. 17 | I o a n T u n s - H N D C S D - P J - 19/12/14 name string type, DoB and season played data type, and height, weight, games played and goals scored int type and display a massage “Player FirstName LastName added successfully!” and return to main menu 6 Insert integer type into first name and last name fields Return a massage about not correct name format FAIL, application doesn’t return an error and accept to insert a name with an integer value. Improvements: Create a form validation for fields First Name and Last
  • 18. 18 | I o a n T u n s - H N D C S D - P J - 19/12/14 Name to not accepts a single character or an integer like first name or last name 7 List all team members from working file. Display on the screen all records from working file PASS Debugging Debugging process has done using tools provided by IDE, in our case NetBeans IDE. No bugs found. c) Evaluate independent feedback on a developed Java program solution and make recommendations for improvements. Feedback from Ciprian Hincu:
  • 19. 19 | I o a n T u n s - H N D C S D - P J - 19/12/14 The program that Ioan developed marks all the requirements that have been set up in the scenario. It seems to perform relatively well as long as the input given is not different than the data type assigned to the specific variable. One issue that I can spot while viewing the code is that the commenting for different sections aren`t accurate enough for me as a new programmer working with the same code to fully understand Ion`s logic behind the program itself. I believe that a bit more instructions should have been added along the code. One very important thing that wasn`t documented within the program code was the file path for the created text file where the program saves all its information. One separate section with instructions should have been created to let other persons know that we must check and modify the file path according to our own Operating System. A strong suggestion would be to try and compile the program into an .exe application to make it easier for non-programmers to run this application. Another aspect would be to try and upgrade the program from the console/command line view to a more interactive and easy to use interface; for that changes I recommend JavaFX library or the JAVA SWING framework. At this point even if the program might run correctly in the best case scenarios, it sure lacks some features that make it easier to understand, use or altered. However for the sake of demonstrating beginner Java skills, ION did a good work when going from theory to practice? d) Create user documentations for the development Java program solution. Each part of the application has a clear statement with on the fly helps and instructions. Each input have to be followed by enter to be validate. Setup working directory: - Start application using NetBeans IDE, go to FootballClub like bellow - Press run button at the top
  • 20. 20 | I o a n T u n s - H N D C S D - P J - 19/12/14 - Is required to tape working directory in following format “C:filename.txt” - If a wrong path is provided is required to insert a correct one. - Main Menu 1. Add Player – perform input of player details 2. Add Goalkeeper – perform input of goalkeeper details 3. View Team List – display team list 4. Exit – exit from application If any other value for menu are inserted a massage is display and ask you to select the correct menu.
  • 21. 21 | I o a n T u n s - H N D C S D - P J - 19/12/14 - 1. Add player Input 1 and press enter and start to ask you about inserting player details line by line When all details are inserted, details are saved in working directory and a massage is display. - Add Goalkeeper Input 2 and press enter and start to ask you about inserting goalkeeper details line by line
  • 22. 22 | I o a n T u n s - H N D C S D - P J - 19/12/14 When all details are inserted, details are saved in working directory and a massage is display - 3 View Team List Input 3 and press enter – all saved details are displayed.
  • 23. 23 | I o a n T u n s - H N D C S D - P J - 19/12/14 - 4 – Exit Input 4 and press enter – application is closed e) Create technical documentation for the support and maintenance of a Java program solution. In general, the documentation is performed on a set of templates predefined. However, with the development of the Web, a number of increasingly great articles documentation can be found on wikis, specialized web pages, and blogs, especially those intended for developers. Forms and MSDN Library documentation, Documentation Java, GNU libc are available online. Forms code documentation; interfaces include man pages, web pages, tutorials, LaTeX documents, references etc. In general, most forms of documentation used provides a web interface (MSDN library, man pages, info pages, reference libc, Java API, Python Standard Library, PHP) to facilitate access and read them. A possible form of code documentation, successfully used Java API documentation is automatically generated from sources using Javadoc tool. Using a special style commenting sources that do not affect readability code, applications automatically generate documentation obtained in various formats, the most common being HTML, information about using the / classes / methods exposed Technical documentation has don by using in line comment like Also because is a Java development has use Javadoc, is the Java API Documentation Generator.
  • 24. 24 | I o a n T u n s - H N D C S D - P J - 19/12/14 FootballClub Class documentation Goalkeeper Class
  • 25. 25 | I o a n T u n s - H N D C S D - P J - 19/12/14 Using Javadoc all related operations to documented functions and objects are documented and present a clear view about what is going on. Like create an instance of Goalkeeper show information about Goalkeeper Class Or instance of setFname documented in FootballClub Class.
  • 26. 26 | I o a n T u n s - H N D C S D - P J - 19/12/14 5. Conclusion Java is one of the most versatile programing languages because is platform independent, is object oriented and provide a clear structure. As well as provide strong security and debugging and documenting tools (Cadenhead, 2013). .
  • 27. 27 | I o a n T u n s - H N D C S D - P J - 19/12/14 6. Bibliography Bennett, S. and McRobb, S. and Farmer, R., n.d. Object-Oriented Systems Analysis and Desing using UML. 3rd ed. s.l.:McGraw Hill. Bloch, J., 2012. Effective Java. 2nd Edition ed. s.l.:Pearson Higher Education . Cadenhead, R., 2013. Java in 21 Dayes. 6th ed. s.l.:Pearson Education. Drake, Peter, 2013. Data Structures and Algorithms in Java. s.l.: Pearson. Fortier, P. J. and Michel, H. E., 2003. Computer Systems Performance Evaluation and Prediction. Burlington: Digital Press. Gosling, J. , Joy, B. and others, 2014. The Java® Language Specification. [Online] Available at: http://docs.oracle.com/javase/specs/jls/se8/html/index.html [Accessed 02 12 2014]. Hetzel, B., 1988. The Complete Guide to Software Testing. 2nd ed. s.l.:John Wiley&Sons Inc.. Java, 2014. New to Java Programming Center. [Online] Available at: http://www.oracle.com/technetwork/topics/newtojava/overview/index.html [Accessed 04 12 2014]. Myers,G. J. and Standler, C. and Badgett, T., 2012. The art of software testing. 3-th ed. New Jersey: Jhone Wiley& Sons Inc.