Ocorreu um erro neste gadget

segunda-feira, 25 de março de 2013

Systematic software reuse, patterns and frameworks



What are the benefits of systematic software reuse?
Systematic software reuse is one great strategy for increasing productivity and improving quality in the software.
The reuse  of software is one way to not reinvent the wheel” all time that you will develop one new software or new functionality. So you can take that advantage of what already been developed.
Reuse isn't simple, but it reduce duplicate code and improve the velocity in one big project.

How do patterns and frameworks help enable systematic reuse?
Patterns show one solution for commons problems in software development. With patterns, you can take advantage of knowledge of experts that already validated this pattern. It's likely that someone has already had the same problem as you find in development and created one solution to attend so generic this problem.
Frameworks use the patterns in one specific domain to allow you to develop your application based from patterns, taking features from framework.
With patterns and frameworks you can enable systematic reuse, because the patterns are design to:
Modularize the software application, in other words, make your application divided in parts, and you can reuse each part to form other parts.
Create flexibility and extensibility, it is, create class, abstract class and functions that can easily reused in other parties of the software.
Frameworks and patterns forces you apply this patterns, and is implicit for you that you should reuse parts of your code, and framework's code.
Without frameworks you will lost much time creating features that just exists available for you.

sábado, 5 de janeiro de 2013

Rule Engine (Motor de regras, regras de produção), Jboss Drools



Resumidamente falando, rule engine é um software capaz de analisar regras de negócio para tomar uma decisão.
Essas regras de negócio podem ser escritas de forma não tão técnica, de forma que não só os programadores entendem e as escrevam.


Jboss Drools e Oracle Business Rules são exemplos de softwares que implementam rule engine.
Acredito que ambos os produtos são bons, porém o da Oracle é pago.


É muito interessante integrar sistemas gerenciadores de processos com rule engine.


Guvnor é uma aplicação web para repositório de processos e regras.



Link: Instalação do Drools, Guvnor e Jbpm


Guvnor

Instalação do Jboss Drools, Guvnor e Jbpm



A instalação do pacote é bem simples.

Você precisa ter instalado java jdk e apache ant.
Não esqueça de configurar JAVA_HOME, ANT_HOME, e colocar os executaveis no classpath no caso do Windows.

O Download pode ser feito pelo link: http://sourceforge.net/projects/jbpm/files/jBPM%205/jbpm-5.4.0.Final/

Escolher a versão "jbpm-5.4.0.Final-installer-full.zip" evita que novos downloads durante a instalação, tirando o eclipse que será baixado com os plugins no momento da instalação.

Descompacte o zip, em lugar de sua preferencia (ex. ~/workspace/jbpm-installer).
Abra o terminal/console/CMD e entre no local que você descompactou  (ex. cd ~/workspace/jbpm-installer).

rode o comando:

$ ant install.demo
Caso você não queria instalar o eclipse basta colocar $ ant install.demo.noeclipse

E irá iniciar a instalação, onde serão descompactados alguns programas e bibliotecas, e o download do eclipse, o que pode demorar um pouco, ou pode dar problema se você use um proxy e ele não esteja configurado no seu arquivo build.xml.

Quando o console estiver liberado você pode usar o comando:

$ ant start.demo

onde serão iniciados os servidores, eclipse e o Guvnor.  A primeira inicialização do eclipse pode demorar um pouco.

O Guvnor estará disponível no endereço http://127.0.0.1:8080/drools-guvnor/
JBPM Console em: http://localhost:8080/jbpm-console/


Agora você pode criar processos e regras de negócio em um repositório.


Para parar os aplicativos feche o eclipse vá até o terminal e digite $ant stop.demo.
 Outras informações sobre instalação você pode encontrar no install.html que fica dentro da pasta de instação ou no site www.jbpm.org