ITECH1400 Foundations of Programming CRICOS Provider No. 00103D ITECH1400 Assignment 2 Sem 2 2019 Page 1 of 5 Biorhythms: Theory & Practice Overview In this assignment you will provide a Python script which will calculate the Biorhythms for any individual and present the data graphically using libraries and a common algorithm. Timelines and Expectations Percentage Value of Task: 20% Due: Friday Sept 27, 2019 @ 17:00 (week 11) Minimum time expectation: 20 hours Learning Outcomes Assessed The following course learning outcomes are assessed by completing this assessment: K1. Identify and use the correct syntax of a common programming language. K2. Recall and use typical programming constructs to design and implement simple software solutions. K3. Reproduce and adapt commonly used basic algorithms. K4. Explain the importance of programming style concepts (documentation, mnemonic names, indentation) S2. Write and implement a solution algorithm using basic programming constructs. S3. Demonstrate debugging and testing skills whilst writing code. A1. Develop self-reliance and judgement in adapting algorithms to diverse contexts. A2. Design and write program solutions to identified problems using accepted design constructs. Assessment Details Theory Biorhythms were developed by Wilhelm Fließ, a colleague of Sigmund Freud, in the 19th century and were very popular in the 1970s (Troutman, 1978); despite criticisms they are still used today in fields such as work safety to sports performance (Arab, Omidvari, & Nasiripour, 2014; Habibi, Mohammadi, Ghanbary Sartang, & Zeinodini, 2016; Zareian, Rabbani, & Saeedi, 2014). The theory underlying Biorhythms proposes that, from birth, three cycles: physical, emotional and intellectual affect our performance. Understanding these cycles can help to optimise our potential. CRICOS Provider No. 00103D ITECH1400 Assignment 2 Sem 2 2019.docx Page 2 of 5 Although there are many references available, the paper by Troutman (1978) has been attached as an early computer application. (Spend a little time looking at the code at the end of this paper. Consider all the GO TO statements in the code and how it affects readability. Would this code be easy to modify? Debug? Compare this with the way we write code today – refer to the 3 structures given by Boehm and Jacopini in the additional material in week 1.) Your main task is to develop a Python application that can display Biorhythms for any person given their date of birth and the target date. You should be able to provide the Biorhythms for a suitable spread around the target date as well. Two algorithms to determine the day of any date have been provided – you are to implement one of these in a function which you call in your code to add the day of the week to your graph annotation. ( Using a few carefully chosen dates, demonstrate that your day of the week function works correctly. (Here we don’t use a Python library function for this so that you might better appreciate libraries.) Practice The last stage is to apply the Biorhythm code that you have implemented. There are many ways to do this, for example: Choose a favourite sports person – Roger Federer or Serena Williams for example. How were their Biorhythms in their last tennis match? Did they win? If not what were their adversary’s Biorhythms like? Take a celebrity – a famous actor – Clark Gable or Marilyn Monroe. Clark Gable had a heart attack on November 5, 1960 and died shortly after. What were his Biorhythms like around this time? Figure 1 Biorhythm chart over the first 66-day period after birth (after Wiki) CRICOS Provider No. 00103D ITECH1400 Assignment 2 Sem 2 2019.docx Page 3 of 5 Biorhythms indicate that we are at our peak when all three curves are at their maximum. How often could we expect to experience this in our lifetimes? 10, 50 or 100 times or more? Modify your code to determine this. Discuss your own ideas with your lecturer or tutor. A report is to be submitted in this assignment. There is a discussion section in the report in which you can apply step 6 in the six-step problem solving process and ask the four questions often used in evaluating a solution. More details on academic reports are available – please refer to this link: There are three important parts 1. General Guide to Writing and Study Skills This section describes the content of a report – refer to page 34 – Abstract, Table of Contents, Introduction, Conclusion and so on. 2. General Guide to Referencing APA referencing style is described in this section – EndNote is also available to students 3. Assignment Layout and Appearance Guidelines This section describes how the report should appear: margin sizes, fonts, how diagrams and tables are presented and so on. While you are encouraged to research and discuss your work with colleagues, the final product must be all your own work. (Screen shots of a debugger might be useful in explaining how your code works.) Any help must be acknowledged as well as any resource material. CRICOS Provider No. 00103D ITECH1400 Assignment 2 Sem 2 2019.docx Page 4 of 5 Submission You must supply your program source code files and your documentation as a single zip file named as follows: e.g. You may supply your word processed documentation in either Microsoft Word or LibreOffice/OpenOffice formats only – no proprietary Mac specific formats, please. Assignments will be marked on the basis of fulfilment of the requirements and the quality of the work. In addition to the marking criteria, marks may be deducted for failure to comply with the assignment requirements, including (but not limited to): • Incomplete implementation(s), and • Incomplete submissions (e.g. missing files), and • Poor spelling and grammar. You might be asked to demonstrate and explain your work. Marking Criteria/Rubric Biorhythms Item Mark Basic Description of Biorhythms – in your own words – significant parts of the three curves including their relationship to one another /10 Description of Biorhythms as sine and cosine curves – including the importance of phase and amplitude e.g. critical days /10 Pseudocode for the calculation of Biorhythms /15 Graphical display with significant parts of the curves labelled /10 CRICOS Provider No. 00103D ITECH1400 Assignment 2 Sem 2 2019.docx Page 5 of 5 Graphical Display Annotation of the curves with day and date using the algorithm provided or suitable algorithm – description of the algorithm in your own words. Do not use library function. /10 Demonstration that correct day/date annotation is implemented in code /10 Practical application of your Biorhythm code. Discuss you individual approach with your lecturer/tutor. /10 Discussion /15 Report1 /10 TOTAL /100 FINAL MARK /20 Feedback Feedback will be provided in lectures and labs as well as on Moodle 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 References Arab, F., Omidvari, M., & Nasiripour, A. A. (2014). Investigating of the effect of Biorhythm on work-related Accidents Journal of Health and Safety at Work, 4(2), 51-58. Habibi, E., Mohammadi, Z., Ghanbary Sartang, A., & Zeinodini, M. (2016). Investigation Effect of Biorhythm on Work-Related Accidents in the Metal Industry (A Short Report). Iranian Journal of Health, Safety and Environment, 3(3), 583-586. Troutman, J. G. (1978). Biorhythms: A Computer Program. The Two-Year College Mathematics Journal, 9(2), 101-103. doi:10.2307/3026611 Zareian, E., Rabbani, V., & Saeedi, F. (2014). The Effect of Physical Biorhythm Cycle on Some Physical Fitness Factors of Adolescent Volleyball Players (Vol. 2). 1 ~~~For this or similar assignment papers~~~