SE 2030 Software Engineering Tools and Practices Based on slides written by Dr. Mark L. Hornick Used with permission. SE 2030 Dr. Rob Hasker 1 Essential Info Instructor: Dr. Rob Hasker http://faculty-web.msoe.edu/hasker/ email: hasker Office: L331 Phone: 277-7326 See my home page for office hours SE 2030 Dr. Rob Hasker 2 Course Outcomes Become familiar with the practices used by Software Engineers for creating software applications Become familiar with the various tools used by Software Engineers for creating applications SE 2030 Dr. Rob Hasker 3 What are Software practices? SE 2030 Dr. Rob Hasker 4 Interrupt: A software process defines the steps you take develop (good) software A software process typically defines phases (or stages) and steps you take within each phase to develop (good) software What phases can you think of? SE 2030 Dr. Rob Hasker 5 A Software Life Cycle 6 Software practices are specific things you do as part of the software development process That is, practices are activities that implement the process SE 2030 Dr. Rob Hasker 7 List some software development practices that might take place in each phase below SE 2030 Dr. Rob Hasker 8 What are Software tools? Describe the tools have you used to develop software in SE1011, 1021, and CS2852 SE 2030 Dr. Rob Hasker 9 Course Materials No Textbook! Course Wiki will supply key background material Link to Wiki is on the se2030 course webpage: https://faculty-web.msoe.edu/hasker/se2030/ SE 2030 Dr. Rob Hasker 10 Course Prerequisites SE 1021 CS 2852 That is, Java programming principles up through application of JCF data structures This means you should be (by now) fairly proficient writing Java applications SE 2030 Dr. Rob Hasker 11 Grading Criterion Weight Labs 45% Quizzes 30% Final Exam 25% SE 2030 Dr. Rob Hasker 12 Grading continued Lab assignment submission details will be posted on the course website. Quizzes (~1 per week) will generally be given at the beginning of the labs or on Fridays Final exam is cumulative SE 2030 Dr. Rob Hasker 13 Grading policy (see http://faculty-web.msoe.edu/hasker/se2030/syllabus.html ) The grading formula applies only to those students who have successfully met the objectives of this course. There is a 10% per business day (1 weekend = 1 day) late penalty for all written work. Any work more than a week late will receive a 0 score. You must ultimately complete all work in order to pass the course. You are encouraged to discuss homework and programming assignments with your fellow students, however, each of you is responsible for doing and turning in your own work unless otherwise specified. SE 2030 Dr. Rob Hasker 14 Lab 1 First half of the lab: finishing UML Review Required: See lab 1 writeup for directions on installing Enterprise Architect before lab. Read wiki article on class relationships in UML Complete Worksheet 1 Hand worksheet in at start of lab Take a look at Creating class diagrams using EA It will take most of the hour to install otherwise Install Windows updates as well before lab! Need to be on campus or run GlobalProtect SE 2030 Dr. Rob Hasker 15 Review Basic goal: SE tools, practices Key tools: Modeling Collaboration using git Creating jar files Continuous integration with ant Practices Capturing requirements with use cases Specifying behavior with state diagrams SE 2030 Dr. Rob Hasker 16