Subject Title: OPERATING SYSTEMS AND PROJECT MANAGEMENT
Subject Code: BIF713
Subject Description:
This
course provides Bioinformatics students with the foundations to
complete computerized tasks within the MS Windows and Linux operating
system environments.
Students learn the Windows operating
system to navigate the GUI (Graphic User Interface), use short-cut
methods, issue commands, and customize their computer environment to
set up and run applications. Students then learn the Linux operating
system to complete common tasks by issuing common Linux commands,
tools, filters and utilities. An introduction to BASH shell scripting
will expose students to the concept of automating a long series of
Linux commands.
Students will apply their computer skills to
help plan and present their project proposals using open source
applications and CASE (Computer Assisted Software Engineering)
tools.
Credit Status: One credit towards the
Bioinformatics (BIF) post-diploma program.
Prerequisites:
none
General Objectives:
Upon successful
completion of this subject the student will be able to:
1.
Effectively use Linux and MS Windows at the GUI and command levels
2.
Use MS Windows shortcuts
3. Manage files and directories in the MS
Windows and Linux environments
4. Archive and Restore files in MS
Windows and Linux
5. Use MS Windows and Linux networking
commands
6. Install MS Windows and Linux software
7. Manage
user processes in Linux
8. Make use of regular expressions
9.
Use Linux utilities and filters in commands
10. Compare PHP tools
to the Perl programming language as a method of building web
pages.
11. Write, modify, and debug simple BASH shell scripts
12.
Configure a MS Windows and BASH shell environment
Topic Outline
Introduction to Software Engineering: NOTE: Students will use these tools to create a proposal for a Bioinformatics software application to be developed in the following semester. This proposal will be evaluated and graded as part of BIF701.
Open Source Tools
Functional hierarchy charts
Decomposition criteria
Flowcharts and data flow diagrams
Scheduling / Ghantt Charts
Introduction to Windows
Elements of the desktop and taskbar
Launching applications
Access Matrix and Zenit accounts by ssh application
Shortcut Keys / Creating shortcut icons
Configure Desktop and Hardware
Using the command prompt (common commands)
Install MS-Windows applications
File Management
Zipping and Unzipping Files
Unix Basics:
The Unix Philosophy
Logging in and out (login, ctrl-d, exit, logout)
Changing passwords (passwd)
Command line structure (arguments, options)
Command line editing (correcting mistakes, recalling commands)
Online system information (man, HOWTOs, DOCs)
Common Utilities:
File manipulation (grep, head, tail, sort, uniq, diff)
Command aids (file, which, whereis)
Printing (lpr, lpq, lprm)
Useful commands (echo, date, who)
Communication (write, talk, mesg, mail, finger, telnet, ftp)
PHP tools for generating web pages
Unix File system:
File hierarchy / Kinds of files (directory, ordinary, linked)
Filenames (hidden files, invisible files)
Files and directories (ls, cat, less, more, rm, cd, cp, mv, mkdir, rmdir)
Disk information (du, df)
File Transfers (FTP)
Archiving / Restoring large files / Installing Linux Software (tar, gzip, gunzip, rpm)
Absolute and relative pathnames (pwd)
Access permissions (chmod, umask)
Common Shell Operations:
Common shells (sh, csh, ksh, bash)
Standard input and output
File redirection and piping (< , > ,>> , <<, |, tee)
Process control (&, ps, kill, ctrl-c, ctrl-z, fg, bg)
Ambiguous File Reference (?, *, [ ])
Quoting Special Characters (\, single quotes, double quotes)
Command separation and grouping ( ; & ( ) )
Startup files (/etc/profile, .bash_profile, .profile, .bashrc, .bash_history)
Variables (keyword, positional parameters, user-created, alias, export)
Command substitution - $( )
Mathematical operation - $(( ))
Bash Shell Scripting:
Creating portable shell scripts (#!)
Commenting (#)
Control Flow Statements (test, if, elif, else, for, while, exit)
Regular Expressions:
Basic regular expressions
Pattern matching.
Examples using grep, more, less and vi
Required Texts:
A Practical Guide to Linux
Commands, Editors and Shell Programming by Mark Sobell
Published
by Prentice Hall – 2005 (ISBN 0131478230)
Reference Material:
Bioinformatics Software
Engineering: Delivering Effective Applications
by Paul Weston,
Published by Wiley – 2004 (ISBN 0-470-85772-2)
Required Supplies: none
Evaluation:
Mid Term Test (1)
30%
Term Work (10 Labs, 3 assignments)
25%
Quizzes (2)
5%
Final
Exam(1)
40%
Total 100%
Grading Scheme:
GPA
A+
90% - 100% 4.0
A 80% - 89% 4.0
B+ 75% - 79% 3.5
B
70% - 74% 3.0
C+ 65% - 69% 2.5
C 60% - 64% 2.0
D
55% - 59% 1.0
F 0% - 54% 0.0
Academic Honesty:
Section 9 of the College Academic Policy (www.senecac.on.ca/home/academic_policy/index.html.) states: “Engaging in any form of academic dishonesty to obtain any type of academic advantage or credit is an offence under this policy and will not be tolerated by the College.” Penalties listed in Item 9.3 are as follows:
First offence: “The penalty for a first academic honesty offence is a grade of “0” on the work in which the offence occurred, and will result in a comment being placed on the transcript by the Academic Honesty Committee.”
Second offence: “The penalty for the second academic honesty offence is an “F” in the subject where the offence occurred, a second comment on the transcript and suspension from the College for a time period determined by the Academic Honesty Committee, normally for a minimum of three (3) semesters.”
It is every student's responsibility to familiarize him/herself with the proper procedure for maintaining academic honesty through the various resources beyond the Academic Policy such as the Student Handbook, and the Learning Commons website at http://library.senecacollege.ca/Academic_Honesty/index.html.
Policy on Discrimination/Harassment:
All
students and employees have the right to study and work in an
environment that is free from discrimination and/or harassment.
Language or activities that defeat this objective violate the College
Policy on Discrimination/Harassment and shall not be tolerated.
Information and assistance are available from the Centre of Equity
and Human Rights, Room 1185, Seneca@York,
491-5050, ext. 3088.
General School Policies and
Guidelines:
Submission of Lab Assignments:
All lab assignments must be submitted by the time specified by the faculty. A penalty of 1 grade level will be imposed for all material submitted late on the day it was due and a further grade level per day will be imposed after one week. All lab assignments must be properly completed in order to pass the course.
Tests:
The evaluation process through tests is an essential component of the course and therefore attendance at all tests is mandatory. Any absences must be supported by a legal document within one week. The faculty must be notified immediately by phone/e-mail in the event of a missed test. Upon acceptable justification of a missed test the student’s test mark may be based on other methods of evaluation or a supplemental test.
Final Exam:
The final exam must be written at the scheduled time and location. The faculty must be notified immediately by phone / e-mail in the event of the missed exam and supporting documentation must follow.
Acceptable Documentation:
Proper documentation is required
for missed tests and exams.
Punctuality:
Show consideration for your classmates and respect for faculty by arriving on time to class. If you know in advance of a class that you are going to be late, please let your faculty know. Please arrive on time for classes so as to minimize disruption to your classmates and faculty.
Cell Phone Usage:
As a courtesy to your fellow students and faculty, cell phones should remain turned off while in class. If, in the case of an emergency, the cell phone must remain on, please notify the teacher before class begins.
Computing Acceptable Use Policy:
All Students are responsible for abiding by the College’s Computing Acceptable Use Policy and for obeying Provincial and Federal laws/regulations regarding the use of computer equipment, facilities and/or networks.
Prepared
by: Murray Saul
Updated by: Murray Saul – September 2013