Executive presentation of Maker All, complete enterprise web applications development enviroment from Softwell Solutions - a Brazilian software company expanding its operations to global markets.
7. SOFTWARE EVOLUTION MAKER ALL® 2000 P R O G R A M M E R Computer Languages Fortran, Cobol, Java and .NET - framework 1954 P R O G R A M M E R 1950 Machine Code P R O G R A M M E R ENIAC – Binary System and introduction of BIT (Binary Digit) concept – Plugging and unplugging cables. 40´s P R O G R A M M E R
8. PARADIGM SHIFT P R O G R A M M E R P R O G R A M M E R Fim Início I I SIM NÃO Abre uma consulta no banco Dados e armazena o valor Retornado em uma variável do Tipo TABELA Existem registros na Minha variável? Mensagem de Alerta Finaliza a Sessão Processamento3 Próximo registro Processamento 3 publicclass Base64Coder { // Mappingtablefrom 6-bit nibbles to Base64 characters. privatestaticchar[] map1 = newchar[64]; static { int i = 0; for (char c = 'A'; c <= 'Z'; c++) { map1[i++] = c; } for (char c = 'a'; c <= 'z'; c++) { map1[i++] = c; } for (char c = '0'; c <= '9'; c++) { map1[i++] = c; } map1[i++] = '+'; map1[i++] = '/'; } // Mappingtablefrom Base64 characters to 6-bit nibbles. privatestatic byte[] map2 = new byte[128]; static { for (int i = 0; i < map2.length; i++) { map2[i] = -1; } for (int i = 0; i < 64; i++) { map2[map1[i]] = (byte) i; } } /** * Encodes a string into Base64 format. * No blanksorlinebreaks are inserted. * @param s a String to beencoded. * @return A String withthe Base64 encoded data. */ publicstatic String encodeString(String s) { returnnew String(encode(s.getBytes())); } /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in) { returnencode(in, in.length); } /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @param iLennumberof bytes to process in <code>in</code>. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in, intiLen) { intoDataLen = (iLen * 4 + 2) / 3; // output lengthwithoutpadding intoLen = ((iLen + 2) / 3) * 4; // output lengthincludingpadding char[] out = newchar[oLen]; intip = 0; intop = 0; while (ip < iLen) { int i0 = in[ip++] & 0xff; int i1 = ip < iLen ? in[ip++] & 0xff : 0; int i2 = ip < iLen ? in[ip++] & 0xff : 0; int o0 = i0 >>> 2; int o1 = ((i0 & 3) << 4) | (i1 >>> 4); /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in) { returnencode(in, in.length); } /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @param iLennumberof bytes to process in <code>in</code>. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in, intiLen) { intoDataLen = (iLen * 4 + 2) / 3; // output lengthwithoutpadding intoLen = ((iLen + 2) / 3) * 4; // output lengthincludingpadding char[] out = newchar[oLen]; intip = 0; intop = 0; while (ip < iLen) { int i0 = in[ip++] & 0xff; int i1 = ip < iLen ? in[ip++] & 0xff : 0; int i2 = ip < iLen ? in[ip++] & 0xff : 0; int o0 = i0 >>> 2; int o1 = ((i0 & 3) << 4) | (i1 >>> 4); publicclass Base64Coder { // Mappingtablefrom 6-bit nibbles to Base64 characters. privatestaticchar[] map1 = newchar[64]; static { int i = 0; for (char c = 'A'; c <= 'Z'; c++) { map1[i++] = c; } for (char c = 'a'; c <= 'z'; c++) { map1[i++] = c; } for (char c = '0'; c <= '9'; c++) { map1[i++] = c; } map1[i++] = '+'; map1[i++] = '/'; } // Mappingtablefrom Base64 characters to 6-bit nibbles. privatestatic byte[] map2 = new byte[128]; static { for (int i = 0; i < map2.length; i++) { map2[i] = -1; } for (int i = 0; i < 64; i++) { map2[map1[i]] = (byte) i; } } /** * Encodes a string into Base64 format. * No blanksorlinebreaks are inserted. * @param s a String to beencoded. * @return A String withthe Base64 encoded data. */ publicstatic String encodeString(String s) { returnnew String(encode(s.getBytes())); } /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in) { returnencode(in, in.length); } /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @param iLennumberof bytes to process in <code>in</code>. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in, intiLen) { intoDataLen = (iLen * 4 + 2) / 3; // output lengthwithoutpadding intoLen = ((iLen + 2) / 3) * 4; // output lengthincludingpadding char[] out = newchar[oLen]; intip = 0; intop = 0; while (ip < iLen) { int i0 = in[ip++] & 0xff; int i1 = ip < iLen ? in[ip++] & 0xff : 0; int i2 = ip < iLen ? in[ip++] & 0xff : 0; int o0 = i0 >>> 2; int o1 = ((i0 & 3) << 4) | (i1 >>> 4); /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in) { returnencode(in, in.length); } /** * Encodes a byte arrayinto Base64 format. * No blanksorlinebreaks are inserted. * @param in anarraycontainingthe data bytes to beencoded. * @param iLennumberof bytes to process in <code>in</code>. * @return A characterarraywiththe Base64 encoded data. */ publicstaticchar[] encode(byte[] in, intiLen) { intoDataLen = (iLen * 4 + 2) / 3; // output lengthwithoutpadding intoLen = ((iLen + 2) / 3) * 4; // output lengthincludingpadding char[] out = newchar[oLen]; intip = 0; intop = 0; while (ip < iLen) { int i0 = in[ip++] & 0xff; int i1 = ip < iLen ? in[ip++] & 0xff : 0; int i2 = ip < iLen ? in[ip++] & 0xff : 0; int o0 = i0 >>> 2; int o1 = ((i0 & 3) << 4) | (i1 >>> 4);
15. HOW IS IT POSSIBLE? UsingMakerAll® as thedevelopmenttool Usinganagileandproductadaptedmethodology (Maker Express) Welltrainedteam 3 Pillars: Processes, People, Products...
16. CASE: NATIONAL PARLIAMENT CHAMBER Final officialclientreport: testedproductivityof23,80 PointsofFunction per hour!
19. INOVATION BECAME NEWS Extensivenational media coverageofcompanystart-upandproduct release
20. ESPECIALIZED MEDIA EVALUATION Info: thebiggestBrazilianespecialized IT magazine MAKER All® TechnicalEvaluation April, 2008
21. THE BEST ENTERPRISE WEB APPLICATIONS DEVELOPMENT TOOL ! 2008: comparisonwiththebiggest players in theindustry 7,6 7,8 8,2 8,3
22. NATIONAL REWARDS “The best 2008 software in all categories” Brazilian National Association of IT Companies “The best Web applications development tool” Info Magazine
23. THE COMPANY Softwell Solutions was born from an idea to simplify processes and enhance the business strategies. After more than 8 years of research, involving dozens of multidisciplinary teams, we were able to create a strong brand, with solid and innovative projects. With only 3 years of birth and more than 600 clients the company is growing at extremely fast pace and starting to reach international markets. With consolidated operations in Brazil and Europe and starting operations in Africa and Canada we want to be recognized worldwide as a young and creative company within the global software industry.
24. COMPANY HISTORY The Freire Group SoftwellSolutions is a start-upfromthe Freire Group - importantBrazilianprivategroupofeightcompaniesthathasinvestmentsonthesegmentsof: HighTechnology, Energy, Digital Media andComunications. Freire Informática Inc. TheoriginofMakerAll® andSoftwellSolutions is Freire Informática Inc. – thethirdlargestBrazilian Software HouseespecializedonGovernmentSolutions. With 25 yearsofmarketexperiencetheirsolutions are present in eight states and 20% ofallbrazilianmunicipalities. BirthofMakerAll® MakerAll® wasborninside Freire Informática Inc. aftereightyearsofresearchoninovativeandagilepractices in software development. It is nowthe standard platform for all Freire projectsandhundredsof its clientsandpartners.
25. WORLDWIDE OPERATIONS Partner Canada Unit Madrid/ES Unit Lisboa/PT Headquarters Salvador/BA 38 Partners in Brazil Partner Angola Unit São Paulo/SP
26. CONTACTS SoftwellSolutionsLatinAmerica Magalhães Neto Avenue, 1856, 14th floor, Salvador/BA - Brazil +55 71 2108 3800 Barão do Triunfo Street, 73, 12th floor, São Paulo/SP - Brazil +55 11 5093-7843 SoftwellSolutionsEurope Empresarial Torres de Lisboa, ZipCode 1600-209, Lisboa/PT +351 217 230 647 Calle Orence, 85, Ed. Lexington, Zip Code 28020, Madrid/ES +34 915 678 494
- Nós que somos programadores sabemos o quanto é prazeroso mas muito trabalhoso aprender uma tecnologia nova. Quantas noites de sono perdemos, para aprender uma nova linguagem? Todas as linguagens são iguais, Implementam os mesmos conceitos(condicionais, laços, desvios) que muda é a sintaxe. A área de TI é fascinante, surgem muitas novidades em um curto espaço de tempo, mas nem sempre isso traz bons resultados
Sejam bem vindos ao mundo MakerUma IDE para desenvolvimento de aplicações WEB, com independência tecnológica(as aplicações criadas funcionam em Java e .NET), com independência de banco de dados(as aplicações criadas funcionam com os bancos homologados(postgres, mssqlserver, oracle, db2, firebird, mySql , etc)) com um ambiente de desenvolvimento 100% visual e implementado todos os conceitos de IDE como componentização, reutilização de código, modularização, extensão da APIdentre outros.Ou seja, o Maker não é um gerador de códigos, nem uma ferramenta case nem um framework.Mas como se faz para implementar independenciatecnologica?
Nosso treinamento de capacitação, e posterior certificação é feito em 40 hPois pelo fato da ferramenta ser extremamente intuitiva não é necessário aprender mais uma linguagem de programação.
O Maker consegue reduzir o hiato que existe entre especialista de domínio e especialista de software(desenvolvedor).Ou seja com esta estrutura visual é muito mais fácil especificar e entender uma regra de negocio.Mas como o Maker terá aderência em seu projeto de Software?
Em abril de 2008 sofremos uma avaliação da mídia especializada em TI, a info exame fez uma reportagem completa sobre o Maker mostrando todas as características da ferramenta e todos os pontos positivos do produto.
- Neste mesmo ano várias ferramentas foram avaliadas como podemos observar, nosso produto brasileiro teve a melhor avaliação dentre todos os produtos avaliados, isso reflete de forma incontestável a qualidade do Maker.
Possuimosumarede de Canais no brasil, e escritórios no Canadá, Portugal, Espanha e Angola.
Possuimosumarede de Canais no brasil, e escritórios no Canadá, Portugal, Espanha e Angola.
Possuimosumarede de Canais no brasil, e escritórios no Canadá, Portugal, Espanha e Angola.