CS2103 Software Engineering Lecture 1
CS2103 Software Engineering Lecture 1 CS2103
Popular in Software Engineering
Popular in Quantitative Methods
verified elite notetaker
This 3 page Class Notes was uploaded by Jerry Tan on Sunday August 16, 2015. The Class Notes belongs to CS2103 at National University of Singapore taught by Damith C. Rajapakse in Summer 2015. Since its upload, it has received 174 views. For similar materials see Software Engineering in Quantitative Methods at National University of Singapore.
Reviews for CS2103 Software Engineering Lecture 1
Report this Material
What is Karma?
Karma is the currency of StudySoup.
You can buy or earn more Karma at anytime and redeem it for class notes, study guides, flashcards, and more!
Date Created: 08/16/15
National University of Singapore NUS CS2103 Software Engineering AY2015 SEM 1 Lecture 1 Introduction to Software Engineering Friday 14th August 2015 By Jerry Tan Si Kai Introduction to Software Engineering What is software engineering Short answer engineering of software Detour into Software Engineering 1The first step to become a professional software engineer 2The product is you not the software 3 Build software better not bigger 4 Learn to learn not just content Why do students say that software engineering projects are not useful to industry Because school projects are usually started from scratch and worked on for a semester while industry projects are not from scratch usually and it is the sum of contribution from many other software engineers over many years of work Why use an IDE Integrated Development Environment IDE are used to help you debug and code more efficiently Define breakpoints Pause program execution Examine program state and variables in debugging mode Step by step program execution For this course everyone should use either Eclipse or Microsoft Visual Studio When everyone is using the same platform the collective knowledge of the community can be used to help everyone Why use a text editor Lightweight Powerful features like fuzzy search Disadvantage lack of features like step by step program execution breakpoints etc Experienced programmers do not expect program to run without errors on first try They will run the program run into errors and then debug Regression term to use when you fix a bug which unintentionally introduced other bugs To prevent them do testing Testing Can be Scripted or Exploratory Can be Manual or Automatic Software Under Test SUT the unit of software subjected to the test For each test case have a test input check the actual output against the expected output if there is a mismatch locate the bug and modify the code to fix the bug But once you modify the code you may have introduced a regression hence retest all the other test cases again How to automate testing Enumerate all the test cases and put into a text file In the terminal run the program take the input file and output to a new text file In windows use a FC command file compare to compare the output file against the expected file to check for errors Works very well for programs where all the test cases can be known beforehand and finite but not well for randomly initialized state or when not all the test cases can be known beforehand
Are you sure you want to buy this material for
You're already Subscribed!
Looks like you've already subscribed to StudySoup, you won't need to purchase another subscription to get this material. To access this material simply click 'View Full Document'