O analista de sistemas deve ser capaz de compreender as disciplinas de engenharia de software e as das atividades da organização . A relação existente entre essas duas áreas e o nível corrente de tecnologia determinam a interação entre o exeqüível e o desejável. Cada aplicação em potencial deverá ser submetida a uma séria de exames para se verificar se, de fato, a função solicitada apresentará a  qualidade de desempenho almejada pelo usuário. Se a melhoria em questão parecer ser viável, e havendo os recursos necessários à elaboração da aplicação, o projeto recebe a permissão para prosseguir. Nesta conjuntura, o papel do analista de sistemas muda e o detalhe citado anteriormente deve ser substituído. Para tanto, torna-se necessário identificar as funções que serão entregues quando a aplicação terminar. As funções representarão os “testes” que a aplicação completa deverá satisfazer, a fim de provar que os requisitos foram, realmente, atendidos.
Depois que se estabelece o detalhe  e se especifica totalmente o “que”  pelo menos em sua versão primeira, o papel do analista de sistemas muda mais uma vez, passando a ser o de arquiteto do software e gerente de projeto. O “que ”deverá ser transformado em “como”, simultaneamente á verificação contínua de que a aplicação permanece atendendo ás especificações detalhadas do sistema.
As funções de serviço atribuídas ao analista de sistemas e a profissão ligada á analise de sistemas são extremamente vastas. Muitas organizações definem uma categoria denominada programador / analista, ampliando ainda mais a descrição. Assim, de acordo com a abrangência do título do cargo tanto as organizações quanto os indivíduos se enquadram numa larga gama de usos. As organizações maiores possuem departamentos distintos para analise e programação e contam com analistas que “vivem” ou num grupo ligado a análise de desenvolvimento de sistemas, ou na organização do negócio que utilizará a aplicação. Algumas organizações possuem o cargo de arquiteto de sistemas; outras, o de gerente de projetos e outras ainda o de projetistas de sistemas. Usar-se-á, aqui, uma definição, relacionada com a função e não com as pessoas que desempenham os papéis. A analise de sistemas será discutida em termos de tais funções, desde suas definições básicas até o atual, escrita em código, exclusive…

Retirado da matéria de Análise e Projeto de Sistemas, ministrada pelo professor Levi, na Faculdade de Tecnologia de Sorocaba, a melhor Faculdade de Sorocaba.

Tecnólogo em Processamento de Dados

Atuando nas áreas de Análise de Sistemas, é capaz de desenvolver e administrar projetos de Sistemas de Informação. Conhece características de equipamentos, estando apto a fazer estudos de necessidades e viabilidade técnico-econômica de equipamentos e Sistemas de Informação. Conhece administração de empresas, podendo vir a ser analista de organização ou mesmo assumir todos os níveis de chefias na área de Informática. Pode dedicar-se ao ensino e à pesquisa, dentro do seu campo profissional. Conhece linguagens de programação comerciais e científicas, podendo realizar manutenção de sistemas de computadores e, ainda, como analista de software, pesquisar a otimização e aplicação de sistemas. Pode atuar no dimensionamento, implantação e gerência de redes de teleprocessamento. Conhece estruturas de dados e pesquisas a arquivos, estando habilitado a atuar em áreas de Administração de Dados e Administração de Banco de Dados.

Connected 

Esta é só a página inicial de um futuro grande portal da web, que interligará grandes companhias, serviços e profissionais pelo mundo. Eu sou responsável pela análise e desenvolvimento do site e sistema.
As tecnologias que foram e serão utilizadas são: Adobe Dreamweaver CS3, CSS, Photoshop, PHP, Javascript, AJAX…

Obs.: O trabalho foi realizado como freelancer e o  cliente é da Espanha(Europa).

Seguem dicas de performance em PHP. (obs: são mais que 25)

  1. se um método pode ser static, declare-o como static. Isso irá aumentar a performance umas 4 vezes.
  2. echo é mais rápido do que print
  3. utilize o unset nas suas variáveis para liberar memória (bons tempos em que todo mundo sabia programar em C :P.. “free your mallocs”)
  4. não use require_once()
  5. utilize o caminho absoluto na hora de dar os includes, assim o PHP não perde tempo tentando resolver o caminho.
  6. str_replace é mais rápido do que preg_replace porém strtr é umas 4 vezes mais rápido do que str_replace
  7. utilizar @ para suprimir os erros é muito lento.
  8. habilite o mod_deflate no apache
  9. feche a sua conexão com o banco se você não irá mais utilizá-la (mas não fique abrindo e fechando toda hora!)
  10. $row[’abc’]  é 7 vezes mais rápido do que $row[abc]
  11. não use funções dentro de um laço, como por exemplo, for ($x=0; $x < count($array); $x++)  porque count() vai ser executada em todo ciclo do laço. Utilize: for ($x=0, $c=count($array); $x < $c; $x++).
  12. Incrementar uma variável global é duas vezes mais lento do que incrementar uma variável local
  13. acessar um atributo de um objeto ($obj->atributo++, por exemplo) é 3 vezes mais lento do que acessar uma variável local
  14. incrementar uma variável local não inicializada é 9-10 vezes mais lento do que se ela tivesse sido inicializada.
  15. aspas simples são mais rápidas que aspas duplas
  16. uma aplicação que faça cache dos scripts php vai aumentar a performance entre 25 e 100%.
  17. utilize cache sempre que possível. SEMPRE! (claro que isso tem um onus, mas estamos falando apenas em performance aqui)
  18. Se quiser testar o tamanho de uma string, utilize isset ao invés de strlen. Por exemplo: if (!isset($foo{5})) echo “foo eh mto pequeno!”;
  19. nem tudo precisa ser OO. Métodos e objetos tendem a consumir muito mais memória.
  20. não converta toda estrutura de dados em classes. Utilizar arrays é muito mais rápido.
  21. se você possui funções que demandam muito tempo de execução cogite transforma-las em uma extensão em C.
  22. habilitar o mod_gzip pode economizar em até 80% o tráfego de dados. Sua largura de banda agradece.
  23. evite usar SELECT *. Isso dificulta a manutenção e gasta tempo desnecessário de processamento para descobrir os campos e obter os valores do banco
  24. use switch ao invés de um monte de ifs
  25. json é mais rápido do que xml.
  26. Evite utilizar metódos mágicos como __get, __set e __autoload, se possível;
  27. Se você quer descobrir o tempo em que o script começou a ser executado, é preferível utilizar $_SERVER[´REQUEST_TIME´] do que time();
  28. Veja se pode utilizar strncasecmp, strpbrk e stripos ao invés de regex;
  29. Se uma função, como de substituição de strings, aceitar tanto arrays como caracteres simples como argumentos, e se a sua lista de argumentos não é muito longa, considere fazer algumas declarações redundantes de substituição, passando um caractere por vez, ao invés de uma linha de código que aceita arrays como argumentos de busca e substituição; 
  30. Mensagens de erro demandam mais processamento;
  31. Utilize PHP Speedy

fonte: http://webpub.wordpress.com/2007/11/13/vinte-e-cinco-dicas-de-performance-para-php/
http://imasters.uol.com.br/artigo/8962/php/12_dicas_para_otimizar_seus_codigos_php/

Continuando com os tutoriais, hoje iremos realizar um “Select”.
Utilizaremos o arquivo de conexão que criamos num tutorial anterior http://www.freelancersbrasil.com/conexao-com-mysql/

<?php
//chama o arquivo de conexão com o bd
include(“conectar.php”);

//consulta sql
$query = mysql_query(“SELECT * FROM clientes ORDER BY nome”) or die(mysql_error());

//faz um looping e cria um array com os campos da consulta
while($array = mysql_fetch_array($query))
{
  //mostra na tela o nome e a data de nascimento
  echo $array['nome'].” “.$array['data_nascimento'].“<br />”;
}
?>
Explicando:

Primeiro usamos a função include do php para incluir o arquivo conectar.php que é responsável pela conexão com o banco de dados;
Realizamos a nossa consulta SQL que busca todos os campos da tabela clientes ordenando pelo nome e armazenamos na variável query, obs: no caso de erro a função mysql_error dentro da die irá retornar o erro ocorrido;
Após utilizamos a estrutura repetitiva While e criamos um array da consulta SQL através da função mysql_fetch_array, do ponto de vista lógico ficaria assim: Enquanto houver registros da consulta (que está na var query) armazene os campos no array;
Por fim mostra na tela o conteúdo do campo nome e do campo data_nascimento.

Se tudo ocorreu certo, o resultado será:

Resultado da query

 

No próximo tutorial irei mostrar como criar uma função para tratar a exibição da data.