lunes, 22 de agosto de 2016

Common software development myths:

Management myths:

  1. -           Members of an organization acquire all the information they need from a manual. Standards are often incomplete, unadaptable and outdated. Developers are often unaware of established standards. Developers rarely follow the known standards.
  2. -         If the project is behind schedule, increasing number of programmers can reduce time gap. New workers take longer to learn about the project, compared to those already working on the project.
  3. -      If the project is outsourced to a third part, the management can relax and let the other firm develop software for them. Outsourcing software does not help the organization, which is incompetent in managing and controlling the software project internally.
  4. -   Brief requirement stated in the initial process is enough to start development-, detailed requirements can be added at the later stages. Starting development with ambiguous requirement lead to software failure, you need a complete and formal description of requirements before starting. Adding requirements requires repeating the entire development process.
  5. -        Software is flexible, hence software requirements changes can be added during any phase of the development process.  Incorporating change requests earlier in the development process cost lesser than those that occurs at later stages. This is because incorporating changes later may require redesigning and extra resources.
 
DEVELOPER MYTHS:


  1. -    Software development is considered complete when the code is delivered. 50 to 70% of all the efforts are expended after the software is delivered to the user.
  2. -        The success of a software project depends on the quality of the product produced. The quality of programs is not the only factor that makes the project successful instead the documentation and software configuration also play a crucial role.
  3. -        Software engineering requires unnecessary documentation, which slows down the project. Software engineering is about creating quality at every level of the software project. Documentation enhances quality which results in reducing the amount of work.
  4. -        The only product that is delivered after the completion of a project is the working program(s).  The deliverables of a successful project include not only the working program but also the documentation to guide the users for using the software.
  5. -        Software quality can be assessed only after the program is executed.  The quality of software can be measured during any phase of development process by applying some quality assurance mechanism, one such mechanism is formal technical review that can be effectively used during each phase of development to uncover certain errors.


SOFTWARE DEVELOPMENT LIFE CYCLE:  


Requirements are:

  • FUNCTIONAL (code) is what the software must do.

  • NON-FUNCTIONAL is what do we expect from the software, like easy to use, useful, use it, esthetics, simple, free of errors, fast, usability, adaptable, reliable error handling, all nonfunctional requirements are subjective).
  • DESIGN: Architecture, are blueprints of how to develop software. Models, is how different process are organized, process, task, domain – diagram models, dialog model (how the information gets in, how to interact with the software), stats model (states of each class for the system to work).

  • IMPLEMENTATION: Programming.

  • VERIFICATION: Consist on validate all the functional and nonfunctional requirements. The requirements must be measurable.

  • MAINTENANCE: Is the modification of a software product after delivery to correct faults, to improve performance or other attributes

No hay comentarios:

Publicar un comentario