CIS 375 INTRODUCTION TO SOFTWARE ENGINEERING WINTER, 1997 SYLLABUS The mode of learning is "just-in-time." Therefore, the content will be the same, but the dates are approximate. The order may also change, based on student demand. Date Topic Reading [Class Day] 01-08 [1] Context of CIS 375 course in CIS field Notes Previous CIS 375 class experiences Resources Available: library, groupware, Notes Computer-Selects, Internet, WWW, previous course work (projects) 01-13 [2] Scope of Software Engineering S1, P1 (Video Tape) 01-15 [3] Software Process and Its Problems S2 01-20 NO CLASS: MARTIN LUTHER KING, JR. DAY 01-22 [4] Project Management S10 software metrics, estimating, planning P2-4 01-27 [5] Implementation Phase S12 P10 01-29 [6] Software Life-Cycle Models S3 waterfall, prototyping, spiral P1, 4 capability maturity model, safety responsibility, risk assessment 02-03 [7] Computer-Aided Software Engineering S4 specification, design, implementation, P22-23 project management tools, and configuration management 02-05 [8] Software Verification and Testing S5 assertions, correctness proofs P17-19 walkthroughs, testing and validation 02-10 [9] Object-oriented Programming S6 P10 02-12 [10] Exam 1 02-17 [11] Requirements Phase S7 rapid prototyping and informal methods P5-7 02-19 [12] Specification Phase S8 formal methods P9 02-24 [13] Object-Oriented Analysis Phase S9 P8 02-26 [14] Design Phase S11 03-03 [15] data flow analysis P11 03-05 [16] Jackson System Development P13 Object-oriented design P12 real-time system design P15 03-10 SPRING BREAK 03-12 03-17 [17] User Interfaces P14 menu systems, command language direct manipulation 03-19 [18] Computer Graphics Notes output device characteristics, primitives, common software systems 03-24 [19] Documentation Notes 03-26 [20] Implementation and Integration Phase S13 03-31 [21] P16 04-02 [22] Exam 2 04-07 [23] Maintenance Phase S14 configuration management P16 04-09 [24] Project presentations 04-14 [25] Project presentations 04-16 [26] Project presentations 04-21 [27] Future Methodologies P22-24 04-28[29-30] FINAL EXAM MONDAY, APRIL 28, 1997, 3:30 - 6:30 P.M. THE SUBJECT OF SOFTWARE ENGINEERING PURPOSE (WHY IS IT?) TO PROVIDE A BRIDGE BETWEEN PEOPLE AND COMPLEX SYSTEMS DESCRIPTION (WHAT IS IT?) AN ENGINEERING TECHNOLOGY TOOL FOR THE DEVELOPMENT OF QUALITY, RELIABLE, COST-EFFECTIVE, EASY-TO-MAINTAIN, SCHEDULE- MEETING SOFTWARE WHICH SOLVES REAL NEEDS OF THE CUSTOMER PROCESS (HOW IS IT DONE?) MODERN SOFTWARE DEVELOPMENT CYCLE CONSISTING OF NEEDS ASSESSMENT, REQUIREMENTS ANALYSIS, COST ESTIMATING, DESIGN, CONSTRUCTION, TEST, INSTALLATION, MAINTENANCE/ENHANCEMENT FUTURE (WHERE IS IT HEADED?) KNOWLEDGE-BASED SYSTEMS PRODUCTS (WHAT ARE THE MANIFESTATIONS?) ITEMS, VENDORS, QUANTITY, WHERE USED, $$, APPLICATIONS See attached sheets for some useful definitions for Engineering. Do you believe that Software Engineering (SWE) is really "deserving" to be a subset of Engineering, a field which has existed for thousands of years, and appeared well before that of science? This would be a good question for a final exam...