1 / 15

ITEC 370

ITEC 370. Lecture 17 Implementation. Review. Questions? Design document due next W due to feedback being delayed Midterm on F Implementation Version control Tagging / Reversion Branching / Merging Git. Objectives. Approaches to implementation Scheduling. Scenario.

tilden
Download Presentation

ITEC 370

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ITEC 370 Lecture 17 Implementation

  2. Review • Questions? • Design document due next W due to feedback being delayed • Midterm on F • Implementation • Version control • Tagging / Reversion • Branching / Merging • Git

  3. Objectives • Approaches to implementation • Scheduling

  4. Scenario • You aren’t quite sure what the best way to implement the design is (i.e. it doesn’t go to the algorithm level) • What are different ways to accomplish this?

  5. Preparation • Take the design process to the next level • Map out down to the variable what has to be done • Pro? • Con?

  6. Prototyping • Not sure how to do X, or have only done once or twice, or code quality has to be the highest • Write the code, or part of the code • Rewrite it • Evaluate is it good enough • If not 3rd time is the charm • DGL example

  7. Evolution • Plan for several stages • As you write more code, the stage you are at changes • Plan what goes into each stage • Simplistic example • Alpha, Beta, Final

  8. Test first • Figure out what system should do for input case X,Y,Z • Determine if X,Y,Z covers all possible inputs expected • If not, come up with more test cases • Write code and then use tests to see if it works

  9. Punt • Ask for help • Senior developer • Co-worker • Stack-overflow

  10. Scheduling • Making a schedule is critical to being able to predict / implement your project on time • Steps • Determine a work “unit” (class, function, etc…) • Determine how many work units your design has • Simple division • Estimated LOC

  11. Goals • Know yourself • Know your team • Who would be best for each part • How many LOC does X take • Not unlike guessing # of beans in a jar • Simple (Small, medium, large) • Expect 50 small, 25 medium, 10 large functions a week…

  12. Project • Recommend that you break your design document down into units • Group each unit into areas • Have two methods for • Primary (Writing, initial testing) • Secondary (Matches design, works) • Tertiary (Verifies that is working, quality is correct)

  13. Scheduling • Always going to be a non-exact science • People are not machines • We cannot see every detail for the future • We can plan for them…

  14. Specialties • Play to your strengths • Typing speed • Algorithm picking

  15. Review • Version control • Why • What is typically used • Example of Git

More Related