Bachelor's thesis Information Technology 2015 Bethelehem ...
Bachelor's Thesis Presentation (shortened)
-
Upload
nikita-kurpas -
Category
Documents
-
view
34 -
download
0
Transcript of Bachelor's Thesis Presentation (shortened)
![Page 1: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/1.jpg)
Individual Professional Practice in Tieto Czech s.r.o.
Nikita Kurpas on the position of Software Developer Internship
![Page 2: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/2.jpg)
Contents
● Job description● Brief description of each project● Detailed description of project “Karellen”
○ Goals○ Architecture○ Technologies○ Modules○ Results
● Final notes
![Page 3: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/3.jpg)
Job description
● First month - System Engineer Internship○ Minor code fixes, template coding in XWiki platform○ Only a few tasks related to my position
● Later - Software Engineer Internship○ Primary role - Java developer○ Other roles - JavaScript developer, UI engineer○ Internal and client projects
![Page 4: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/4.jpg)
Projects
● Karellen● NEO Denmark● NEO Norway● TRIP
● Karellen - a monitoring system○ Role: backend developer, frontend developer○ Tasks:
■ Developing backend modules■ Developing GUI module
● NEO Denmark - backend for a mobile operator○ Role: backend developer, frontend developer○ Tasks:
■ Refactorings■ Bug fixes■ Rewriting existent project
● NEO Norway - backend for a mobile operator○ Role: frontend developer○ Tasks:
■ Integrating new technologies● TRIP - doc. search and indexing database and GUI
○ Role: backend developer, frontend developer○ Tasks:
■ Bug fixes■ Developing new features on backend and
frontend
![Page 5: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/5.jpg)
Project “Karellen”
![Page 6: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/6.jpg)
Project “Karellen”Goals
● Monitoring of applications, databases, web servers, web sites...
● Presenting data to the user in a concise way
● Alerting user via Email, SMS, TONE
● Exporting data to XML, Excel, CSV
● Reporting and analysis
![Page 7: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/7.jpg)
Project “Karellen”Definitions
● Snapshot● Entity
● Entity - a monitored “thing”: web server, database, application server, etc…
● Snapshot - state of an entity at some point in time
![Page 8: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/8.jpg)
Project “Karellen”Architecture
● Microservices architecture● Highly modular● Communication: HTTP REST● Modules (what was done):
○ Store○ Configurator + GUI○ Status engine○ Dashboard○ Collectors
■ Sniffers● Each module: 3 tier architecture
○ Presentation tier○ Logic tier○ Data tier
![Page 9: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/9.jpg)
Project “Karellen”Technologies
● Java 8● Spring framework
○ Spring boot○ Spring DI○ Spring MVC
● JPA○ Hibernate ORM○ Spring Data JPA
● JSF○ PrimeFaces
● MySQL
![Page 10: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/10.jpg)
Project “Karellen”Store module
● Responsibilities○ Store snapshots○ Provide a RESTish API to
access them● Architecture: 3 tier
○ Presentation tier■ RESTish
controllers○ Logic tier:
■ Services■ Mappers
○ Data tier■ Hibernate ORM■ Spring data JPA
![Page 11: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/11.jpg)
Project “Karellen”Dashboard module
● Responsibilities○ Present current status of
monitored entities to the user
● Architecture: 3 tier○ Presentation tier
■ JSF views and managed beans
○ Logic tier:■ Services
○ Data tier:■ Status Engine
connector■ Configurator
connector
![Page 12: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/12.jpg)
Project “Karellen”Status Engine
● Responsibilities○ Provide entity status
based on recent snapshots
○ Rate snapshots● Architecture: 3 tier
○ Presentation tier■ RESTish
controllers○ Logic tier:
■ Services■ Mappers
○ Data tier■ Store connector■ Configurator
connector
![Page 13: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/13.jpg)
Project “Karellen”
● Finished at ~75% of planned functionality
● New GUI written from scratch using Material Design and JavaScript
● Client refused to buy● Project status: used internally
Results
![Page 14: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/14.jpg)
Final notes
![Page 15: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/15.jpg)
Practice evaluation
● Work was done thoroughly, in the best possible way I was capable of● I have known or quickly learned the technologies needed to accomplish a
task● I have been promoted to 2 higher grade projects
○ NEO Denmark○ NEO Norway
![Page 16: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/16.jpg)
Personal benefits
● Advanced a lot in Java SE and EE, JavaScript + ECMAScript 6, HTML, CSS, Software Design
● Had intensive trainings from real professionals● Had experience with old, bad and obsolete code● Had experience rewriting projects from scratch and doing complex
refactorings● Was able to communicate daily in English
![Page 17: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/17.jpg)
Final notes
● Project “Karellen” - A+● Project “NEO Denmark” - B● Project “NEO Norway” - B● Project “TRIP” - E
![Page 18: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/18.jpg)
FOR YOUR ATTENTION
THANK YOU
![Page 19: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/19.jpg)
Q&A
![Page 20: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/20.jpg)
Microservices Architecture
● System is broken into multiple component services● Those services are
○ Small○ Independently deployable○ Modular○ Communicate through a well-defined interface
● Decentralized governance● Separate databases (NoSQL or micro-SQL)● Organises around business capabilities
![Page 21: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/21.jpg)
Agile
● Short iterations (1-4 weeks)● Customer Satisfaction● Welcome Change● Deliver a Working Software● Collaboration● Review the Work Regularly● Measure the Progress as per the Working Software
![Page 22: Bachelor's Thesis Presentation (shortened)](https://reader034.fdocuments.in/reader034/viewer/2022052318/589d29401a28abeb478b63cf/html5/thumbnails/22.jpg)
Agile: The Manifesto
● Individuals and interactions over processes and tools
● Working software over comprehensive documentation
● Customer collaboration over contract negotiation
● Responding to change over following a plan