45
www.essensys.ro Mihai Matei, CEO

Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Embed Size (px)

Citation preview

Page 1: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

www.essensys.roMihai Matei, CEO

Page 2: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

1 Essensys Software

Page 3: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice
Page 4: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Misune:

Quality Software. On Time. Every Time.

De ce suntem diferiti?

• Livrăm întotdeauna

• Construim încredere

• Ne pasă de munca noastră

Page 5: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Clienti relevanti

Page 6: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Parteneriate, certificari, asocieri

Page 7: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice
Page 8: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

.Net Framework (4.5-1.0)• C#, C++• Entity Framework, ADO.Net, Linq• ASP.Net MVC, ASP.Net Web Forms, Web Api• Windows Presentation Foundation (WPF)• Windows Communication Foundation (WCF)• Windows Workflow Foundation (WWF)• Windows mobile• Windows Forms & Services• Web Services

Tehnologii Web • HTML5, CSS3• JavaScript, jQuery, Knockout, RequireJS, AngularJs

Tehnologii Cloud• Windows Azure: Cloud Services, SQL Database,

Storage, Virtual Machines, Web sites, Media Services

• Amazon Web Services

Alte tehnologii• C, MFC, ATL• XML, XSLT, XSD, DTD, XPath• DirectX• OpenGL• Wix• DotNetNuke• 3rd party technologies (Telerik, Xceed, Aspose,

Component One, ANTLR)

Sisteme de Baze de date•Microsoft SQL Server (2014 - 2000) - OLTP, OLAP•Analysis Services (SSAS)•Integration Services (SSIS)•Reporting Services (SSRS)•Failover Clustering•SQL Replication (Snapshot, Transactional, Merge)•SQL Server Express Edition

Platforme și Servere•Microsoft Windows 2012 - 2003 Server System•IIS, NLB, Exchange, Active Directory•Microsoft CRM•Microsoft Windows 10/8/7/Vista/XP•Microsoft Share Point Portal Server, Share Point Services•Microsoft BizTalk Server•Microsoft Project Server

Instrumente dezvoltare și proces•Visual Studio 2015 - 2005•Team Foundation Server•Visual Studio SDK•Microsoft Visio•Microsoft Project•Microsoft InfoPath

Page 9: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Bucuresti Brasov

Page 10: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice
Page 11: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice
Page 12: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice
Page 13: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice
Page 14: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

2 Academia de Software

www.AcademiaDeSoftware.ro

Page 15: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Platforma de educatie

• Parteneriate cu Universitati

• Cursuri gratuite pentru studenti

• Donatii pentru educatie

• Concursuri pentru studenti

• Primul tau Job

• Alte proiecte in viitor

Page 16: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Primul tău job @Essensys

2 luni de training intensiv in care vei învăța:• C# si Net Framework

• Visual Studio

• Team Foundation Server

• Design de baze de date

• SQL Server

• ADO.Net

• Entity Framework

• ASP.Net MVC

• Java Script

• HTML & CSS

Page 17: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

2016 - Curs @Universitatea Transilvania Brasov

“Dezvoltarea aplicatiilor mobile iOS si Android cu

Microsoft Azure”

Page 18: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

2017 - Curs @UPB Automatica si Calculatoare

“Dezvoltarea produselor software web & mobile in

viata reala, folosind tehnologii Microsoft (.Net

Framework) & Android (JavA)”

Page 19: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

3 Structura curs si organizare

Page 20: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Organizare

• Comunicare pe Facebook

Grup: “Curs Essensys – UPB Martie 2017”

• Curs gratuit

• Cerem si oferim seriozitate

• Prezenta la fiecare curs

• Asistent ajutor

• Diplome -> maxim o absenta

• Exercitii

• Discutii deschise, intrebari, nu ezitati

Page 21: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Despre curs

• Dezvoltarea unei aplicatii in conditii cat mai

apropiate de viata reala

• Trecem prin toate fazele unui proiect

• Curs Introductiv (10 sesiuni)

• Studiu individual si exercitii

• NU verificam temele (nu avem timp)

• Structura flexibila cu ajustari

• Format deschis

Page 22: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Structura:

1. Introducere – Mihai

2. SQL Server – Sorin

3. .Net Framework & C# - Claudiu

4. .Net Framework & C# - Claudiu

5. Entity Framework - Tibi

6. Introducere web apps – Tibi

7. ASP.Net MVC – Tibi

8. Web API – Ovidiu

9. Android Apps – Ovidiu

10.Android Apps – Ovidiu

Page 23: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Calendar

Curs Essensys Data

1.Introducere Vineri 3 Martie 17:00

2.SQL Vineri 10 Martie 17:00

3.Net Framework & C# Vineri 17 Martie 17:00

4.Net Framework & C# Vineri 24 Martie 17:00

5.Entity Framework Vineri 31 Martie 17:00

6.Intro Web Apps Vineri 7 Aprilie 17:00

Pauza Paste Paste Catolic si Ortodox pe 16 Aprilie

7.ASP.Net MVC Vineri 21 Aprilie 17:00

8.Web.API Vineri 28 Aprilie 17:00

9.Android Apps Vineri 5 Mai 17:00

9.Android Apps Vineri 12 Mai 17:00

Page 24: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Echivalenta cursuri facultate

Curs Essensys Facultate

Introducere Ingineria sistemelor de programareAnaliza sistemelor informatice

SQL Baze de date

.Net Framework & C# Ingineria programariiProgramare OOPProgramare Java

Entity Framework Programare OOP, programare web

Intro Web Apps Programare Web

ASP.Net MVC Programare web cu suport Java

Web.API Programare, OOP

Android Apps Programare, OOP, Programare Java

Page 25: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Echipa

Mihai Matei

Chief Mint Rubber

Claudiu Georgescu

Kendo Taliban

Sorin Grecu

SQL Jedi

Tibi Munteanu

Technical drummer

Ovidiu Ciobancan

Paranoid Android

Page 26: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

4 Arhitectura solutiei

Page 27: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Admin web app ASP.Net MVC (7)

Server API Web.Api (8)

Android App

Java (9,10)Browser App

HTML, Javascript, Json (6)

Business Logic Layer.Net Framework (3,4)

Data Access Layer.Net Framework, C# (3,4), Entity Framework (5)

Database

SQL Server (2)

Client side

Server side

Page 28: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

4 Cum incepe un proiect

Page 29: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Un proiect software e o chestie … complicata

Page 30: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

ClientAnalistVanzari

Arhitect software

Project Manager

Programatori

Testeri

Designeri

Utilizatori

Marketing

IT FurnizorIT Client

Page 31: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Fazele unui proiect

Identificare client potential

Discutii pre-analiza

Ofertare & contractare

Analiza si planificare

Dezvoltare

Stabilizare

Arhitectura & design

Lansare

Mentenanta

Vanzari

Analist, vanzari, arhitect

Analist, vanzari, arhitect

Analist, architect, design, project manager

Arhitect, programatori, analist

Arhitect, programatori, testeri, analist

Acceptanta

Tester, programatori, analisti, client

Client, IT, analisti, architect, vanzari

Client, IT

Client, analisti, architect, programatori

Page 32: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Livrabile

Identificare client potential

Discutii pre-analiza

Ofertare & contractare

Analiza si planificare

Dezvoltare

Stabilizare

Arhitectura & design

Lansare

Mentenanta

Lista cerinte client

Oferta, solutie tehnica, plan de proiect

Specificatie, Macheta, Plan detaliat

Arhitectura, diagrama baza de date, design

Cod sursa, Aplicatie

Acceptanta

Aplicatie stabila, documentatie actualizata

Protocol de acceptanta

Aplicatie in productie

Incidente, change requests, etc.

Page 33: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

5 Specificatii

Page 34: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Specification:

“a detailed description of the design and

materials used to make something”

Specificatie:

“Definire a caracteristicilor carora trebuie

sa le raspuna o instalatie, constructie,

material, produs etc”

Page 35: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Ce inseamna specificatie software?

• Un set de documente (nu unul singur)

• Diferite perspective asupra

sistemului

Page 36: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Business Object Model

Cerinte functionale

Cerinte nefunctionale

Glosar

Cerinte Out of scope

Macheta

Roluri / ActoriDescrierea problemei Obiective

Arhitectura Diagrama bazei de date

Integrari sisteme externe

Care sunt informatiile pe care le va procesa sistemului?

Ce va face sistemul?

Cum se va comporta sistemul?

Design grafic

Arhitectura UI/UX

Design tehnic detaliat

Cum va functiona interfata utilizator?

Procese business

Cerintele Business Matrice trasabilitate

Page 37: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Cum se construiesc?

• Discutii client

• Analiza documente existente

• Interviuri viitori utilizator/beneficiari

• Observare

• Sondaje

• Prototipare (Lo-Fi, Medium-Fi, Hi-Fi)

• Etc

Page 38: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

In ce ordine?

Cerintele Business

Business Object Model

Cerinte functionale

Cerinte nefunctionale

Macheta

Arhitectura

Design grafic

Descrierea problemei & obiective

Page 39: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Instrumente

• Hartie

• Word, Excel

• Visio, Powerpoint

• JustinMind / Axure / Balsamiq / etc.

Page 40: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

5 Macheta

Page 41: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Tipuri de machete

• Low fidelity (hartie)• Foarte ieftin si eficienta

• Foarte putine detalii (incompleta)

• Medium fidelity (tool)• Suficient de ieftina

• Suficient de completa

• Pot lipsi detalii

• High fidelity (aplicatie/tool + grafica)• Scumpa

• Foarte completa

Page 42: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Instrumente

• JustInMind (foarte puternic)

• Axure (foarte puternic)

• Microsoft Visio (puternic dar nu dinamic)

• Balsamiq

• InVision

• InDesign

• Origami

• WebFlow

• Etc. etc

Page 43: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Q & A

Page 44: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

Exercitii:

• Cititi specificatia

• Parcurgeti macheta mobile

• Dezvoltati o macheta folosind JustInMind

pentru aplicatia de administrare (web)

• Ganditi-va la extinderea functionalitatii cu o

singura functionalitate

• Documentati aceasta noua functionalitate si

extindeti documentatia proiectului

Page 45: Mihai Matei, CEO - Academia de Software - Essensys · Echivalenta cursuri facultate Curs Essensys Facultate Introducere Ingineria sistemelor de programare Analiza sistemelor informatice

www.essensys.roMihai Matei, Director General