Sem categoria – Luby Software https://luby.com.br Transformação Digital da concepção à entrega Mon, 18 Jul 2022 19:52:43 +0000 pt-BR hourly 1 Advantages of Agile Methodologies to develop digital solutions https://luby.com.br/sem-categoria-en/agile-methodologies/ Mon, 18 Jul 2022 19:52:43 +0000 https://luby.com.br/?p=9981 In the project management world, Agile Methodology is a way to organize a task by breaking it into smaller steps. This kind of method requires constant collaboration with stakeholders and constant improvement of every step, to ensure successful results. Therefore, when the work starts, small teams cycle through the steps of planning, executing, and evaluating. […]

O post Advantages of Agile Methodologies to develop digital solutions apareceu primeiro em Luby Software.

]]>
In the project management world, Agile Methodology is a way to organize a task by breaking it into smaller steps. This kind of method requires constant collaboration with stakeholders and constant improvement of every step, to ensure successful results. Therefore, when the work starts, small teams cycle through the steps of planning, executing, and evaluating. During those steps, it is crucial that both the team members and the project stakeholders keep a continuous collaboration.

Overview of Agile Methodologies:

  • Individuals and interactions over processes and tools;
  • Working software over comprehensive documentation;
  • Customer collaboration over contract negotiation;
  • Responding to change over following a plan.

Individuals and interactions over processes and tools

Agile Methodologies considers the most important aspect of success is having the right people working on your software. Having the right individuals working as a team will take your software to the next level, bringing the best results in the short, mid, and long-term.

Having the best possible tools and the most optimized process is worthless in the wrong hands. So, without the right team, even the best process crumbles, and even the most effective tools are worthless. Even more important than the individuals though, is the way those individuals communicate with each other. 

The way your people collaborate and work together is the way those individuals turn into a team, capable of solving even the most complex problem that may appear.

Working software over comprehensive documentation

Although having an extensive document detailing every step of the way may help a team improve its methods, there comes a moment when delivering working software to the client is more important than the documentation. 

Don’t misunderstand, a cohesive documentation of the process is still an important part of any successful project. However, the delivery of working solutions that can be revised by the client and provide feedback should always be the priority. 

Customer collaboration over contract negotiation

There was a time when the contract was the most vital part of a project. A place where the client would detail everything they wanted and then you, the company, would deliver what was specified. This resulted in 3 different projects: 

  • Contract said;
  • Product did;
  • Customer actually wanted. 

Although the contract is still a vital part of any project, a good team should be more focused in achieving a state of constant feedback. Where the product can be improved after every customer comment, in order to achieve the best possible result in the final delivery of the project.

Responding to change over following a plan

Plans are essential for any project, but a plan that doesn’t work like the real world is useless in the long run.

The world presents new, unforeseen challenges at every moment, so your team’s roadmap should reflect that, not by being a static roadmap, but by being a dynamic, flexible plan of multiple actions, that can change and adapt over any circumstances. A dynamic roadmap, as we call it, should be able to change every month, if necessary, by responding to the client’s demands and new demands as they arrive. Good, agile teams are able to keep up with these changes, ensuring that the client receives the best possible result.

Therefore good, Agile Methodologies works on the belief that an idea can improve and evolve all throughout its existence, with constant changes being implemented without changing the due date. This is one of the most famous approaches to project management, due to the fact that it is flexible, adaptable to change, and possesses a lot of room for customer input.

Agile Methodologies Frameworks

Now it’s time to talk about the Scrum method. Agile project management is not a single framework, it’s actually an umbrella term that includes different frameworks such as Kanban, XP (Extreme Programming), APF (Adaptive Project Framework), and of course, Scrum.

Scrum is a project management methodology where a small team of workers is led by a Scrum master. Whose job is to remove all obstacles in the way of the workers, so the job is completed faster. The work is done in short cycles called sprints, and the team makes daily meetings to talk about the tasks and possible blocks found by the workers.

The Agile Methodologies may be the key to take your company’s plan of action to the next level. It brings countless benefits such as project transparency, better predictions, freedom of change, and quality improvement, just to name a few. This is what we bring here at Luby. Better results, in the fastest way possible.

Even the best tools are useless without the right team. That’s why we provide the best possible team that can reach the best results in a timely manner. If you’re interested in knowing more about Luby, or schedule a meeting, browse our website.

O post Advantages of Agile Methodologies to develop digital solutions apareceu primeiro em Luby Software.

]]>
Configurando um servidor Linux Ubuntu – Básico 1 AWS https://luby.com.br/sem-categoria-en/configurando-um-servidor-linux-ubuntu-basico-1-aws/ https://luby.com.br/sem-categoria-en/configurando-um-servidor-linux-ubuntu-basico-1-aws/#respond Mon, 10 Sep 2018 14:22:02 +0000 http://blog.luby.com.br/?p=207 Servidor Linux: básico 1 – Configuração EC2 (Amazon) Para uma configuração simples e básica do Servidor Linux, temos somente algumas dependências para tratar e claro, que para uma evolutiva ou um projeto com mais módulos teríamos um aprofundamento maior. [adrotate banner=”4″] O exemplo que será evoluído no artigo refere-se a uma instância EC2 da Amazon. […]

O post Configurando um servidor Linux Ubuntu – Básico 1 AWS apareceu primeiro em Luby Software.

]]>
Servidor Linux: básico 1 – Configuração EC2 (Amazon)

Configurando um servidor Linux Ubuntu - Básico 1 AWS Luby SoftwarePara uma configuração simples e básica do Servidor Linux, temos somente algumas dependências para tratar e claro, que para uma evolutiva ou um projeto com mais módulos teríamos um aprofundamento maior.

[adrotate banner=”4″]

O exemplo que será evoluído no artigo refere-se a uma instância EC2 da Amazon. O objetivo é garantir um servidor Linux para hospedagem de um sistema em PHP (laravel) e banco de dados MySQL. Os primeiros comandos a serem executados após conectar no servidor são:

ubuntu@ip-172-31-26-70:~$ sudo su

root@ip-172-31-26-70:/home/ubuntu# apt-get update

Após atualizados os pacotes (independente da versão) evoluiremos com a instalação das dependências. Primeira instalação é referente ao Apache. Veja:

apt-get install apache2
systemctl start apache2.service

Evoluindo, temos as instalações do MySQL e na sequência do PHP sudo apt-get install mysql-server. Após esse passo teremos que definir a senha do usuário ROOT e confirmá-la na sequência.

Imagem mostra código de programação

E qual a próxima etapa?

Avançando temos na próxima etapa a instalação do PHP

apt-get install php

Particularidades do EC2 do AWS

Cada Servidor tem sua particularidade para a Amazon não é diferente, devemos destacar primeiro o arquivo PEM (PEM é um arquivo de certificado codificado em Base64 usado para autenticar um site seguro), no caso da Amazon se faz necessário gerar esse arquivo para conectar ao servidor e o mesmo deverá ter a permissão 0400 para permitir o acesso.

Outra particularidade que deve ser destacada é referente ao firewall que por padrão bloqueia tudo exceto a porta 22 (utilizada para o SSH), o firewall nesse caso vem com a nomenclatura Security Group e se faz necessário desbloquear as portas que serão utilizadas, entre elas a porta 80 (para visualizar no navegador).

Nos próximos artigos evoluiremos as configurações do EC2, tratativa de erros e logs.

Fica de olho na Luby!

[adrotate banner=”5″]

O post Configurando um servidor Linux Ubuntu – Básico 1 AWS apareceu primeiro em Luby Software.

]]>
https://luby.com.br/sem-categoria-en/configurando-um-servidor-linux-ubuntu-basico-1-aws/feed/ 0
Linguagens de Programação: descubra tudo https://luby.com.br/sem-categoria-en/linguagens-de-programacao/ https://luby.com.br/sem-categoria-en/linguagens-de-programacao/#respond Thu, 26 Jul 2018 19:18:57 +0000 http://blog.luby.com.br/?p=195 Flávio Apolinário fala sobre as linguagens de programação e esclarece todas as dúvidas sobre essa área. O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem de programação serve como meio de comunicação entre o indivíduo que deseja resolver um de­ terminado problema e o […]

O post Linguagens de Programação: descubra tudo apareceu primeiro em Luby Software.

]]>
Flávio Apolinário fala sobre as linguagens de programação e esclarece todas as dúvidas sobre essa área.

O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem de programação serve como meio de comunicação entre o indivíduo que deseja resolver um de­ terminado problema e o computador escolhido para ajudá-­lo na solução.

[adrotate banner=”4″]

A linguagem de programação deve fazer a ligação entre o pensamento humano (muitas vezes, de natureza não estrutu­rada) e a precisão requerida para o processa­mento pela máquina. (Price, Toscani, 2008, p.1).

O facilitador no desenvolvimento de softwa­re é a escolha de uma linguagem de programação próxima ao problema a ser tratado, em outras palavras, não adianta querer desenvolver uma solução (aplicação) para plataforma Web adotando Assembly como linguagem de programação.

Uma aplicação desta natureza exigiria uma linguagem de programação de alto nível (considerada mais próxima das linguagens naturais ou ao domínio da aplicação em questão).

Computadores entendem linguagem de máquina (linguagem de baixo nível), notações binarias, sequências de zeros e uns. Esse tipo de linguagem te permite comunicação direta com o computador em termo de “bits”.

Imagem de código de computador

E como funciona as linguagens de programação atualmente?

Hoje em dia, o tipo de linguagem mais utilizada é a de alto nível. Para que esse tipo de linguagem se torne operacional, ela deve ser traduzida para linguagem de máquina.

Tais traduções são realizadas por meio de sistemas especializados, comumente conhecidos como compiladores ou interpretadores.

As linguagens de programação podem ser classificadas cronologicamente em cinco gerações:

1) Linguagem de Maquina: não aconselhada para desenvolvimento de algoritmos complexos, devido ao seu nível de complexidade há uma forte propensão ao erro, pois trabalha com sequências de zeros e uns e era utilizada nos primeiros computadores. Cada instrução de máquina é geralmente composta por um código de operação e um ou dois endereços de memória ou registradores;

2) Linguagens Simbólicas ou de Monta­gem (Assembly): projetadas com a intenção de diminuir as dificuldades da programação em Lin­guagem de Maquina. Sua principal característica é a substituição de códigos de operação em endereços binários, por mnemônicos (palavras que designam operações entre registros da Uni­dade Central de Processamento);

3) Linguagens Procedimentais ­ também chamadas de “Procedurais” ou Imperati­vas­ e Linguagens Declarativas: as procedimentais descrevem uma sequência de passos a ser seguido para resolver um problema; que são uma descrição direta de como o problema será́ resolvido.

Caracteriza-se por instruções de entrada/saída, instruções de cálculos aritméticos ou lógicos e instruções de controle de fluxos de exceção. Exemplos: BASIC, ALGOL, PASCAL, C, etc.

As declarativas são baseadas na teoria das funções recursivas e de lógica matemática. Regras de dedução sem detalhamento dos passos a serem seguidos para chegar a uma conclusão, são definidos pelo programador.

As linguagens dessa geração foram desenvolvidas para uso de profissionais da área de processamento de dados, sua depuração demanda tempo, assim como seus sistemas complexos são de difícil manutenção;

Imagem de tela de computador mostra linguagens de programação

4) Desenvolvidos para facilitar a programação de computadores, agilizar o processo de desenvolvimento de aplicações, facilitar e re­duzir custos de manutenções em aplicações, di­minuir os problemas na depuração e gerar códigos sem erros a partir de requisitos de expressão de alto nível;

5) São linguagens de representação do conhecimento, essenciais para simular compor­tamentos inteligentes. São utilizadas, principal­mente, na área de Inteligência Artificial.

Claro que ainda há muito mais a se expor deste universo que compõe as linguagens de programação, todavia, como o intuito era ape­nas mostrar um pouco dessa história, do seu surgimento e evolução até os presentes dias, a fim de formar e compartilhar conhecimento com todos os programadores, ou aqueles que de al­guma forma apreciam o mundo da programação, deixemos essa gama de informações para serem exploradas posteriormente.

Escrito por Flávio Apolinário de Souza

REFERÊNCIA BIBLIOGRÁFICA

PRICE, A. e TOSCANI, S.: Implementação de Linguagens de Programação: Compiladores, Editora: Sagra Luzzato, 2008.

[adrotate banner=”5″]

 

O post Linguagens de Programação: descubra tudo apareceu primeiro em Luby Software.

]]>
https://luby.com.br/sem-categoria-en/linguagens-de-programacao/feed/ 0