viernes, 6 de marzo de 2009

3.1 Determinar la factibilidad y el manejo de las actividades de análisis y diseño de proyecto

Definición de objetivos.

El objetivo de la Planificación del proyecto de Software es proporcionar un marco de trabajo que permita al gestor hacer estimaciones razonables de recursos costos y planificación temporal. Estas estimaciones se hacen dentro de un marco de tiempo limitado al comienzo de un proyecto de software, y deberían actualizarse regularmente medida que progresa el proyecto. Además las estimaciones deberían definir los escenarios del mejor caso, y peor caso, de modo que los resultados del proyecto pueden limitarse.

El Objetivo de la planificación se logra mediante un proceso de descubrimiento de la información que lleve a estimaciones razonables.

Determinación de recursos:

Es la estimación de los recursos requeridos para acometer el esfuerzo de desarrollo de Software, esto simula a una pirámide donde las Herramientas (hardware y Software), son la base proporciona la infraestructura de soporte al esfuerzo de desarrollo, en segundo nivel de la pirámide se encuentran los Componentes reutilizables.

Y en la parte más alta de la pirámide se encuentra el recurso primario, las personas (el recurso humano).

Cada recurso queda especificado mediante cuatro características:

Descripción del Recurso.

Informes de disponibilidad.

Fecha cronológica en la que se requiere el recurso.

Tiempo durante el que será aplicado el recurso.

Estudio de factibilidad:

Es importante determinar que el sistema solicitado sea factible. En la investigación preliminar existen tres aspectos relacionados :

Factibilidad técnica: El trabajo ¿ puede realizarse con el equipo actual, la tecnología existente de software y el personal disponible? Si se necesita nueva tecnología ¿cuál es la posibilidad de desarrollarla?

Factibilidad económica: Al crear el sistema ¿los beneficios que se obtienen serán suficientes para aceptar los costos?, ¿los costos asociados con la decisión de no crear el sistema son tan grandes que se debe aceptar el proyecto?

Factibilidad operacional: Si se desarrolla e implanta, ¿será utilizado el sistema?, ¿existirá cierta resistencia al cambio por parte de los usuarios que dé como resultado una disminución de los posibles beneficios de la aplicación?

El estudio de factibilidad lo lleva a cabo un pequeño equipo de personas (en ocasiones una o dos) que está familiarizado con técnicas de sistemas de información; dicho equipo comprende la parte de la empresa que participará (cliente) , y gente experta en los procesos de análisis y diseño de sistemas.

La recolección de datos:

se refiere al uso de una gran diversidad de técnicas y herramientas que pueden ser utilizadas por el analista para desarrollar los sistemas de información, los cuales pueden ser la entrevistas, la encuesta, el cuestionario, la observación, el diagrama de flujo y el diccionario de datos.

LA ENTREVISTA

Las entrevistas se utilizan para recabar información en forma verbal, a través de preguntas que propone el analista. Quienes responden pueden ser gerentes o empleados, los cuales son usuarios actuales del sistema existente, usuarios potenciales del sistema propuesto o aquellos que proporcionarán datos o serán afectados por la aplicación propuesta.

Cuestionario

Los cuestionarios proporcionan una alternativa muy útil para la entrevista; si embargo, existen ciertas características que pueden ser apropiada en algunas situaciones e inapropiadas en otra. Al igual que la entrevistas, deben diseñarse cuidadosamente para una máxima efectividad.

La Observación:

Consiste en observar a las personas cuando efectúan su trabajo. Como técnica de investigación, la observación tiene amplia aceptación científica. Los sociólogos, sicólogos e ingenieros industriales utilizan extensamente ésta técnica con el fin de estudiar a las personas en sus actividades de grupo y como miembros de la organización. El propósito de la organización es múltiple: permite al analista determinar que se está haciendo, como se está haciendo, quien lo hace, cuando se lleva a cabo, cuánto tiempo toma, dónde se hace y por qué se hace.

Diagrama de flujo de datos y SSA


SSA Diagrama de flujo de datos



Diagramas de flujo de datos y DFDs: notación


DFDs : reglas y consejos








DFDs: elaboracion



DFDs : elaboración y DFDs consejo: denominación




DFDs jerarquizados


DFDs jerarquizados






diagrama de contexto y Proceso Gestión Librería


DFDs jerarquizados: reglas


DFDs jerarquizados: consejos




Ejemplos de nombres


domingo, 1 de marzo de 2009

Estructura General de Programas en Pascal




Estructuras general de programas en Pascal


Pascal es un lenguaje de programación de alto nivel, que facilita la práctica de la programación estructurada. Utiliza un traductor que produce código ejecutable, lo cual disminuye los tiempos de ejecución de los programas.

El lenguaje Pascal fue desarrollado por Niklaus Wirth, con el propósito de ayudar a los estudiantes en el manejo de las técnicas de la programación estructurada, pero en la actualidad su aplicación es de propósitos generales.

Program identificador ; {cabecera opcional en Turbo Pascal}

Uses identificadores

Label lista de etiquetas ; {sección de etiquetas}

Const

definiciones de constantes

Type

declaración de tipos de datos definidos por el usuario

Var

declaración de variables

Procedure

definiciones de procedimientos

Function

definiciones de funciones

begin {cuerpo del programa}

sentencias

end.


Las cinco secciones de declaración -Label, Const, Type y Procedure y/o Function , así como la cláusula Uses y Program, no tiene que estar presentes en todos los programas. Turbo Pascal es muy flexible al momento de escribir las secciones de declaración, ya que se pueden hacer en cualquier orden (en Pascal estándar ISO si se require este orden). Sin embargo es conveniente seguir el orden establecido, le evitará futuros problemas.

Ejemplo:

Program MiPrimerPrograma; {cabecera}

Uses

Crt; {declaraciones}

Const

iva =0.10;

Type

cadena =string[35];

meses =1..12;

Var

sueldo :real;

numero :integer;

nombre :cadena;

Nmes :meses;

begin

ClrScr; {Limpia la pantalla}

Write ('Escribe tu nombre : ');

{Visualiza información en pantalla}

ReadLn(nombre);{Leer un dato del teclado}

WriteLn ('Bienvenido ', nombre);

{Visualiza información en pantalla}

Readkey; {Espera la pulsación de una tecla}

ClrScr

end.

Identificadores

Identificadores

En la mayoría de los programas de computador,es necesario manejar datos de entrada o de salida, los cuales necesitan almacenarse en la memoria principal del computador en el tiempo de ejecución. Para poder manipular dichos datos, necesitamos tener acceso a las localidades de memoria donde se encuentran almacenados; esto se logra por medio de los nombres de los datos o IDENTIFICADORES.

Los identificadores también se utilizan para los nombres de los programas, los nombres de los procedimientos y los nombres de las funciones, así como para las etiquetas, constantes y variables.

Las reglas para formar los identificadores en Pascal son las siguientes :

  1. Pueden estar compuestos de caracteres alfabéticos, numéricos y el carácter de subrayado ( _ ).
  2. Deben comenzar con un carácter alfabético o el carácter de subrayado.
  3. Puede ser de cualquier longitud (sólo los 63 primeros caracteres son significativos).
  4. No se hace distinción entre mayúsculas y minúsculas.
  5. No se permite el uso de los IDENTIFICADORES RESERVADOS en los nombres de variables, constantes, programas o sub-programas.

Identificadores válidos

Nombre
Cadena
Edad_Maxima
X_Y_Z
Etiqueta2

Identificadores no válidos

Num&Dias : carácter & no válido
X nombre : Contiene un blanco
begin    : es una palabra reservada
eje@s : carácter @ no válido

Elección de identificadores

La elección de identificadores permite una mejor lectura y comprensión de un programa. No es aconsejable utilizar identificadores que no sugieran ningún significado.

La siguiente tabla muestra los IDENTIFICADORES RESERVADOS en Turbo-Pascal. Los marcados con un asterisco no están definidos en Pascal estándar . Los marcados con ? no se utilizan en Turbo-Pascal

*ABSOLUTE

IN

VAR

RECORD

*AND

*OVERLAY

GOTO

ELSE

ARRAY

*STRING

?PACKED

WHILE

*EXTERNAL

BEGIN

TO

LABEL

FILE

FOR

DIV

REPEAT

FORWARD

OF

*INLINE

WITH

NIL

THEN

PROCEDURE

END

*SHL

CASE

UNTIL

MOD

AND

FUNCTION

DO

SET

FILE

OR

IF

*XOR

NOT

TYPE

PROGRAM


*SHR

CONST

DOWNTO




Turbo-Pascal define los siguientes IDENTIFICADORES ESTANDAR de tipos predefinidos, constantes, variables, procedimientos y funciones. Cualquiera de ellos puede ser redefinido, perdiéndose así la facilidad de utilizar su definición original.

ADDR

DELAY

LENGTH

RELEASE

ARCTAN

DELETE

LN

RENAME

ASSIGN

EOF

LO

RESET

AUX

EOLN

LOWVIDEO

REWRITE

AUXINPTR

ERASE

LST

ROUND

AUXOUTPTR

EXECUTE

LSTOUTPTR

SEEK

BLOCKREAD

EXIT

MARK

SIN

BLOCKWRITE

EXP

MAXINT

SIZEOF

BOOLEAN

FALSE

MEM

SEEKEOF

BUFLEN

FILEPOS

MEMAVAIL

SEEKEOLN

BYTE

FILESIZE

MOVE

SQR

CHAIN

FILLCHAR

NEW

SQRT

CHAR

FLUSH

NORMVIDEO

STR

CHR

FRAC

ODD

SUCC

CLOSE

GETMEM

ORD

SWAP

CLREOL

GOTOXY

OUTPUT

TEXT

CLRSCR

HALT

PI

TRM

CON

HEAPPTR

PORT

TRUE

CONINPTR

HI

POS

TRUNC

CONOUTPTR

IORESULT

PRED

UPCASE

CONCAT

INPUT

PTR

USR

CONSTPTR

INSLINE

RANDOM

USRINPTR

COPY

INSERT

RANDOMIZE

USROUTPTR

COS

INT

READ

VAL

CRTEXIT

INTEGER

READLN

WRITE

CRTINIT

KBD

REAL

WRITELN

DELLINE

KEYPRESSED