Wednesday, August 1, 2018

Design Documentation

Design Documentation to assist you, develop a Java program

08-12-17 Maddox Smith 0 comment

Design Documentation to assist you, develop a Java program
Assignment 2
Overview
This is an individual assignment that requires you to design, develop and test a small Java program using object-oriented approaches.
Timelines and Expectations
Percentage Value of Task: 20%
Due: 16:00 Friday 29th of September (week 11)
Minimum time expectation: 20 hours
Learning Outcomes Assessed
The following course learning outcomes are assessed by completing this assessment:
  • Identify and use the correct syntax of a common programming language
  • Recall and use typical programming constructs to design and implement simple software solutions
  • Reproduce and adapt commonly used basic algorithms
  • Utilise pseudocode and/or algorithms as a major program design technique
  • Write and implement a solution algorithm using basic programming constructs
  • Demonstrate debugging and testing skills whilst writing code
  • Develop self-reliance and judgement in adapting algorithms to diverse contexts
  • Design and write program solutions to identified problems using accepted design constructs
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 1 of 13
ITECH1000 Programming 1 1717
Assessment Details
Maths Whiz! is a competition for local school children to compete against each other to find out who is the ultimate Maths Whiz Champion for the region. Two students from each school are selected to compete in the Championship Round.
Your task is to design, develop and test a small application for managing the Championship results.
Stage 1: Design
This stage requires you to prepare documentation that describes the function of the program and how it is to be tested. There is no coding or code testing involved in this stage. A document template has been provided for your use.
Requirements:
  • Read through Stage 2: Program Development to obtain details of the requirements of this program.
  • Write an algorithm that describes how the program will operate.
  1. All program requirements must be included, even if you do not end up including all these requirements in your program code.
  1. The algorithm must be structured logically so that the program would function correctly.
  • Prepare and document test cases that can be used to check that the program works correctly, once it has been coded. You do NOT need to actually run the test cases in this stage; this will occur in Stage 3: Testing.
  1. All program requirements must be included, even if you do not end up including all these requirements in your program code.
  1. Make sure the test cases include checking of data entered by the user to make sure that only valid data is accepted. If the user enters invalid data, the user should be informed of this and given another chance to enter the data. NB: As we have not covered exception handling, you may assume that the user will always enter the expected data type.
  1. Test cases should be documented using a template like the one below. You may include extra information if you wish. At this stage, the Actual Result column will be left blank.
Test CaseExpected ResultActual Result
   
Display Results selectedEach competitor is listed 
 with their total final 
 score, sorted from 
 highest to lowest total 
 score. 
 This list is followed by a 
 list of First, Second and 
 Third placings, 
 identifying the student 
 and the school they 
 represent. 
   
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 2 of 13
Stage 2: Program Development
Using the Design Documentation to assist you, develop a Java program that uses object-oriented coding approaches to record and report upon the Maths Whiz! Championship round, implementing the requirements outlined in this section.
You must follow coding conventions, such as proper layout of code, using naming conventions and writing meaningful comments throughout your program.
Overview of the Program:
This section provides an overview of how the program works from the user’s perspective. You may change the appearance of the program provided you implement the same functionality.
  1. When the program starts, it provides a short message for initializing the contest administration system and prompts the user to enter the number of questions in the competition. The user must enter a whole number greater than or equal to 1, otherwise the system keeps prompting for the required number of questions until a valid entry is made. the number of questions required is obtained, the program automatically initialises. This initialisation includes creating the contest, creating the schools, creating the students and registering the students in the contest.
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
  1. When initialisation is complete, a menu appears providing the user with options to Enter Results, Display Results, View Program Credits or Exit Program. ICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 4 of 13
  1. When the user selects the Enter Results option, the user is prompted to enter the scores each student obtains on each question in the contest.
  1. When all results have been entered for the contest, a message “Score entry complete” appears and the menu is shown again.COS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 5 of 13
  1. When the user chooses the Display Results option, the results of the championship are displayed by student. Students are listed in order of their total scores across all questions, from highest to lowest. This list is followed by the placings for the event, with those students who achieve the highest three scores shown in first, second and third place, with the school they represent also identified. The menu is then redisplayed.
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 6 of 13
  1. When the user selects the option to View Program Credits, a message is displayed providing authorship information for this program. The main menu is then redisplayed.
  1. When the user selects the option to Exit program, a message thanks the user for using the system, and the program terminates.
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Assignment 2
Overview
This is an individual assignment that requires you to design, develop and test a small Java program using object-oriented approaches.
Timelines and Expectations
Percentage Value of Task: 20%
Due: 16:00 Friday 29th of September (week 11)
Minimum time expectation: 20 hours
Learning Outcomes Assessed
The following course learning outcomes are assessed by completing this assessment:
  • Identify and use the correct syntax of a common programming language
  • Recall and use typical programming constructs to design and implement simple software solutions
  • Reproduce and adapt commonly used basic algorithms
  • Utilise pseudocode and/or algorithms as a major program design technique
  • Write and implement a solution algorithm using basic programming constructs
  • Demonstrate debugging and testing skills whilst writing code
  • Develop self-reliance and judgement in adapting algorithms to diverse contexts
  • Design and write program solutions to identified problems using accepted design constructs
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 1 of 13
ITECH1000 Programming 1 1717
Assessment Details
Maths Whiz! is a competition for local school children to compete against each other to find out who is the ultimate Maths Whiz Champion for the region. Two students from each school are selected to compete in the Championship Round.
Your task is to design, develop and test a small application for managing the Championship results.
Stage 1: Design
This stage requires you to prepare documentation that describes the function of the program and how it is to be tested. There is no coding or code testing involved in this stage. A document template has been provided for your use.
Requirements:
  • Write an algorithm that describes how the program will operate.
  1. All program requirements must be included, even if you do not end up including all these requirements in your program code.
  1. The algorithm must be structured logically so that the program would function correctly.
  • Prepare and document test cases that can be used to check that the program works correctly, once it has been coded. You do NOT need to actually run the test cases in this stage; this will occur in Stage 3: Testing.
  1. All program requirements must be included, even if you do not end up including all these requirements in your program code.
  1. Make sure the test cases include checking of data entered by the user to make sure that only valid data is accepted. If the user enters invalid data, the user should be informed of this and given another chance to enter the data. NB: As we have not covered exception handling, you may assume that the user will always enter the expected data type.
  1. Test cases should be documented using a template like the one below. You may include extra information if you wish. At this stage, the Actual Result column will be left blank.
Test CaseExpected ResultActual Result
   
Display Results selectedEach competitor is listed 
 with their total final 
 score, sorted from 
 highest to lowest total 
 score. 
 This list is followed by a 
 list of First, Second and 
 Third placings, 
 identifying the student 
 and the school they 
 represent. 
   
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 2 of 13
Stage 2: Program Development
Using the Design Documentation to assist you, develop a Java program that uses object-oriented coding approaches to record and report upon the Maths Whiz! Championship round, implementing the requirements outlined in this section.
You must follow coding conventions, such as proper layout of code, using naming conventions and writing meaningful comments throughout your program.
Overview of the Program:
This section provides an overview of how the program works from the user’s perspective. You may change the appearance of the program provided you implement the same functionality.
  1. When the program starts, it provides a short message for initializing the contest administration system and prompts the user to enter the number of questions in the competition. The user must enter a whole number greater than or equal to 1, otherwise the system keeps prompting for the required number of questions until a valid entry is made.
  1. Once the number of questions required is obtained, the program automatically initialises. This initialisation includes creating the contest, creating the schools, creating the students and registering the students in the contest.
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 3 of 13  When initialisation is complete, a menu appears providing the user with options to Enter Results, Display Results, View Program Credits or Exit Program.
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx  age 4 of 13
  1. When the user selects the Enter Results option, the user is prompted to enter the scores each student obtains on each question in the contest. When all results have been entered for the contest, a message “Score entry complete” appears and the menu is shown again.CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx
Page 5 of 13
  1. When the user chooses the Display Results option, the results of the championship are displayed by student. Students are listed in order of their total scores across all questions, from highest to lowest. This list is followed by the placings for the event, with those students who achieve the highest three scores shown in first, second and third place, with the school they represent also identified. The menu is then redisplayed.
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx.
  1. When the user selects the option to View Program Credits, a message is displayed providing authorship information for this program. The main menu is then redisplayed.
  1. When the user selects the option to Exit program, a message thanks the user for using the system, and the program terminates.
CRICOS Provider No. 00103D           1717 Assignment 2 specification.docx

Software Engineering Methodologies

Software Engineering Methodologies

08-12-17 Maddox Smith 0 comment


Software Engineering Methodologies
Assignment 2     Group Assignment –  (Groups of 2- 3)
Specification of a System – Wheat Truck Control System (WTC)
Overview
As a Software Engineering consultant, your task is to develop a formal specification in Z for the proposed system described below. You will present your work to show that your system does work and answer questions about the system specification your group has developed.
Timelines and Expectations
Percentage Value of Task: 20%
Due: Friday, September 29, 2017 – 17:00 (Week 11)
Minimum time expectation: 10 hours
Learning Outcomes Assessed
S1. Critically analyse and use complex decision making to research and determine the appropriate Software Engineeringtools and methodologies to utilize in a given situation.
S2. Apply professional communication skills to support and manage the engineering of a large software system.
S3. Review, critically analyse and develop artefacts to define processes for quality assurance, risk management and communication in large software development projects.
S4. Implement quality assurance activities in order to verify user requirements and validate design decisions.
A1. Analysis of a large system development problem to decide upon the best methodological approach.
A2. Development of appropriate artefacts to support and manage the software engineering process such as change control and configuration management.
CRICOS Provider No. 00103D           ITECH7410 Assig 2  Sem 1  2017                                                                                                                                   Page 1 of 7
Assessment Details
A new computerized system is to be developed for the storage and handling of accounts for wheat farmers and truck deliveries to Mahsroh Wheat Board silos. Detailed below are the major objects to be considered in the system: silos, ships, trucks and farmers. This system could be quite complicated. However, to simplify the system for this assignment we will be content to include the following in our proposed system:
Silos
The Board currently has ten (10) wheat silos around the country but the system must be written to seamlessly handle at least twice that number. Each silo has a unique name and storage capacity (in tonnes) that must be stored in the proposed system. In addition the system must maintain the current amount of wheat stored in the silo. Obviously when the silo is full no further deliveries of wheat can be made to that silo before some is offloaded onto a ship for export overseas. Similarly a silo cannot off-load more wheat onto a ship than is currently stored. We will assume that when off-loading to a ship, no trucks can unload due to operational and safety considerations. Only one ship can be handled at a time at each silo.
We will assume that only one truck can unload into a particular silo at any one time. Therefore during busy times each silo also maintains a queue of trucks waiting to unload. Trucks should only be entered into the waiting queue when there is sufficient room for the wheat that the truck holds, i.e. you need to know that the current storage plus all the loads currently in the queue will not exceed the silos capacity.
Ships
The system will keep a record of all ships that have been registered to transport wheat overseas for the Wheat Board. The ships name, nationality and capacity (in tonnes) will be stored. The ship’s captain can specify the amount of wheat to be off-loaded into the ship as long as it is less than the ships capacity and also the silos current amount in storage. The system will keep a record of the amount of wheat off-loaded to the ship and adjust the current storage appropriately.
Trucks
As each loaded truck arrives at the silo, it is weighed to ascertain the amount of wheat in the truck. The system maintains a list of registered trucks and their empty weight (in tonnes). Therefore, a single weighing is sufficient to determine the wheat load. If there is sufficient room in the silo then the wheat is off-loaded into the silo and a record is kept of the amount off-loaded against both the truck registration number and the farmer providing the wheat.
CRICOS Provider No. 00103D           ITECH7410 Assig 2  Sem 1  2017-07                                                                                                                                Page 2 of 7
Date and Time
Normally we would maintain the date and time of each operation (truck delivery or ship off-loading) however to simplify this assignment we will ignore those aspects. Instead, we will keep a sequential count of each operation for each silo. Therefore, we will have a history of the order of truck unloading and ship off-loading operations that take place for each silo.
The system would be able to say for example, that silo HORSHAM_1, operation number 999 involved 25 tonne of wheat delivered by the truck registered TONKA owned by Jack Black from farmer Bob Smith. Then operation 1000 was an off-loading operation of 125,000 tonnes to the ship “Southern Aurora”.
There is also a need to keep track of the operation order between silos, therefore we will keep a global sequential count of the operations at silos as well. Refer to the table below as an example:
You will need to decide how to demonstrate that your system specification works and satisfies the client requirements. (You might wish to discuss your approach with your tutor.)
General Comments
The submission must be presented in a professional, clear and concise manner. If you need further system information please use your initiative and make reasonable and logical assumptions. Questions of a general nature (for example to clarify some part of the assignment requirements) can also be sent to the discussion forums, note these should not in any way give solutions or parts thereof. Similarly you are encouraged to ask questions about the Z specification language, it is not simple and no students will have encountered it before.
CRICOS Provider No. 00103D           ITECH7410 Assig 2  Sem 1  2017-07                                                                                                                                Page 3 of 7
Requirements:
Z Schema Operations
You are to create a Z schema that adequately describes the WTC system. It should include at least one state space and the following operations:
An initialization operation called Init.
An operation Enter_new_silo that an operator uses to enter the details of a new silo into the system. Assume the new silo is currently empty.
An operation Accept_delivery that an operator uses to signal the system to begin off-loading x tonne of wheat from a truck. Note that the system must do a check to see if that storage capacity is available in the silo, if not then an error message must be output and no truck unloading done. Additional information needed by this routine is the truck registration and the farmer’s name. If successful this operation stores all necessary details into the system for that delivery. If a truck is already unloading then this new truck will be placed in a queue waiting for its turn to unload.
An operation Leave_queue. This operation is run by the system operator each time there is a queue for a silo and the driver of a specified truck decides that the anticipated waiting time is too long and leaves the queue. The operation outputs to the operator the list of trucks in the queue after the specified truck is removed or if none in the queue a reasonable error message.
An operation Silo_account that outputs the total amount of wheat in tonnes delivered to a particular silo by ALL farmers in a specified time period (note that means between two global operations numbers in our simplified system). In other words between global operations 10000 and 10500 for example.
An operation Ships_total_account that outputs the total amount of wheat that a particular ship has taken from ALL silos in the total history of the system.
An operation Farmers_account that outputs the total amount of wheat delivered to ALL silos in between two specified global operation numbers (e.g. 10000 and 10500).
You should provide robust versions of each operation that are capable of handling any possible error conditions. For example, if the ship or truck is not correctly registered in the system an appropriate error message must be given.
The submissions will be considered for presentation, conciseness and correctness (both logically and notationally). Versions of the operations that are developed using the Z Schema Calculus will be more highly considered than monolithic versions that account for all conditions within a single schema.

Plagiarism policy

Plagiarism policy

08-12-17 Maddox Smith 0 comment

  1. Plagiarism policy:
You should also add a narrative in the report to explain any schemas or logic that you have used. Schemas should be annotated. Authorship should be made clear.
You will be asked to explain and answer questions about your work in a presentation – which will be scheduled at a suitable time – in either labs or lecture.
Submission
Your assignment should be completed according to the Guides to your assessments
Using the link provided in Moodle, please upload the following in one zip file as directed by your lecturer.
Name your zip file in the following manner:
<GivenName_FAMILY-NAME>_<ID>.zip
e.g.     Aravind_ADIGA_30301234.zip
The assignment must be submitted electronically through the Moodle assignment system in Microsoft Word document format, rtf format or as a pdf document. If you are unable to provide one of these formats please contact your lecturer/tutor by email prior to submission to ensure that they will be able to handle the alternative format.
To alleviate any problems with fonts and symbols for the Z specification all students must use the Zed true type font that is available on Moodle. Note this zip file has both true type and Adobe Type Manager files for both Windows and Macintosh machines. Please make sure you use the true type font. The archive contains a Readme.txt file that explains how to install the font.
CRICOS Provider No. 00103D           ITECH7410 Assig 2  Sem 1  2017-07                                                                                                                                Page 5 of 7
Feedback
Assessment marks will be made available in fdlMarks, feedback to individual students will be provided via Moodle or as direct feedback during your tutorial class
Plagiarism:
Plagiarism is the presentation of the expressed thought or work of another person as though it is one’s own without properly acknowledging that person. You must not allow other students to copy your work and must take care to safeguard against this happening. More information about the plagiarism policy and procedure for the university can be found at:
Your support material must be compiled from reliable sources such as the academic resources in Federation University library which might include, but not limited to: the main library collection, library databases and the BONUS+ collection as well as any reputable online resources (you should confirm this with your tutor).
Federation University General Guide to Referencing:
The University has published a style guide to help students correctly reference and cite information
they use in assignments. A copy of the University’s citation guides can be found on the university’s
web site. It is imperative that students cite all sources of information. The General Guide to
Referencing can be purchased from the University bookshop or accessed online at:
Suggested References:
Weeks 4 and 5 study materials and Section 4 of study Guide 3
The Z Notation: A Reference ManualUsing Z //www.comlab.ox.ac.uk/igdp/usingz Sections 21.5, 21.6 and 21.7 from Pressman 7th Ed.
Solutions for Problem 2 of Week 6 tutorial problems
Introduction to Z Notation –
CRICOS Provider No. 00103D           ITECH7410 Assig 2  Sem 1  2017-07                                                                                                                                Page 6 of 7
Marking Criteria
      Group Name: __________________
 Student ID:  Student name:    
 other members in the group      
 Student ID:  Student name:    
 Student ID:  Student name:    
      
   Task Mark
        
 Z Schema Operations   Init8
       
    Enter_new_silo_account8
 Schema = 4 marks      
 Concise & correct   Accept_delivery8
 Notation & logic correct   Leave_queue8
      
 Schema Annotations = 4 marksSilo_account8
      
 Relevant, concise & clear      
      Ships_total_account8
      Farmers_account8
     
 1.  Evidence that system works correctly – included in report 14
       
    
 2.  Report – adheres to the FedUni guidelines for the presentation of academic work10
       
    
 3.  Presentation – discuss your contribution – development & testing, answer questions about the20
 system    
       
      Total100
        
      Final/20
        
Comments