Computer Programming and Telematics Lab
Computer Programming and Telematics Lab
Description
Objective:
Teach methodologies for architectural design and implementation of
complex software;
Outline
Version control
C# programming language
Unit testing
Software design
UML2.0, Use cases, class diagram, object diagram, statechart diagram, activity
diagram, sequence diagram, communication diagram, component diagram,
component diagram, deployment diagram, package diagram, timing diagram,
interaction overview diagram, composite structure diagram
Design patterns
References
Course material (available through AulaWeb
http://diten.aulaweb.unige.it/course/view.php?id=392)
"Manifesto for Agile Software Development", Agile Alliance, 2001, webpage:
http://agilemanifesto.org/
Robert C. Martin and Micah Martin. 2006. Agile Principles, Patterns, and
Practices in C# (Robert C. Martin). Prentice Hall PTR, Upper Saddle River, NJ,
USA.
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. 1995. Design
Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley
Longman Publishing Co., Inc., Boston, MA, USA.
Robert C. Martin. 2008. Clean Code: A Handbook of Agile Software
Craftsmanship (1 ed.). Prentice Hall PTR, Upper Saddle River, NJ, USA.
Kent Beck, extreme Programming explained: Embrace change AddisonWesley, 2000.
Exam
Total time for the exam: 4 hours
First part (1h30m): quiz with multiple answers. The test is made up
by 62 questions. Each question has 3 possible answers + the dont
know answer. The correct answer increases the overall marks of 0.5,
the wrong answers decrease of 0.25, while the dont know answer
is 0.
Second part (2h30m): design and implementation of a simple
project. This can be made in groups of two students and should
demonstrate to be able to apply the main concepts described during
the lectures. Source code and diagrams/schemes created by the
group will be evaluated and averaged with quiz results.
5 bonus points for those of you who completed at least 80% of the
proposed exercises (must be merged/pushed in GITHUB!)
Exams calendar
Exams are typically on Tuesdays from 9 to 13
You must sign-up online for the exam at least 2 days before
Exam dates (2017):
10/1/2017
24/1/2017
14/2/2017
28/2/2017
6/6/2017
20/6/2017
4/7/2017
18/7/2017
12/9/2017
Start (me
giving the pdf
with the
exercise text)
Delivery (you
merging on
github your
solutions)
Results (me
sending to you
results and
comments)
Corrections
(you merging
your
corrections)
30/9
9/10
15/10
21/10
11/10
21/10
28/10
7/11
25/10
7/11
14/11
25/11
15/11
25/11
2/12
12/12
2/12
12/12
19/12
29/12
Final
13/12
Day of the
exam
Contacts
Lucio Marcenaro
Signal Processing & Telecommunications Group
Department of Electrical, Electronic, Telecommunications
Engineering and Naval Architecture (DITEN)
Via all'Opera Pia 11 (ex-CNR 1st floor)
16145 Genova (Italy)
Ph. +39 010 3532060 |Mob. +39 3482360850
Email: [email protected]