CIS 540 and CIS 543 Software Engineering Project I Dr. Gustafson dag@cis.ksu.edu http://people.cis.ksu.edu/~dag Office Hours: TU8:30 or by appt 540F07intro1Aug21 1 Information Form – turn in at end of class You must have C or better in 501 (if you are required to take it) Project area preferences If you have problems, indicate your issues and check box If you are enrolled in 540, you must take 541 or your 540 grade will turn to an F 540F07intro1Aug21 2 Course Goals The goal of cis540 is to prepare students to be software engineers. This includes learning software engineering ideas and terminology, learning how to apply software engineering techniques, learning how to apply project management skills, and developing skills in team-oriented development. 540F07intro1Aug21 3 Specific Goals (1) 1) Learning how to interact with a user to develop requirements for a project and specify those requirements in a precise fashion. 2) Learning how to plan a software development effort for a team, including how to breakdown a project into tasks, to develop a project plan, and to estimate software costs. 3) Learning how to present your project to peers/users/managers, including the use of reviews and walkthroughs. 540F07intro1Aug21 4 Specific Goals (2) 4) Learning how to apply Personal Software Process ideas to your own effort, including how to log your effort, estimate productivity, and build a checklist. 5) Learning how to use different models to specify and communicate to the user and other developers different views of your project. 540F07intro1Aug21 5 Specific Goals (3) 6) Learning how to develop effective documentation for your project. 7) Learning how to test software, including every statement coverage and integration testing. 8) Learning how to measure complexity of software. 540F07intro1Aug21 6 Texts Software Project Management – Stellman and Greene Software Engineering (Schaum Outline Series) – Gustafson No Pressman Optional - Absolute C++ (3rd edition prefered) - Savitch Applied 540F07intro1Aug21 7 TTYP – turn to your partner Purpose – active learning – Student learns better, retains more Process – – – – – Try to answer yourself Share with your neighbor Reach consensus Prepare to answer 540F07intro1Aug21 8 TTYP1 goals Which of the specific goals will be the hardest to achieve and why? 540F07intro1Aug21 9 How people learn Repetition – 7 times Framework – Factual knowledge » Prior knowledge – Conceptual framework – Organize to facilitate retrieval » Memory lanes Concentration – 10 minutes Meta-cognition – Thinking about thinking 540F07intro1Aug21 10 Metacognition Self knowledge about your own knowledge Or “Do you know what you know?” 540F07intro1Aug21 11 Lecture Conduct Reading assignment Prelecture Quiz on K-State Online – An individual activity Lecture -TU 1:05-2:20 – Q&A about PLQ – Active Learning » TTYP » Venn Diagrams – Participation 540F07intro1Aug21 12 Your Responsibilities for lecture Read assignments Do PreLecture quizzes (individual task) In lecture – – – – Turn off cell phones Pay attention – do not multitask Build framework/Ask questions/Participate Be respectful of others 540F07intro1Aug21 13 Pre-Lecture Quiz Why? – Guidance – what to look for – Repetition Why individual? – You don’t learn by copying answers What I expect – Do quiz with text/articles open – Don’t send emails about the PLQ – Don’t discuss in labs or anywhere where other students might overhear – Don’t post answers 540F07intro1Aug21 14 Individual Assignments An individual assignment is one that must be done entirely by oneself. It is NOT appropriate on an individual assignment to – Work with other students – Ask other students about how they are doing the assignment – Show your work to other students – Look at other student’s work It is appropriate to send email to dag to ask questions about the assignment. Make sure that you state your question clearly. 540F07intro1Aug21 15 Classification One of the basic skills is to classify ideas Venn diagrams Cats 540F07intro1Aug21 Dogs 16 Teams 1 team leader ; 3-5 members everyone does everything – Minus 50 pts if you do not have significant code in team project 3 presentations per semester (N24) complete life cycle - req through delivery Online note book of decisions and issues complete documentation - on web page and on a CD for each presentation assignments by team leader – on web page 540F07intro1Aug21 17 Team Projects Submit team choices by email Topics – – – – – – Web-based tools – master gardeners, agency for aging Vision Robotics AI Tools – analysis, testing, Kakura Games 540F07intro1Aug21 18 Team Progress One of my responsibilities is to try to ensure that each team makes good progress I may assign re-presentations, redemonstrations – this is not punishment, but an attempt to get on track on project 540F07intro1Aug21 19 Labs 2 hours – TA presentation – individual task Tools and Techniques Attendance and Participation Required 540F07intro1Aug21 20 C++ Every graduate, at the minimum, should be able to program linked lists in C++ Many class members know this already C++ exam on Thursday, Aug 30 (closed book) There will be a review session, Monday, Aug 27 7-10pm – place to be announced Those who don’t pass C++ exam will have to do the Monday night labs. Final C++ exam on Monday, Nov 19 540F07intro1Aug21 21 Course Grading Individual – Exams, labs, assignments – Unexcused absences – Lecture participation (extra credit) Teams – Presentations, web pages, time logs, and documentation – Weekly percentage * team total C++ – Waived if passed test – Otherwise, C++ exam on Nov 21 540F07intro1Aug21 22 Exams two midterms (100 points each) one final (200 points – cis543 only) crib sheets – – – – – 1 8.5 by 11 inches handwritten turn in with exam your own work each midterm, 3 for final 540F07intro1Aug21 23 Unexcused Absences - 5 pts each send email to dag@cis.ksu.edu before the absence to avoid 5 point penalty you are still responsible for making up work 540F07intro1Aug21 24 Section Grading Three Sections – Individual pts - 5*absences – Team pts * avg wk% – C++ lab and C++ final 90% or above - A 80% or above – B 70% or above – C Below 70% - retake class Grad students must have above 80% in all Late Assignments – 10% after start of class - 10% each additional day 540F07intro1Aug21 25 Average of three grades (543) Your final grade will be the average of the following three (5 if 540/1) grades (if you have C or better in all three areas otherwise the lowest grade) Individual – homework, pop quizzes, 2 exams, final, labs, absences Team Points – documentation, presentations, team web page – weekly percentage assigned by team leader C++ – Assignments, C++ exams, C++ on final, pop quizzes 26 540F07intro1Aug21 540 and 541 Grades will be figured next May. It will be the average of the fall team pts, the fall individual pts, the C++ pts, the spring team pts and the spring individual pts – If all are above 70%. If any of your fall pts are below 70%, you will not be allowed to continue. 540F07intro1Aug21 27 Exceptions Your final grade will be the average (or lowest) of the following the individual and team grades, if you pass the C ++ exam on Aug 28 If you are a graduate student, you must take this class for graduate credit and you must make B or better in each area. Otherwise, you will receive the lowest of the area. 540F07intro1Aug21 28 Information www – – – – – - course web page http://www.cis.ksu.edu/~dag lecture slides schedules syllabus – PLQ questions grades through kstate online grade system 540F07intro1Aug21 29 Questions or concerns send email - dag@cis.ksu.edu 540F07intro1Aug21 30 Assignments Lab next week – UML Readings L2-Cusamano (KSOL) – fill out MM SOS, section 2.5-2.7 L3 - Stellman – preface and chapter 1 Prelecture quiz – Wed 11am to Thurs 11am Monday, Aug 27 7-10pm is C++ help session 540F07intro1Aug21 31 1 minute question On the 3by5 card, write one thing that you want to learn this semester in this class Include your name and your lab time 540F07intro1Aug21 32