CISC/CMPE320 - Prof. McLeod

Slides:



Advertisements
Similar presentations
CSC 171 – FALL 2004 COMPUTER PROGRAMMING LECTURE 0 ADMINISTRATION.
Advertisements

COMP 110 Introduction to Programming Mr. Joshua Stough August 22, 2007 Monday/Wednesday/Friday 3:00-4:15 Gardner Hall 307.
COMP 14 – 02: Introduction to Programming Andrew Leaver-Fay August 31, 2005 Monday/Wednesday 3-4:15 pm Peabody 217 Friday 3-3:50pm Peabody 217.
CS 115 TA Orientation Fall More students! Enrollment up to sections + night about 22% CS majors (50 on 8/16)
Welcome to CS 3260 Dennis A. Fairclough. Overview Course Canvas Web Site Course Materials Lab Assignments Homework Grading Exams Withdrawing from Class.
CSE 501N Fall ‘09 00: Introduction 27 August 2009 Nick Leidenfrost.
COMP Introduction to Programming Yi Hong May 13, 2015.
How to be an online student. How does it work? An online course follows a schedule and syllabus with due dates for assignments (just like an on-campus.
Course Introduction Software Engineering
Hello World! CSE442. Course Summary A semester long group project – You will develop software from idea to implementation You have full freedom to choose.
1 Software Systems Development CEN Spring 2011 TR 12:30 PM – 1:45 PM ENB 116 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
Fall 2o12 – August 27, CMPSC 202 First Day Handouts  Syllabus  Student Info  Fill out, include all classes and standard appointments  Return.
Welcome to Technical Communications Enl Overview Course structure Course structure Course schedule Course schedule Student assessment Student assessment.
Object Oriented Programming (FIT-II) J. H. Wang Feb. 20, 2009.
IST 210: Organization of Data
CS , Programming III: C++ 9-9:50am MWF, Hardaway 207 Two Credit Hours (ppts), and Blackboard Learn (submissions and grading)
Welcome! Hello and welcome to English Composition 102, Introduction to Literature. I am looking forward to exploring, writing, and discussing literature.
Fall 2015CISC/CMPE320 - Prof. McLeod1 CISC/CMPE320 “Fundamentals of Software Development” Course Web Site: Lecture.
Winter 2016CMPE212 - Prof. McLeod1 CMPE212 Object Oriented Programming for Engineers Course Web Site: Lecture.
Winter 2016CISC101 - Prof. McLeod1 CISC101 Elements of Computing Science I Course Web Site: The lecture outlines.
Course Information CSE 2031 Fall Instructor U. T. Nguyen /new-yen/ Office: CSEB Office hours:  Tuesday,
IST 210: ORGANIZATION OF DATA Introduction IST210 1.
1 1.Log in to the computer in front of you –Temp account: 210class / 2.Update your in Cascadia's system –If I need to you I'll use.
CSE6339 DATA MANAGEMENT AND ANALYSIS FOR COMPUTATIONAL JOURNALISM CSE6339, Spring 2012 Department of Computer Science and Engineering, University of Texas.
Class Introduction IST 210: Organization of Data IST2101.
Fall 2016CISC124 - Prof. McLeod1 CISC124 “Introduction to Computing Science II” Course Web Site: Lecture notes,
Course Information EECS 2031 Fall Instructor Uyen Trang (U.T.) Nguyen Office: LAS Office hours: 
Introduction to CSCI 1311 Dr. Mark C. Lewis
Computer Network Fundamentals CNT4007C
Course Information EECS 2031 – Section A Fall 2017.
Computer Engineering Department Islamic University of Gaza
CSc 020: Programming Concepts and Methodology II
Computer Networks CNT5106C
Welcome to the a Department of Engineering Education !
Course Information Mark Stanovich Principles of Operating Systems
Elements of Computing Science I
CISC/CMPE320 - Prof. McLeod
Winter 2018 CMPE212 11/11/2018 CMPE212 – Section 001
Introduction to General Biology BI 101
Andy Wang Operating Systems COP 4610 / CGS 5765
EECE 310 Software Engineering
Andy Wang Operating Systems COP 4610 / CGS 5765
CSC2310 Principles of Computer Programming
Andy Wang Operating Systems COP 4610 / CGS 5765
Welcome to Physics 1D03.
Welcome to Intro to C/C++ CISC 192
Partnered or Group Projects
EG 1003 Overview.
Physics 122B Electricity and Magnetism
EE422C Software Design and Implementation II
Andy Wang Operating Systems COP 4610 / CGS 5765
Introduction to Microbiology BI 234
CISC124 Welcome! “Introduction to Computing Science II”
CISC/CMPE320 - Prof. McLeod
CISC/CMPE320 - Prof. McLeod
CISC/CMPE320 - Prof. McLeod
CISC/CMPE320 - Prof. McLeod
CISC/CMPE320 - Prof. McLeod
Course Information EECS 2031 Fall 2016.
Andy Wang Operating Systems COP 4610 / CGS 5765
CMPE212 Welcome! Object Oriented Programming for Engineers
Elements of Computing Science I
Intro to CIT 594
Intro to CIT 594
Andy Wang Operating Systems COP 4610 / CGS 5765
Welcome to Intro to C/C++ CISC 192
CS Problem Solving and Object Oriented Programming Spring 2019
Computer Engineering Department Islamic University of Gaza
Presentation transcript:

CISC/CMPE320 - Prof. McLeod Fall 2017 CISC/CMPE320 5/19/2018 CISC/CMPE320 “Fundamentals of Software Development” Course Web Site: http://research.cs.queensu.ca/home/cisc320 Lecture notes, voice recordings, and other stuff will be, and is posted. Welcome! Fall 2017 CISC/CMPE320 - Prof. McLeod Prof. Alan McLeod

CISC/CMPE320 - Prof. McLeod CISC/CMPE320, Cont. A C++ course. Discussion of several software engineering topics will aid in the completion of a team project. ISO C++11 is emphasized and C++/CLI in Visual Studio is used for GUI construction. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 Introduction Me: Prof. Alan McLeod mcleod@cs.queensu.ca GOO550 (office hours on course web site, soon) Also, post questions in onQ forums. TAs: Colin Bingham Kanchan Nair Katherine Beaulieu Sudharshan Gopikrishnan Wennie Wu No scheduled lab in this course. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Two Hour Tutorial Time Mondays at 12:30pm to 2:30pm in Ellis Rooms 321 and 333. This class is too large for just one of the active learning classroom in Ellis. No tutorial this week (this afternoon!). Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Three Things… Manually refresh the main page of the course web site each time you view it. E-mail is the best way to contact me – don’t call me. Use the cs.queensu address. Don’t email “mcleod@queensu.ca”. Prof. David McLeod does not want to hear from you! When E-mailing do not use your hotmail or gmail or non-queensu address. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 Introduction, Cont. Grading scheme 25% - five assignments, (due weeks 3, 5, 7, 9 and 11) 35% - one project 40% - one final exam Assignments - electronic submission through onQ. One assignment submission per person. Use ISO C++ and you can use any IDE for the GUI assignment (#3). Assn 5 not posted, yet. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Assignment Rules Assignments are graded out of 20 – marks and comments will be uploaded to onQ by your TA. Late submission: You can submit up to five days after the deadline, but: Your mark will be reduced by 2 marks per day late, unless you can prove extenuating circumstances, such as a serious illness or a Queen’s activity. Minimum of 2 marks removed. If you cannot re-submit, let me know. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Assignment Rules, Cont. “Group Efforts”: I encourage you to discuss your difficulties with your peers, myself and your TA. You may look at other people’s code. You cannot copy other people’s code! Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod C++ Team Project Read more details on the course web site. You will be assigned to agile teams by me. I need to know who is in the course and you need to have filled out the onQ survey (that onQ calls a quiz) “Programming and Teamwork Background”. Each team member will write code and adopt other roles as needed. Right now, you need to fill out the survey, read what is on the course web site and start thinking about possible projects. You should know what team you are in by week 3. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod C++ Project, Cont. I will expect some leadership from those of you with C++ experience and teamwork experience. But, at some point you will have to JUMP IN! You will have to start writing unfamiliar, advanced code with tools that are new to you. You will have to learn things with only your team’s support in a short time. You will have to learn to pull your own weight on a team, and be responsible for your own work. Your work will be examined and criticized by your peers. Sounds like a real job! Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Grading the Project Your team will present once in week 12. You will create two reports – Requirements Analysis Document (or “RAD”) in week 5 and System Design Document (or “SDD”) in week 8. Your team will maintain careful records. You will maintain your own page – a “diary” - listing what you have completed and when. Your team will be assigned a grade. Your grade will decrease if you did not contribute your fair share of the work. Fall 2017 CISC/CMPE320 - Prof. McLeod

Grading the Project, Cont. See the course web site’s project page for a detailed breakdown of how marks are assigned to the project. A component of the grade will result from your TA grading your attendance and progress in the tutorial. You will also have a chance to grade the other teams’ documents and presentations. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod JIRA We will have our own server space for this course. This system will give each team a SCRUM planning tool (JIRA), a document creation and sharing tool (Confluence), a git repository (Bitbucket) and a chat tool (HipChat) – each of which you must use. Don’t use facebook… Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod JIRA, Cont. I mean it: (Not for your teamwork, anyways…) Don’t use Facebook! Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Course Goals To give you solid proficiency coding in C++: ISO standard C++11 C++/CLI in Visual Studio To give you some experience about what it is like to develop software as part of a team. Learn some “software carpentry” and software engineering. Good stuff for your resume! Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Learning C++ If you have not coded in C++, your Java experience will help – any C experience might be more of a hindrance! C++ is not a “safe” language like Java – you can create problems in many different ways! Even if you are strong in C++ it does not hurt to be really solid on the fundamentals. I will emphasize the “Gotchas” whenever possible. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Resources Recommended Textbook: Many good web links, too – see the Resources web page. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Resources, Cont. One ISO C++ development environment, that is fine for console programs: Available from www.eclipse.org with the CDT. See the Resources web page. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Resources, Cont. Another tool: From codeblocks.org. Current version is 16.01 Used for console or GUI. Multiplatform. Well designed. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Visual Studio .NET You don’t have to use this tool for C++/CLI if you don’t want to. (see MonoDevelop, for example). You can get the Express Edition for free from Microsoft or get the whole shebang from Microsoft DreamSpark. Another way to develop GUIs. Not multi-platform! Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Qt Creator ???? – From qt.io Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Tool Chain Did you have to think about this with Java? There is a language standard for C++ - the latest developed by the ISO committee is C++14. The previous standard is mostly implemented by now: C++11. But – anyone can write their own C++ compiler and follow the standards or not! As a result, there are dozens of compilers. For this course, for console I/O, I recommend MinGW, which is a port of the GCC toolchain. Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod Things for You to Do Look over the course web site – read the project page carefully. Start thinking about a possible project. Check your onQ login – if the course does not show up for you, let me know. Fill out the programming/teamwork experience survey! Fall 2017 CISC/CMPE320 - Prof. McLeod

CISC/CMPE320 - Prof. McLeod More For You To Do Decide on and install your C++ IDE. Focus on console apps first. Get it working! Once you have to get coding you won’t have any more time to fiddle with your IDE. Your team may very well decide on a different IDE for the project! Fall 2017 CISC/CMPE320 - Prof. McLeod