280 likes | 458 Views
Introduction to the Semester. EECE 351 Spring 2000 Lecture # 0. First Day of Class. Introduction What to Expect Grading Scale Software Engineering (SE) vs. Programming Compiler Overview. Introduction. Overview Change Course Information Course Material Online Info. Overview.
E N D
Introduction to the Semester EECE 351 Spring 2000 Lecture # 0 EECE 351 – Lecture 0
First Day of Class • Introduction • What to Expect • Grading Scale • Software Engineering (SE) vs. Programming • Compiler Overview EECE 351 – Lecture 0
Introduction • Overview • Change • Course Information • Course Material • Online Info EECE 351 – Lecture 0
Overview • Each of you is trying to change yourself • Short-term view: pass 351, get a degree, … • Longer-term view: striving for excellence • How does change occur? • All change is self-change • There are five requirements for change • My job • Help facilitate your change • Judge whether acceptable change has occurred EECE 351 – Lecture 0
Overview (cont.) • Hone the skills necessary for the curriculum ahead • Let the ones without skills learn this now! • Teach you C++ • 351 is the only class that does this. • Teach you Software Engineering • Higher level classes expect you to have this knowledge. EECE 351 – Lecture 0
5 Requirements of Change • Vision • Learn the Fundamentals of Software Engineering • Skills • I will help you hone these • Incentives • Grades • Resources Classes, Course Books, Lab, Web • Action Plan Design This Yourself Course Material Will Help You Do This EECE 351 – Lecture 0
Course Information • Name: EECE 351 – Software Engineering (Not Programming) • Meets: Tues. & Thurs. 9:30 – 10:45am • Location: Swearingen, 2A27 • Lecturer: Adrian Nida, 3C31 • Prereqs: EECE 212 EECE 351 – Lecture 0
Course Materials • Books: • The Mythical Man Month, Frederick Brooks, Jr. • Learn C++, Deitel & Deitel • Inside VisualC++, David Kruglinsky • Computing • 1D11 (Lab), 1D15, 3D32? (NCR room) • Visual C++ 6.0, MSDN • Lectures EECE 351 – Lecture 0
On-line Info • Web • www.ece.sc.edu/classes/spring00/eece351 • Others listed at above site • msdn.microsoft.com • Network Share • \\engr_asu\ece351 • Outside USC has to deal with FIREWALL EECE 351 – Lecture 0
What to Expect • CODING STANDARD • Lectures • Labs • Homework • Projects • Exams • Attendance • Quizzes • Tests EECE 351 – Lecture 0
Coding Standard • Any and all standards placed upon you in this class MUST be upheld • Hungarian Notation “ThisIsAFunction” • Data Types have Prefixes • Code MUST BE COMMENTED • Braces (“{” “}”) must be on own line • Code must be indented properly • Ctrl – A (Select all) • Alt – F8 EECE 351 – Lecture 0
Lectures • No B.S. • NO SLEEPING!!!! • Slides • “Chalk Talks” • Handouts • Assignments • Notes (Important MSDN entries) • Tutorials EECE 351 – Lecture 0
Labs • 1st time this has been offered (that I recall) • Meets during class time in Rm. 1D11 • Only on selected days • Some labs and homeworks will overlap EECE 351 – Lecture 0
Homework • ~1 every week • Due at the beginning of class • No Late Entries • Resubmissions • Will specify deliverables • Will get harder as semester progresses EECE 351 – Lecture 0
Projects • 2 during Semester • Mandatory – due around midterm • Final Project – you decide (must be approved) • Due at Midnight • No Resubmissions EECE 351 – Lecture 0
Exams • Attendance • When I walk in and not many people are here • Sign name and turn in • Quizzes • 4 throughout semester (spaced between exams) • ~10 Questions • Tests • Midterm ~20 Questions • Final ~50 Questions • Will cover SE and Programming topics EECE 351 – Lecture 0
Grading Scale • Labs (10%) • Homework (10%) • Projects (40%) • 20% a piece • Exams(40%) • Attendance (10%) • Quizzes (10%) • Tests (20%) EECE 351 – Lecture 0
SE vs. Programming • Programmers – write code • Software Engineering is the practice of producing quality software that meets (or exceeds) customer requirements • SEs also have schedule commitments “A software engineer is someone who, when told ‘Go to Hell’, sees the ‘go to’, rather than the destination, as harmful.” [Unknown] EECE 351 – Lecture 0
The “Click” • Programming is a skill. • Skills need to be practiced in order to achieve success. • C++ is like a foreign language. • You struggle… & struggle… • Then one day… “CLICK!” You understand! • You only get this click by practicing. • Emulating another’s code does not strengthen your skills! EECE 351 – Lecture 0
Software Engineering • A lot more than programming • QUALITY? • No errors • TESTING!!! • Documenting • Code and User’s Manuals • Programming System Products not Programs EECE 351 – Lecture 0
Compiler Overview • Microsoft Visual Studio 6.0 (Service Pack 3) • Personal Assistant • Compiling • Building EECE 351 – Lecture 0
MS Visual Studio 6.0 • The developer studio is an integrated development environment (IDE) • This means you don’t switch environments during the coding, compiling, linking, execution, and debugging of your application • Like most Microsoft products, it is extremely configurable EECE 351 – Lecture 0
MS Visual Studio 6.0 (cont.) • There is a “project workspace” which consists of all of the files which constitute your project and the implicit and explicit relationships among those files (i.e., headers, the build environment, and so on) • The project workspace is contained in a “*.dsw” file • There is a “File->Open” and “File->Open Workspace” command to open an existing workspace • There is a “File->new” command by which you can create a workspace • This “File->new” command allows you to use the Application Wizard EECE 351 – Lecture 0
Personal Assistant • VERY IMPORTANT TOOL • Assists comment placement • Tracks progress (metrics) • .pas file • MUST BE SUBMITTED FOR EACH ASSIGN. • FAILURE TO DO SO WILL RESULT IN A GRADE OF “F” EECE 351 – Lecture 0
Compiling • Only affects ACTIVE file • Checks syntax of file. If successful, • .cpp (source code) • Converted into • .obj (intermediate file) • Otherwise: • Syntax ERRORS! • Double-click takes you to line with error • F-1 Help EECE 351 – Lecture 0
Building • Affects ALL files in Project • If *.obj is not up-to-date, compile *.cpp • ALL “.obj”s • Converted to • ONE .exe • Linking Errors • F1 Help EECE 351 – Lecture 0
What we know • Class Info • Materials, grades, assignments, etc. • Expectations • Coding Standard, .pas, etc. • Compile vs. Build • SE & Programming EECE 351 – Lecture 0
Where we are going • Lab – Intro to machines and MSDEV • Homework – Minimal “Hello World” • Lecture – Data Types and Operators EECE 351 – Lecture 0