Efficiently Solving Computer Programming Problems Svetlin Nakov Telerik Corporation .
Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik...
description
Transcript of Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik...
![Page 1: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/1.jpg)
Telerik School Academy
Meeting #2 – December 2010 – Software Engineering Homework Assignments
Svetlin NakovTelerik
Corporationwww.telerik.com
http://schoolacademy.telerik.com
![Page 2: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/2.jpg)
Prepare IT Test Questions
![Page 3: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/3.jpg)
Prepare IT Test Questions
1.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
3
![Page 4: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/4.jpg)
High-Quality Code
![Page 5: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/5.jpg)
High-Quality Code2.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
5
![Page 6: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/6.jpg)
High-Quality Code (2)3.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 6
![Page 7: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/7.jpg)
Source Control Systems and
SVN
![Page 8: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/8.jpg)
Source Control Systems4. Install on your machine TortoiseSVN
http://tortoisesvn.net/downloads.html5. Register a new project in Google
Code http://
code.google.com/hosting/createProject
6. 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
8
![Page 9: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/9.jpg)
Development Tools
![Page 10: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/10.jpg)
Development Tools – Unit Testing
7. 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.
10
![Page 11: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/11.jpg)
Development Tools – Selenium
8. 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.htmlEnsure your automated tests cover cases like: Celsius to Fahrenheit and vice versa Negative temperature Invalid numbers (e.g. "peter") Very large numbers
11
![Page 12: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/12.jpg)
Development Tools – Sandcastle
9. 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.
10.Create a project in Google Code and put all your homework files in the SVN repository of your project.
12
![Page 13: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/13.jpg)
Choosing a Project for the National IT
Olympiad
![Page 14: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/14.jpg)
Choosing a Project for the National IT Olympiad
11.Generate few innovative ideas for projects for the National IT Olympiad. Don't think about implementation at this time.
12.Asses the feasibility of the generated ideas. Think about the implementation – is it possible, do you have enough skills, etc.
13.Describe the best projects in the format required by the IT Olympiad (see the official requirements).
14.Start working on one of the projects.
14
![Page 15: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/15.jpg)
Submission Instructions and
Deadline
![Page 16: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/16.jpg)
Submission Instructions Homework solutions should be submitted at the following Web site: http://nakov.devbg.org/schoolacadem
y-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
16
![Page 17: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/17.jpg)
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
17
![Page 18: Meeting #2 – December 2010 – Software Engineering Homework Assignments Svetlin Nakov Telerik Corporation .](https://reader036.fdocuments.us/reader036/viewer/2022081517/5a4d1b5b7f8b9ab0599aaf83/html5/thumbnails/18.jpg)
Homework Assignments
Questions? ??
? ? ????
?http://schoolacademy.telerik.com