180 likes | 322 Views
http://schoolacademy.telerik.com. Telerik School Academy. Meeting #2 – December 2010 – Software Engineering Homework Assignments. Svetlin Nakov. Telerik Corporation. www.telerik.com. Prepare IT Test Questions. Prepare IT Test Questions.
E N D
http://schoolacademy.telerik.com Telerik School Academy Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation www.telerik.com
Prepare IT Test Questions • Prepare at least 20 questions for preparation for the National Olympiad's IT test • Prepare at least one question for each category from the official conspectus • Try to create complex, non-trivial questions • Categories are officially published at http://edusoft.fmi.uni-sofia.bg/documents/Conspect0910.pdf • Follow strictly the IT test template: IT-Test-Questions-Template.pptx
High-Quality Code • Refactor the code from the projects in the archive Low-Quality-Code-Examples.rar • Follow the high-quality code construction concepts and guidelines • Ensure the identifiers are well named • Solutions, projects, directories, files, classes, methods, fields, properties, variables, parameters, etc. • Ensure the code is well formatted
High-Quality Code (2) • Refactor all your code from your last homework (C#, OOP, LINQ) • Follow the high-quality code construction concepts and guidelines • Ensure the identifiers are well named • Solutions, projects, directories, files, classes, methods, fields, properties, variables, parameters, etc. • Ensure the code is well formatted
Source Control Systems • Install on your machine TortoiseSVN • http://tortoisesvn.net/downloads.html • Register a new project in Google Code • http://code.google.com/hosting/createProject • Play with Subversion and TortoiseSVN • Checkout the SVN of your Google Code project • Create your own directory, add few files in it and commit all changes • Create a conflict on some shared file in the SVN (work with the other students) and resolve it
Development Tools – Unit Testing • Create unit tests for the solution of the following problem from the previous homework: • Write a program that finds the maximal increasing sequence of elements in an array. Example: {3, 2, 3, 4, 2, 2, 4} {2, 3, 4}. Ensure the tests check the nominal case and special cases like: empty array, array consist of single element, all elements are increasing / decreasing, increasing sequence at start / end … Use either Visual Studio Team Test (VSTT) or NUnit Framework.
Development Tools – Selenium • Install Selenium RC on your machine and create Selenium based Web UI unit tests for the temperature converter located at: • http://www.worldwidemetric.com/cal.html Ensure your automated tests cover cases like: • Celsius to Fahrenheit and vice versa • Negative temperature • Invalid numbers (e.g. "peter") • Very large numbers
Development Tools – Sandcastle • Document with XML documentation your solution of the "maximal increasing sequence" problem and its unit tests. Using Sandcastle generate a CHM documentation for your code. • Create a project in Google Code and put all your homework files in the SVN repository of your project.
Choosing a Project for the National IT Olympiad • Generate few innovative ideas for projects for the National IT Olympiad. Don't think about implementation at this time. • Asses the feasibility of the generated ideas. Think about the implementation – is it possible, do you have enough skills, etc. • Describe the best projects in the format required by the IT Olympiad (see the official requirements). • Start working on one of the projects.
Submission Instructions • Homework solutions should be submitted at the following Web site: • http://nakov.devbg.org/schoolacademy-uploads/ • Solutions should be packed in a single ZIP or RAR archive (up to 8 MB) • Remove well known libraries (like the Selenium binaries) from the archive to save space
Further Instructions • The deadline for the homework is: • A week before the next training session • Everybody is free to use help from friends, teachers or Internet • Submission of the same work by different authors may result in a disqualification • Ask your questions in the Telerik School Academy official discussion group: • http://groups.google.com/group/it-olymp
Homework Assignments ? Questions? ? ? ? ? ? ? ? ? ? http://schoolacademy.telerik.com