- CSE 5324 - Software Engineering: Analysis, Design, and Testing (Spring 2015)
- Section 001
- Time: Monday and Wednesday, 5:30 pm - 6:50 pm
- Location: ERB 103 (in the Engineering Research Building)
- Christoph Csallner
- Office: ERB 554 (in the Engineering Research Building)
- Office hours: Monday and Wednesday, 2:45 pm - 3:45 pm
- Office phone: 817-272-3334
- Email: email@example.com
- Mainul Islam
- Office: ERB 509 (in the Engineering Research Building)
- Office hours: Tuesday and Thursday, 2.00 pm - 3.00 pm
- Email: firstname.lastname@example.org
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.
- 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.
- 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.
- 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 = Chapter X in Craig Larman textbook.
- DK X = Chapter X in David Kung textbook.
|Day||Tentative Class Topic||Deadline|
|1/26||Motivation, introduction UML in practice, Iterative process (CL 1, DK 2, How to be a program manager), Inception (CL 2)||Form teams|
|2/02||Presentation, feedback||Incept project|
|2/04||Walkthrough and review (DK 19.4, BillG, Simonyi)|
|2/09||Presentation, feedback||Revise inception|
|2/16||More basics, requirements (DK 4)||Review inception|
|2/18||Quiz, more requirements|
|3/02||Presentation, feedback||Iteration 1|
|3/04||Marc D. Marchand|
|3/16||Use-Cases (CL 6, DK 7), Domain models (CL 9, 31; DK 5), more requirements (CL 10, 11, 32)||Review iteration 1|
|3/18||Quiz, Architecture (CL 13, 33; DK 6)|
|3/23||Dynamic design models (CL 14, 15)||Homework 1|
|3/25||Static design models (CL 16, 19)|
|3/30||Presentation, feedback – Code walkthrough||Iteration 2|
|4/01||Design: Grasp principles (CL 17, 18, 25)|
|4/06||Design by Contract (Meyer92Applying)||Review iteration 2|
|4/08||Quiz, more Design by Contract|
|4/13||Overloading and overriding||Homework 2|
|4/20||Presentation, feedback – Code walkthrough||Iteration 3|
|4/22||Presentation, feedback – Code walkthrough|
|4/27||Testing and debugging (DK 20)||Review iteration 3|
|4/29||Quiz, more testing, Student Feedback Day|
|5/04||Final presentation||Final deliverables|
- CSE-5324 Tools
- David Kung: Object-Oriented Software Engineering: An Agile Unified Methodology. McGraw-Hill, 2013.
- Craig Larman: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. 3rd edition. Prentice Hall, 2004. Available on the UTA network at http://proquestcombo.safaribooksonline.com.ezproxy.uta.edu/0131489062
- Grady Booch, James Rumbaugh, and Ivar Jacobson: The Unified Modeling Language User Guide. 2nd edition. Addison-Wesley, 2005. Available on the UTA network at http://proquestcombo.safaribooksonline.com.ezproxy.uta.edu/0321267974
- Modelio open source UML modeling tool
- Frequently asked questions
- What is Android?
- Hello, World
- Google API
- Android virtual machine (Dalvik): Bytecode
- Frequently asked questions