CS 428
CS 428 - Software Engineering II
Spring 2021
| Title | Rubric | Section | CRN | Type | Hours | Times | Days | Location | Instructor |
|---|---|---|---|---|---|---|---|---|---|
| Software Engineering II | CS428 | Q3 | 31389 | ONL | 3 | 1400 - 1515 | W F | Darko Marinov | |
| Software Engineering II | CS428 | Q4 | 39377 | ONL | 4 | 1400 - 1515 | W F | Darko Marinov | |
| Software Engineering II, ACP | CS429 | Q3 | 41483 | ONL | 3 | 1400 - 1515 | W F | Darko Marinov | |
| Software Engineering II | CSE429 | Q3 | 31392 | ONL | 3 | 1400 - 1515 | W F | Darko Marinov | |
| Software Engineering II | CSE429 | Q4 | 39742 | ONL | 4 | 1400 - 1515 | W F | Darko Marinov |
See full schedule from Course Explorer
Official Description
Course Director
Text(s)
Varies by semester, using course notes available for free and linked from the course Wiki
For cs429 only, textbook "Style: Toward Clarity and Grace" by Joseph M. Williams
Learning Goals
Compare & Contrast different software engineering and development processes. (1), (2), (4), (6)
Learn a particular process (XP: user stories, test-driven development, refactoring, pair programming). (1), (2), (4), (6)
Improve activities that are common to most processes (configuration management, testing, metrics, documentation, reverse engineering, refactoring). (1), (2), (4), (6)
Contribute effectively to a team in maintaining existing large code (CS427) ot developing new code (CS428/9). (1), (2), (3), (4), (5), (6)
Communicate effectively, both orally and in writing, with peers and software customers (TAs), and describe your process (the latter for CS429). (3), (5)
Manage/organize software projects (requirements, architecture, design, documentation, management, planning). (1), (2), (3), (4), (5), (6)
Use a set of modern software development services (e,g., GitHub, Travis) (2), (3), (5), (6)
Topic List
(CS 427) Software development processes
(CS 427) Software configuration management
(CS 427) Testing
(CS 427) Debugging
(CS 427) Component-based software engineering
(CS 427) Refactorings
(CS 427) Code smells
(CS 427) Reverse Engineering
(CS 427) Metrics
(CS 427) Design Patterns
(CS 427) Software Documentation
(CS 427) Large code
(CS 428/9) Managing Software Projects
(CS 428/9) Requirements
(CS 428/9) UML
(CS 428/9) Design
(CS 428/9) Quality Assurance
(CS 428/9) Non-XP development processes
(CS 428/9) User Interface Design
(CS 428/9) Performance/Security/Web Engineering