Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 17

Executive summary

The use of a different framework is often essential for medium and large scale web
developments, but is also of interest for small developments. PHP has evolved as the scripting
language the most chosen by developers, which has generated an explosion of different PHP
frameworks. There is a big debate about what the best PHP frameworks are, because the simple
fact is that not all frameworks are built for everyone. Indeed, not all frameworks meet the same
needs, and several frameworks can be used together in certain situations. In this training
symphony is selected as good php framework for web development. Symphony is a complete
framework designed to optimize the development of web applications by way of several key
features. It is written entirely in PHP and it is compatible with most of the available databases
engines, including MySQL, PostgreSQL, Oracle, and Microsoft SQL Server. It runs on different
operating system like Windows platforms. For starters, it separates a web application’s business
rules, server logic, and presentation views. It contains numerous tools and classes aimed at
shortening the development time of a complex web application. Additionally, it automates
common tasks so that the developer can focus entirely on the specifics of an application. To
accomplish the planned training it requires 80,500 Birr.

|Page
Abbreviation /acronym
CMS: Content Management System
HTML: Hypertext Markup Language
HTTP: Hypertext
LCD: Liquid Crystal Digital
MYSQL: My structured Query Language
MVC: Model Viewed Control
MWU: Madda Walabu University
PHP: Hypertext Preprocessor
SQL: Structural Query Language
XML: Extensible Markup Language

|Page
Table of Contents
Executive summary.......................................................................................................................................i
Abbreviation /acronym................................................................................................................................ii
1. INTRODUCTION...............................................................................................................................1
1.1 Project Background...............................................................................................................................1
2. Project Rationale.................................................................................................................................2
2.1 Statement of the Problem.....................................................................................................................2
3. Stakeholders and Target Beneficiaries.................................................................................................3
4. Project Justification.............................................................................................................................3
5. Project Goal and Objectives.....................................................................................................................4
5.1 Project goal........................................................................................................................................4
5.2. Immediate Objective........................................................................................................................4
6. Project Implementation and Management Plan......................................................................................5
6.1. Project Activities...............................................................................................................................5
6.2. Work Plan.........................................................................................................................................6
6.3. Implementation Strategy..................................................................................................................7
6.4. Sustainability....................................................................................................................................8
6.5. Risks and Assumptions......................................................................................................................9
7. Expected Project Results.........................................................................................................................9
7.1. Output..............................................................................................................................................9
7.2. Outcomes.............................................................................................................................................9
8. Project Monitoring and Evaluation........................................................................................................10
8.1. Project Monitoring..........................................................................................................................10
8.2. Project Evaluation...........................................................................................................................10
8.3. Evaluation Criteria..........................................................................................................................10
8.4. Method of Evaluation.....................................................................................................................11
9. Phases of Training..................................................................................................................................11
10. Budget Break Down.............................................................................................................................12
11. Reference............................................................................................................................................13

|Page
|Page
1. INTRODUCTION
1.1 Project Background
In recent years, the PHP programming language has evolved as the scripting language of choice
by most developers; there has been an explosion of upcoming PHP frameworks. These
frameworks for PHP development have multiple benefits, and are one of the most important
developments in the design and IT development practices of the last 20 years. There are several
reasons why a developer would like to choose PHP frameworks, especially because they offer
developers the ability to create more complex, secure and complete web applications faster than
ever before.
PHP frameworks are available in all kinds of shapes and sizes and have targeted developers with
different levels of experience, application needs, hosting capabilities and development time.
The authors [1] declare that the PHP framework facilitates Web programming and makes it
better
Organized in several ways. First, PHP frameworks increase the productivity of programming
because writing a piece of code that usually takes hours and takes hundreds of lines of code can
be done in minutes using built-in functions of the framework. On the other hand, a PHP
framework usually comes with a support team, documentation or important support forums
where users can quickly get answers. The authors [2] emphasize the importance of using PHP
frameworks; they propose a modular workspace, consisting of a set of libraries tools and
conventions that allow focusing on the business logic of the 'application. It also provides a
framework for the application, usually based on the use of the Model View Controller (MVC)
paradigm. This ensures a separation between: the data model that is in charge of access and
requests to the database, the "view", which is a description of the presentation of the data (e.g.
generation of HTML, XML, etc.), and the controller, which implements the business logic by
retrieving the model data to make them available to view [3]. The authors [4], [5] argue that PHP
frameworks have a major security advantage since its users become long-term testers. If a user
finds a security issue, they can notify the infrastructure developer website so that the
development team can fix it [6]. Thus the authors [7] declare that PHP frameworks have features

|Page
that satisfy most web programmers depending on the development style they want. Actually,
there are PHP frameworks with all kinds of features such as security, robustness, ease of use.

However, choosing a PHP framework introduces many requirements and complexity, as some
Development habits will have to be set aside when it is adopted. Thus, although it is supposed to
improve the productivity of the user's developments, there is always a phase during which the
cost is greater than the gain: this choice must be carefully considered.
There are many Frameworks that are popular and widely used for development written in
different languages that are built around the same structuring facilitates the learning and
understanding of a Frameworks, among them the PHP frameworks, including Laravel, symfony,
etc. which are the most used by the developers. Each of these two frameworks has advantages
and provides a specific implementation that should be taken into account to make its choice [2].
The author [2] claims that the Symfony framework is the best for complex enterprise-level
applications, and to quickly and efficiently enrich the institution's information system. This is
why he chose Symfony for the development of his project; which refers to an application to
simplify the procedure of archiving the conference proceedings of researchers.

2. Project Rationale
2.1 Statement of the Problem
Web application frameworks were getting popular at that time, and the need for a full featured
Framework in PHP was high. However, most web applications are created from scratch by using
only core php, this works only for simple website and this lead to time-consuming and difficult
task with little to no re-use of the development effort shared amongst developers.
Whether you are a PHP expert or a newcomer to web application programming, you will be able
to use framework for web design. The main factor in deciding whether or not to do so is the size
of your project. If you want to develop a simple website with five to ten pages, limited access to
a database, and no obligations to ensuring its performance or providing documentation, then you
should stick with PHP alone. You wouldn’t gain much from a web application framework, and
using object orientation or an MVC model would likely only slow down your development
process.
On the other hand, if you develop more complex web applications, with heavy business logic,

|Page
PHP alone is not enough. If you plan on maintaining or extending your application in the future,
you will need your code to be lightweight, readable, and effective. If you want to have fun and
develop fast, then PHP alone will probably be disappointing. To solve this problem, this training
implemented a web application framework called symfony that simplifies the process of
developing web. Symfony offered a compelling solution due to its impressive code quality and
significant amount of documentation.

3. Stakeholders and Target Beneficiaries


Madda Walabu University College of computing staff and students are the main stakeholders to
be included in this training project. The college director facilitates complete list of graduate
students from the three departments (computer science, Information systems and Information
Science) those who are selected to participate in the training and MWU ICT e-learning center
will provide lab rooms. Owners of the project accomplishing the project according to time frame,
reporting, the project progress to college of computing and providing training for the trainees
associated with facilitators, participants and materials.
Madda Walabu University College of computing graduate students are the target beneficiaries
from this project. Additionally, this project will indirectly benefit the lab technicians currently in
the college of computing and joining the college also all nearby communities who get service
form those stakeholders.

4. Project Justification
The term "framework" in the case of Web frameworks, is a set of libraries and tools that can
Improve the design of Web applications, bringing additional features while adding rigor in their
development. A framework also allows automation of tasks because it integrates a number of
routines implemented natively. Using a framework is therefore guaranteed to have a coherent
architecture, where the rigor of development is paramount. It is also a reflection on the future,
since a light, optimized and consistent code is much easier to maintain and improve than the too
famous "code soup" [8]- [9]. Framework facilitates Web programming and makes it better
organized in many ways. First of all, frameworks increase programming productivity because
writing a piece of code that usually takes hours and takes up hundreds lines of code can be done
in minutes with the help of framework built-in functions. Secondly, widely used framework has a
major security advantage since its users become long-term testers. If a user finds a security

|Page
problem, he can notify about it on the framework developers website so that the developer team
would be able to fix it. Thirdly, often most popular frameworks are free and since they help the
developer to write code faster the final cost will be smaller. Fourthly, a framework usually comes
along with a support team, documentation or large support forums where users can quickly get
answers. There are various open-source technologies currently in use-libraries, Frameworks,
APIs, etc. The use of Frameworks stems from the need to quickly develop large applications, by
promoting code reuse, testing and changes to an application. There are many Frameworks that
are popular and widely used for web development written in different languages that are built
around the same structuring facilitates, the learning and understanding of a Frameworks, among
them the PHP frameworks, including symfony, Cakephp, Zend, etc. which are the most used by
the developers. Each of these frameworks has advantages and provides a specific implementation
that should be taken into account to make its choice.
Symfony framework is the best php framework.it is a leading PHP framework to create web
applications and websites. Symfony is a reliable and high performing framework developed from
Sensio Labs. As a developer using this framework, you will enjoy the following benefits;

 High performance as a result of Bytecode caching.


 Reusable PHP libraries assisting you in tasks like routing, authentication, tempelating
and many others.
 Excellent support system.
 Easy to use and maintain.
 Aid faster web creation
 A stable and well-documented framework applications,

5. Project Goal and Objectives


5.1 Project goal
The main objective of this project is to provide training on web development by using symfony
framework for MWU College of computing Graduate students
5.2. Immediate Objective
 To introduce the concept of symfony and train them the most important features of symfony

 To teach trainers about symfony framework practically starting from installation to web design

|Page
 To give the trainers the best clue on how they can develop web using symfony frame work

 To train the trainers how to configure and deploy symfony framework

 To make sure the trainers got best understanding of symfony framework for web development

6. Project Implementation and Management Plan


6.1. Project Activities
Objective Activity Responsible
bodies

To introduce the concept of symfony and train  Introduction Project owner


them the most important features of symfony  Identifying Components
 Identifying Language
 Identifying template
To teach trainers about symfony framework  Introducing environment Project owner
practically starting from installation to web design  Identifying System
requirement
 Installing
To give the trainers the best clue on how they can  Creating project Project owner
develop web using symfony frame work  Running the project

To train the trainers how to configure and deploy Project owner


symfony framework  Configuring
 Deploying
 Testing
To make sure the trainers got best understanding of  Feedback Project owner
symfony framework for web development  Lab works
 Question and answers

|Page
6.2. Work Plan
Activity Month Responsible body
December January February

1. Arrangement of facilitators Project owner

Proposal preparation and submission Project owner

Identify the trainers/facilitators Project owner

Fix schedule of contents/ set training Project owner


dates

Prepare necessary logistics (manual) Project owner

Review trainers guide. Update materials Project owner

Finalization preparation of manual Project owner

Providing training Project owner

Follow-up participants Project owner and college


of computing
Report writing on the outcome Project owner

2. Arrangement of participant Project owner

Identify the target participants Project owner

Send invitation on letters for department Project owner

Follow up invitation on letters Project owner and college


of computing

|Page
Prepare registration on sheets Project owner

Confirm participant attendance Project owner

3. Arrangement of material, venue etc Project owner

Arrangement of venue for training room Project owner and college


of computing
Prepare internet, computers, LAN cables Facilitator and project
and projector
owner

6.3. Implementation Strategy


The project will be implemented in the laboratory with direct contact with the trainers and the
participants. The computing college will supervise and control the entire process. The training
will be delivered with in consecutive 12 days in madda walabu university. Within rough process
the project starts from the basic theoretical concepts of framework, the need for this technology
in the market and in the service sector. The problems to be solved using web development; the
real world experiments, motivational backgrounds and business earnings to increase the interest
of our trainees. The technologies in the world that are currently in use for dynamic and static
website using different php framework is briefly described.
Four trainers and three facilitators from the college, in addition to this project owner will be
selected from computing college staff members of Madda Walabu University based on their
experience of web design and other concepts.
To achieve the stated objective, the training will incorporate training manuals, practical lab
bundles (computer) power point presentation, group discussion, LCD projector and experience
sharing, giving appropriate training by trainers and giving some workout. All software packages
those are appropriate for each class of trainee will be prepared by the team. On the other hand, to
successfully implement and giving applicable and productive training for the trainees, the
training following
I. Presentation: description of the entire training, introduction to the objective and basic
concepts of the manual are delivered this way.

|Page
II. Practical session: every session has a practical class. All software is stated by hand from the
very beginning to the advanced concepts. With the help of internet all concepts presented will be
implemented.

III. Tutorial: - sample projects are done together with the trainees and trainers for a better
understanding.

IV. Evaluation: different evaluation method is given for the trainers to know their skill
developed during this training.
6.4. Sustainability
The goal of a framework is to allow designers and developers to focus on building the unique
features for their project, rather than re-inventing the wheel by coding common, familiar features
found across many websites and web applications. A framework can be considered a pre-built
template/structure that handles most of the repetitive or common features. As a result, unlike a
CMS, a framework will probably not have a user interface (although this is not always the case,
as Django provides an administration interface). The Symfony project is known for providing
high quality software. Since 2011 the Symfony framework has been a trusted base for creating
web applications and the various components have been adopted by numerous popular Open
Source projects like Laravel and phpBB. At time of writing the Symfony project maintains 34
individual PHP Components and a Full Stack Framework. The components are individual
functional bits that can be adopted to PHP applications using Composer and the auto loading
mechanism. The Framework is a mix of code and principles tying the components to form a base
for creating custom applications. The Framework offers common functionalities like
configuration, authentication, authorization, caching and form handling.

In addition to software, the Symfony site states that it is also a philosophy of "Embracing and
promoting professionalism, best practices, standardization and interoperability of applications".
This may sound grand or pretentious at first, but it holds the key to why Symfony can remain
relevant in the future as well. By embracing standards and interoperability between other
members in the PHP ecosystem, Symfony itself becomes more valuable for the larger
community. With competing projects like Bolt CMS, Drupal, eZ Platform all sharing the same
components for HTTP communications, Symfony turns from a benefactor to a partner in
symbiosis.

|Page
After finalizing the training, the project owners will advise computing college the students in
web development to develop their skill gradually by trying over their own projects, hence after it
will get success through achieving the proposed objectives efforts will be applied so spread out
the encouraging experiences and positive results obtained from what they understand from the
training to start their entrepreneurship or business in their life

6.5. Risks and Assumptions


Risk Impact probability Mitigation
Internet Unable to access the firebase console Less Work on offline software’s
when it happen
Electricity Interruption on presentation session Medium Using UPS

Schedule Shift the schedule of the project Less Arrange convenient schedule
based on the consent of
stakeholders

7. Expected Project Results


7.1. Output
After completion of the project the project team expects the following results
Graduate students of computing college understand developing web using symfony framework

Understand the advantages of using symfony framework.

Got the ability to install and work with php framework and others components.

Able to have the skill of using the symfony information like symfony security, routing, database
configuration, validation, etc.

7.2. Outcomes
The students have the skill and confidence to teach other students a practical skill of web
development using php framework(symfony)

The students will be able to build their own web for market using symfony.

|Page
The students can have the capacity to integrate symfony with php and others components

They can be able to earn money or start business using php framework in features.

8. Project Monitoring and Evaluation


8.1. Project Monitoring
Each activity of the project along with achievement of the intended objectives will thoroughly be
followed up by project owner. Besides this, college of computing directorate will monitor the
project through enforce the project owner to prepare report on the ongoing status of the project,
as required report will be prepared and submitted to it as per the schedule. The monitoring and
evaluation outcome report that states; the trainee’s knowledge and skill states before and after the
training and future improvement suggestion will be delivered to the concerned stakeholders and
software developers.
College of computing monitor the activities of the project owners all days whether they going
with their schedule or not, check the manual or equipment for trainees are well prepared and
enough for the training. Each department facilitators will supervise the trainees daily whether
they student follow the training according to the training schedule of their department
8.2. Project Evaluation
The project evaluation is periodic assessment of the relevance, efficiency, effectiveness, impact;
visibility and sustainability of the project in the context of how much of the planned objectives
are being achieved accordingly. Effective training ensures that the students’ skill and capacity on
web development using symfony framework applied in shortest possible time test will be carried
out at post training to evaluate the training. Effectiveness of the training will be evaluated by
conducting pretest and post-test mechanism
8.3. Evaluation Criteria
This will help to evaluate student, on symfony framework to develop their own web application.
Activities to reinforce and support the training could include Sharing knowledge and skill learnt
with the students, Immediate opportunities for practice on how web be developed. By providing
theoretical and practical exam that fully check the skill level of trainees to work in different
organizations and sufficient for self-confident to develop web application and website.
The project will also be evaluated to measure weather the proposed result is achieved as planned.
Madda Walabu University College of computing can also evaluate the success of the project
based on the regularly submitted report according to the planned schedule

|Page
8.4. Method of Evaluation
The methods will depend the ways of in which depend on the ways of in which monitoring and
following up the performance of the trainees for implementation. In addition to this the following
methods will be used. Results from the assessment on the training course will be assessed
accordingly. Self-assessment will be held by the trainee immediately following the training.
Discussion made after the training with the trainee or supervisor. Successful completion of the
training will be evaluated using questionnaire immediately following the training

9. Phases of Training
The projects have three phases: In the first phase student will able to discuss basic concepts of
php framework specifically symfony framework, in the second phase install and configuration of
system requirement for symfony framework will be done. Thirdly, student develop their own
web using symfony framework with other component. From the given 10 days each have the
appropriate time division and content cover

|Page
10. Budget Break Down
No Description Measurement Quantity Number Unit Total cost in
of days price birr
Technical cost

1 Trainer 3 4 3000 36,000


Facilitator 2 5 1000 10,000
Supervisor 1 20 2000 4,000
Sub total 50,000
2 Training manual cost
Manual preparation Page 165 - - 12,000
Sub Total 12,000
3 Refreshment cost pack Total number
of
undergraduate
students
Highland Water/soft drink 25 270 10 60 `15,000
Cookies 10 270 10 35 3,500
Total 80,500
Grand Total 80,500

|Page
11. Reference
[1] N. Prokofyeva and V. Boltunova, “Analysis and Practical Application of PHP Frameworks
in Development of Web Information Systems,” Procedia Comput. Sci., vol. 104, pp. 51–56,
2017.
[2] B. Ninassi and S. Panay, “Les frameworks de développement web : comment enrichir
rapidement et efficacement système d ’ information de votre établissement,” pp. 1–8, 2011
[3] S. Subramaniam, S.-C. Haw, and P. K. Hoong, “Bridging XML and Relational Databases: An
Effective Mapping Scheme based on Persistent Labeling,” International Journal of Electrical and
Computer Engineering (IJECE), vol. 2, no. 2, pp. 239–246, 2011.
[4] R. Das and D. Prasad Saikia, “Comparison of Procedural PHP with Codeigniter and Laravel
Framework,” Int. J. Curr. Trends Eng. Res. Sci. J. Impact Factor, vol. 2, no. 6, pp. 42–48, 2016.
[5] D. R. Lakshmi and S. S. Mallika, “A Review on Web Application Testing and its Current
Research Directions,” Int. J. Electr. Comput. Eng., vol. 7, no. 4, p. 2132, 2017.
[6] V. Narayana, P. Premchand, and A. Govardhan, “Performance and Comparative Analysis of
the Two Contrary Approaches for Detecting Near Duplicate Web Documents in Web Crawling,”
International Journal of Electrical and Computer Engineering (IJECE), vol. 2, no. 6, pp. 819–
830, 2012.
[7] F. Sierra, J. Acosta, and J. Ariza, “Estudio y análisis de los framework en php basados en el
modelo vista controlador para el desarrollo de software orientado a la web,” Rev. Investig. y
Desarro. en TIC, vol. 4, no. 2, pp. 1–13, 2013
[8] L. Blanc, E. Gouleau, O. Mansour, T. Rivoallan, V. Lemaire, and X. Lacot, “Frameworks
PHP pour l’entreprise,” pp. 1–38.
[9] V. Petrosyan, “A Guide to Popular PHP Frameworks for Beginners | SEJ,” 2016.

|Page

You might also like