70 likes | 201 Views
SEG4910 – Projet génie logiciel en fin d ’ études / Software Engineering Capstone Project. Review of Analysis and Iterative Development Timothy C. Lethbridge Derived from notes by Liam Peyton. Insufficient requirements Ambiguous communications Brittle architectures
E N D
SEG4910 – Projet génie logiciel en fin d’études / Software Engineering Capstone Project Review of Analysis and Iterative Development Timothy C. Lethbridge Derived from notes by Liam Peyton
Insufficient requirements Ambiguous communications Brittle architectures Overwhelming complexity Subjective assessment Undetected inconsistencies Poor testing Waterfall development Uncontrolled change Insufficient automation Develop iteratively Manage requirements Use component architectures Model the software visually Verify quality Control changes Best Practices Address Root Causes Root Causes Best Practices
R I S K Iterative Waterfall Iteration Iteration Iteration Iteration Iteration Iteration Iteration T I M E Iterative Development Accelerates Risk Reduction
Iterative Development Characteristics • Critical risks are resolved before making large investments • Initial iterations enable early user feedback • Testing and integration are continuous • Objective milestones provide short-term focus • Progress is measured by assessing implementations • Partial implementations can be deployed
Analysis & Iterative Development • SCRUM (Ken Schwaber) • http://www.scrumalliance.org/learn_about_scrum • 2-4 week sprints (customer releasable), prioritized feature backlog • See separate slide deck • Extreme Programming (Ken Beck) • 3 week iterations, tests and data created and agreed to by customer before coding begins • Rational Unified Process (PhillipeKrutchen) • fully tested executable every iteration • use cases and architecture drive iterations
Testing in an Iterative Environment Iteration 1 Iteration 2 Iteration 3 Iteration 4 Requirements Test Suite 1 Test Suite 2 Test Suite 3 Test Suite 4 Automated Tests
Testing in Umple • Testing is automated using ant scripts, junit and other test scripts • See ant file: http://code.google.com/p/umple/source/browse/trunk/build/_template.xml • Junit instructions are at the end • Some tests: http://code.google.com/p/umple/source/browse/trunk/cruise.umple/test/cruise/umple/UmpleConsoleMainTest.java • Report: http://qa.umple.org