” ICT373程序 写作、Software编程 辅导MURDOCH UNIVERSITYICT373 Software ArchitecturesTSA 2020Assignment 2 (20%)Due Date: 11/11/2020All Students: Submit the Assignment via LMS by the due date.Late penalty: 10% per day penalty for delayed submissions unless prior extension of deadlineis obtained from the unit coordinator.You should keep a Copy of your work. Your submission must include a completed assignmentcover sheet. An electronic copy of the assignment cover sheet is available at the unit LMS site.This assignment consists of one question only.Question [20 marks]Design and implement (in Java) a basic graphical user interface (GUI) program for recordinginformation about a family tree.You can assume that a family member has some immediate relatives: i.e., a mother and father(maybe unknown), zero or one spouses, zero or more children and zero or moregrandchildren. A family member also has a first name, a surname at birth, a surname aftermarriage, gender, an address and a paragraph of text describing what is known about theirlife. Obviously, this is a simplified version of reality.An address has a street number, street name, suburb and postcode.A family tree contains this information for a whole bunch of related people.The program can be started in editing mode or viewing mode.In viewing mode, the GUI shows details for one person at a time. A family tree will havespecified starting person. So if the person has parents and children and grandchildren, thefamily tree should show the parents (you do not need to show the grandparents or beyond;that means only one level up in the tree) and all descendants on a single page (in a sort ofhierarchy so that the People at the same level are together; do not worry about the real look ofa tree, a text box is fine).From the GUI the user will be able to change the displayed person to (display) one of theimmediate relatives of the current person.In editing mode, the user can choose to start a new empty family tree or edit an existing one.A new family member can be added as an immediate relative of an existing person or thenames, address, or text for an existing person can be changed. It is not necessary for thisbasic software to allow the user to be able to link an already existing person in a new role, egas the mother of another already existing person.The software should allow a user to conveniently enter their own family tree and have itstored for subsequent editing and viewing.Set up a couple of demonstration family trees which you submit and give clear instructions inthe User Guide for use of those family trees.Note that your program should compile and run under Java SE 8 and NetBeans IDE.Please note, you need to Use the major items such as serialization, JavaFX components,FileChooser, and Exception handling (that we have covered in the unit),Required Documentation for the QuestionPlease remember to submit the Java source code and executable version of your program (i.e.the whole NetBeans project). The final version of the program should compile and run underJava SE 8 (JDK 8). Internal students should test compilation and running on the Universitylab machines.For internal documentation (ie in the source code) we require: a beginning comment clearly stating title, author, date, file name, purpose and anyassumptions or conditions on the form of input and expected output; javadoc and other comments giving useful low-level documentation and describing eachcomponent; well-formatted readable code with meaningful identifier names and blank lines betweencomponents (like methods and classes).Required External Documentation (One file) Coversheet: A signed Assignment cover sheet. Title: a paragraph clearly stating title, author, date, file names, and one-line statement ofpurpose. Requirements/Specification: a paragraph giving a more detailed account of what theprogram is supposed to do. State any assumptions or conditions on the form of input andexpected output. User Guide: instructions on how to compile, run and use the program. Structure/Design: Outline the design of your program: describe why you chose oneapproach rather than other possible approaches. Give a written description. Describe howthe classes relate to each other. Describe each class: its purpose, list of methods. Usediagrams, especially UML and STDs. Include a complete description of the design.(Please also include pseudo codes for three of your interesting or complicatedalgorithms.) Limitations: Describe program shortfalls (if any), e.g., the features asked for but notimplemented, the situations it cannot handle etc. Testing: describe your testing strategy (the more systematic, the better) and any errorsnoticed. Provide a copy of all your Results of testing in a document saved in Word format.Note that a copy of the sample data and results from a test run of the program is required(copy from the program output window or the GUI windows and paste to the Word file).Your submitted test results should demonstrate a thorough testing of the program.Source code: Save all your java source code files in appropriate names and directorystructure. You must include them in the submission.Note that all of the above external documentation must be included in a file saved in Wordformat.The external documentation together with all relevant files must be compressed in a .zip filebefore submitting. Make sure that all necessary files are submitted so that the program can beviewed, compiled and run Successfully. Note that the whole NetBeans project folder can bezipped.Warning: Do not use visual tools e.g., bean builders or any type of code generators for yourGUI design. You need to write code. [Heavy penalties apply]Remember to complete and sign the Assignment Cover Sheet and submit it with yourwork.请加QQ:99515681 或邮箱:99515681@qq.com WX:codehelp
“
添加老师微信回复‘’官网 辅导‘’获取专业老师帮助,或点击联系老师1对1在线指导。