Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Advertisements

CS 325: Software Engineering January 13, 2015 Introduction Defining Software Engineering SWE vs. CS Software Life-Cycle Software Processes Waterfall Process.
CS3773 Software Engineering Lecture 01 Introduction.
Introduction to CS170. CS170 has multiple sections Each section has its own class websites URLs for different sections: Section 000:
1 CENG 707 Data Structures and Algorithms Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University Fall 2010.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Review 2.
General information CSE 230 : Introduction to Software Engineering
Introduction to Software Engineering Dr. Basem Alkazemi
Software Engineering About the Course Software Engineering Qutaibah Malluhi Computer Science and Engineering Department Qatar University.
1 CS 425 / CS 625 Software Engineering Fall 2007 Course Syllabus August 27, 2007.
Systems Analysis and Design for Electronic Commerce, Networked Business Processes, and Virtual Enterprises Walt Scacchi, Ph.D. GSM 271 and FEMBA 271 Spring.
IS 421 Information Systems Management James Nowotarski 16 September 2002.
1 CS 425 / CS 625 Software Engineering Fall 2008 Course Syllabus August 25, 2008.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Review 1.
©Ian Sommerville 2000 Software Engineering, 6th edition Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing.
CS565 Advanced Software Development (1 unit) Lecturer: Adrian O’Riordan Contact: is Office: prefab, behind.
1 CS 425 / CS 625 Software Engineering Fall 2009 Course Syllabus August 24, 2009.
Course Overview CEN 5035 Software Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Review 1.
1 Welcome to IT 323 Software Engineering II 1 st semester, 2012/2013.
Fall 2013 Course Syllabus Instructor: Sergiu Dascalu Department of Computer Science and Engineering August 27,
Software Engineering (CE 352) Fall 2013 Dr: Mohamed El-Basiuny Lecture 1 1 FACULTY OF ENGINEERING COMPUTER ENGINEERING.
Computer Network Fundamentals CNT4007C
Software Engineering II (Spring 2008) Instructor: Instructor:Dr. Damla Turgut Office: Office:450 ENGR 1 Bldg Office Phone: Office Phone:(407)
Welcome to CS 3331, Advanced Object-Oriented Programming Fall 2009 Dept. of Computer Science University of Texas at El Paso.
Advanced Computer Networks by Behzad Akbari Spring 2011 In the Name of the Most High.
Computer Networks CEN 5501C Spring, 2008 Ye Xia (Pronounced as “Yeh Siah”)
Introduction to Network Security J. H. Wang Feb. 24, 2011.
Chapter 1: Introduction to Project Management
CS Welcome to CS 4311 Software Engineering II Spring 2015.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
CEN 4072 / CEN 6070 Software Testing & Verification Spring 2014 Syllabus available on-line at:
CMSC 345, Spring CMSC 345 Software Design and Development Spring 2003 Section 0101 Ms. Susan Mitchell “Welcome to the School of Hard Knocks”
Course Introduction Software Engineering
Introduction to Discrete Mathematics J. H. Wang Sep. 14, 2010.
Fall 2015 Course Syllabus Instructor: Sergiu Dascalu Department of Computer Science and Engineering August 25,
Computer Network Management Course
CMSC 345, Fall CMSC 345 Software Design and Development Fall 2003 Section 0101 Ms. Susan Mitchell Leave Your Ego at the Door!
Object Oriented Programming (FIT-II) J. H. Wang Feb. 20, 2009.
Stephen M. Thebaut Exam 2 Notes Slide 1 Exam 2 Notes Stephen M. Thebaut, Ph.D. University of Florida CEN 5035 Software Engineering.
Software Systems Engineering Rob Oshana Southern Methodist University EMIS 7312.
Fall 2011 Course Syllabus Instructor: Sergiu Dascalu Department of Computer Science and Engineering August 30,
CS Welcome to CS 5383, Topics in Software Assurance, Toward Zero-defect Programming Spring 2007.
Introduction to Information Security J. H. Wang Sep. 18, 2012.
Software Systems Engineering Rob Oshana Southern Methodist University EMIS 7312.
Exam 1 Notes Prepared by Stephen M. Thebaut, Ph.D. University of Florida Software Testing and Verification Lecture 15.
Stephen M. Thebaut Exam 1 Notes Slide 1 Exam 1 Notes Stephen M. Thebaut, Ph.D. University of Florida CEN 5035 Software Engineering.
©Stephen Thebaut 2008 Quiz 1 Notes Slide 1 Quiz 1 Notes Advanced Software Engineering Summer ’08.
1 Introduction to Software Engineering Wen-Yang Lin Dept. of Computer Science and Information Engineering National University of Kaohsiung February, 2007.
Computer Networks CNT5106C
1 CS 425 / 625 Software Engineering Fall 2003 Course Syllabus August 25, 2003.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering.
Fall 2012 Course Syllabus Instructor: Sergiu Dascalu Department of Computer Science and Engineering August 28,
Advanced Software Engineering. Agenda Syllabus Review of Software Engineering Concepts UML.
Software Testing & Verification
Introduction to the Course Software Specification Lecture 1
Software Specification
Computer Network Fundamentals CNT4007C
CS101 Computer Programming I
Syllabus Introduction to Computer Science
CSE305 Software Engineering
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
CS 425 Software Engineering
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
CS 425 / CS 625 Software Engineering
Presentation transcript:

Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations

Contact Info ● Instructor: Steve Thebaut ― ● Teaching Assistant: James Nichols ―

Description ● A graduate-level survey of the fundamental concepts and principles underlying current and emerging methods, tools, and techniques for the cost-effective engineering of high-quality software systems. ● NOT a “programming” course. ● Focuses on surveying critical aspects of SE that may be less familiar to students of computer science. E.g.:

Description (cont’d) ― identifying a development process appropriate to the circumstances, ― eliciting and documenting requirements, ― indentifying appropriate design techniques, ― employing effective verification and validation strategies throughout the software development lifecycle, ― software maintenance, and ― software project management.

Prerequisites ● Familiarity with programming using a high-level language (C, C++, Java, etc.) ● Basic knowledge of algorithms, data structures (linear lists, etc.), and discrete math (symbolic logic)

Class Logistics ● Lectures will be presented by the instructor in the morning based on prepared notes covering the main topics of the course. ● In the afternoons, students will prepare for and participate in TA- and student-lead discussions of assigned readings, exercises, and problem sets (schedule to be provided).

Web Site ● Syllabus ● Lecture Notes ● Practice Exam Problems ● Exercises ● Reading assignments ● Announcements Visit the course website at:

Textbooks ● SOFTWARE ENGINEERING, 8th Edition, by Ian Sommerville, Addison-Wesley, ● THE MYTHICAL MAN-MONTH, ESSAYS ON SOFTWARE ENGINEERING, Anniversary Edition, by Fred Brooks, Addison Wesley, ● REQUIREMENTS ENGINEERING: QUALITY BEFORE DESIGN, by Donald Gause and Gerald Weinberg, Dorset House Publishing, See the course website for required and recommended readings.

Lecture Topics ● Course Overview and Introduction to SE: FAQs about SE, professional and ethical responsibility ● Software Processes: process models and activities, waterfall vs. evolutionary development, component-based SE, iteration, spiral development, Rational Unified Process, CASE ● Software Project Management: management activities, project planning and scheduling, risk management

Lecture Topics (cont'd) ● Software Requirements Engineering: functional vs. non-functional requirements, user and system requirements, interface specification, software requirements documents, feasibility studies, elicitation and analysis, validation, requirements management ● Rapid Software Development and Prototyping: agile methods, extreme programming, RAD, software prototyping

Lecture Topics (cont'd) ● Formal Specification: formal specification in the software process, sub-system interface (algebraic) specification, behavioral (model- based) specification ● Architectural Design: architectural design decisions, system organization and decomposition styles, control styles, reference architectures

Lecture Topics (cont'd) ● Distributed Architectures: multiprocessor architectures, client-server architectures, distributed object architectures, inter- organizational distributed computing, service- oriented software engineering ● Object- and Aspect-Oriented Design: objects and object classes, information hiding, aspects, join points and point cuts, design evolution ● Software Reuse: design patterns, application frameworks, component-based SE

Lecture Topics (cont'd) ● Verification and Validation: V&V planning, reviews and inspections, black-box testing, white-box testing, integration and higher-level testing, proofs of correctness ● Software Evolution: program evolution dynamics, software maintenance ● Process Improvement: process and product quality, CMMI process improvement framework

Examinations and Grades ● Course grades will be based solely on: ― a 60-minute "mid-term" exam (30%), ― a 90-minute comprehensive final exam (50%), and ― exercises and afternoon course work (learning activities, discussions, presentations, etc.) (20%) ● Grading Scale: A: % A-: 80-89% B+: 70-79% B: 60-69% B-: 50-59% Failing: 0-49%

Tentative Exam Schedule ● The "midterm" exam, scheduled for July 23, covers the first half of the course (i.e., through Distributed & Service-Oriented Systems). ● The comprehensive final exam, scheduled for July 31, covers the entire course.

Exam Ground Rules and Format ● Exams are closed-book/closed-notes. ● No calculators, laptops, PDA’s, etc., are allowed. ● All answers should be given in the spaces provided on the exam only. ● Question format may be short answer, matching, true/false, fill-in-the-blank, proofs, etc. ● The point-value of each question will be given. ● See the website for sample exam problems.

"Homework" Exercises ● Problem sets/exercises will be posted on the course website. ● Students may work in small groups or individually. ● Solutions will submitted for evaluation and, in some cases, presented in class.

Questions?

Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations