Course Title: Create scripts for networking

Part B: Course Detail

Teaching Period: Term1 2017

Course Code: COSC6202C

Course Title: Create scripts for networking

School: 174T School of VE Engineering, Health & Science

Campus: City Campus

Program: C4378 - Certificate IV in Information Technology Networking

Course Contact: Alex Buono

Course Contact Phone: +61 3 9925 4475

Course Contact Email: alex.buono@rmit.edu.au


Name and Contact Details of All Other Relevant Staff

Nominal Hours: 60

Regardless of the mode of delivery, represent a guide to the relative teaching time and student effort required to successfully achieve a particular competency/module. This may include not only scheduled classes or workplace visits but also the amount of effort required to undertake, evaluate and complete all assessment requirements, including any non-classroom activities.

Pre-requisites and Co-requisites

NiI

Course Description

This unit describes the performance outcomes, skills and knowledge required to undertake scripted programming tasks for networking related activities.

This course explores Linux and *nix through the command line, Bash scripting and Ubuntu. You will learn to work at the *nix command line, and transfer this knowledge to writing basic scripts.

Topics include
• Basic scripts, the development of writing scripts from the terminal to the script
• System security – separate user and root accounts, escalation of privileges, root via sudo su, sudo command, configuring the sudo’ers file with visudo.
• Standard permissions with owner and groups, read write and execute file permissions.
• File permissions: chmod, chown, chgrp, ls –al.
• File types, binary and text files, library files, symlinks. Compare with Windows dlls and shortcuts.
• Bash programming language, control structures. Functions, passing arguments from the command line, loops, if then, else and case statements, program return error code. Built in variables and PATH. The bash interpreter. Local variables and basic data types and manipulations with strings. Functions.
• Command line utilities relevant to networking. ps, netstat, ifconfig, ping, tail -f, htop
• *nix language in a Bash shell–mkdir, rm, cd, pushd, popd, pwd, ls, cp, mv -i, man, whoami, pipes, output redirection, echo, cat, grep, xterm &, pattern matching, “.” and “..” directories, ~, hidden files beginning with a period “.”, command line arguments, command line in scripts
• Scheduler through crontab with relative and absolute paths, logs, log files and logging messages
• vi editor skills
• *nix updates and software installation using # apt-get. In Ubuntu or Linux Mint configuring the proxy server for apt-get update.
 


National Codes, Titles, Elements and Performance Criteria

National Element Code & Title:

ICTNWK409 Create scripts for networking

Element:

1. Develop algorithms to represent solutions to a given problem

Performance Criteria:

1.1 Consult with client and key stakeholders to identify the problem and associated script requirements

 

1.2 Employ abbreviated software development cycle to script creation

 

1.3 Develop an algorithm to solve the problem and meet client requirements

 

1.4 Develop an algorithm which takes account of expected possible situations

 

1.5 Develop an algorithm which is guaranteed to end

 

1.6 Use structure, sequence, selection and iteration

Element:

2. Create code

Performance Criteria:

2.1 Select appropriate scripting language

 

2.2 Demonstrate understanding and application of basic language syntax rules and best practices

 

2.3 Select and use language data types, operators and expressions to create clear and concise code

 

2.4 Use techniques of selection, iteration and sequence to control script execution flow

 

2.5 Use techniques for sequential file input and output to retrieve and store information

 

2.6 Obtain and use user input to affect the operation of the script

 

2.7 Apply internal document principles to created code

 

2.8 Follow organisational guidelines for developing maintainable code when creating scripts

 

2.9 Adhere to coding standards when creating scripts

Element:

3. Use operating system tools

Performance Criteria:

3.1 Use searching and sorting tools to select information from the logging output of operating system (OS)

 

3.2 Implement controls to ensure that where significant events occur, script creates and maintains a log of operations via operating system logging mechanism

 

3.3 Register and run scripts with OS scheduling facility

Element:

4. Test and debug code

Performance Criteria:

4.1 Engineer, document and conduct simple tests to confirm code meets design specification

 

4.2 Identify areas that are not covered or are covered incorrectly in the script

 

4.3 Take action to ensure that code complies with security policy

 

4.4 Take action to ensure that code operates with proper permissions

 

4.5 Use script debugging techniques suitable for use with scripting language to detect and resolve errors of syntactical, logical and design origin

Element:

5. Document script

Performance Criteria:

5.1 Create technical-level documentation

 

5.2 Create user-level documentation


Learning Outcomes


Develope scripted programming abilities.  Develope skills in BASH. 

This course contributes to the development of the following capabilities:
• Develop shell scripts
• Using Linux at the command line
• Monitor processes by command line tools and the GUI.
• Identify and manage standard permissions
• Write a basic menu program
• Modify and testing your code
• Documenting code


Details of Learning Activities

This unit describes the skills and knowledge required to undertake scripted programming tasks for networking related activities.


Teaching Schedule

Week                 

Topic

Elements

1

Commands

Lab 1 released (Due Week 2)

1.1, 1.3, 1.5

2.1, 2.2

4.1, 4.2

2

Commands (Cont.)

I/O Redirection

Lab 2 released (Due Week 3)

Online Quiz 1 released (Due Week 3)

1.1, 1.3, 1.5

2.1 - 2.3

3.1

4.1, 4.2

3

Coding Standards

Debugging Scripts

Script Development Process

Script Logging Mechanism

Variables and Operators

Lab 3 released (Due Week 4)

Online Quiz 2 released (Due Week 4)

1.1  – 1.3, 1.5

2.1 – 2.3, 2.6 – 2.9

3.2

4.1, 4.2, 4.4, 4.5

4

Decisions

Lab 4 released (Due Week 5)

1.3  – 1.6

2.2 – 2.4, 2.6

4.1, 4.2

5

Menu-Driven Applications

Repetition

Lab 5 released (Due Week 6)

Online Quiz 3 released (Due Week 6)

1.3 – 1.6

2.2 – 2.4, 2.6

4.1, 4.2

6

Functions

Menu-Driven Applications (Cont.)

Lab 6 released (Due Week 7)

1.3  – 1.6

2.2 – 2.4, 2.6

4.1, 4.2

7

Arrays

Lab 7 released (Due Week 8)

Online Quiz 4 released (Due Week 8)

1.3  – 1.6

2.2 – 2.4, 2.6

4.1, 4.2

8

Regular Expressions

Lab 8 released (Due Week 9)

1.3  – 1.6

2.2 – 2.5

3.1

4.1, 4.2

9

Files

User Documentation

Technical Documentation

Lab 9 released (Due Week 10)

1.3  – 1.6

2.2 – 2.6

4.1, 4.2

5.1, 5.2

10

Managing Users and Groups

Lab 10 released (Due Week 11)

1.3  – 1.6

2.2 – 2.6

3.1

4.1 – 4.3

11

Managing Permissions for Files/Directories

Assignment released (Due Week 15)

Lab 11 released (Due Week 12)

1.3  – 1.6

2.2 – 2.6

3.2

4.1 – 4.4

12

Managing Root Access for Linux Users

Lab 12 released (Due Week 13)

1.3  – 1.5

4.1 – 4.4

13

Scheduling Scripts

Lab 13 released (Due Week 14)

1.3, 1.5

3.3

4.1

14

Assignment

 

15

Assignment

 

16

Completion of Assessments

 

Please note this timeline is subject to change.


Learning Resources

Prescribed Texts


References


Other Resources


Overview of Assessment

Students must pass each of the following assessment tasks to demonstrate competent.

Assessment

Task 1

Online Quizzes

Task 2

Assignments

Task 3

Project

These tasks assess the following Course Learning Outcomes (CLOs):

Assessment Mapping Matix

Element/

Performance Criteria Covered

Task 1 

Task 2

Task 3

1.1

x

   

1.2

x

x

x

1.3

x

x

x

1.4

x

x

x

1.5

x

x

x

1.6

x

x

x

2.1

 

x

x

2.2

x

x

x

2.3

x

x

x

2.4

x

x

x

2.5

x

x

x

2.6

 

x

x

2.7

 

x

x

2.8

 

x

x

2.9

 

x

x

3.1

x

 

x

3.2

x

 

x

3.3

x

 

x

4.1

   

x

4.2

x

 

x

4.3

x

 

x

4.4

x

 

x

4.5

x

 

x

5.1

x

 

x

5.2

x

 

x

 

 

 

 

 

 

 

 

 

To be deemed competent student must demonstrate an understanding of all aspects required of the competency. Assessment methods have been designed to measure student's achievement of each competency in a flexible manner over multiple tasks.


Assessment Tasks

  1. Online Quizzes
  2. Labs
  3. Assignment

You are permitted to have a maximum of 2 resubmissions for this course, however each individual assessment may only be resubmitted once.

All resubmissions must be completed and submitted no more than 7 days after your work has been graded.


Assessment Matrix

Students must pass each of the following assessment tasks to demonstrate competent.

Assessment

Task 1

Online Quizzes

Task 2

Labs

Task 3

Assignment

These tasks assess the following Course Learning Outcomes (CLOs):

Assessment Mapping Matix

Element/

Performance Criteria Covered

Task 1

Task 2

Task 3

1.1

X

X

X

1.2

X

X

 

1.3

X

X

X

1.4

X

X

X

1.5

X

X

X

1.6

X

X

X

2.1

X

X

X

2.2

X

X

X

2.3

X

X

X

2.4

X

X

X

2.5

 

X

X

2.6

X

X

X

2.7

X

X

X

2.8

X

X

X

2.9

X

X

X

3.1

 

X

X

3.2

 

X

X

3.3

 

X

X

4.1

X

X

X

4.2

X

X

X

4.3

 

X

X

4.4

X

X

X

4.5

X

X

X

5.1

 

X

X

5.2

 

X

X

To be deemed competent you must demonstrate an understanding of all aspects required of the competency. Assessment methods have been designed to measure your achievement of each competency in a flexible manner over multiple tasks.

Other Information

Credit Transfer and/or Recognition of Prior Learning (RPL):

You may be eligible for credit towards courses in your program if you have already met the learning/competency outcomes through previous learning and/or industry experience. To be eligible for credit towards a course, you must demonstrate that you have already completed learning and/or gained industry experience that is:

  • Relevant
  • Current
  • Satisfies the learning/competency outcomes of the course

Please refer to http://www.rmit.edu.au/students/enrolment/credit to find more information about credit transfer and RPL.

 

Study and Learning Support:

Study and Learning Centre (SLC) provides free learning and academic development advice to you. Services offered by SLC to support your numeracy and literacy skills are:

  • Assignment writing, thesis writing and study skills advice
  • Maths and science developmental support and advice
  • English language development

Please refer to http://www.rmit.edu.au/studyandlearningcentre to find more information about Study and Learning Support.

 

Disability Liaison Unit:

If you are suffering from long-term medical condition or disability, you should contact Disability Liaison Unit to seek advice and support to complete your studies.

Please refer to http://www.rmit.edu.au/disability to find more information about services offered by Disability Liaison Unit.

 

Late Submission:

If you require an Extension of Submittable Work (assignments, reports or project work etc.) for seven calendar days or less (from the original due date) and have valid reasons, you must complete an Application for Extension of Submittable Work (7 Calendar Days or less) form and lodge it with the Senior Educator/ Program Manager.

The application must be lodged no later than one working day before the official due date. You will be notified within no more than two working days of the date of lodgement as to whether the extension has been granted.

If you seek an Extension of Submittable Work for more than seven calendar days (from the original due date), you must lodge an Application for Special Consideration form under the provisions of the Special Consideration

Policy, preferably prior to, but no later than two working days after the official due date. Submittable Work (assignments, reports or project work etc.) submitted late without approval of an extension

will not be accepted or marked.

 

Special Consideration:

Please refer to http://www.rmit.edu.au/students/specialconsideration to find more information about special consideration.

 

Plagiarism:

Plagiarism is a form of cheating and it is very serious academic offence that may lead to expulsion from the university.

Please refer to http://www.rmit.edu.au/academicintegrity to find more information about plagiarism.

 

Email Communication:

All email communications will be sent to your RMIT email address and you must regularly check your RMIT emails.

Course Overview: Access Course Overview