SluitenHelpPrint
Switch to English
Cursus: 202101028
202101028
Data & Information
Cursus informatieRooster
Cursus202101028
Studiepunten (ECTS)12
CursustypeOnderwijseenheid
VoertaalEngels
Contactpersoondr. F.A. Bukhsh
E-mailf.a.bukhsh@utwente.nl
Docenten
VorigeVolgende 4
Examinator
dr. F. Ahmed
Docent
Y.d.C. Barrios Fleitas
Docent
N. Bouali
Examinator
dr. F.A. Bukhsh
Contactpersoon van de cursus
dr. F.A. Bukhsh
Collegejaar2021
Aanvangsblok
2B
OpmerkingOnly B-TCS/BIT students can register via Osiris. Others need to contact modulesupport-tcs@utwente.nl
AanmeldingsprocedureZelf aanmelden via OSIRIS Student
Inschrijven via OSIRISJa
Aantal onvoldoende toetsen1
Cursusdoelen
After successful completion of the module student is able to …(Agile software engineering)
E1.    …develop software following Agile principles: SCRUM meetings, task boards, burn-down charts, frameworks, etc.;
E2.    …apply requirements-based testing;

(Requirements engineering)
R1.    …identify business requirements and translate these to user stories;
R2.    …specify functional and non-functional requirements;
R3.    …prioritize requirements in collaboration with various stakeholders;
R4.    …design a UML class diagram;
R5.     …systematically design web based applications using UML;

(Structured data)
D1.    …derive a logical database schema from a UML class diagram;
D2.    …identify functional dependencies and use these to systematically normalize a database to BCNF;
D3.    …formulate questions and translate these to SQL queries;
D4.    …apply SQL triggers in simple cases;
D5.    …identify transactions and explain the effect of different isolation levels on concurrency;

(Web programming)
P1.    …design and implement complex multi-tier web applications;
P2.    …use repositories and version management;
P3.    …integrate web applications with existing (REST-ful) services;
P4.    …build user interfaces with frameworks for HTML, CSS, and javascript;
P5.    …explain the consequences of server-side vs. client-side scripting, servlets, Ajax, JSP, Web frameworks, etc.;

(Semi- and unstructured data)
U1 … apply basic techniques for handling XML/JSON data in an XML database using XML standards such as XPath and XQuery
U2 … apply basic techniques for handling XML/JSON data in a relational database using extensions to the SQL standard, such as SQL/XML and JSON types, functions and operators
U3 … understand the basic theoretical principles behind tree data structures and indexing of tree data
U4 … understand the basic theoretical principles behind information retrieval and apply basic full text querying support in XML and relational databases

(Security)
S1.    …protect applications against unauthorized access;
S2.    …project applications against (SQL-)injection and cross-site scripting;


(Academic skills: Project skills)
A1… apply the Belbin team role model
A2… apply the core quality quadrant model of Daniel Ofman
A3... effectively give and receive feedback
A4... effectively resolve team conflicts
A5… explain the concepts of fraud and plagiarism and behave responsibly as a professional concerning these aspects
Inhoud
In the module “Software systems” students have learnt to solve complicated software problems by means of stand-alone applications. In this module they learn and get experience in the design, implementation, and testing of complex multi-tier systems, using standard tools like database management systems, scripting frameworks and existing services (RESTful services). In this module, data (structured and semi-structured) play an important role. This comprises classically structured data in databases as well as obtaining data from social media and other web resources. Security will be explicitly dealt with.
A large project for an external client will be carried out by means of agile methods. As a consequence, students will gain experience in dealing with various stakeholders. Team skills are explicitly addressed as Academic Skills.
The mathematics in this module is concerned with probability theory.

Prerequisite knowledge
Programming: Core concepts of imperative programming and object-oriented programming; being able to write software of average size (around ten classes) in Java. If you have adequate programming experience, but not in Java, you should additionally familiarize yourself with Java syntax and a Java software development environment like Eclipse.
Computer networks: Understanding the basic working of internet applications and protocols like HTTP.
Databases: No prerequisite knowledge required, but if you have no experience with elementary database concepts and data modelling, some extra effort is required to catch up.
Mathematics: No prerequisite knowledge required, but elementary knowledge of Set Theory and Mathematical Logic is helpful for understanding query languages.
 
For further details please contact the module coordinator.
Voorkennis
See description of module contents
Participating study
Bachelor Bedrijfsinformatietechnologie
Participating study
Bachelor Technical Computer Science
Module
Module 4
Verplicht materiaal
-
Aanbevolen materiaal
Studiemateriaal
Study materials, such as parts of books and articles, as well as (references to) online materials will be made available on Canvas
Werkvormen
Colstructie

Hoorcollege

Practicum
AanwezigheidsplichtJa

Presentatie(s)
AanwezigheidsplichtJa

Project begeleid
AanwezigheidsplichtJa

Project onbegeleid
AanwezigheidsplichtJa

Zelfstudie geen begeleiding

Toetsen
Web Programming and Requirements

Database

Semi-structured Data / Security

Project

Additional Requirements

SluitenHelpPrint
Switch to English