Hit The Order Button To Order A **Custom Paper**

>> CLICK HERE TO ORDER 100% ORIGINAL PAPERS FROM AustralianExpertWriters.com <<

23 Dec

KF7010 Program Design and Implementation | Good Grade Guarantee!

Module Title:
KF7010 Program Design andImplementation
Module Code:
Module Tutors:
Dr Mark C. Sinclair
Academic Year:
Coursework Title:
Program Design and Implementation
Average Study TimeRequired by Students:
60 study hours
Dates and Mechanisms for Assessment Submission and Feedback
Date of Handout to Students:TBC
Mechanism for Handout to Students:via eLP
Date and Time of Submission by Student:Thursday 16th Jan 2020 by 16:00
Mechanism for Submission of Work by Student:via eLP
Date by which Work, Feedback and Marks will be returned to Students:3 Weeks after Final Submission
Mechanism for return of assignment work, feedback and marks tostudents:via eLP
21. Learning OutcomesAll the module learning objectives are covered by this assignment:1. Demonstrate a systematic understanding of the principles, knowledge andskills required to design, implement, test and document programs writtenin an object-oriented language.2. Demonstrate a critical understanding of the essential principles andpractices relating to object-oriented programming, including the need forstandards, principles of quality, and appropriate software support.3. Critically evaluate the methods and conceptual tools used in developingsolutions to programming problems.4. Analyse, specify, design, implement and test a high-level solution to aprogramming problem using object-oriented and general imperativeprogramming language constructs, using appropriate documentationstandards and software tools.5. Effectively communicate development of a solution to a programmingproblem, including critical evaluationThe work is set in Week 06 of the module by which time you will have coveredenough to make a start on the work.2. ScopeThe assignment is an individual assignment.You will be provided with some initial program source code and a compiledversion of the program as described in the section below.You must extend the program to meet the specification below.What follows is a detailed discussion of the program and how it ismodelled and its functions, you will need to look very closely at thespecification for the object-orientated (OO) programs you are to create.3. Assignment3.1 The Server-Client ModelIn this assignment, you will be provided with a set of client-server codes, whichallow you to communicate from a computer to another computer. You will beasked to add extra codes to read data from one computer and transfer it vianetwork to another computer. The system architecture can be shown in thefigure below.3To allow a client application to connect with a server, usually you need toprovide the address of the server, which includes two parts,• IP address such as• Port number, such as 8080This will allow a communication channel to be established between the serverand the client. You don’t need to fully understand these client-server codes andthe provided codes given you as a test platform for your OO programmingskills.Fig.1 Client-Server Model3.2. The TasksBased on the BlueJ platform, the challenge is to develop the software that will,1) enable the chat communication between server and client;2) provide a log system to store the chat in both client and server side, sothat each time the system can load the previous dialogues into thewindow;3) load the initial data from a local file into the memory and transfer it to theserver side via the network, and4) process it on the server side and save the process records in a logfile.Fig.2 and 3 illustrate the user interface of the client-server system.You are asked to write a report explaining the functionality and solutions tovarious aspects of the program with regard to OO programming skills. Thereport should not exceed 4000 words.4
Fig.2 Server’s GUI style
Fig.3 Client’s GUI style
3.3. Functional SpecificationThe tasks you are required to implement are as follows,1) You are going to build up a client-server application to enablecommunication between two sides; the server will allow multiple clientsto connect to the chat room.2) The server side will record all events and chats in a log file for records.3) The server will be allowed to set its port number, and a button tostart/stop.4) Each client will set up a unique ID and a unique log file, to store itscommunication records.5) The client side may have following GUI functions:a. A text input box of the server IP address.b. A text input box of the targeted server port.c. A text input box of the client name.d. A text input box of chat messages.e. A button to log in/out (or two buttons separately)f. A button to find out who are in the chat room and print out allclients.6) You are also required to develop a test plan and test the functionality ofyour client classes. A test report will be included in your submission54 Deliverables4.1. General Points1. The development of your codes is based on object-orientated model, andyou MUST make use of classes in developing your system. Each will haveits own methods and properties though they could inherit from otherclasses.2. All interactions must be made via a GUI. You may design the GUI as yousee fit: see the example depicted in Figure 2 and 3.3. You might consider writing a custom dialogue to input the user’spreference and other information. This will require a little investigation onyour part.4. The program should consist of a number of classes each with well-definedfunctionality. There should be a driver class to set things going; a GUIclass to provide the user interface; a class and subclasses for the sensorydata reading.5. The code you produce must adhere to the published course codingstandards. Marks are awarded for code quality.6. You will be expected to test parts of your program against a suitable set ofsituations. In the documentation you should describe your testing plan andresults; also include your test results as screen shots as evidence.4.2. DesignYou must produce design documentation. This will include a class diagram forthe system, a short explanation as to the general purpose of each of theclasses you have produced and a justification for any design decisions youhave made.4.3. ImplementationYou must provide listings for your program. The code must adhere to theobject-orientated style standards as defined for the module.4.4 TestingYou are expected to test your code using the strategies studied during themodule.The testing section of your documentation indicates the approach you havetaken to verifying and validating your system. Just as you should not conveythe design of your system by presenting the code or even listing the classes,you should not merely list the tests performed. Rather, discuss how tests wereselected, why they are sufficient, why a reader should believe that no important6tests were omitted, and why the reader should believe that the system willreally operate as desired when in use.1. Strategy: An explanation of the overall strategy for testing: Black boxand/or white box, integration, kinds of test beds or test drivers used,sources of test data, test suites. You might want to use differenttechniques (or combinations of techniques) in different parts of theprogram. In each case, justify your decisions.2. Test Data: A set of tables showing the test data you used for each class,etc. The format of the test documentation should be as follows: for eachtest case in the tables,• a unique test ID• a brief description of the purpose of the test• the pre-conditions for running the test• the test data• the expected result4.5. ReflectionYou must provide a final critical evaluation of your work. The reflection sectionis where you can generalise from specific failures or successes to rules thatyou or others can use in future software development. What surprised youmost? What do you wish you knew when you started? How could you haveavoided problems that you encountered during development?1. Evaluation: What you regard as the successes and failures of thedevelopment: unresolved design problems, performance problems, etc.Identify which features of your design are the important ones. Point outdesign or implementation techniques that you are particularly proud of.Discuss what mistakes you made in your design, and the problems thatthey caused.2. Lessons: What lessons you learned from the experience: how you mightdo it differently a second time round, and how the faults of the designand implementation may be corrected. Describe factors that causedproblems such as missed milestones or to the known bugs andlimitations.3. Known Bugs and Limitations: In what ways does your implementation fallshort of the specification? Be precise. Although you will lose points forbugs and missing features, you will receive partial credit for accuratelyidentifying those errors, and the source of the problem.This reflection should be 1 to 2 pages long.74.6. DeliverablesSubmit a zip archive containing the following items:1. Your source code with comments;2. The executable application.3. A document in pdf format containing(a) Design documentation as specified above;(b) Test documentation as specified above;(c) Your reflection report as specified above.A links will be provided on the eLP (BlackBoard) for you to upload this zip.5. Collaboration and Academic Integrity• You can discuss work, but submitted work MUST be your own.• You can use some public domain code, but it must be clearlyreferenced. It must be a very small component (less than 5%) of thesubmitted assignment. Generally, it will NOT attract marks.• The assignments are designed to allow YOU to demonstrate YOURachievement of learning outcomes.• You can NOT use the work of your fellow students.• You are advised to read the University regulations concerningacademic misconduct.6. Marking SchemeIntroduction The marking for the assignment is designed to reflect the general guidance givenon the University’s web site for the assessment of postgraduate work. Some modifications tothe generic criteria have been made to better reflect the nature of the assignment.70-100 Distinction Excellent work providing evidence to a very high level of the knowledge,understanding and skills appropriate to level 7. All learning outcomes met, many at highlevel. Marks at the high end of this range indicate outstanding work where all learningoutcomes are met at a high level. Excellent in all the specific areas of the assessmentcriteria listed below for the assignment; evidence of successful independent learning asdemonstrated by the implementation of optional features in the program; use of up-todate material from a variety of sources; critical evaluation and creative use of theory.60-69 Commendation Commendable work providing evidence to a high level of the knowledge,understanding and skills appropriate to level 7. All learning outcomes met, many aremore than satisfied. Good in all or most of: the specific assessment criteria listed belowfor the assignment; evidence of independent learning; critical evaluation and creativeuse of theory.55-59 Pass Satisfactory work providing evidence of the knowledge, understanding and skillsappropriate to level 7. All learning outcomes are met. Satisfactory in all or most of the8assessment criteria listed below.50-54 Pass Adequate work providing evidence of the knowledge, understanding and skillsappropriate to level 7 but only at a bare pass level. All learning outcomes are met (ornearly met and balanced by strengths elsewhere). Adequate in all of (or most of, withbalancing strength elsewhere) of the criteria listed below.40-49 Fail The program fails to achieve the basic pass criteria specified below.Work is notacceptable in providing evidence of the knowledge, understanding and skills appropriateto level 7. May be adequate in some but not all of the assessment criteria listed below.1-39 Fail Work is not acceptable and provides little evidence of the knowledge, understandingand skills appropriate to level 7. Few of the learning outcomes are met. Inadequate interms of the various criteria given below as a basis for judging the work.0 Fail Work not submitted OR Work giving evidence of serious academic misconduct ORWork showing no evidence of the knowledge, understanding and skills appropriate tolevel 7. None of the learning outcomes are metSpecific Criteria• Basic functionality and code quality: 15%1. Model provides a basic functional application;2. Coding standards;3. Well commented• Quality of design and implementation 25%1. OO aspects2. Methods3. Properties• GUI 20%1. Internal structure2. Action Listeners3. Graphical elements• Testing 20%1. Adequacy2. Functionality3. Justification• Report 20%1. Class diagram and description of classes2. Evaluation3. Lessons learnt4. Bugs and limitationsFeedback will be provided within three weeks after the submission timeline,mostly by e-mail or by eLP.Submission TimelineThis is an individual assignment. Complete all the tasks listed above. The9report needs to be submitted via eLP. The submission time is as follows,Thursday 16th Jan 2020 by 16:007. Feedback Techniques used in this ModuleIndividual written feedback will be provided for the assessment. Feedback willbe given for each element of the marking scheme.8. Return of FeedbackMarks and written feedback for the assignment will be returned within thee workingweeks after the submission deadline.9. Late SubmissionUnapproved late submission may cause the deduction of your marks. You canfind more details at https://www.northumbria.ac.uk/about-us/universityservices/academic-registry/quality-and-teachingexcellence/assessment/guidance-for-students/10. Failure to SubmitNote that failure to submit work will result in a record of incomplete (IC) for theassessment component. Referral in that component will then be required. Youcan find more details at https://www.northumbria.ac.uk/about-us/universityservices/academic-registry/quality-and-teachingexcellence/assessment/guidance-for-students/11. Referencing StyleAny commonly used referencing style is acceptable as long as it is usedcorrectly and consistently. For technical work of this nature you might prefer touse Harvard style.12. Academic IntegrityYou must adhere to the university regulations on academic conduct. Formalinquiry proceedings will be instigated if there is any suspicion of plagiarism orany other form of misconduct in your work. Refer to the University’sAssessment Regulations for Taught Awards if you are unclear as to themeaning of these terms. The latest copy is available on the University website.More details can be found at: https://www.northumbria.ac.uk/aboutus/university-services/academic-registry/quality-and-teachingexcellence/assessment/guidance-for-students/

READ ALSO  Balance Scorecards (BSC) | Good Grade Guarantee!


  • Hit The Order Button To Order A **Custom Paper**

>> 100% ORIGINAL PAPERS FROM AustralianExpertWriters.com <<