the elective part of the nss ict curriculum - edb.gov.hk · nss ict curriculum d. software...

52
1 The Elective Part of the NSS ICT Curriculum D. Software Development Mr. CHEUNG Wah-sang / Mr. WONG Wing-hong, Robert Member of CDC – HKEAA Committee on ICT (Senior Secondary)

Upload: buithu

Post on 24-Aug-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

1

The Elective Part of theNSS ICT Curriculum

D. Software Development

Mr. CHEUNG Wah-sang / Mr. WONG Wing-hong, RobertMember of CDC – HKEAA Committee on ICT

(Senior Secondary)

2

D. Software DevelopmentThe Elective Part

The concepts / skills learnt in this option is easily transferable and applicable in analysing and solving problems we face in daily lives.

It gives opportunities to students to understand and analyseproblems from macro and micro point of views.

It offers a balance between theoretical knowledge and technical knowledge.

3

This elective helpsto develop students’ their problem-solving skills through a systematic approach to algorithm design and programming, as well as to improve their logical thinking and critical thinking skills;to develop students’ creativity and broaden their views on software development;to offer students a wider choice from which to think and select an appropriate approach to solve a specific problem in future.

D. Software DevelopmentThe Elective Part

4

D. Software DevelopmentThe Elective Part

If students

are problem-solvers, and are keen on carrying out projects using computers may consider selecting this elective which focuses on solving problems and developing solutions.

5

Learning ObjectivesStudents will learn about:

how to define and analyse problems;the importance of good programming skills and good programming styles;the importance of formulating appropriate algorithms in solving problems;creative design and development of computer programs;how to illustrate different programming paradigms with appropriate programming languages; how to choose different languages to meet different needs;the importance of a systematic approach to software development; andhow to apply concepts underlying software development in a systematic way.

D. Software DevelopmentThe Elective Part

6

Overall Time Allocation

Core (18 hrs)

Elective (30 hrs)

Compulsory (20 hrs)- Basic Programming Concepts

Elective (75 hrs)- Systems Development- Programming Languages

- Programming (47 hrs)

CE-CIT (2 years)NSS-ICT (3 years)

7

(25 hours)

Time allocation: 75 hrs

Programming(47 hours)

SystemsDevelopment

(16 hours)

ProgrammingLanguages(12 hours)

The Elective PartD. Software Development

8

a. Programming (47 hrs)

i. Problem definition and analysisii. Design of solutioniii. Implementationiv. Testing and evaluationv. Documentation

b. Programming Languages (12 hrs)

i. Programming paradigmsii. Language translators and compilers

D. Software DevelopmentThe Elective Part

Details

Details

9

c. Systems Development (16 hrs)

i. Basic conceptsii. Systems Analysisiii. System designiv. Systems implementationv. System conversion and maintenancevi. Systems documentationvii. Alternative approachesviii. The personnel

D. Software Development

The Elective Part

Details

10

Aims and Objectives

D. Software DevelopmentThe Elective Part

High order thinkingHigh order thinking

Creativity

CE-CIT (2 years)NSS-ICT (3 years)

11

Choices of Programming Languages

D. Software DevelopmentThe Elective Part

Examination- Pascal / C

Coursework- Not specified

Examination- Pascal / C- Java / VB

Coursework- Not specified

CE-CIT (2 years)NSS-ICT (3 years)

12

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Core Module

Problem Definition- define problem- identify tasks

CE-CIT (2 years)NSS-ICT (3 years)

13

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A- Trial-and-error

I/O AnalysisTop-down/bottom-upModularity (compulsory)

Structured prog.

CE-CIT (2 years)NSS-ICT (3 years)

14

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same- Core module

- Elective A - Elective A- Elective A- Core Module

Data types & Algorithms- Integer, real, character, Boolean (Compulsory)

- String & linear array- User defined- Truth tables (Compulsory)

- Flowcharts / block diagram

CE-CIT (2 years)NSS-ICT (3 years)

15

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A- Loosely defined

Algorithms:- counting- accumulating- swapping- searching (linear, binary)- sorting (bubble, insertion, merge)

- merging (2 arrays)

CE-CIT (2 years)NSS-ICT (3 years)

16

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A- Loosely defined

Selection of Algorithms:- complexities- data structure- efficiency- correctness- appropriateness

CE-CIT (2 years)NSS-ICT (3 years)

17

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A

Basic constructs:- global variable- local variable- constants- assignment statements- I/O statements- operators- precedence- association

CE-CIT (2 years)NSS-ICT (3 years)

18

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A

Control structures- sequence- selection- iteration

CE-CIT (2 years)NSS-ICT (3 years)

19

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A- concepts only

ADT(implemented by arrays)- list- linked list- stack-queue

CE-CIT (2 years)NSS-ICT (3 years)

20

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A- Loosely defined

Text File handling- delete records- insert records- append records- amend records

CE-CIT (2 years)NSS-ICT (3 years)

21

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A

Subprograms- passed by value- passed by reference

CE-CIT (2 years)NSS-ICT (3 years)

22

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A

Programming style- meaningful variables- comments- space & indentation

CE-CIT (2 years)NSS-ICT (3 years)

23

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A (implicit)

Structured programming- Why and advantages

CE-CIT (2 years)NSS-ICT (3 years)

24

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

NoNumerical errors- rounding- truncation- overflow- underflow

CE-CIT (2 years)NSS-ICT (3 years)

25

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A

Program Errors- syntax- logical- runtime

CE-CIT (2 years)NSS-ICT (3 years)

26

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A- Loosely defined

Debug- manual- software- stubs/flags- breakpoints/trace

CE-CIT (2 years)NSS-ICT (3 years)

27

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Full range of test cases

Test data designCE-CIT (2 years)NSS-ICT (3 years)

28

a. Programming (47 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Program documentation(titles, lists, variable definitions,test data, sample output, internal documentation, etc.)

Documentation- Algorithm representation- program listing- test data- user manual

CE-CIT (2 years)NSS-ICT (3 years)

29

b. Programming Languages (12 hrs)Aims and Objectives

D. Software DevelopmentThe Elective Part

Aware / UseAppropriate LanguagesMake Choice

CE-CIT (2 years)NSS-ICT (3 years)

30

b. Programming Languages (12 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A

Programming Paradigms- Procedural, logic, object oriented- query language

Illustration

CE-CIT (2 years)NSS-ICT (3 years)

31

b. Programming Languages (12 hrs)Contents

D. Software DevelopmentThe Elective Part

Same - Elective Module A

- assembler

Translator & Compiler- compilers & interpreters

- code generation, linker & loader (Define)

CE-CIT (2 years)NSS-ICT (3 years)

Back

32

c. Systems Development (16 hrs)Aims and Objectives

D. Software DevelopmentThe Elective Part

Program Development - Elective Module A

Problem Solving - Core

Systems Development- Systematic approach

- Apply concepts

CE-CIT (2 years)NSS-ICT (3 years)

33

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

SameBasic concept- basic element- Waterfall Model

CE-CIT (2 years)NSS-ICT (3 years)

34

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

- Loosely definedSystem analysis- Information gathering activities.- feasibility study VS proposed solution- write specifications

CE-CIT (2 years)NSS-ICT (3 years)

35

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

-Loosely defined

- same

System Design

- Functions of parts- User interface (design, comparison ..)- use of chart and support documents- Use Gantt Charts on project management

CE-CIT (2 years)NSS-ICT (3 years)

36

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

- Debug / Test programSystem implementation- Different types of test(unit test, system testing, acceptance testing)

- Design simple test plan

CE-CIT (2 years)NSS-ICT (3 years)

37

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

NoConversion & Maintenance- different strategies(pilot, phased, parallel, direct)

- needs for maintenance …..

CE-CIT (2 years)NSS-ICT (3 years)

38

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

Same- Elective Module A

Systems DocumentationCE-CIT (2 years)NSS-ICT (3 years)

39

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

Same- Elective Module A- other approaches can be used.

(top-down, bottom-up, trial-and error approaches)

Alternative Approaches- Limitation of Waterfall- Latest Approaches

(Prototyping, Rapid Application Development)

CE-CIT (2 years)NSS-ICT (3 years)

40

c. Systems Development (16 hrs)Content

D. Software DevelopmentThe Elective Part

NoPersonnel - in systems development

CE-CIT (2 years)NSS-ICT (3 years)

41

a. Programmingii. Design of Solution

Addition: Select appropriate data types for a solution.

b. Systems Developmentii. System Analysis

Addition: Identify the major task involved in solving a problem.iii. Systems Design

Deletion: Know Critical Path Analysis on project management.Addition: Use Gantt Charts for project management.

iv. System ImplementationDeletion: Identify the major tasks involved in implementation.

The Elective Part

D. Software DevelopmentChanges made since 2nd Consultation

42

Variations of Curriculum Planning:

• Programming first, then Systems Development

• Systems Development, then Programming

The Elective PartD. Software Development

43

Experience sharing: Examples of learning and teaching activities

Authentic Tasks:Data collection -- design a questionnaire

conduct an interview Systems design – draw a Gantt Chart

*** Emphasis should be put on the overall system analysis and design, not just on technical programming skills.

The Elective PartD. Software Development

44

Example 1 - Small Change (data type)Enter the amount($): 2004.8$1000: 2$2 : 2$0.5 : 1$0.2 : 1$0.1 : 1Again (Y/N): YEnter the amount($): _

The Elective PartD. Software Development

45

Example 2 – The More The Less (overflow error)var i:integer;begin

i:=20000;writeln ('i=',i);readln;i:=i*2;writeln ('i=',i);readln

end.

The Elective PartD. Software Development

46

Example 3 – Mark Six (data structure and algorithm)Press ENTER to draw a number...The first drawn number is: 33The second drawn number is: 21The third drawn number is: 5The fourth drawn number is: 24The fifth drawn number is: 7The sixth drawn number is: 1

The six numbers drawn are:1 5 7 21 24 33

The Elective PartD. Software Development

47

Example 4 – Leave A Message System (LAMS)(Systems development)

***Students are required to:- Set a questionnaire- Prepare interview questions- Interview with the hotel manager- Draft the system requirements/specifications- Prepare a work schedule (use of Gantt Chart)

- Produce a prototype for demonstration

The Elective PartD. Software Development

48

Example – Leave A Message System (LAMS)

***Students are required to: (optional)- develop the system- testing and evaluation - documentation

The Elective PartD. Software Development

49

Example – Leave A Message System (LAMS)Test Plan

The Elective PartD. Software Development

50

Example – Leave A Message System (LAMS)

*** Points to note:- Cross-curricular activity- Create a scenario- Encourage :

* team work* originality* documentation (reports / journal)* self-motivation / self-learning

The Elective PartD. Software Development

51

Other examples of Systems Development project

- Room Allocation Wizard (RAW)

- Homework Input and Storage System (HISS)

The Elective PartD. Software Development

52

Thank you!