Giter Club home page Giter Club logo

sw's Introduction

#Software Technology Course

  • Οσο πιο ενεργή (και ουσιαστική) είναι η συμμετοχή σας εδώ τόσο καλύτερος ο βαθμός της τελικής εργασίας. Δεν γίνονται δεκτές αλλαγές για λογαριασμό άλλου.
  • Εργασίες που αποστέλονται με διαφορετικό τρόπο (π.χ., ως επισυναπτόμενα σε email) ή δεν περιέχουν τα στοιχεία που περιγράφονται παρακάτω βαθμολογούνται αρνητικά ή δεν λαμβάνονται καθόλου υπόψιν στον υπολογισμό του τελικού βαθμού.
  • Το κάθε μέλος είναι υπεύθυνο για την σωστή καταγραφή των στοιχείων του (όνομα, φωτογραφία, AM, email, παραδοτέα).
  • Ολα τα έργα λογισμικού είναι καλό να παρουσιάζονται τακτικά (τουλάχιστον δύο φορές τον μήνα) στο εργαστήριο ή ηλεκτρονικά στον βοηθό του μαθήματος, γιατί διαφορετικά μπορεί να πάρουν λάθος κατευθυνση. Εργασίες που εμφανίζονται χωρίς παρουσίαση (τελική/παραδοτέα) ή τον Σεπτέμβριο θα βαθμολογούνται με άριστα το πέντε.
  • Η εγκατάσταση εργαλείων προγραμματισμού θα πρέπει να γίνεται σε καθαρό λειτουργικό σύστημα, χωρίς άλλα προγράμματα. Υπάρχουν δύο λύσεις για αυτόν τον σκοπό: virtual machine σε ένα ισχυρό ΗΥ διαφορετικά θα πρέπει να γίνεται σε εξωτερικό δίσκο.
  • Δεν προβλέπεται ούτε παράταση ούτε αλλαγή της παρουσίασης για κανένα παραδοτέο. Αν κάποιος δεν ενημερώσει την σελίδα του ή δεν μπορεί να βρεθεί σε κάποια ημερομηνία μπορεί να έρθει στην αμέσως επόμενη (ή ακόμη καλύτερα την αμέσως προηγούμενη), αν αυτό συμβεί περισσότερο από μια φορά τότε μόνο θα έχει επίπτωση στον βαθμό.
  • Οι εργασίες της επαναληπτικής εξεταστικής παρουσιάζονται μόνο την ημέρα της γραπτής εξέτασης

##Projects

Για όλο τον Φεβρουάριο και για τις εβδομάδες των παρουσιάσεων σε όλους τους μήνες ισχύει μόνο ότι: Ημέρες και ώρες συναντήσεων στο εργαστήριο ανάλογα με το τελευταίο νούμερο στον ΑΜ: Πρώτη ώρα (Μονά), Δεύτερη ώρα (Ζυγά)

Η εργασία είναι ατομική ή ομαδική μέχρι 4 άτομα. Ο τελικός βαθμός για μεγάλες ομάδες 3-4 ατόμων είναι ανάλογα με την δυσκολία της εργασίας. Αν για παράδειγμα ομάδα 4 ατόμων παρουσιάσει εργασία που μπορεί να γίνει από 2 άτομα τότε θα βαθμολογηθεί με άριστα το πέντε, αντίστοιχα για όλες τις επιμέρους περιπτώσεις.

Υπάρχουν οι παρακάτω διαθέσιμες εργασίες που βαθμολογούνται πάντα ανάλογα με τον βαθμό δυσκολίας όπως φαίνεται δίπλα στο είδος της εργασίας. Είναι συνετό να επιλέξετε είδος εργασίας με βάση τις προηγούμενες γνώσεις, και τον διαθέσιμο χρόνο που έχετε. Αν για παράδειγμα δεν έχετε πολύ χρόνο τότε το πιο λογικό είναι να επιλέξετε μια εργασία που έχει μικρό βαθμό δυσκολίας. Πέρα από τα παρακάτω ενδεικτικά θέματα μπορείτε να διαλέξετε άλλο θέμα με βάση τα ενδιαφέροντα σας και μόνο σε συμφωνία με τον διδάσκοντα.

Η επίβλεψη των εργασίων θα γίνει τόσο από τον διδάσκοντα όσο και από τους βοηθούς του μαθήματος.

Η εργασία αποτελείται από τα παρακάτω παραδοτέα με τις αντίστοιχες προθεσμίες:

1. Δήλωση και δέσμευση θέματος, 18 Φεβρουαρίου

Μικρές αλλαγές στο θέμα στην διάρκεια του εξαμήνου για την αντιμετώπιση τεκμηριωμένων και αναπάντεχων αντικειμενικών προβλημάτων βαθμολογούνται θετικά. Μεγάλες ατεκμηρίωτες αλλαγές για αδικαιολόγητους προσωπικούς λόγους βαθμολογούνται αρνητικά. Η δήλωση θέματος γίνεται στην προσωπική σας σελίδα.

2. Παρουσίαση πρωτοτύπου της εφαρμογής (20%), 17 Μαρτίου

Παρουσίαση επιλογής εργαλείων, εκτέλεση/αλλαγές παραδειγμάτων, και προδιαγραφές εφαρμογής. Οι εργασίες με το Scratch θα πρέπει να παρουσιάσουν ένα δείγμα δουλειάς όπου θα φαίνεται η εφαρμογή ενός οι περισσότερων από τα παρακάτω: αφήγηση, διάδραση-gameplay από κλασικό παιχνίδι. Οι εργασίες με App Inventor θα πρέπει να βασίζονται στις μοναδικές ιδιότητες που έχει ένα κινητό τηλέφωνο, όπως GPS, compass και κυρίως στο γεγονός ότι ο χρήστης βρίσκεται σε κίνηση και όχι σε κάποιο γραφείο.

3. Τελική παρουσίαση έργου για σχολιασμό και βελτιώσεις (20%), 12 Μαϊου

Οι φοιτητές πρέπει να παρουσιάσουν το τελικό λογισμικό-αποτελέσματα και ένα τελικό πρόχειρου της αναφοράς, ώστε να πάρουν σχόλια για την βελτίωση και σωστή παράδοση της τελικής αναφοράς.

4. Τελική αναφορά (20%), 29 Μαϊου

Η τελική αναφορά πρέπει να περιλαμβάνει τις παρακάτω ενότητες: τίτλο, σύνοψη, εισαγωγή, επιλογή εργαλείων, διαδικασία ανάπτυξης, διάγραμμα λειτουργίας συστήματος, ενδεικτικές οθόνες, συμπεράσματα. Η τελική αναφορά μπορεί να αποτελείται από τα διορθωμένα προηγούμενα παραδοτέα με όσες αλλαγές έγιναν και την προσθήκη τίτλου, σύνοψης, συμπερασμάτων. Συνολικά θα πρέπει να είναι 500-1000 λέξεις.

Οι αναφορές θα πρέπει να γράφονται στην ίδια σελίδα με κείμενο και εικόνες. Οι τελικές αναφορές που δεν βρίσκονται στην σωστή θέση πριν την προθεσμία δεν βαθμολογούνται.

##Syllabus

Περιγραφή: Βασικές αρχές τεχνολογίας λογισμικού, η ανάπτυξη λογισμικού ως συνεργατική διαδικασία. Σχεδιασμός συστήματος: αρχιτεκτονικός σχεδιασμός, σχεδιασμός με επαναχρησιμοποίηση, σχεδιασμός διεπαφής χρήστη. Eλεγχος συστήματος. Διαδικασία παράδοσης, τεκμηρίωσης, και συντήρησης συστημάτων λογισμικού.

Προαπαιτούμενα: Εισαγωγή στον προγραμματισμό, δομές δεδομένων, βάσεις δεδομένων, δίκτυα, αντικειμενοστραφής προγραμματισμός.

Στόχος: Ο σκοπός του μαθήματος είναι η μελέτη της θεωρίας και η πρακτική εξάσκηση στην σχεδίαση και ανάπτυξη λογισμικού. Η θεωρία και το project καλύπτουν πολλές διαφορετικές περιοχές εφαρμογών με έμφαση σε επίκαιρες εφαρμογές όπως οι εκπαιδευτικές εφαρμογές, ο κινητός υπολογισμός, οι ψηφιακές (εκπαιδευτικές, πολιτισμικές) συλλογές, και οι ψυχαγωγικές εφαρμογές.

Μέθοδος διδασκαλίας: Διαλέξεις, demos, project.

Ηλεκτρονικά φροντιστήρια / Απορίες: Αν η απορία που έχετε δεν έχει ήδη απαντηθεί στα issues του github (δεξιά το κουμπάκι issues με το θαυμαστικό), τότε μπορείτε να δημιουργήσετε ένα νέο issue στο οποίο θα θέτετε το ερώτημά σας. Αν η ερώτησή σας δεν αφορά την εργασία σας, τότε μπορείτε να στείλετε ένα email στον βοηθό e-learning του μαθήματος. Ερωτήσεις που απαντώνται ήδη στο Github θα αγνοούνται. Σε κάθε περίπτωση, ο καλύτερος χώρος για να πάρετε σαφή απάντηση σε ερώτημά σας είναι μέσα στην τάξη.

Βοηθοί μαθήματος: Βαρβάρα Γαρνέλη (Φροντιστήρια στην τάξη), Γιάννης Λευθεριώτης (e-learning): [email protected]

Βιβλίο μαθήματος: 1) Ανάγνωση κώδικα, 2) Πρακτικός προγραμματιστής, 3) Ο Προγραμματισμός της Διάδρασης

Διαλέξεις σε βίντεο: Λογισμικό ως υπηρεσία, Διαδικασία ανάπτυξης λογισμικού, Programming Paradigms, Basics of Scrum, Agile and Project Delivery

Βαθμολογία: 60% project, 40% Τελική εξέταση

Σχετικές σελίδες για την την διδακτική και την ανάπτυξη έργων λογισμικού:

GitHub Guides

How to Use Git and GitHub

Teaching Real-World Programming

Teaching Programming To A Highly Motivated Beginner

A Successful Git Branching Model

Code Academy

Software Studies

sw's People

Contributors

achillesnikolaou avatar anestiskons avatar annakv avatar aorphanou avatar balospa avatar catalinab7 avatar diimitra avatar epidrome avatar gkakav2 avatar gpasxalis avatar gsvic avatar kcholevas avatar kitsopappas avatar kostasrim avatar lefteriskr avatar maliaris7 avatar metos21 avatar midmandy avatar nikonisyre avatar p11pisl avatar p11zbit avatar p12poly avatar p12vito avatar panos-bletsos avatar panos3h avatar pantelisioannou avatar ptrgast avatar skid648 avatar spasoklaban avatar thanasis2 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.