♦   Welcome to CIS 487 — Software Engineering   ♦ 
	
	 
       
       
       
    
		
			| Weeks | Topics | Resources | Suggested Readings | Special Days | Important Dates | HAs | Projects | Exams | 
		
			| #1 1/8-1/12
 | 
				Introduction and syllabus.
				 Course website. Class policies and guidelines.The process of writing a simple application.Introduction to software engineering.Important factors - Project. Process. People. Product.Modeling and models - Why and how.Agile processes. The Scrum process.Example team projects -
					
					A reasonably-sized Java-based system of your choice.Online homework submission system.Message board/chat room.Tiny language compiler for a simple language.etc. etc. etc.Readings - Pilone & Miles chapters 1, 2. Rubin chapter 1. 1/08 Mon Add/Drop and Late Registration via RAIL or at Ikenberry Hall, 9:00 am-4:00 pm. 1/12 Fri Last Day to Add/Drop or Late Register via RAIL or at Ikenberry Hall, 9:00 am-4:00 pm. | Project teams will be formed with 2 -3 students in each team. All projects will be team projects. Presentations will be scheduled to demonstrate project progress, intermediate results, and the final software product. | 
		
			| #2 1/15-1/19
 | 
				User/software requirements.Requirement engineering. Slides - Please ignore slides not discussed in class.Functional and non-functional requirements.Importance of communication and documentation in the software process.Readings - Pilone & Miles chapters 3 - 5. 1/15 Mon Martin Luther King, Jr. Day – Holiday. 1/19 Fri Last Day for Instructor-Approved Late Adds via RAIL. | Each team will present a short description of the semester-long project and an initial project plan, including a timeline. Please document all important team activities. | 
		
			| #3 1/22-1/26
 | 
				Introduction to UML.Use cases and use case diagrams.Introduction to Office Visio.Use case conditions and scenarios.Use case diagram <<include>> and <<extend>> dependencies.Introduction to agile principles and the Scrum framework.Readings - Pilone & Miles chapters 4, 5. Rubin chapters 2, 3. | Team work continued. | 
		
			| #4 1/29-2/2
 | 
				Real time systems. Human computer interactions. Slides.Project management and risk management.Springs in the Scrum processs. Timeboxed. Short and consistent duration. Definition of done.Team project discussions and teamwork.Readings - Pilone & Miles chapter 5. Rubin chapter 4. | Exam 1 on Wednesday. Covering weeks 1-3. | 
		|  | 
		
			| #5 2/5-2/9
 | 
				All classes after 1pm were cancelled by Shepherd. Please collaborate with your teammates and work on team projects if possible.
				 |  | 
		
			| #6 2/12-2/16
 | 
				System analysis using developer’s language.System modeling and architecture. Distributed systems. Slides.System design.  Class diagrams.Analysis activities. Start static structure design.Requirements and user stories in the Scrum process. Product backlog.Readings - Pilone & Miles chapters 2, 5, 6. Rubin chapters 5, 6. | Initial project document(s) due by 11pm on Thursday 2/15 to zwang@shepherd.edu with CIS 487 and your team member names on the subject line. Please include a description, an initial project plan, team activities, and diagrams, such as use case diagrams, if any. | 
		
			| #7 2/19-2/23
 | 
				System design revisit – goals, aspects, and management.Object-oriented design review.Design patterns. Definitions, categories, and applications.Examples of design patterns.PBI estimation. Velocity. Technical debt.Readings - Pilone & Miles chapters 6 - 8. Rubin chapters 7, 8. Mid-term Exam Week. 2/23 Fri Last Day to Apply for August and December 2018 Graduation (Registrar’s Office). | Team projects continued. | 
		|  | 
		
			| #8 2/26-3/2
 | 
				Dynamic behavior modeling. Sequence diagrams.Roles in the Scrum process - Product Owner, ScrumMaster, Development Team, Scrum Team Structures, and Managers.Readings - Pilone & Miles chapters 10. Rubin chapters 9 - 13. | Team projects continued. | 
		
			| #9 3/5-3/9
 | 
				Map design models to code. Implementation issues.Optional - Forward and reverse engineering. Reengineering.Test categories. Unit, integration, system, and acceptance test. White/gray/black box tests.Test frameworks such as JUnit help develop/organize/automate/run tests and report results.Testing → find errors. Debugging → fix runtime/logical errors.Debuggers help step through programs by statements or sections (using breakpoints) to show object/variable/etc. states.Scrum planning principles. Introduction to multilevel planning.Readings - Pilone & Miles chapters 11. Rubin chapters 14 - 15. 3/9 Fri Last Day to Withdraw from a Full Semester Class — See Advisor by Noon. | Team projects continued. Coding and testing. | 
		
			| #10 3/12-3/16
 | Spring Break |  | 
		
			| #11 3/19-3/23
 | 
				Case study - Test driven development. Requirements. Example code.Other topics moved to next week because of snow day.Readings - Rubin chapters 16 - 18. 3/19 Mon First Day of Summer 2018 RAIL Registration for Continuing Students, 9:00 am-4:00 pm. 3/21 Wed First Day of Academic Advisement for Continuing Students for Fall 2018. | Coding and testing cont. | 
		
			| #12 3/26-3/30
 | 
				Portfolio planning. Envisioning or product planning. Release or longer-term planning.Introduction to sprinting. Sprint planning and execution.Team project progress presentations.Readings - Rubin chapters 19 - 20. | Exam 2 to be combined with the final exam. Week #11 class cancelled because of snow. | 
		|  | 
		
			| #13 4/2-4/6
 | 
				Event - NASA day student fellowship research project presentations starting at 4:15pm in BY 108.Coding and testing cont.Finalizing projects.Preparing for final presentations. 4/2 Mon First Day of Fall 2018 RAIL Registration for Continuing Students, 9:00 am-4:00 pm. 4/4 Wed Last Day of Academic Advisement for Continuing Students for Fall 2018. |  | 
		
			| #14 4/9-4/13
 | 	
				Sprint review. Sprint retrospective. The agile path forward.Agile project management with Kanban. Evolving from Scrum.Centralized and distributed version controls.Version control software. Git and GitHub. Git cheat sheet.Preparing for final presentations.Readings - Rubin chapters 21 - 23. Related Kanban resources. |  | 
		
			| #15 4/16-4/20
 | 
				Final team project presentations in class. 15 minutes per team, including Q/As.Team project files are due by 11pm on Friday, 4/20. 4/20 Fri McMurran Scholars Convocation; Last Day of Classes; Last Day for Complete Withdrawal from Semester. |  | 
		
			| #16 4/23-4/27
 | Final Exam Week. | Final exam files are due by 11pm on Tuesday, 4/24. |