java assign

profileprojectking
bco6008_writ1_assignment_2016-17.docx

BCO6008: Object-Oriented Systems 2

Introduction

The assessment for BCO6008: Object-Oriented Systems 2 consists of two stages:

· Assignment Stage 1, worth 50% of the relative weighting

· Assignment Stage 2, worth 50% of the relative weighting

Assignment stage 1, involves critical analysis for the proposed linguistic analysis techniques with extracting features from the data set provided. Assignment stage 2, implementing/representing the data output with integrating modelling techniques (I.e.: J48 decision tree).

Learning Objectives

On the completion of this assignment you will be able to:

· Demonstrate an understanding of methods of object oriented (OO) analysis and design using an appropriate notation.

· Demonstrate an understanding of professional development processes appropriate to the various stages of OO development.

· Demonstrate fluency at the level of an advanced beginner in a programming language suitable for object-oriented development.

· Critically evaluate and choose from a range of approaches to developing OO software.

· Critically evaluate alternative OO designs as potential solutions to particular software requirements,

Task

Explore a real-life application for psycholinguistics science

Background

As computer system applications become more complex, with more complex demands of ever more intuitive human-application interaction, research in predicting and understanding user behaviour, applied to particular systems becomes ever more important, impacting elements of daily societal life, both professionally and personally. Understanding user behaviour, during particular events, leads to a more informed predictive model, thus allowing the construction of more intuitive interfaces and a better user experience.

In this assignment you will need to explorer psycholinguistics science, aims to understand whether the words we use in our daily life reflect our personalities and what we fell. Psycholinguistics is a well-established and active research field, and it widely accepted that written text can reflect more than words, it conveys emotion and personality traits.

IBM established a research team called “IBM Watson”, and they produced multiple of technology platform that uses natural language processing and machine learning to represent insights from large amount of unstructured data.

In this assignment, you will be using IBM Watson personality insight and tone analyser, you will need to build your JAVA OOP program to integrate with IBM tool.

Stage 1 – Explore the science/Extract features

· Demonstrate the science behind both IBM Watson personality insight and tone analyzer.

· Handling data set.

· Integrate IBM Watson tool into your software.

· Extract both Personality Insights and Tone analyzer form the data set.

· Initial thoughts on how to represent/model the output for the next stage.

Stage 1 Assessing: Libraries, API Integration, Collections, Design patterns, Refactoring, UML.

Stage 2 – Represent/Modelling data

· Determine list of modelling algorithms for such model.

· Data exploration and modeling (Weka integration).

· Build a Graphic user interface using appropriate pattern.

· Use apache commons logging component for errors logging.

· Develop appropriate documentation (e.g most important use case, Javadoc).

Stage 2 Assessing: GUI, Testing, Logging, Documentation, Design Patterns, API integration.

Critical Reflection

An important part of this assignment is the Critical Reflection.

This will include:

· Any refactoring as you develop your code. Provide before and after scenarios. Especially important if you refactor to known patterns, use of advanced code patterns like inner classes, interfaces, multiple inheritance

· Comparison of the two methods employed

· Discussion of usefulness of these UML diagrams

· Significance/ relevance of this study

Grading Criteria

Stage 1

Task

Marks

OO Design – includes: use case, class and sequence diagrams

10%

OO Programming – includes file formats and file handling

20%

Collections

15%

Use of Libraries

15%

Design patterns

10%

Refactoring

10%

Critical Reflection (detailing important aspects of above)

20%

Stage 2

Task

Marks

Design patterns (especially MVC for GUI)

10%

OO Programming – includes Representation and Reasoning

30%

GUI elements

10%

Documentation (correct use of Javadoc, and/or accompanying documents, inc. UML diagrams, tests etc), Logging and Testing (relating to use cases)

30%

Critical Reflection (detailing important aspects of above)

20%

Deliverables

You will need to submit the following:

· Word document

· Critical analysis

· Copy of your code including documentation

· Programming

· A zip file containing all of your code files

Submission

Submission will be online via the BCO6008 Assignment area on Moodle; your assignment should be a compressed zip archive with the name username.zip (e.g. sm19056.zip). Before you upload your assignment, make sure that the compressed archive contains all necessary files and unzips into an appropriately named directory. Ensure that you complete an assignment submission form (also available on Moodle) and include this in your compressed archive.

All submitted code should compile and run under the Java 7 JDK as installed on the Cardiff Met network. If you decide to use Java 8 API features, please draw attention to how and why you have decided to used them. You do not have to use Eclipse to complete this assignment, but it is recommended IDE for the module.

The assignment should be conducted individually. Attention is drawn to the University rules on plagiarism and collusion; please refer to Section 2.6 of the Cardiff Metropolitan University Student Handbook1.

Support

Questions regarding this coursework should primarily be asked in the tutorial sessions. General questions can also be posted on the BCO6008 Moodle forum (use of the forum is strongly encouraged, but please adhere to the forum rules regarding individual specifics and posting code) or via email to me ([email protected]).

Feedback

Individual and group feedback will be provided via Moodle. Note that any mark you receive for the assignment is preliminary and subject to confirmation at the June examination board.

Useful Links

· https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/services-catalog.html

· https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/personality-insights.html

· https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/tone-analyzer.html

· http://www.ibm.com/watson/