El único curso con un #

En México todas nuestras clases desde que estamos en la primaria son completamente aburridas. Es muy raro ver a un maestro que disfruta dar clases y más que eso que hace que sus alumnos disfruten de su clase. En toda mi vida solo he tenido 3 maestros que han hecho de la escuela un lugar de diversión.

#TC1019

La clase de Fundamentos de Ingeniería de Software fue una experiencia diferente a las que había vivido en años. Al entrar a la universidad no esperaba tener clases de este tipo, tan animadas y con un maestro que disfruta lo que hace.

El Tec21 se caracteriza por crear nuevas técnicas de enseñanza, y sin duda el aprender por ti mismo es una muy buena ya que te permite descubrir el aprendizaje por ti mismo; pero Ken Bauer va más allá. Para empezar trata a sus alumnos como personas, y no como simples minions que van a aprender de algo.

Su clase y sus palabras te dicen que siempre está atento a los sentimientos de los estudiantes. Cuando necesitas momentos para ti mismo u otras materias, él te ofrece ese tiempo que es valioso para cualquier persona.

En esta nube no llueve

Todos usamos la nube, mejor conocidas como “The Cloud” en inglés. Algunos pueden decir que no es verdad, que todo lo que usan es su computadora. Pero al final, no se dan cuenta que la nube no es un lujo más en la web; la nube se ha convertido en algo fundamental para el uso de un ordenador y por supuesto de internet.

¿En qué la uso?

almacenamiento-en-la-nubeEl uso más común es en los correos electrónicos que usamos a diario. Al momento de entrar a tú correo, no estás viendo la información directo de la computadora. Lo que está sucediendo es que se observa un reflejo de lo que está guardado en la nube, al entrar al correo solo se está dando acceso a ese espacio y todo lo que se haga se modificara directamente.

Otro uso común es en proveedores de espacio. Servicios como Drive, Dropbox, OneDrive o  Box, dan espacio en la nube para que las personas puedan guardar sus archivos. Sin duda algo que se veía como un lujo antes, ahora es algo indispensable, y los que proveen este servicio se ven recompensados.

 

Referencias:

http://aprenderinternet.about.com/od/ConceptosBasico/a/La-Nube-En-Internet.htm

http://www.conexionbrando.com/1389864-que-es-la-nube-para-que-sirve-y-cuales-son-los-servicios-que-tenes-que-conocer

Software Verification and Validation

Julia's Blog

slide_42.jpg

Verification and Validation are important during the Software Lifecycle because they help us to find and correct errors as soon as possible, thus preventing the delivery of a faulty product to a costumer. Is it a good product or not?

There are two aspects of V&V tasks:

  • Confirms to requirements
  • Fit for use

It’s important to outline the difference between these two terms:

  1. Verification:
    1. Process to evaluate the mediator products to check wheter the products satisfy the conditions imposed during the beginning of the phase.
    2. “Are we building the product right?”
    3. It uses static testing.
    4. A verifier stablishes that the product implements all the requirements documented in the SRS.
  2. Validation: 
    1. Process of evaluating the final product to check if it meets the business needs.
    2. “Are we building the right product?”
    3. It uses dynamic testing.
    4. The validator establishes that the SRS is a true reflection of the user’s needs.

Source:

View original post

Designing a UI

A UI or User Interface is every single interaction of a software with the users. The UI is a big part of developing a program. Without an attractive view, the UX (User experience) and usability of that software will go down.

350px-linux_kernel_input_ouput_evdev_gem_usb_framebuffer-svg

Interface design is made totally for the public. So if the public don’t like it, your development won’t work. That’s why it should have some elements like these ones:

  • Input Controls: buttons, text fields, checkboxes, radio buttons, dropdown lists, list boxes, toggles, date field
  • Navigational Components: breadcrumb, slider, search field, pagination, slider, tags, icons
  • Informational Components: tooltips, icons, progress bar, notifications, message boxes, modal windows
  • Containers: accordion

The key for a good UI is to keep it simple. A page, program or desktop with a lot of elements is not good-looking. Also the colors and typography are important. Attractive colors and different sizes of letters will please the users eyes and gain more views.

Sources:

http://bokardo.com/principles-of-user-interface-design/

https://www.usability.gov/what-and-why/user-interface-design.html

Software Maintenance

Selling and delivering a piece of software is not the only work that a software engineer has. Actually the post-developement processes are important too. Maintaining the software is important for a better performance.

Why is performance so important?

Basically it’s important because if there is a software problem that users won’t like it, and if that problem is not fixed then the users will stop using it.

maintenance_cost_chartBut, even when performance is so important, the majority of fixes during the software maintenance is not for it. Main changes are for software evolution. Time changes and programs should too.

Maintaining a program is part of the software life cycle, but it is not as important as the development part. In my opinion it should be that important, because that process is the one that helps the software to be alive. Without this process our softwares are obsolete and wouldn’t live so long.

 

Sources:

https://www.tutorialspoint.com/software_engineering/software_maintenance_overview.htm

http://swebokwiki.org/Chapter_5:_Software_Maintenance

Testing our programs…

What is software testing?no-surprises

Software testing is the process of executing an application or program with the intent of
finding software bugs. It also can be used to see if the intentions of the software were made; validate or verify that the program works as expected. NO SURPRISES!

Continue reading “Testing our programs…”

Software Requirements…and stuff

Software Engineering

As easy as it sounds, software requirements are requirements for software. But let’s dig a little bit deeper. Requirements are not only the functions required, actually this might be the least of the concerns in terms of requirements.  Requirements must surpass all of the client’s expectations.

There’s even a science in charged of this analysis; and it is called Requirement Engineering  its goal is to develop a very very very special and important document called the System Requirements Specification.

It involves mainly four steps, although there are text that claim it to be more than that and they are:

  • Feasibility Study:  This is the initial stage. In this one, the requirement engineer must meet the client in order to talk about the general expectations. Then, he produces a very wide and thorough analysis on the possible constrains, implementation cost, and objectives. It also explores the technical aspects of the…

View original post 269 more words

Understanding Software Architecture

Software Architecture is the representation of the program that helps to understand how the software will behave. It serves as a guide for the design and the implementation teams. And is the first line of the system’s quality, such as performance, modifiability, and security. None of these could be done without an architectural vision.

Continue reading “Understanding Software Architecture”