WEP Presentation for non-ITx - WordPress.com

creaturewoodsInternet και Εφαρμογές Web

8 Δεκ 2013 (πριν από 3 χρόνια και 7 μήνες)

91 εμφανίσεις

WEP
Presentation

for
non
-
IT

2

1.
Steps and roles in software development

2.
Skills developed in 1
st

year

3.
What can do a student in 1
st

internship

4.
Skills developed in 2
nd

year

5.
What can do a student in 2
nd

internship

6.
Difficulties the students meet

7.
What they usually like the most

8.
Comparison with previous batches

Agenda

Development

3

Software Development

Customer:
express his needs

Analyst: specify
functional requirement

Architect: design a
technical solution

Developer 1: Develop

part 1 of the solution

Developer:
integrate

Tester:

test
functionalities / usability

Customer:
acceptance tests

Developer n: Develop

part n of the solution

Developer 1: Test

part
1 of the solution

Developer n: Test

part
n of the solution

4


Learn basis of programming and algorithms


C Language


Learn how to do a basic web page


HTML / CSS


Design with Photoshop and Flash


Learn what is
DataBase

and how to use


Learn the different steps of a development project


Basic of analysis


Functional tests


Develop students’ autonomy: Self
-
learning


Critical quality for a developer

First Year

5


Learn basis of programming and algorithms

C Language


Can do:


Can do small and medium application with C language


Understand clearly with algorithms to deal with problem


Difficulties:


Don’t understand with C language


The first programing language to learn.


First Year

6


Learn how to do a basic web page


HTML / CSS


Design with Photoshop and Flash


HTML :


Create static website/ web template


Edit template (UI) for customer


Create with standard HTML code


Example:
http://soungeng.zzl.org
/



Photoshop and Flash

Can do with Photoshop


Designing template, banner, label, logo, leaflet , broacher,…

Can do with Flash


Flash banner, logo animation, welcome page animation,
advertising block in web,...

First Year

7


Learn what is
DataBase

and how to use



What is a
DataBase

?


Used to store data from applications


Example: A forum


When a user post a message, we need to store it


Need to retrieve the messages to display to the users


The application needs also to store users’ information (login,
password, nickname, photo…)


Advantages


Storing and retrieving data may be complex, so it is difficult
to do it by ourselves


A
DataBase

do it with good performance


A
DataBase

can be accessed by multiple users

First Year

8


What a student can do with Database ?


Analysis database with ER modeling


Create small and medium database system


Can covert from physical to logical database, and logical to
physical database.


Create application with VBA language.

First Year

9


Learn the different steps of a development project


Basic of analysis


Functional tests



They will be a tester or user that use the black box system to
find the bug or error.


Report bug error to developer or manager.


Use the document testing to test by follow stops

First Year

10


Develop students’ autonomy: Self
-
learning


Critical quality for a developer


Technology is evolving quickly


When we develop a web site or an application, we do not do
everything, instead we use things developed by other people


A developer must be able to quickly learn how to use it


With Internet many things are shared, and the things a company is using
change often from one company to another


A developer does not need to know all technologies (there
are so many..), but he must be able to learn a new one easily

First Year

11


Learn basis of programming and algorithms


C Language


Learn how to do a basic web page


HTML / CSS


Design with Photoshop and Flash


Learn what is
DataBase

and how to use


Learn the different steps of a development project


Basic of analysis


Functional tests


Develop students’ autonomy: Self
-
learning


Critical quality for a developer

First Year

12


What a student can do during his 1rst internship ?



Apps with access (VBA)


Small apps with C programming


Tester & bugging report


Design template


Web page with animation


problem solving


Prototype graphic diagram


Database analysis

First Year

13


Continue do develop student’s autonomy



Learn about tools we use to work in team



Learn Object
-
Oriented programming with Java



Learn several technologies to build web sites or
web applications



Virtual Company


Second Year

14


Learn about tools we use to work in team



Eclipse and Visual Studio


Programming application


Bug Tracking System


Used to follow issues between customer/tester/developer


Similar to
HelpDesk


SVN: Version Control System


Used when several developers are working on the same files

Second Year

15


Learn Object
-
Oriented programming with Java



Explaining what is OOP is out of scope of this presentation


Why Java ?


Widely used to develop desktop applications, but can also be
used for web development


Easy language to learn OOP


Why to learn OOP ?


Almost all the recent languages are OOP

16


Learn several technologies to build web sites or
web applications



A web application is usually composed of 3
elements:

Second Year

Client

(like
FireFox
)

Server

DataBase

Store and retrieve data

Ask for web pages

17


Client: Language HTML


All web pages are using HTML


Basic scenario:


You go to a web site


FireFox

asks the server for the HTML file of the web site


FireFox

displays the page


You click on a link


FireFox

asks the server for the HTML file corresponding to
the link




Second Year

18


Client: Language JavaScript


In previous scenario, each time the user does


an action, the browser asks the server for a


new page


New scenario: you are on cistrain.org and you put the
mouse on a menu, the menu is displayed


In this case, if the browser asks a new


page it will be very slow and not nice


for the user


For this we need to modify the web


page directly in the browser, without


interaction with the server


This is done with JavaScript


JavaScript program can be embedded in HTML page


Second Year

19


Client: Language JavaScript


Because we don’t want to do the same things


all the time, we use
frameworks

containing


programs to do common things


Display a menu


Display a popup window





Our students learn the framework
JQuery


Widely used

Second Year

20


Server


In previous scenario, the server only stores


HTML files, and send them to the client on demand


It means the web page is always the same


Very often, the content of a web page depends on several
parameters:


The access rights of a user


In a forum, a user which is not logged can see the messages, but not
post a new message


Data


In a forum home page, the content of the page contains all the
discussions, so each time a new discussion is started the content of the
page changed


This is why we need, on the server side, to build web
pages depending on the different parameters

Second Year

21


Server


It means, on the server, we do not have web pages


directly stored, but for each page we have a small


program capable to create the web page


Those programs can access to a
DataBase

to retrieve
data and use them in the web page


Different languages


PHP: free, widely used because simple, efficient and do not
need to install a lot of things to work


ASP.NET: licensed, more complex, more adapted for large
applications, better performance


JSP: works with Java language, usually used when the server
works with Java applications

Second Year

22


Server: what can do our students ?


Develop web sites or web applications with PHP


and
MySQL

DataBase


They

can

develop

dynamic

website/web

apps

connect

with

MySQL

database,

for

several

kind

of

website

such

as

personal

web,

form

web

entertainment

web,

web

apps,

etc
..


Ex
:

http
:
//
icommunity
.
t
15
.
org

create

by

Mr
.

Ekk

sangha


Second Year

23


Server: what can do our students ?


Develop web applications with ASP.NET and C#




Dynamic website or desktop apps that use asp.net with C#
connection with database
Ms

SQL server.

Second Year

24


Server: what can do our students ?


Develop web sites with CMS


What is CMS ?


Content Management System


Students know
Joomla

and
WordPress


Widely used, they are using PHP language

Ex:


Student develop website in high level like create
component, module, template



Deployment and configuration

Second Year

25


Virtual Company


Group exercise: very important to work in team


Use tools


Experiment repartition of tasks


Evaluation of the time needed to do a task


With virtual customer


Experiment relation with customer


How to explain technical choices


How to explain what is possible/not possible with allocated time


How to make the customer happy


Learn by doing mistakes


The goal of this exercise is not that everything is going well


We want students make mistakes


Presentation at the end of
the project

26


What a student can do during 2
nd

internship ?


Create web dynamic and standard UI (PHP,
C#.Net
, …)


CMS development (
Joomla
,
Wordpress
, Typo3…)


Tool for development in term (SVN…)


Self learning skill


Software development lifecycle


Web/Apps designing UI


Web animation


Desktop Apps, Mobile apps

27


Difficulties:


Communication


Learning New technology


Problem solving


Networking skill


No job to do

Difficulties the students
meet

What they usually like
the
most


What they like:


Web apps than desktop apps


Web developer with CMS


Developer and tester


Copyright © 2007
-

CIST

28

29


Comparison with previous batches we found that it
need far different to each other. For the new
generation not so many problem with new
technology when they go to company.

Comparison with
previous
batches