Programming

=Welcome to my Programming Page=

The Skills Task will happen on Tuesday, August 14 (Week 4, Term 3)

Programming Project


 * //__Sample programs you might like to explore are available at R:\STAGE 2 SUBJECTS\IT Studies\2007\Programming on the school LAN.__//**

From the Curriculum Statement

**Systems Development Life Cycle**
The study of Stage 2 Information Technology Studies involves the development of computer-based systems to solve problems. A systems development life cycle is a problem-solving approach that students can use when creating computer-based solutions. The stages are rarely linear, and many students will find it useful to view system development as more than a simple step-by-step process. The systems development life cycle consists of the following stages: problem definition, analysis, design, development and validation, and evaluation. · The //problem definition// explains the problem and outlines the intended outcomes of the system. · //Analysis// is the identification of the data that needs to be stored and the data processing required. · //Design// is a process of developing a plan for the information system, using appropriate tools and concepts. · //Development// //and// //validation// involve building, testing, and checking the trial system. · //Evaluation// is the appraisal of the performance of the system against the problem specification. Students can choose their own individual problem and the outcomes that their proposed solution is intended to achieve. Depending on the type of system developed, there will be a differing emphasis on each stage of the systems development life cycle.

Programming involves instructing a computer to solve a problem in a logical way with the help of a programming language. An application program is a computer program that performs a specific role. Students develop an understanding of programming by constructing an application program that accepts input from, and interacts with, the user to produce outcomes. Students are required to design and write a program that includes branching, looping, function, and arrays and has a user-friendly finished layout. Students use the problem-solving approach of the systems development life cycle to build an application program. Students investigate how an application program can be developed by considering the following: · A program is a series of instructions that causes the computer to perform a predetermined task. · A program uses data to produce information such as: the daily takings for a hairdresser, allowing for seniors’ discounts; the number of participants in different seminars; a list of students who scored higher than the average mark on a test; a company’s payroll. · The information obtained from a program helps individuals, organisations, and communities to make decisions such as: who can be selected for a sports team based on age; which subjects a student will study; how participants will be placed in seminars; how much money will be required for a company’s payroll. Students investigate how an application program can be structured and, by applying knowledge and skills, propose a design. Students consider the following key question and concepts: //How is an application program designed?// · Structure charts indicate the order in which the modules of a program are executed. · A module is a group of statements that logically belong together and alter the state of the system. Modules are used to break a problem into manageable parts. · An algorithm is a series of steps written in sequence to define the solution to a problem. It can be expressed in pseudocode. · Recommended practice and efficient design involve the use of modules (procedures and functions). Students explore how an application program can be structured and, by applying knowledge, skills, and problem-solving techniques, create a program. Students consider the following key questions and concepts: 
 * Application Programming**
 * Focus**
 * Design**
 * Development**

· A program is developed from an algorithm using procedures and/or user-defined functions and an understanding of the control structures of: sequence; selection (if–then–else and nested case); iteration (fixed, post-test, and pre-test loops). · A variable is assigned a data type, such as integer, string, floating point, Boolean, or currency. · A variable can be global to the whole program or local to the module in which it is defined. · A program may include a data structure such as variables and one-dimensional array(s). · A program is developed by identifying inputs and required outputs. · Data may be set within a program or from the user (e.g. keyboard or mouse), or input from another data file. · The output of a program should provide feedback in a user-friendly way. · Programs can be created using reusable code. 

· A desk-check is used to test the validity of an algorithm. · The types of errors (syntax, logic, execution) that occur in programming are identified in terms of their effect on the running of the program. · There are methods to reduce the occurrence of errors (e.g. tracing, debugging, flagging). · The outputs of a program can have various forms (e.g. text, object movement, media elements). Students develop an understanding of their responsibility in using and developing application programs, and the impact of application software on society, by critically evaluating and responding to related issues. Students consider the following key questions and concepts: 
 * Social Responsibility**

An application programmer should: · use recommended practices and conventions, including the writing of internal documentation and user instructions; · consider the forms in which a programming product can be stored. Each form has implications for the speed of execution, accessibility, and delivery to users; · develop secure applications with respect to the rights of users in areas such as administration, trading, shopping, Internet banking, and virtual learning. 

· Programs can be written, customised, or re-customised for the specific requirements of an individual, an organisation, or a community. · Application software: has changed the work practices, procedures, and decision-making processes of individuals, organisations, and communities; can be distributed commercially or as shareware or freeware, or may be modified and distributed further under open source conditions or a Creative Commons licence; is protected by copyright and, in some cases, other intellectual property rights, and may be subject to social and cultural protocols.