Programming help home

Friday 29 July 2016

UKCBC Web Design Assignment Case Study

1. Introduction


The internet is perhaps the most important IT development of the last few decades. It provides new ways to communicate and share information. It has also revolutionised the way people and businesses use IT. 

Businesses can now take part in a global marketplace, widening their scope for potential customers, all from a local base and with relatively low start-up costs. The need for good web designers and developers continues to grow as more and more companies realise they must develop a web presence and keep it maintained and updated. As web technologies develop there is an increasing need for websites to be interactive. This allows two-way communication between the user and the website. 

The number of websites on the World Wide Web has increased dramatically and competition is very fierce. This means that designers must employ increasingly sophisticated techniques to capture interest, as well as ensuring that an appropriate company image is presented. Usability issues, such as navigation methods, must be considered carefully. A poorly-designed structure could result in users becoming confused or frustrated and navigating away from the website. 

Learners will be.g.in this unit by evaluating existing websites, in the context of cross-platforms, range of browsers, and design features. Designing websites, which are accessible to all types of users, is a fundamental aspect of any website design. 

This unit also considers the whole process from identification of need, design, implementation, testing, maintenance and review. It is important that learners do not just develop skills in specific techniques but are also able to select when and where they are most appropriate, basing this decision on client and user needs. As with any field of IT, a comprehensive understanding of the relevant legislation and guidelines is always fundamental.     

1.1. Aim

To enable learners to understand the concepts of website design and apply their own creativity in designing and developing interactive websites.
1.2. Objectives

On successful completion of this unit a learner will:

1. Understand website design concepts 
2. Be able to design interactive websites

3. Be able to implement interactive websites 

4. Be able to test interactive websites 

2.0. Unit / Module Content

1 Understand website design concepts

Users: types e.g. expert, regular, occasional, novice, special needs; requirements e.g. psychological, cultural, social and environmental, health and safety, education and work  
Site analysis: purpose e.g. communication, real-time information, commercial, government, education, business, entertainment, downloading/uploading, web storage; fit for purpose e.g. meets organisational and site objectives; planning e.g. storyboarding, structure, hypermedia linkage, search engine key words, graphical design, user interface, audio/video sources, animation, text design; maintenance e.g. plans, logs, disaster recovery, testing

Accessibility: features e.g. alternative text, resizable fonts, support for screen readers, adjustable fonts; current standards and legislation e.g. Disability Discrimination Act, Data Protection Act, e-Commerce Regulations Act, Computer Misuse Act, W3C validation, copyright and intellectual property rights  

Design: rules and heuristics for good website design; accessibility; functionality e.g. timings, navigation, ease of use, user-friendliness; evaluation tools e.g. W3C Mark-up  
Validation Service Environment: features e.g. Uniform Resource Locators (URL), 
Hypertext Mark-up Language (HTML), Dynamic Hypertext Mark-up Language (DHTML), Extensible Mark-up Language (XML), Java Programming, JavaScript, Java Applets, plug-ins, client and server-side scripting languages; multimedia e.g. animation, sound/visual effects; hardware and software requirements e.g. computer platforms, operating systems, application software; browser behaviour e.g. execute scripting languages, display Cascading Style Sheets (CSS), applets, Common Gateway Interface (CGI)  

2 Be able to design interactive websites  

Identification of need: nature of interactivity e.g. online transactions, static versus dynamic; client needs and user needs e.g. image, level of security, development timescales, maintenance contracts, costs, search engine visibility; end user need e.g. appropriateness of graphics, complexity of site, delivery of content 

Design tools: concept designs e.g. mood boards, story boards; layout techniques e.g. frames, tables, block level containers, inline containers; templates; colour schemes; screen designs  

3 Be able to implement interactive websites  

Structure: layout of pages; navigation; format of content; Cascading Style Sheets (CSS); page elements, e.g. headings, rules, frames, buttons, text and list boxes, hyperlinks/anchors, graphical images, clickable images/maps; interactive features e.g. product catalogue, shopping cart; images and animation Content: correct and appropriate; reliability of information source; structured for purpose e.g. prose, bullets, tables Development: mark-up languages e.g. (HTML), (XHTML), (DHTML); client side scripting languages e.g. JavaScript, Visual Basic (VB) script; features and advantages of software languages; web authoring software tools Tools and techniques: navigation diagram e.g. linear, hierarchy or matrix; building interactivity tools e.g. pseudo-code for client-server scripting; adding animation and audio/visual elements; ensuring compliance with W3C; meta-tagging; cascading style sheets  

4 Be able to test interactive websites  

Review: functionality testing (user environments, links and navigation); content; check user requirements; user acceptance; audit trail of changes Mechanisms: types e.g. browser compatibility testing, platform testing, script-language testing; valid (HTML) code; checking functionality against requirements, check internal and external hyperlinks (web files, web documents, images), error detection, error messages, dry running Supportive documentation: test plan; test results; programmer guidance; user guidance: onscreen help 

TASK 1 to TASK 4:

You are required to follow the instructions as specified towards each task and support with research by using supportive materials like books, websites, etc., and give feedback on the findings by relating your arguments to the relevant case study as specified towards each task. Your report should fully follow the Harvard Referencing model. 

TASK 1:  

LO1 Understand website design concepts 

The objective for this task is to address and exhibit an understanding on website design concepts. You are required to address the task as specified and research by using supportive materials like books, Journals, websites, etc. to address the learning outcomes as specified.  Please note that the research and subjective skill needs to exhibit transferable skill by reflecting it to the case study. Answers reflected without reflective practice will be referred. [Read about ASP DOT NET Programming Assignment]

P1.1- You need to understand various design concepts to choose and use an appropriate Website design for Shiny Kitchen Worktops Ltd. Discuss the design concepts that have to be considered when designing a website for Shiny Kitchen Worktops Ltd (AC 1.1).

TASK 2:  

LO2 Be able to design interactive websites 
You are required to carry out a research, by using supportive materials like books, websites, etc., in addition to using the case study and give a feedback for the findings on P2.1 and P2.2. The answers need to be reflected to the Shiny Kitchen Worktops Ltd. case study chosen for the purpose. Answers without application to the chosen case study   will be marked as resubmission


P2.1. For the case study given above consider User requirements, target audience, content of the website and so on and design a design an interactive website to meet the requirements of Shiny Kitchen Worktops Ltd. (AC 2.1).

P2.2 Evaluate your website design with other users for Effectiveness, Efficiency, Reliability, and Compliance (AC 2.2).


TASK 3:  
LO3. Be able to implement interactive websites 

You are required to carry out a research, implement a website for the given scenario and exhibit an understanding to be able to implement the project within agreed procedures and to specification. The purpose of any design is to function as a blue print and aid in the implementation. Hence this task is about effectively and accurately implementing your design and creating a functional website which meets all pre-defined requirements 

3.1 Implement your website design effectively and create a fully-functional interactive website for Shiny Kitchen Worktops Ltd. that meets the given requirements and your design (AC 3.1).  

TASK 4:   

LO4 Be able to test interactive websites 

You are required to carry out a practical research work and submit a report. Following implementation of your web site for Shiny Kitchen Worktops Ltd., you now need to use a range of techniques to review and test it, suggesting further development as appropriate, including the provision of onscreen help for users and a support manual for future site managers and answer P4.1 through P4.5


4.1 Employ a range of testing methods across the whole website for functionality, navigation and so on and critically review it (AC 4.1).
4.2 The objective of testing is to find out the differences, if any, between ‘expected results’ and ‘actual results’. Conduct an analysis on the actual test results against expected results to identify and report any discrepancies (AC 4.2)
4.3 Evaluate independent feedback on the website and make recommendations in your report, for improvements (AC 4.3).
4.4 Create onscreen help to assist the users of Shiny Kitchen Worktops Ltd. (AC 4.4).
4.5 Create documentation for the support and maintenance of the website (AC 4.5).

On achieving the above PASS criteria you also have the opportunity to achieve higher grades [Merit / Distinction] as detailed below; 

Wednesday 27 July 2016

Data Analysis and Design Case Study Assignment

TASK 1:  

You are required to carry out a research by using supportive materials like books, websites, etc., and give a feedback of the findings on P1.1, P1.2, and P1.3. The answers need to be reflected to the general Data Analysis and Design Concepts. Answers without application to an organization or without examples will be marked as Resubmission.
P1. Understand data models and database technologies
P1.1-  critically compare different data models such as network, hierarchy, RDBMS etc and schemas such as external, conceptual etc.
P1.2- critically discuss the benefits and limitations of different database technologies such ms access, sql server, oracle etc.
P1.3- analyse different approaches such as DFD, Use case, ELH, ER etc to database design

Case Study:

DATALYTICS is a leading data analytic and consulting firm. The company supports their clients across the globe to design and analyse big data to guide strategic decision markers. Due to the rapid expansion of their businesses, the company will be dealing with massive and disjointed data to enable them survive in the global market. Since information is keen to business growth and continuity, the company foresees that they are likely to be unable to systematically apply relevant statistical and logical procedures to describe, illustrate, correlate, evaluate and discover useful information from their massive data. As a result, the company has hired you as their main data analyst and unfortunately, your main responsibilities were not properly clarified. Nevertheless, you were fortunate to meet with the Director of Human Resources (DHR) of the company during your induction training. Accordingly, the DHR gave an overview of your duties to subsume the design, documentation, querying and implementation of a relational database system for the company within the available resources. You will also work with GIS Specialists and Software Engineers to provide support to the healthcare service providers and some other notable clients across Asia, Africa, USA, Australia and UK.

The database should contain at least ten related tables. In addition, when you create the database, you should be able to store different categories of data type such as varchar, float, text, integer and transaction’s date in its tables. For instance, you can create an Address table, Products table, county code’s table, Post code’s table, list of organizations, hospitals and list of therapies. The Address table for instance should be able to store several names, house numbers, street names, post codes, emails, and telephone numbers while the Products table should be able to store information such as different categories of products, unit price and location of each product.

An information pack given to you shows that for your appointment to be confirmed by the company, you should be able to complete the following business functions within the agreed time:
a) Design and develop information for strategic planning, operational and analytical purposes.
b) You will be required to examine, clean, transform and model data that facilitate the discovery of useful information and suggestions that will meet the requirements of strategic decision makers and regulatory bodies.
c) Use suitable platform to manipulate data, querying scripting and reporting standard to complement decision making process at the strategic level of the company. 
The document further states that you will need to constantly report to the management about the whole processes for you to secure the approval of the Chief Executive Officer (CEO) of the company.

TASK 2:  

You are required to carry out a research by using supportive materials like books, websites, etc., and give a feedback of the findings on P2.1, P2.2, and P2.3. The answers need to be reflected to the DATALYTICS on the case study. Answers without application to an organization or without examples will be marked as Resubmission.

P2. Be able to design and implement relational database systems.
P2.1- Using DFD, ELH, ER etc to design a relational database system to meet a given requirement of DATALYTICS database solution [class demonstration and observation].
P2.2- Build a relational database system i.e. database tables and table relationships based on a prepared design for DATALYTICS database solution [class demonstration and observation]. 
P2.3- Apply a range of database tools and techniques i.e. text box, combo box, list box, buttons, sub forms etc to enhance the user interface [class demonstration and observation].

TASK 3:  

You are required to carry out a research by using supportive materials like books, websites, etc., and give a feedback of the findings on P3.1, P3.2, and P3.3. The answers need to be reflected to the DATALYTICS on the case study. Answers without application to an organization or without examples will be marked as Resubmission.

P3. Be able to use manipulation and querying tools
P 3.1 – Explain the benefits of using manipulation and query tools in a relational database system
P3.2 – Implement a query language using SQL into the DATALYTICS relational database system [class demonstration and observation].
P3.3- Critically evaluate how meaningful data has been extracted i.e. present the query data through report through the use of query tools for DATALYTICS relational database system [class demonstration and observation].

TASK 4:  

You are required to carry out a research by using supportive materials like books, websites, etc., and give a feedback of the findings on P4.1, P4.2, P4.3, P4.4 and P4.5. The answers need to be reflected to the DATALYTICS on the case study. Answers without application to an organization or without examples will be marked as Resubmission.

P4 Be able to test and document relational database systems
P4.1- Critically review and test the DATALYTICS relational database system.
P4.2- Create documentation to support the implementation and testing of the DATALYTICS relational database system.
P4.3- Create user documentation for a developed DATALYTICS relational database system.
P4.4- Explain how verification and validation has been Addressed in DATALYTICS relational database system.
P4.5- Explain how control mechanisms have been used to develop DATALYTICS relational database system

Assignment Guidelines:

Use a standard report structure, Word-process the report and use Normal script of a proper font size 12.
Produce an academic report, detailing the above issues with a word limit of 4000 to 4500 words. 
Complete the title page and sign the statement of authenticity.
The Assignment sheet should be attached in the front.
Submit the document in a folder in the form of a file as well as a soft copy on the submission date. 
It should be uploaded on E-Learning platform before the deadline and submitted to -------- and sign the submission form of the college.
Assignments submitted after the deadline will not be accepted unless mitigating and may be entitled for a late fee. 
Collusion and Plagiarism must be avoided.
Start each answer on a new page and pages should be numbered. Highlight each question clearly.
Include a Bibliography at the end of the assignment and use the Harvard referencing system.   
All work should be comprehensively referenced and all sources must be fully acknowledged, such as books and journals, websites (include the date of visit), etc. 
Try to give the page numbers, publishers' details and the year of publication
In order to pass you need to address all the LO and Assessment Criterias. 
In order to get a merit you need to address the characteristics of pass and address M1, M2,M3  
In order to get a Distinction you need to address the characteristics of pass and merit and Use a common format for the questions, for example:
Introduction (analyze the question.)
Underpinning Knowledge (write about the relevant theory/points)
Applied knowledge(Data Analysis)
Conclusions and Recommendations (summarizing the whole scenario keeping in view pass, merit, distinction criteria.) 

Monday 25 July 2016

CSC8409 Project Assignment Case Study

Goal and Platform & Language requirements

The goal of the CSC8409 project is to create an interactive web information system (website) built almost exclusively using XML languages and tools. Students determine a project content based on their hobbies and interests, the assignment requirements, and possible consultation with the course lecturer. A project typically contains a subset of possible ingredients, listed below.
The project must be implemented within the confines of a traditional LAMP or WAMP platform because the course examiner will assess the project within such a platform.
It is important that students use no other software than what is included in a recent version of XAMPP. In addition, scripting in either PHP or Perl should be kept to a minimum (e.g. do transformation work by using XSLT inside a simple PHP script, not through a PHP script that doesn't use XSLT at all), and use of the relational database engine MySQL should be strongly avoided. The reason for these restrictions is that this is a course on XML, not on PHP or MySQL.
Generally speaking, scripting in PHP or Perl will indeed be necessary, but typically these scripts will be very short (e.g. loading an XML document and transforming it on the fly through XSLT). Longer scripts will be necessary to change the content of an XML document through parsing and serialization. Any data used in the project should be stored in XML documents, not in a database.
The course examiner will assess your project using a fresh install of XAMPP and the Firefox browser. Where animated SVG is present, the Opera web browser will be used to assess the animation. Note that your project should work on all major browsers. Code in accordance with the W3C standards!

Possible Ingredients

The following is a list of possible (conceptual level) ingredients for your project. You will need to think of ways to include several of these in a meaningful way in your project.
1.    A set of XML documents valid over one or more schemas of your own design (data files). Your submission also includes the Schemas for these data documents. At least some of the data should be updatable through a web form using DOM.
2.    One or more XML documents that contain the structure of your web site or application. The structure should be updatable using DOM through a web interface (eg adding or deleting pages and menu items).
3.    A set of XHTML documents that contain part of the content for web pages.
4.    Rendering of webpages in the browser using XSLT to create dynamic webpages. This will involve using the techniques of XSLT and (X)HTML, with the content from the data files and/or the structure files).
5.    One or more dynamically generated and interactive SVG graphics web pages. The SVG can be embedded inside an XHTML document, or be stand-alone. Such web pages will only be rendered by SVG-enabled browsers such as Firefox and Opera (not MS IE).
6.    One or more dynamically generated RSS feeds. The RSS icon should appear within the browser's address bar (eg as in Firefox) telling the user that an RSS feed is available.
7.    One or more simple Web Services which allow user programs to request and receive data in an XML format.
8.    One or more web pages that use AJAX technology to update data in an asynchronous manner.
Note that ingredients 4 – 6 will normally involve the development of XSLT scripts that range in complexity from simple to complex. The XML data content is transformed through the XSLT script into the desired output format (eg SVG or RSS).

Example Project

Here is an example project that can give you an idea of how the above ingredients can be included in a meaningful way in one project. 

Marking Criteria

The marking criteria are based on the list of possible ingredients given above. Each ingredient carries a maximum amount of points that you can earn for the ingredient. If you implement all ingredients perfectly, you will be able to score much more than 100% (110 to be precise). In other words, not all ingredients need to be implemented for you to obtain a high mark.

max
Updatable data files + schemas
10
Updatable structure files
10
XHTML content pages
5
XSLT to render html
15
Dynamic and interactive SVG graphic
15
Dynamically generated RSS feed
10
Simple web services
5
AJAX
5
Demonstration video
25
Documentation (readme)
10

As an example, suppose student XYZ has included only 5 ingredients in her project, and some of them were not implemented very well. She would earn 10 + 7 + 5 + 9 + 6 = 37 marks out of 100. On the other hand, student RTG has attempted to include everything, and did a pretty good job with most of them. This student has earned 107 marks, which means he gets 100%, or an HD.
This marking scheme allows students to either work deeply, or broadly (or both, of course). Working in depth means that you choose a few ingredients that interest you, and you implement them exceptionally well. Working broadly means that you attempt all ingredients, but don't go in deep detail. Doing both means that you try to do everything perfectly.

Instruction for the Demonstration Video of your system

One of the most important assessment items that you need to submit is a short (3-5 min.) video clip that shows how your system is executed and working. This video is important as it provides a good opportunity for training your skills in presenting your good work to others and significantly facilitate the evaluation of your project by the marker. Your video should cover the whole operation of your system, from the start of the system until finishing going through all the major functions/features that are developed.
You can use ANY existing on-screen activity capturing softwares to produce this video. One of the good candidates is Camtasia Studio or Camtasia Mac (www.techsmith.com/Camtasia). This software is not free though but you can download a trial version for producing your video.
Your video shouldn't be fancy and doesn't need to have any (sophisticated) editing. A simple recording of running your system is sufficient. It is highly recommended to record voice in the video at the same time for any explanations you may want to provide. Please export the video using the lowest resolution in order to keep its size minimum.
Please submit the video in some commonly-used formats such as MP4 or AVI. Please do not submit the source video file. You can submit the video together with other documentations and source code of your project to Studydesk or you can upload your video to some other websites such as YouTube and provide a link in your submission.
Please kindly note that, irrespective of how well you develop your system, you will lose a significant portion of your mark if you fail to provide this video for assessment.

Timing Issues

On the one hand, this is a large and challenging project, so you need to start relatively early. On the other hand, some of the ingredients require knowledge that you gain in Modules towards the end of the course. So how do time your work?
At the start of the semester, it is recommended to think of a problem area that interests you, and see what kind of web site and services would be useful for that area. You can design a static version of your project simply by using your current knowledge of HTML and perhaps some scripting. Later on, when you have the required knowledge, you can replace the static version with the XML technology.
After week 2 or 3, you should be able to design XML document structures for the first few ingredients of your project. After week 4 or so you should be able to create schemas (DTD or other) for the data files.
Before the semester break by week 8, you will have the required knowledge to work on XSLT scripts. Writing XSLT will take up most of your time. By then, you will also know how to use the DOM to make changes in your XML data files through a web interface.
Individual XML languages such as SVG and RSS will be looked at immediately after the break. They are nothing more than XML documents over a specific schema, so it is a matter of learning the correct elements and their attributes.
The web services Module is towards the end of the semester. Students wanting to include this ingredient into their project may request an extension of the deadline. However, if an extension is granted for this reason, I do expect to see a web service in your final submission.

 Submission Instructions

This course contains 3 assessment items whose instructions are provided as follows. Please refer to the course specification for their respective due date. 

Assignment 1 (Proposal, 5%)

Submit your proposal for the project you would like to do for this course. Make sure to submit a stand-alone HTML, word or PDF file (no any other format) containing the XML-related features you want to include in your project. Please refer to an example for the XML features that you can possibly incorporate in your project. Please note you do not necessarily need to have the exactly same features as given in the example. You should list your own features for your project. You need to include the following 3 major components in the proposal with typically a 2-page length:
1.    Introduction. Introduce the area of your project, the background and the motivation of your system;
2.    The list of XML features that you're going to incorporate in your system. This is important as marks are given based on the implementation of those features;
3.    Timeline and milestones. Lay out your planning of the whole project and the associated time and milestones to be completed along the process.
Please submit Assignment 1 via the electronic submission page on the course website. 

Assignment 2 (Project Milestone 1: progress report, 15%)

Please submit a ZIP file containing the following:
·         Your updated proposal (HTML, word or PDF). You can take this chance to update the features you need to include in your projects.
·         A separate directory containing all the data and schema files which must include the following files:
·         
o    An index.html or index.php file that forms your web site's front page;
o    All the raw data XML files for your application;
o    XML schema files (either in DTD or XML schema, but not both).
o    Screen snapshots of a Web-based schema validator to show that your XML documents are all valid with regard to the schema you have created.
Make sure you don't include any examples, documentation, libraries, executables, etc that belong to the XAMPP software package.
Also, make sure that your xml files are valid with respect to the schema files before your submission as you will lose a significant portion of marks for this assignment if the xml files are invalid. I will use Web browsers to check your xml files.
Please submit Assignment 2 via the electronic submission page on the course website. That should be possible because almost all content is text files which compress very well. Only the images will take up space, but you should limit those. 

Assignment 3 (Final project submission, 85% )

Please submit a ZIP file containing the following:
·         Your final project proposal (HTML, word or PDF).This proposal should be consistent with the final project you submit;
·         A readme file explaining where (e.g. files/web pages) each feature is implemented. This document is very important. It can help examiner to quickly go to that file/page for assessment. Please also indicate very clearly at the beginning of the documentation which Web browser(should be one of the mainstream Web browsers) you have been using to develop and test your system/website;
·         A short video (AVI or MP4 file) to demonstrate your system or a link pointing to external site where your video is uploaded;
·         A separate directory containing the following files:
o    An index.html or index.php file that forms your web site's front page;
o    All the raw data XML files for your application;
o    XML schema files (either in DTD or XML schema, but not both);
o    Screen snapshots of a Web-based schema validator to show that your XML documents are all valid with regard to the schema you have created;
o    Other files (PHP scripts, XSL stylesheets, SVG, XHTML, small images, ...) that support the features you include in the project.
Make sure you don't include any examples, libraries, executables, etc that belong to the XAMPP software package.
Please submit Assignment 3 via the electronic submission page on the course website. That should be possible because almost all content is text files which compress very well. Only the images will take up space, but you should limit those.
Programming Assignment Help provides plagiarism free assignments i.e. all our solutions are genuine and written by best technical assignment writers who have years of experience. Get a quote now. 

Friday 22 July 2016

Enhancement of Simple Menu Driven Program

Purpose

To provide students with the opportunity to apply the knowledge acquired and skills developed during the first 6 weeks of the Course. These include understanding of primitive data types and the concept of collections (in the form of arrays) as well as structured programming including sequence, selection and repetition.

Learning Objectives

In the process of this assessment task you will:
Identify and use the correct syntax of a common programming language (Java Programming Language);
Describe program functionality based on analysis of a given program;
Recall and use typical programming constructs to analyse, design and implement simple software solutions; and
demonstrate debugging and testing skills whilst writing code.
General Requirements
Provide evidence of code comprehension skills by answering questions relating to the starting code provided; and
Complete the analysis, design, implementation and debugging of a small program that is pre- dominantly procedural in nature;

Please see the Course Description for further information related to submission date, extensions for assignments and Special Consideration. It is your responsibility to submit the appropriate correct version of your files and assignment and report any issues with upload to Moodle as soon as possible.

Marks: This assignment has a total of 100 marks and it is worth 20% out of the total assessment.

Authorship: This assignment is an individual assignment and it should be completed by the individual student only. The final submission must be identifiable the work of the individual. To support this, you will be required to demonstrate your working code to your tutor in your tutorial class and explain a selection of your assignment answers.

Resources Provided: The following files are available on your Moodle shell:
An electronic copy of this assignment
The sample starter code
Links to relevant Federation University resources

Notes You are strongly advised to keep backup files as you work.
If you use any resources apart from the Course material to complete the assignment, you MUST provide an in-text citation within your documentation and/or code as well as providing a list of references in APA format.
CRICOS Provider No. 00103D  

Understanding and Enhancement of a Simple Menu Driven Program

Application Overview

For this assignment you have been provided with incomplete starter code that you must understand, modify and add to. The system provided simulates the collection, modification and reporting of game characters. The game characters have a unique id created in the program and have a number of attributes including a health rating and a power value. The system is run within the Eclipse IDE and provides a menu through the IDE console. The user must enter a pre-defined number of game characters before any of the other functionality can be used. At present, the following menu items are working:

Create your characters;

Display formatted information of all characters;

Display a particular character;

Display total legs and power for all characters; and

Empower your character.

One function listed on the menu is not working:

Display entered information of all characters You must write the code for the missing function.
Additionally, there are some changes required to the existing code. These changes are required to demonstrate the variety of ways of dealing with sequencing, selection and repetition and also demonstrate your capabilities for understanding and changing the code.

PART A – Code Comprehension

The sample code provided in the GameCharacters.java class should be used to answer the following questions. Familiarize yourself with the operation of the application by running it and choosing the working options – 1,3,4,5,6:
1. Identify in the code the way in which users interact with the program. Identify the object and list the lines of code where the object is used to receive information from the user. Also list the lines of code where the program sends output to the user.
2. What is the purpose of the “\t” in some of the literal Strings presented in the code?
3. How many game characters can be entered for this system? How many attributes does each character have? Identify the three lines of code where this information is established.

4. Currently, if the user enters an incorrect menu selection, what happens? Explain why the error message is displayed and what method and line of code is responsible and why.
5. The method menuSystem() is replaced with the code below. What would be shown for option 3 – display formatted information of all characters – if you had not yet entered any data (menuSelection ==1)? Where did the information displayed come from?

6. Explain in your own words what is happening on each line of the method
createCharacterCode(int x).
7. After entering the required number of game characters, choose option 3 to display formatted information of all characters and complete the following table of variable values after executing each line of the method decodeCharacterCode(int _code, int _row). Use a _row value of 1 and if a variable is not defined at any stage, use the text ‘not defined’:


Line _code _row decodedCharCode
314
315
316
317
318
319

8. Now change the value of the FACTOR constant to 1000. Compile and run the application entering another set of game characters and choose option 3 to display the information. The code and studentID are incorrect on the report. What has gone wrong?

9. In the createCharacterCode(int x) method, line 212 has the operation almostCharacterCode = almostCharacterCode * FACTOR; What would happen if you changed the “*” to a “/”? What primitive data type is almostCharacterCode and what would a more appropriate data type be if you changed the “*” to a “/”?
10. In the displayCharacterDetails(int _a) method a switch statement has been used to assist in assembling the String that lists the attributes of each character. The break keyword is used in this switch statement. What would happen if the break statement was removed after the first case (line 297)? You should discuss what generally happens with a switch statement when you remove the break and what actually happened here from an application perspective. What java error occurs?
11. When entering characters, how many times is the createCharacterCode(int x) method executed? In the method itself, the condition if (almostCharacterCode == 0) exists. What other variable could have been used instead of almostCharacterCode to achieve the same outcome?
12. Explain the purpose of the boolean variable finished in the addPowerToCharacter () method and how it is used.

PART B – Programming Requirements

1. Provide the code for the displayAllCharactersRaw () method. You are expected to just list what has been entered by the user in “raw” form as well as the generated character code without any interpretation (i.e. the data as stored in the two dimensional array). In your solution you must use nested for loops and the constants for array dimensions. You must also only have one print statement in the outer loop detailing the attributes for the current character. This is done by using a String and concatenating to it. Look at the charAttrs variable in the displayCharacterDetails(int _a) method for an example of this.
2. Add any functionality required to allow two new power types to be added. Hint: you do not need to write any new lines of code. The power types and their values should be unique to each student.
3. In the createCharacters () method, change the while loop for obtaining the studentID to a priming read while loop. Look at your lecture notes for week 4 for information on this.
4. In the displayCharacterDetails(int _a) method, replace the switch statement with a series of
if/else if combinations to achieve the same functionality.
5. In the displayTotalLegsAndPower() method replace the for loop with a while loop. Look at your lecture notes from week 5 for information about this.
6. In the obtainCharacterAttribute(String _introText, String[] _typesText, int _min, int _max)
method change the while loop to a do while loop.

PART C – Testing

An important part of verifying what you have done is testing. As per your lecture notes from week 5 you should consider:

Ensuring that the program is what the client is asking for (you have to be both client and programmer here);

Testing the design of the program to check that it meets the requirements;
Desk checking the code written; and
Testing the implementation of the code.
When testing, you should be able to distinguish between syntax, runtime and logic errors. Syntax errors are expected to be eliminated before submission (Eclipse IDE helps with this). Runtime and Logic errors are also expected to be eliminated if sufficient testing has occurred.

You should at this early stage satisfy yourself and provide evidence that any changes you have made in PART B work as they should and have not had any adverse impact on other components.

As a minimum you should provide evidence of the output of the system and its various functions before the changes and evidence of this after the changes. It is suggested that you make use of tables to display the data and testing.

Programming Assignment Help provides plagiarism free assignments i.e. all our solutions are genuine and written by best technical assignment writers who have years of experience. Get a quote now.