Upload
stephen-gilmore
View
576
Download
0
Tags:
Embed Size (px)
DESCRIPTION
This slide set describes the submissions which were received for Part 1 of the Software Engineering Large Practical.
Citation preview
Software Engineering Large Practical
Feedback on Part 1 of the Practical
Stephen Gilmore
School of Informatics, University of Edinburgh
November 7th, 2012
Stephen Gilmore Software Engineering Large Practical
About Practical 1
I There are 19 people taking the Software Engineering LargePractical. There were 14 submissions, and 5 non-submisisons.
I The submissions have been marked and comments returned.I The submissions varied widely.
I Some project submissions contained Java syntax errors andfailed to compile. Some generated warnings. Some generatedneither errors nor warnings.
I Some submissions had only limited functionality (e.g. a loginscreen). Some read the XML document from the server. Somecreated a database.
I Some looked more more like a submission for Part 2 thanPart 1.
Stephen Gilmore Software Engineering Large Practical
Lessons learnt
I Discovered a bug in the “submit” command which is nowbeing fixed.
I Discovered an underspecification in the practical description,which should explain that we are using Java 1.6 and that Java1.7 language features are not available (such as strings inswitch statements).
Stephen Gilmore Software Engineering Large Practical
Point of this lecture
I Give feedback on the submissions generally, rather thanindividually.
I Allow you to get a sense of where you are in the class.
I See examples of some app designs.
I Consider additional features which you might like toimplement.
Stephen Gilmore Software Engineering Large Practical
Java and XML problems, warnings and errors
I Errors and warnings encountered are listed here.
I These included syntax errors in Java (e.g. missingsemi-colons) and semantic errors (such as “variable notdeclared” errors).
I Some XML documents were ill-formed (e.g. not a single rootelement).
I Many uses of generics were not complete, and led to “rawtypes”.
I Many imports were never used. Some variables were not used.
Stephen Gilmore Software Engineering Large Practical
Java problems: syntax errors
shot 2012-10-30 at 08.46.16.png
Stephen Gilmore Software Engineering Large Practical
XML errors: “junk after document element”
shot 2012-10-30 at 08.47.35.png
Stephen Gilmore Software Engineering Large Practical
Java problems: “cannot be resolved” or is not a field
shot 2012-10-30 at 15.33.55.png
Stephen Gilmore Software Engineering Large Practical
XML problems: no resource found
shot 2012-10-30 at 15.33.14.png
Stephen Gilmore Software Engineering Large Practical
Java problems: generics and raw types
shot 2012-10-30 at 15.46.47.png
Stephen Gilmore Software Engineering Large Practical
Java problems: imports not used
shot 2012-10-30 at 15.05.36.png
Stephen Gilmore Software Engineering Large Practical
Unused imports in Java code
shot 2012-10-31 at 13.21.37.png
Stephen Gilmore Software Engineering Large Practical
Java problems: variables not used
shot 2012-10-30 at 15.21.10.png
Stephen Gilmore Software Engineering Large Practical
Java problems: Java 1.5/Java 1.6 incompatibility
shot 2012-10-30 at 14.44.06.png
Stephen Gilmore Software Engineering Large Practical
User interfaces in development
I Some submissions had more user interface code than others.
I Some had working buttons, menus and textboxes.
Stephen Gilmore Software Engineering Large Practical
Blank screen
shot 2012-10-30 at 15.12.55.png
Stephen Gilmore Software Engineering Large Practical
Alpha version of interface: setting matriculation number
shot 2012-10-30 at 09.28.54.png shot 2012-10-30 at 09.35.44.png
Stephen Gilmore Software Engineering Large Practical
Interface and settings
shot 2012-10-30 at 10.01.19.png shot 2012-10-30 at 10.14.54.png
Stephen Gilmore Software Engineering Large Practical
Interface of alpha version
shot 2012-10-30 at 13.26.21.png shot 2012-10-30 at 13.26.38.png
Stephen Gilmore Software Engineering Large Practical
Entering a student number
shot 2012-10-30 at 14.03.45.png shot 2012-10-30 at 14.04.56.png
Stephen Gilmore Software Engineering Large Practical
Candidate lists in development
I Some submissions were able to retrieve the candidate list fromthe server and display this.
I Some submissions just listed the names of the candidates.
I Some included election statements.
I Some included photographs of the candidates.
Stephen Gilmore Software Engineering Large Practical
Interace of alpha version — listing candidates
shot 2012-10-30 at 11.19.42.png shot 2012-10-30 at 15.21.16.png
Stephen Gilmore Software Engineering Large Practical
Listing candidates
shot 2012-10-31 at 13.22.41.png shot 2012-10-31 at 13.23.00.png
Stephen Gilmore Software Engineering Large Practical
Sign-in screen — candidates listed
shot 2012-10-30 at 15.47.11.png shot 2012-10-30 at 15.47.56.png
Stephen Gilmore Software Engineering Large Practical
Logging in and viewing candidates
shot 2012-10-30 at 14.46.29.png shot 2012-10-30 at 14.46.34.png
Stephen Gilmore Software Engineering Large Practical
Viewing candidates by category
shot 2012-10-30 at 14.30.43.png shot 2012-10-30 at 14.31.32.png
Stephen Gilmore Software Engineering Large Practical
Additional features in development
I The application requires you to retrieve an XML documentfrom the server.
I We can’t be sure that this will always succeed. What if wehave no network connection?
Stephen Gilmore Software Engineering Large Practical
Dealing with network connection issues
shot 2012-10-30 at 14.34.20.png shot 2012-10-30 at 14.34.25.png
Stephen Gilmore Software Engineering Large Practical
Going further: rating, deleting, and sending tweets
I The other functions required by the app include ratingfavoured candidates, deleting unfavoured candidates, sendingemail and sending tweets.
Stephen Gilmore Software Engineering Large Practical
Candidates selected and rated
shot 2012-10-30 at 15.21.26.png shot 2012-10-30 at 15.21.40.png
Stephen Gilmore Software Engineering Large Practical
Rating a candidate and sending a tweet
shot 2012-10-31 at 13.23.25.png shot 2012-10-31 at 13.24.17.png
Stephen Gilmore Software Engineering Large Practical
Viewing details and rating candidates
shot 2012-10-30 at 14.46.47.png shot 2012-10-30 at 14.47.10.png
Stephen Gilmore Software Engineering Large Practical
Deleting a candidate
shot 2012-10-30 at 14.47.46.png shot 2012-10-30 at 14.47.52.png
Stephen Gilmore Software Engineering Large Practical
Database contents
shot 2012-10-30 at 13.50.20.png
Stephen Gilmore Software Engineering Large Practical
Viewing the database
shot 2012-10-30 at 15.51.27.png
Stephen Gilmore Software Engineering Large Practical
Database
shot 2012-10-31 at 13.31.46.png
Stephen Gilmore Software Engineering Large Practical
Examples of good practice
I Adding logging to your app early helps you to develop itbecause it gives you a deeper understanding of how your appis working and what is not working.
I You are asked to add logging to your app so why not startnow and reap the benefits?
Stephen Gilmore Software Engineering Large Practical
Logging: It’s great! Look how helpful it is.
shot 2012-10-30 at 14.20.57.png
Stephen Gilmore Software Engineering Large Practical
Logging: why not start now? Seriously, it’s great.
shot 2012-10-30 at 15.11.05.png
Stephen Gilmore Software Engineering Large Practical
Closing remarks
I When implementing your app you should pay careful attentionto the instructions in the practical handout which you receivedat the start of the course.
I You also have now available a sample XML file with data onthe candidates in the election. Note that this is only a sample,and not a template.
I For example, all of the candidates in the sample XML file hadmade three promises but this is not specified by theregulations so it would be possible for candidates to makemore promises, or fewer.
Stephen Gilmore Software Engineering Large Practical
XML Update: new candidate added, with more promises
shot 2012-11-05 at 16.46.12.png
Stephen Gilmore Software Engineering Large Practical
End of course lectures
I Good luck!
Stephen Gilmore Software Engineering Large Practical