21
Welcome to the 3 rd Junior Session Prepared by Eslam Mohammed Diaa El-Din Twitter : @eslam_elahlawy [email protected]

Welcome to the 3 rd Junior Session Prepared by Eslam Mohammed Diaa El-Din Twitter : @eslam_elahlawy [email protected]

Embed Size (px)

Citation preview

Welcome to the 3rd Junior Session

Prepared by

Eslam Mohammed Diaa El-Din

Twitter : @eslam_elahlawy

[email protected]

Agenda ! Agile .. ?

Scrum .. !!

Open Source Projects !!

Revision Control◦ GIT

◦ Mercurial

Installing Mercurial on your system

Mercurial Commands

Example of Agile Development .. “Web2py”

MVC

Agile !!

- are methods break tasks into small increments

with minimal planning ..

and do not directly involve long-term planning !!

- Software Development Life Cycle (SDLC) ..

More a bout agilehttp://en.wikipedia.org/wiki/Agile_software_development

Software Development Life Cycle

Analysis ..

Design ..

Implementation .. “code”

Testing

Agile methods

Agile Unified Process (AUP)

DSDM

Extreme Programming (XP)

Feature Driven Development (FDD)

Scrum

…..

Scrum !!

Other slides !!◦ It’s Name : Redistributable Intro To Scrum

More about scrum

http://en.wikipedia.org/wiki/Scrum_(development)

Open Source Projects

Before we talk about Open Source Projects , we need to know

What is the meaning of the word ”Open Source” ?

About Revision Control .. is the process of managing multiple versions

of a piece of information.

In its simplest form, this is something that many people do by hand :-◦ every time you modify a file, save it under a new

name that contains a number, each one higher than the number of the preceding version .

Examples : GIT . Mercurial .

GIT !!

I will leave it forMohamed Gamal’s Session

@ CAT Scope 11http://catreloaded.net/scope/2010/05/mohammed-gamal/

Mercurial ..

is a cross-platform , distributed revision control tool for software developers.

It is mainly implemented using the Python programming Language .. written in C

Mercurial was initially written to run on Linux , Mac and windows .

Why Choose Mercurial ? It is easy to learn and use.

It is lightweight.

It scales excellently.

It is easy to customize.

Installing Mercurial on your system

Linux :◦ Debian :

apt-get install mercurial

◦ Fedora Core : yum install mercurial

◦ OpenSUSE : yum install mercurial

….

Installing Mercurial on your system ..

Solaris :◦ Sun FreeWare , at http://www.sunfreeware.com

Windows :◦ Mercurial for Windows at

http://mercurial.berkwood.com

◦ This package has no external dependencies; it “just works”.

Getting started !

To begin, we'll use the hg version command to find out whether Mercurial is actually installed properly.

◦ $ hg version

Mercurial Distributed SCM (version -)

Copyright (C) 2005-2008 Matt Mackall <[email protected]> and others

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Mercurial Commands !!

Most known commands :

◦ $ hg commit … On your Local Machine

◦ $ hg pull … Take the latest code on server

◦ $ hg merge … when there are an error with others

◦ $ hg push … So others can see your “working code” !

Mercurial ..

Example of Agile Development

Web2py

is an open source web application framework . Its primary goal is to support agile development.

Web2py is written in the Python language and is programmable in Python.

Using MVC technology

More about Web2pyhttp://en.wikipedia.org/wiki/Web2py

MVC !!M = Model

V = View

C = Controller

More about MVChttp://en.wikipedia.org/wiki/Model-view-controller

References

http://en.wikipedia.org/

hgbook-en

web2py_manual