Software implementation

Implementation is carrying out, execution, or practice of a plan, a method, or any design, idea, model, specification, standard or policy for doing something. It also is the action that must follow any preliminary thinking in order for something to actually happen.

Software implementation encompasses all the post-sale process involved in something operation properly in its environment, including analyzing requirements, installation, configuration, customization, running, testing, systems integration, user training, delivery and making necessary changes. Sometimes “deployment” is used to mean the same thing as “implementation”.

Usually it starts with negotiating a contract with a vendor. After a contract is agreed to and a project timeline is established, key business units must meet to discuss the organization’s future roadmap.

Each department must agree on clear, quantifiable and well-defined goals for the project and what they each hope to gain out of using

8900391398_ff5e406e51_z

Flying Pig. Flick Foto by tsaiian. https://www.flickr.com/photos/tsaiian/8900391398/

the new technology.

Key players in the implementation process typically meet regularly to discuss the project’s progress, voice concerns and augment procedures as necessary.

After the process for any hardware or software implementation moves through the planning stage, companies should gradually test the new system until it is ready to fully go live.

A subsection of tech-savvy workers within a company is enlisted to try the new system because they would be most keen on picking out glitches or shortcomings of the system to further help the implementation process.

Software implementations should always be designed with the end user in mind and the implementation process usually benefits from the user involvement and support from managers and other top executives in the company.

 

Source:

http://searchcrm.techtarget.com/definition/implementation


The Software Development Process

Brown Hotdog on a Brown Plate

What is a software development process?

The software development process is a structure imposed on the development of a software product. It is a splitting of software development work into distinct phases containing activities with the intent of better planning and management.

There are several models or methodologies, each describing approaches to a variety of tasks or activities that take place duri  ng the process. Common methodologies include the waterfall, prototyping, iterative and incremental development, spiral development, rapid application development, extreme programming and various types of agile methodology. Free stock photo of schedule, startup, to do, concept 

Process Steps

SE processes are composed of many activities/steps:

  • Requirement Analysis
    • While the customer probably believe they know what the software is to do, it is common that you need to recognize incomplete, ambiguous or contradictory requirements.
  • Specification
    • In this step a precise description of the software is to be written. 
  • Software architecture
    • Design an abstract representation of the system. Architecture is concerned with making sure the software system will meet the requirements of the product, as well as ensuring that the future req  uirement can be addressed.
  • Implementation
    • Very self explanatory, code the design.
  • Testing
    • Testing the software.
  • Documentation
    • For the purpose of future maintenance and enhancement.
  • Training and support
    • It is very important to have training classes for the most enthusiastic software users, incorporate the rest of the organization into adopting the new software.
  • Maintenance
    • Maintaining and enhancing software to co  pe with the new problems or new requirements. It may be necessary to add code and determine how the software works. 

 


Agile Software Development

Diego Armando Gracia Hinojosa

German Daniel Treviño Taboada

Agile

Este método se enfoca en construir un producto que es capaz de mejorarse constantemente en contrario  a productos que se hacen una vez  y son estáticos y no mejoran. Se agrega flexibilidad y la manera en que lo hace es mejorando un producto hasta tener un demo y sacarlo para recibir feedback de los usuarios y así poder seguir mejorando.

Los requisitos para mejorar un software tienden a cambiar, los usuarios tienden a pedir una característica que a la larga dejan de usar y esto logra ser algo malo ya que es perdida, pero siempre puede verse como que se están tomando en cuenta las ideas.

Otra característica buena que tiene es que hay muy buena comunicación entre quien esta creando el software y quien es el dueño de este. Todo esto con el fin de llegar a dar un buen producto, y , gracias a esto logra que el tiempo para mejorar el producto sea mucho mas hábil y con facilidad.