Nothing Special   »   [go: up one dir, main page]

Lesson 17 - Develop Website Backend System

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

age 1 of 22

Lesson 17 – Develop Website Backend System (Part 1)

Objectives:
1. Determine and discuss project requirement.
2. Identify the factors to consider in choosing a server.
3. Identify the hardware specification for Web Server.
4. Apply drafting a project plan.

Content:
Project requirements are discussed and determined
Before building your website or app, there is an important step you need to take: choosing the right web
server.

Factors to Consider When Choosing a Server

Source: Google.com

Without further ado, let’s explore several factors to consider when selecting a reliable web server for
your project.

1. Website Type
age 2 of 22

To choose the right web server, first determine the type of website you want.
If you work for a client, ask them about their needs to avoid selecting the wrong server and creating
confusion
.
For simple websites with few pages, a basic server is sufficient.

These sites use minimal resources and do not require databases or special software.

For complex websites like online stores or frequently updated blogs, a server capable of handling
multiple tasks is necessary.

You may need to use databases for data storage and retrieval, and employ scripts for dynamic page
generation.

Think about the functionality of your website, too.

Does it involve complex tasks like managing user accounts, processing payments, or storing a large
amount of content?

Your answer will guide your choice of server.

2. Expected Traffic Volume

Once you figure out the type of website you want to build, choose the optimal web server for the
expected monthly traffic.

Personal blogs or small business sites typically start with low traffic, ranging from a few hundred to a
few thousand visitors per month.

If you’re making an online store or a web app with many users, expect thousands or even millions of
monthly visitors.

To effectively manage this traffic and ensure smooth operations, a robust server solution is crucial.

Virtual private server (VPS) and cloud hosting can be ideal choices for your needs.

3. Database

For sites that store and retrieve frequently changing data like user accounts or product lists, a database
is likely needed.

Some common use cases for databases include e-commerce websites, news sites, web applications that
handle user registration or login, and online forums or social platforms.

If your project fits these categories or has similar needs, choose a web server that has database
functionality.
age 3 of 22

4. Project’s Growth

Consider how your server may need to grow and adapt in the future.
Think about adding new features, integrating with other systems, or accommodating a larger number of
users.

Those things will determine how scalable your server should be.

If you start with a simple website but plan to add e-commerce or a content management system later
on, your server needs to be capable of handling the extra features and increased traffic.

Find the different ways web servers can handle growth.

Certain servers are made to effortlessly manage increased demand, with features like built-in load
balancing, clustering, or the ability to easily add more resources when needed.
Also, make sure to pick web servers and technologies that have strong community support.

This way, your project can benefit from frequent updates, security patches, and new features.

5. Programming Languages

You probably already have an idea of what kind of website or app you want to create.

Now, it’s important to figure out which programming languages will be best for your project.

Each programming language has its own strengths in areas like web development, data analysis, or
mobile app development.

To find the best match for your project, explore different web development languages.

Research the ecosystem around each language you’re considering.

Check the availability of libraries, frameworks, and tools to enhance your development process
.
What if you’re not the one handling the technical side?

Simply communicate with your developer about the desired functions for your website or app.

6. Operating System Compatibility

Another tip is to ensure that the web server is compatible with the chosen operating system for your
project.

Apache and Nginx are well-known web servers that work on various platforms such as Linux, Windows,
and macOS.

But certain software may require specific operating systems or perform better on certain platforms.
age 4 of 22

Matching the web server’s operating system with the team’s knowledge can make it easier to set up,
maintain, and fix issues.

Also, make sure the operating system is compatible with any other software or tools you intend to use
with the web server.

How to Choose the Right Web Server

Now that you know the specific needs of your project, let’s see how you can find the ideal hosting plan.

1. Research Hosting Options

Web hosting is a service that stores your website on a server, so it becomes accessible to internet users.
Generally, there are several types of hosting options:

 Shared hosting: Multiple websites are hosted on the same server and share its resources,
including CPU, RAM, and storage space. This is a cost-effective option suitable for small websites
with moderate traffic.
 Virtual private server (VPS) hosting: By dividing a physical server into multiple virtual servers,
each website gets dedicated resources. VPS offers greater control and flexibility compared to
shared hosting.
 Dedicated server hosting: A single server is exclusively dedicated to hosting a single website or a
group of related websites. This option offers maximum performance, customization, and
security but comes at a higher cost.
 Cloud hosting: Multiple servers are interconnected to form a virtualized infrastructure. If one
server is down, another one will take its place, providing high availability and reliability.
 WordPress hosting: Optimized specifically for hosting WordPress websites, it offers features
such as one-click WordPress installation, automatic updates, and specialized support for
WordPress-related issues.

If you’re a beginner, start with shared hosting as a cost-effective option.


Once your site grows, you can always scale to a higher-tier hosting service.
Before making a purchase, be sure to review the hosting provider’s pricing structure, key features, and
positive track record.
Check out different hosting providers and choose one that meets your needs best.

2. Analyze Uptime and Performance Guarantees

Trustworthy providers typically offer guarantees of 99.9% or even higher.


Take a close look at their website to understand how they define and calculate downtime.

When you use the service, you can check if the website performs well by doing tests or using special
tools.

This will help you make smart choices based on real information, rather than just marketing claims.
age 5 of 22

Make sure you know about the systems and tools the hosting company featured.
Check for things like backup servers, CDNs, and better caching methods that make things faster and
more reliable.

3. Research the Server Location

To deliver content faster to users, it’s important to know where the server is located.

This is because your server’s physical location impacts your website loading speed and responsiveness to
user actions.

If you’re targeting a global audience, pick a hosting company that has data centers all around the world.

For sites made for a specific country, using a local server is enough.

For example, if your website targets North American users, consider hosting providers with data centers
in cities like New York, Chicago, or Los Angeles.

Hardware Specifications for Web Server

Source: Google.com

The following minimum hardware specifications are required for installing the Web Server on a physical
or a virtual machine. In a medium to large environments, you might need to install the Web Server on a
separate machine that does not share hardware resources with Commvault software, such as the
age 6 of 22

CommServe Server. For comprehensive information about system requirements, see System
Requirement for Web Server.

Large Medium Small


Supports up to 7500 concurrent Supports up to 1000 concurrent Supports up to 400 concurrent
users. users. users.
1 TB of disk space for cache 500 GB of disk space for cache 200 GB of disk space for cache
16 CPU cores 12 CPU cores 8 CPU cores
64 GB RAM 32 GB RAM 16 GB RAM

The 3 Major Server Resources: Explained

Whether your server is running in the cloud or a closet in your office, it takes physical pieces of
hardware to make it all work. The pieces of technology that make up your server are often referred to as
"Server Resources." They can help your server run efficiently and quickly, or they can hold it back and
bog down the performance if they are overworked. In this blog, we'll explain the three main
upgradeable components when thinking about your server resources. We'll also explain how having a
little more of each of these server resources can help your applications run at top speed.

1. CPU (Central Processing Unit)

To explain server resources, we should first start with where every process on a computer starts, the
CPU. The CPU of any computer is the brain behind any operation. The number of CPUs (Central
Processing Units) your server has can be critical to its overall performance. It allows operating systems
and applications to run, and the more CPU cores you have, the better your server will perform. A typical
virtual server may start with 2 CPU cores. For a light user count and light daily workload, such as a single
user working within a single application all day, that CPU count would be more than sufficient. However,
with a higher volume of users accessing the server and multiple applications needing to be run
simultaneously, the CPUs may become strained, causing the performance of that server to suffer. As is
the case with any piece of the server resources puzzle, talking to an expert and explaining your use case
would be the best way to determine the optimal configuration for your business.

2. Storage Space

Often confused with "Memory" (a.k.a: RAM), the amount of storage space on your server is critical to its'
overall performance. The hard drive on your server, or any computer for that matter, is where all your
information is stored. This could be anything from your server's operating system to the documents and
files you may need to perform daily tasks. How much space is available on your hard drive correlates to
the number of files you can store on it. The freer space you can keep available, the quicker your server
will find those files for you to access and edit them. When a hard drive starts to get full of information, it
can begin to slow down your server's performance. The best way to think of a hard drive and how it
relates to performance is to picture going up a set of stairs with a backpack on your back. If you only
have a few things in your bag, you can get up the set of stairs with about the same amount of effort as it
would take you with no backpack at all. However, if your backpack is full, its weight will cause you to put
age 7 of 22

in more effort to get to the top of the stairs. While you will still make it to the top, it will take you longer
to get there, and you'll probably be a lot more tired than you would be if you still had room in your
backpack. Storage space can be thought of the same way. The freer space you have, the quicker your
servers' hard drive will be able to sift through its contents and find the file you want to access. Much like
CPU and all other server resources, how much storage space you may need is dependent on how you
use your server. If you would like to store all your files and applications on your server, you will likely
need more storage space.

3. RAM (Random Access Memory)

Finally, RAM. Random Access Memory is the full name for "RAM" or "Memory." It's an integral piece to
the puzzle regarding your server resources and how well your server performs. To put it simply, RAM is
where your server stores a cache of information to help your applications open and run quickly. Each
time you open any application or perform a task on your server, it caches that information into your
RAM. This allows it to remember those actions and execute them quicker the next time you make them.
The more RAM your server has, the more your server will remember at once. RAM is one of the most
easily expandable server resources. While it does come at an added cost, it can often extend the life of
your server as opposed to purchasing an entirely new one altogether. How much RAM your server
would need to run at its best is dependent on your current business needs. Things such as how many
users log into your server, which applications you need to run, and how many of those applications need
to be used simultaneously can all factor into how much RAM would be required. These three types of
server resources are the most commonly upgraded pieces of hardware on any computer or server,
whether virtual or in-house. While there is really no such thing as having too much of any of these server
resources, there does come the point where your configuration already allows for you to get the
maximum amount of performance out of the server you are currently using.

Project plans is drafted

The primary uses of the project plan are to document planning assumptions and decisions, facilitate
communication among project stakeholders, and document approved scope, cost, and schedule
baselines.

How to effectively plan backend development?


age 8 of 22

Define your needs

When you want to build your awesome mobile app, you probably know what it should look like. You
also have some idea of how it should work and what core functionalities it should have. With near to
100% certainty you will need a registration/login feature and other personalized settings for users. In
most cases, all data the user provides will be stored somewhere and then read by the app. It is
worth researching the market and estimating how many users may use your application and what new
features will be implemented in the future.

Make sure you answered the following questions:

 What functionalities will your app have in the first version?


 What functionalities will you implement in the future?
 How many users will use your app?

Answering them will help you make the right decisions when choosing a tech stack.

Choose the right tools

Choosing mobile technology is relatively easy because we have two main platforms – iOS and Android.
On the backend side, it’s a little bit more complicated.

Programming language

First, the right language must be chosen: JavaScript, PHP, Python, Java, Go etc. This decision will have
an effect on all future possibilities and limitations.

API
age 9 of 22

Next, it is time to specify the type of API (Public, Private, Partner, Composite) and its architecture (REST,
SOAP, RPC, GraphQL).

Now: the runtime environment, framework, and basic libraries that can speed up the process of
creating an API. For each language, there is usually one runtime environment, at least two frameworks
and countless numbers for libraries.

Operating system

Then it is good to find the best operating system. Here it is a simple choice: Linux or Windows. In the
case of Linux, we need to specify the distribution (RedHat, Fedora, Debian, Ubuntu, etc.) and its version.
To avoid being locked into a single operating system, developers often use Docker – a tool that allows
them to create a small virtual system just for development purposes.

The API will probably need a database, so in front of us we have another important decision to
make: how data will be stored and what engine we can use for it? We can use one of
these: MongoDB, SQLite, MySQL, PostgreSQL, Microsoft SQL Server, Oracle, etc.

All these decisions form what is known as a tech stack.

Coding

Before writing the very first line of code it is good to think about how to organize a project. A developer
has to think about the folder structure, which paradigm to choose (functional or object-oriented
programming), and which design patterns will be appropriate.

Another thing is the methodology. There are at least three: TDD (Test-Driven
Development), BDD (Behavior-Driven Development), and DDD (Domain-Driven Development). Each of
these has its pros and cons.

It is also good to follow a few principles like SOLID (five code design principles), KISS (Keep It Simple
Stupid), and DRY (Don’t Repeat Yourself).

Saving the working results

You may think the hard drive or a pendrive is a good place to save your working results. It’s not so bad
but think about a situation where you have to share files with other developers. Ok, you could use
shared folders, samba, or an FTP server. What if you want to undo the last changes? You couldn’t.
Here the versioning system comes to play.

There are two main version control systems: SVN and Git. SVN is a little bit older than Git, but Git
gained popularity in the last decade. Git allows you to create code repositories and save working
progress, merge changes with others, undo them or even create separate parallel copies as branches.

Deployment
age 10 of 22

It is time to deploy the code into the world. Nowadays we have many cloud platforms
like AWS (Amazon Web Services), Google Cloud, Firebase, DigitalOcean, Heroku, etc. All have their
entry-level complexity and need proper skills to manage them.

DevOps have to configure all services you need for the project, eg. compute
cloud/engine, storage and database. In this step, we usually set up two environments: prod (what all
can use) and stage (to show changes to the client and for testing purposes). Then we should solve how
all changes from the code repository will be delivered to the public server. This process describes CI/CD.

CI/CD

The CI/CD term stands for Continuous Integration / Continues Delivery. While CI is responsible
for building code and testing it (with automatic tests), CD takes care of the build delivery to the server.
Again, we have plenty of tools that can help us like eg. Jenkins, GitLab, CircleCI, TeamCity, Bamboo, etc.

Monitoring

To minimize the risk of sudden interruption on the backend, DevOps uses monitoring systems to
analyze the utility of resources. Many cloud platforms have built-in solutions but if there is a need to use
custom tools, we can choose one of
these: Sematex Monitoring, Prometheus and Grafana, Dynatrace, Datadog, etc.

Project plan documents is submitted

Simply said, project documentation is a term used to describe the documents and materials involved in a
specific project. Notice that materials are also included because, as mentioned before, documentation is
not limited to documents. Any and all information related to the project can be kept together in the
same place and considered project documentation.

What Is Project Documentation Software?

Tools that fall under the category of project documentation software can be offline or online and
typically enable users to:

 Create, edit and maintain documents.


 Collaborate with colleagues – if online, then in real-time.
 Integrate charts, diagrams, media, designs, development/coding tools.
 Provide customizable templates for quicker document creation.
 Create workflows and processes.
 Structure documents and their storage, creating a logical, searchable knowledge base.
 Manage meeting minutes and internal communications.

By providing these features, project documentation software centralizes information that would
otherwise be found in various places like shared drives, emails, chats, spreadsheets, etc. It also allows all
colleagues with access to this hub the ability to edit simultaneously, always having the latest version. In
addition, it significantly reduces the need for paper in the workplace.
age 11 of 22

Project documentation software is therefore not the same as having a shared drive where employees
dump documents in folders. Instead, this software combines word processing, collaborating, process
diagramming and much more to create a visual, structured information database.

Project documentation software is often sold as a SaaS (software as a service), meaning that users will
pay a monthly or yearly subscription price. For larger companies, project documentation software may
be installed onsite as an enterprise solution, and instead be a one-time purchase.
Efficiency = Productivity

This efficiency in turn will lead to higher productivity, whether that’s more tasks completed, more
products produced or any other KPI. Increasing efficiency and productivity are, of course, other ways of
saying that good project documentation saves you money. Let’s conservatively imagine that only 5%
(less than half an hour per day) of employees’ time is wasted either searching for information they
cannot find or not understanding the documentation tool, and then multiply that 5% by all salaries. How
much loss does that amount to for your company?

Providing a commonly accessible platform increases transparency, and reduces confusion. How many
times have you worked on and sent over a document, only to be told after the fact that you were
working on an outdated version? Unfortunately, a large number of organizations still rely on a shared
drive of word documents or spreadsheets. This inevitably leads to versioning disasters. To offer
employees transparency, provide a central platform for documentation that updates in real-time and no
one will ever find themselves reviewing or working on an outdated version of a document again.

When project documentation is transparent, each employee throughout your organization can have the
feeling that nothing is hidden from them, and that they have all the information they need at their
fingertips. Needless to say, a little transparency goes a long way when it comes to employer-
employee trust.

It’s not only the employees who will appreciate this transparency but also external stakeholders. Those
who are not involved in the inner workings of the project on a day-to-day basis should be able to quickly
scan the project documents, find what they are looking for, and update themselves on the status.
This saves time in both directions, as project members won’t have to stop their work to answer
questions or give short status reports.

Lastly, project documentation is often postponed and labeled and “nice to have” and not a “must have”.
But the docs deserve their time. Even the best products, software, or services aren’t worth much if no
one understands them or knows how to use them.

Project Documentation Examples by Project Phase


age 12 of 22

Project documentation can take many forms. As mentioned before, it can vary widely based on several
factors, such as industry, company and methodology. Suffice to say, each project requires its own
documentation and the following examples by no means constitute a comprehensive list. For the sake of
clarity, they are ordered by project phase.

Agile vs Waterfall Documentation

The waterfall project management method is a linear approach that is typically used when the end goal
is clear from the beginning of the project. Since these projects have a fixed timeline and the deliverables
are clear, the documentation can follow suit. This means that the project documentation can be clearly
planned and written using the phases described below as a guideline.

The Manifesto for Agile Software Development lists working software over comprehensive
documentation as a core principle. However, that doesn’t mean that documentation cannot be useful
for agile project management. As agile projects are more fluid and take place in short iterations, so too
will the documentation. It may not be possible to write all the documentation at the beginning of the
project as the goals and outcomes develop over time. In addition, the agile documentation approach
emphasizes the creation of documents for the situation at hand. Therefore, the documents as they are
explained here by phase may not be written in the order found here, or at all.
1. Initiation

The first stage in a project, the initiation, establishes your project team and the key actions they will
have to take in order to achieve success. During initiation, funding allocation and authorization may also
be covered. The project is only formally approved upon completion of the initiation phase.
age 13 of 22

Project Proposals

A project proposal, sometimes called a business case, is exactly what it sounds like: a formal description
of the project with an argument for why it should happen. In the proposal, the purpose of the project
should be outlined in a way that will sufficiently convince decision makers that the project is
worth investing time, effort and money into. It’s important that your proposal is clear and coherent so
that its core message doesn’t get lost.

Project Charter and Scope Statement

A project charter, sometimes called a Project Initiation Document, adds detail to the initial proposal. It
gives the Project Manager the authority to act, turning a proposal into an actual project. Key
requirements, budget, tasks as well as roles and responsibilities are covered. It explains the project in
its entirety, from its objectives to how it will be carried out. The charter is crucial as it is referred to
throughout the project. The charter is followed by the Project Scope Statement which breaks the charter
down into more detail.

Team Structure Document


age 14 of 22

The team structure document defines the manager and team members together with
their responsibilities. It’s a great basis for the team when they are getting started but should be kept up-
to-date as other project members and external stakeholders will most likely use this document as a
reference for who to contact for particular topics.

2. Planning

The planning phase requires time and energy, but the investment helps avoid problems further down
the line. The purpose of the project plays a central role here, and the entirety of your planning stage
should be tailored around your project goals and objectives. Again, with agile project management
planning is less extensive and action more valuable, so bulleted Product Vision and Project
Overview documents may suffice.

Project Management Plan

Now that the project manager has the authority to act, he or she can create the Project Management
Plan. It outlines the project timeline so that milestones and expectations are clearly defined from the
get-go. As we all know, no project goes exactly to plan and so tasks and activities must be documented
along the way, noting the changes in the plan. Alternatively, the Project Management Plan can be kept
age 15 of 22

as a fixed document, while a change request log serves as amendments to the plan. In either case, the
project begins with a strong foundation and is adapted over time.

Project Roadmap

Typically created and maintained by the project manager, a roadmap provides a big picture overview of
the most important steps in a project. It includes goals, milestones, dependencies, risks and key
deliverables. A roadmap can and should be shared with team members, experts and external
stakeholders, so it should be clear and succinct enough for any one of them to quickly skim through and
understand. Since roadmaps are usually displayed as infographics, they are not to be confused with
project proposals, charters or plans.

Financial Plan

The financial plan is an overview of the anticipated expenses, including human resources, materials,
equipment and administration costs, etc. These expenses then become the project’s budget. There are
many approaches to calculating your project’s budget including bottom-up, top-down, analogous,
parametric and three-point estimation. The financial plan may also include information on funding
procurement and allocation, contracts, financial processes and projected ROIs.

Communication Plan
age 16 of 22

A communication plan establishes policies on meetings within your team. It sets expectations for
internal communication methods and frequency. Establishing these at the beginning of a project helps
to foster strong working relationships and ensures that regular meetings are not constantly canceled
due to tight deadlines.

3. Execution

Implementing the plans detailed in the project charter, the execution phase focuses
on delivering products and services to clients or internal stakeholders. It will most likely be
the longest stage of the project and present many challenges. Since no two projects are alike, chances
are not all the documents listed below will be needed.

Product Requirements / User Stories

If your project is product-oriented, work will be broken down into bite-size pieces that team members
can actually work on. These bite-size pieces are the requirements or, for the Agile-ist out there, the user
stories. Though user stories are more experience-focused and requirements more functionality-focused,
they both have the same ultimate goal: to provide the end-user with a feature, function or service they
need. No matter which system is used, requirements and user stories should be well documented in the
project, always leading back to the larger goal they were created to achieve. This is vital because, with
many of these bite-size pieces being worked on at the same time, it’s easy to get wires crossed and end
up building features in opposite directions.

User Documentation
age 17 of 22

User documentation is an umbrella term that includes user guides, manual, handbooks, as well
as support documentation. This kind of documentation is created by experts of all kinds — technicians,
software developers, customer service agents — to help the user use a particular product. Visuals,
diagrams, even video tutorials make up a large part of this type of documentation, only emphasizing the
idea that documentation can take all forms. User documentation can be written as you go or only at
certain milestones or deliveries. In either case, it must be regularly maintained!

Process Documentation

When a project team works together for a certain amount of time, processes tend to develop organically
(or ad hoc) and therefore aren’t documented. This creates a natural cliff-edge: as soon as new people
enter the team (or existing members leave) the need to document processes is suddenly of utmost
importance. Whether it’s small processes, like who reviews who’s work, or big processes, like getting
products through all necessary quality assurance checks on time, there are diagramming tools out there
to help. Additionally, these diagramming tools can usually be integrated directly into your central
documentation platform.

Remember, not all documentation has words! Take the time to map out your processes and put them in
a place for everyone to find. In addition to the many other advantages of doing this, no one has to
commit complicated processes to memory.

Design Guidelines

Design guidelines are usually created by user experience (UX) experts to provide colleagues with a set of
design recommendations to be used throughout the project. These guidelines help designers and non-
designers ensure a good, consistent user experience across the board. They may include suggestions
related to style, layout, user interface (UI) components, accessibility, design patterns and text. Since
designers often work with a different tool stack than the rest of the team, it should be ensured that the
design guidelines, with practical examples, are stored in an easily accessible common space that all
employees can reference.

Meeting Notes

Meeting notes or minutes, serve a meaningful purpose: they hold individuals accountable for
specific action items, acting as a record of agreements and alignments. Project managers will find this
helpful as they nudge the team members to achieve what they committed to. And team members will
also find this helpful to remind project managers exactly what was agreed — not more, not less, not
early, not late, etc. Modern documentation software easily integrates with task and project software,
significantly decreasing the gap between a project and its documentation. Therefore, taking meeting
minutes and making sure that they are linked to the relevant tasks and project components is a cinch.
age 18 of 22

4. Control

The control phase of the project involves monitoring project progress, typically done by comparing
current progress to the project plan. Based on the results of this comparison, actions can be taken to put
the project back on course.

Project Status Reports

Project status reports are created by the project manager to keep stakeholders apprised of project
status. The report compares the project plan against the actual project progress for a specific time
period. Commonly included in the report is what work has been finished, a summary of
the budget and schedule, any issues encountered along with proposed solutions, as well as a list
of action items and a plan with next steps. Though not the intended audience, team members and
experts may also enjoy reading the status reports to see how their work is contributing to the overall
project status.

Change Request Log

The change request log outlines which changes must be made to the original project plan, including
exactly what needs to be changed and how it might affect the pre-existing plan. These changes will
likely impact the project timeline, and this too should be recorded. Plans to mitigate the
disruption caused by the changes may also be included.
age 19 of 22

5. Conclusion

Once the project is officially closed, final meetings with the project team and stakeholders are
conducted to enable reflection on what went well, and what could have gone better. As a result, you’ll
be able to streamline processes in the future.

Project Closure Document

The project closure document formally concludes the project. Alongside any sponsor or relevant
stakeholder, the project manager is responsible for reviewing and approving the document. The
document should include any big wins, difficulties or post-project issues, as well as any tasks that still
need to be completed. For your project to be signed off, all the invested parties must agree that
the stakeholders’ expectations were met. This emphasizes the importance of documentation
throughout the project, as without it, it’s virtually impossible to prove.

Project Retrospective

After a project comes to a close, a retrospective gives the managers, team members and experts some
time to reflect on the project, both the positive and negative, in a structured way. A retrospective can be
held in the form of a meeting or a workshop, either in the normal work setting or, commonly, outside of
it to enhance the reflective effect. Documenting what went well and what didn’t, as well as
brainstorming ways to deal with difficulties, is indispensable for the development of future projects.
age 20 of 22

Teachers Activity:
Ask Question
Show Presentation
Demonstration
Show video:
https://www.youtube.com/watch?v=cbSrsYiRamo

Reference:
Site:
https://www.google.com/
https://www.youtube.com/
https://www.intelivita.com/blog/how-to-choose-web-server-for-your-project/
https://documentation.commvault.com/11.16/hardware_specifications_for_web_server.html
https://www.summithosting.com/server-resources-explained/#:~:text=The%20pieces%20of
%20technology%20that,performance%20if%20they%20are%20overworked .
https://fivedottwelve.com/blog/backend-development-process-what-does-it-look-like-and-how-to-plan-
it-effectively/
https://www.meistertask.com/blog/what-is-project-documentation-and-how-can-it-help-your-team/

eBook:
 Backend Development by: George Mason University
age 21 of 22

Assessment 17-1:
Written Test

Test I: True or False: Write the letter T if the statement is true and F if the statement is false on the
space provided.

_____________ 1. To deliver content faster to users, it’s important to know where the server
is located.
_____________ 2. Trustworthy providers typically offer guarantees of 99.9% or even higher.
Take a close look at their website to understand how they define and
calculate downtime.
_____________ 3. If you’re a beginner, start with medium hosting as a cost-effective option.
Once your site grows, you can always scale to a higher-tier hosting service.
_____________ 4. Apache and Nginx are well-known web servers that work on various
platforms such as Linux, Windows, and macOS.
_____________ 5. Web hosting is a service that stores your website on a server, so it
becomes accessible to internet users.
_____________ 6. Some common use cases for databases include e-commerce websites,
news sites, web applications that handle user registration or login, and
online forums or social platforms.
_____________ 7. For complex websites like online stores or frequently updated blogs, a
server capable of handling a single task is necessary.
_____________ 8. To effectively manage this traffic and ensure smooth operations, a robust
server solution is crucial.
_____________ 9. To choose the right web server, first determine the type of website you
want.
_____________ 10. Before building your website or app, there is an important step you need
to take: choosing the right web server.
_____________ 11. After a project comes to a close, a retrospective gives the managers, team
members and experts some time to reflect on the project, both the
positive and negative, in a structured way.
_____________ 12. The project closure document formally concludes the project. Alongside
any sponsor or relevant stakeholder, the project manager is responsible
for reviewing and approving the document.
_____________ 13. Project status reports are not created by the project manager to keep
stakeholders apprised of project status.
_____________ 14. Design guidelines are usually created by user experience (UX) experts to
provide colleagues with a set of design recommendations to be used
throughout the project.
_____________ 15. If your project is product-oriented, work will be broken down into bite-size
pieces that team members can actually work on.
_____________ 16. The planning phase requires time and energy, but the investment helps
avoid problems further down the line.
_____________ 17. A marriage proposal, sometimes called a business case, is exactly what it
sounds like: a formal description of the project with an argument for why
it should happen.
_____________ 18. When project documentation is transparent, each employee throughout
age 22 of 22

your organization can have the feeling that nothing is hidden from them,
and that they have all the information they need at their fingertips.
_____________ 19. Increasing efficiency and productivity are, of course, other ways of saying
that good project documentation saves you money.
_____________ 20. Simply said, project documentation is a term used to describe the
documents and materials involved in a specific project

Activity

Objective: Draft a project plan

Steps/Procedure: Group of 5

1. Draft a project pan referring to Lesson 17 (Part 1).


2. Present your drafted project plan to your members.

You might also like