You are on page 1of 3

In this scope, Peaksource has offered a solution that satisfies these requirements as it guarantees to

assist salesmen monitoring, accelerate their evaluation and simplify their tasks: GENIUSLabs CRM.

2.3. Objectives

With the mentioned requirements and constraints taken into account, we were tasked with contribut-
ing to the project through:

• Implementing minor updates to miscellaneous software modules.


• Writing new modules that assist salesmen training and evaluation.
• Reimplementing and upgrading all modules related to reports and statistics.

It is worth noting that minor contributions will be omitted from this report as we wish to put emphasis
on tasks that brought the most value and required a high level of conceptual and technical work.
The said minor tasks include: creating utility actions and basic CRUD interfaces, bug fixes, GUI
improvements, plug-in version upgrades, etc ...

3. Methodology
Software development methodologies are constantly evolving. We try to choose one that adapts to
the constraints imposed by the environment in order to satisfy the customers and their deadlines.

3.1. Motivation

Our platform aims to fill the void, slowness and inefficiency caused by the use of archaic methods, it
is for this reason that the speed of delivery is a priority.

3.2. The AGILE methodology

"AGILITY" is the ability to successfully respond to change in an uncertain environment. It brings


practices and principles as expressed in the AGILE manifesto.

Principles and values

• Individuals and interactions over processes and tools


• Working software over comprehensive documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan

6 Chapter I GENIUSLabs Project Settings


Based on this manifesto, AGILE teams give priority to early and continuous delivery of software,
welcome change in requirements, work frequently and closely with business people, stay attentive to
good design and technical excellence and reflect over productivity and adjust accordingly [3].

Scrum: An AGILE framework

The AGILE principles bring a strong foundation for a motivated and dynamic team. But to manage a
complex project, an AGILE framework is required. The choice of framework depends on the nature and
circumstances of our project.

Our team employs Scrum essentially for its effective and straightforward approach. In particular, our
project GeniusLABS involves both web and mobile development, and both fields historically thrive with
the Scrum approach which implements the AGILE principles as a concrete set of artifacts and roles.

Projects are broken down into slices of functionality (called user stories) that can be delivered in 2-4
weeks. Developers use those stories to implement the needed features, and await feedback from clients
to modify the details.

Scrum is iterative. Every life-cycle is called a Sprint and it lasts typically 2-4 weeks long [4]. Fig. I.4
illustrates this cycle.

Fig. I.4.: The Scrum LifeCyle

Product Backlog: The process starts with a list of features or technical tasks which are necessary
and sufficient to complete a project or a release. The items at the top of the backlog should always be
ready for the team to execute on.

Sprint Planning and Sprint Backlog: The team organizes the backlog items they will work on in
the next sprint in the Sprint Backlog.

3. Methodology 7
Sprint Execution and Daily Scrum: The team is required to meet up for no more than 15 mins to
report progress or issues in what’s called the Daily Scrum.

Sprint Review and Sprint Retrospective: Sprint Review is a process where the team demonstrates
what they’ve accomplished to clients. During the sprint Retrospective, the team reflects on the cycle in
order to improve.

Increment: The product of a Sprint is called the “Increment” or “Potentially Shippable Increment”.
This means a sprint’s output should be of shippable quality.

3.3. Lean development practices


Lean software development is set of software engineering principles and practices adapted from the
Toyota Production System and supported by the AGILE community. It is summarized by seven principles,
manifested in Fig I.5.

Fig. I.5.: Lean Software Development

These principle are fairly self-explanatory and if applied correctly, can be a great boost for the
development process.

Conclusion
Tackling a project with such a high degree of difficulty requires good understanding of the business
logic, fluid integration with the team and the utilization of suitable development practices and techniques.
Exercising the AGILE methodology in a Scrum framework will prove to be an efficient way manage the
project tasks.

In the next chapter we present the software requirements specification of our system.

8 Chapter I GENIUSLabs Project Settings

You might also like