CSE 5324 (Spring 2014)

Skip to end of metadata
Go to start of metadata
  • CSE 5324 - Software Engineering: Analysis, Design, and Testing (Spring 2014)
  • Section 001
  • Class Number 22075

Class Meetings





Description of Course Content from Course Catalog

Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.

Project Requirements

  1. Every aspect of your software project has to be fully family friendly. This means, no violence, etc. When in doubt, make it more family friendly or ask the instructor.
  2. Your software should run on the Google Android platform. This means, with your instructions, I should be able to run your code on the standard Android emulator I have installed on my machine. Similarly, with your instructions, your test cases should run on my standard JUnit installation, etc.
  3. Your software should be new and exciting.
    • New means that your software has to have some aspect that is completely novel. It is not enough to just copy and paste an example project from somewhere else. This does not mean you cannot re-use any existing code. Most real-world software engineering builds on some existing code. But it is important that you clearly document which parts are yours and which parts you re-use from another source.
    • Exciting means that your software should have some aspect that is exciting. Examples include that you write a game that is fun to play or you write some utility that is appealing in some form.
    • In the ideal case, the exciting aspect of your software is also new. In this case, you may become rich and famous :)


  • All deadlines are Monday 9 am.
  • (CL X) = X in Craig Larman textbook.

Day Tentative Class Topic Deadline
1/13 Overview, syllabus  
1/15 Motivation, introduction  
1/20 Martin Luther King, Jr's Day Form teams
1/22 Tuan Anh Nguyen, UML in practice, Iterative process (CL Part 1, How to be a program manager), Inception (CL Part 2)  
1/27 Presentation, feedback Incept project
1/29 Eknauth Persaud  
2/03 Presentation, feedback Revise inception
2/05 Walkthrough and review (BillG, Simonyi)  
2/10 Basics, requirements Review inception
2/12 Quiz, more requirements  
2/17 Use-Cases (CL Chapter 6)  
2/19 Domain models (CL Chapters 9, 31)  
2/24 Presentation, feedback Iteration 1
2/26 More requirements (CL Chapters 10, 11, 32)  
3/03 Architecture (CL Chapters 13, 33) Review iteration 1
3/05 Quiz, Tools  
3/10 Spring Vacation  
3/12 Spring Vacation  
3/17 Dynamic design models (CL Chapters 14, 15) Homework 1
3/19 Static design models (CL Chapters 16, 19)  
3/24 Presentation, feedback: Code walkthrough Iteration 2
3/26 Design: Grasp principles (CL Chapters 17, 18, 25)  
3/31 Design by Contract (Meyer92Applying) Review iteration 2
4/02 Quiz, more Design by Contract  
4/07 Overloading and overriding Homework 2
4/09 Design patterns  
4/14 Testing and debugging (AA) Iteration 3
4/16 Presentation, feedback: Code walkthrough  
4/21 Presentation, feedback: Code walkthrough Review iteration 3
4/23 Quiz, more testing, Student Feedback Day  
4/28 Final presentation Final deliverables
4/30 Final presentation  

University Academic Calendar


Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.