Feedback on Part 1 of the Software Engineering Large Practical

675 views

Published on

This slide set describes the submissions which were received for Part 1 of the Software Engineering Large Practical.

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
675
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Feedback on Part 1 of the Software Engineering Large Practical

  1. 1. Software Engineering Large PracticalFeedback on Part 1 of the Practical Stephen Gilmore School of Informatics, University of Edinburgh November 7th, 2012 Stephen Gilmore Software Engineering Large Practical
  2. 2. About Practical 1 There are 19 people taking the Software Engineering Large Practical. There were 14 submissions, and 5 non-submisisons. The submissions have been marked and comments returned. The submissions varied widely. Some project submissions contained Java syntax errors and failed to compile. Some generated warnings. Some generated neither errors nor warnings. Some submissions had only limited functionality (e.g. a login screen). Some read the XML document from the server. Some created a database. Some looked more more like a submission for Part 2 than Part 1. Stephen Gilmore Software Engineering Large Practical
  3. 3. Lessons learnt Discovered a bug in the “submit” command which is now being fixed. Discovered an underspecification in the practical description, which should explain that we are using Java 1.6 and that Java 1.7 language features are not available (such as strings in switch statements). Stephen Gilmore Software Engineering Large Practical
  4. 4. Point of this lecture Give feedback on the submissions generally, rather than individually. Allow you to get a sense of where you are in the class. See examples of some app designs. Consider additional features which you might like to implement. Stephen Gilmore Software Engineering Large Practical
  5. 5. Java and XML problems, warnings and errors Errors and warnings encountered are listed here. These included syntax errors in Java (e.g. missing semi-colons) and semantic errors (such as “variable not declared” errors). Some XML documents were ill-formed (e.g. not a single root element). Many uses of generics were not complete, and led to “raw types”. Many imports were never used. Some variables were not used. Stephen Gilmore Software Engineering Large Practical
  6. 6. Java problems: syntax errors Stephen Gilmore Software Engineering Large Practical
  7. 7. XML errors: “junk after document element” Stephen Gilmore Software Engineering Large Practical
  8. 8. Java problems: “cannot be resolved” or is not a field Stephen Gilmore Software Engineering Large Practical
  9. 9. XML problems: no resource found Stephen Gilmore Software Engineering Large Practical
  10. 10. Java problems: generics and raw typesng Stephen Gilmore Software Engineering Large Practical
  11. 11. Java problems: imports not usedng Stephen Gilmore Software Engineering Large Practical
  12. 12. Unused imports in Java codeng Stephen Gilmore Software Engineering Large Practical
  13. 13. Java problems: variables not usedng Stephen Gilmore Software Engineering Large Practical
  14. 14. Java problems: Java 1.5/Java 1.6 incompatibilityng Stephen Gilmore Software Engineering Large Practical
  15. 15. User interfaces in development Some submissions had more user interface code than others. Some had working buttons, menus and textboxes. Stephen Gilmore Software Engineering Large Practical
  16. 16. Blank screenpng Stephen Gilmore Software Engineering Large Practical
  17. 17. Alpha version of interface: setting matriculation numberpng shot 2012-10-30 at 09.35.44.png Stephen Gilmore Software Engineering Large Practical
  18. 18. Interface and settingspng shot 2012-10-30 at 10.14.54.png Stephen Gilmore Software Engineering Large Practical
  19. 19. Interface of alpha versionpng shot 2012-10-30 at 13.26.38.png Stephen Gilmore Software Engineering Large Practical
  20. 20. Entering a student numberpng shot 2012-10-30 at 14.04.56.png Stephen Gilmore Software Engineering Large Practical
  21. 21. Candidate lists in development Some submissions were able to retrieve the candidate list from the server and display this. Some submissions just listed the names of the candidates. Some included election statements. Some included photographs of the candidates. Stephen Gilmore Software Engineering Large Practical
  22. 22. Interace of alpha version — listing candidatespng shot 2012-10-30 at 15.21.16.png Stephen Gilmore Software Engineering Large Practical
  23. 23. Listing candidatespng shot 2012-10-31 at 13.23.00.png Stephen Gilmore Software Engineering Large Practical
  24. 24. Sign-in screen — candidates listedpng shot 2012-10-30 at 15.47.56.png Stephen Gilmore Software Engineering Large Practical
  25. 25. Logging in and viewing candidatespng shot 2012-10-30 at 14.46.34.png Stephen Gilmore Software Engineering Large Practical
  26. 26. Viewing candidates by categorypng shot 2012-10-30 at 14.31.32.png Stephen Gilmore Software Engineering Large Practical
  27. 27. Additional features in development The application requires you to retrieve an XML document from the server. We can’t be sure that this will always succeed. What if we have no network connection? Stephen Gilmore Software Engineering Large Practical
  28. 28. Dealing with network connection issuespng shot 2012-10-30 at 14.34.25.png Stephen Gilmore Software Engineering Large Practical
  29. 29. Going further: rating, deleting, and sending tweets The other functions required by the app include rating favoured candidates, deleting unfavoured candidates, sending email and sending tweets. Stephen Gilmore Software Engineering Large Practical
  30. 30. Candidates selected and ratedpng shot 2012-10-30 at 15.21.40.png Stephen Gilmore Software Engineering Large Practical
  31. 31. Rating a candidate and sending a tweetpng shot 2012-10-31 at 13.24.17.png Stephen Gilmore Software Engineering Large Practical
  32. 32. Viewing details and rating candidatespng shot 2012-10-30 at 14.47.10.png Stephen Gilmore Software Engineering Large Practical
  33. 33. Deleting a candidatepng shot 2012-10-30 at 14.47.52.png Stephen Gilmore Software Engineering Large Practical
  34. 34. Database contents Stephen Gilmore Software Engineering Large Practical
  35. 35. Viewing the database Stephen Gilmore Software Engineering Large Practical
  36. 36. Database Stephen Gilmore Software Engineering Large Practical
  37. 37. Examples of good practice Adding logging to your app early helps you to develop it because it gives you a deeper understanding of how your app is working and what is not working. You are asked to add logging to your app so why not start now and reap the benefits? Stephen Gilmore Software Engineering Large Practical
  38. 38. Logging: It’s great! Look how helpful it is.ng Stephen Gilmore Software Engineering Large Practical
  39. 39. Logging: why not start now? Seriously, it’s great.ng Stephen Gilmore Software Engineering Large Practical
  40. 40. Closing remarks When implementing your app you should pay careful attention to the instructions in the practical handout which you received at the start of the course. You also have now available a sample XML file with data on the candidates in the election. Note that this is only a sample, and not a template. For example, all of the candidates in the sample XML file had made three promises but this is not specified by the regulations so it would be possible for candidates to make more promises, or fewer. Stephen Gilmore Software Engineering Large Practical
  41. 41. XML Update: new candidate added, with more promisesng Stephen Gilmore Software Engineering Large Practical
  42. 42. End of course lectures Good luck! Stephen Gilmore Software Engineering Large Practical

×