Thursday, January 28, 2016

Software Development Life Cycle and Design Thinking Process


Software Development Life Cycle:
  • System Analysis, requirements gathering: Defines project goals into defined functions and operation with the objective in mind. It is the process of gathering user requirements, diagnosing problems and recommending improvements to the future system.
    • A series of steps followed by the developer are:
      • 1) Gathering Facts: End user requirements are obtained through documentation, client interviews, observation and questionnaires - asking what the user is currently doing and if there are any specific improvements they want or prefer.
      • 2) Scrutiny of the existing system: Identify pros and cons of the current system-in-place, so as to carry forward the pros and avoid the cons in the new system.
      • 3) Analyzing the proposed system: Solutions to the shortcomings in the step two are found and any specific user proposals are used to prepare the specifications.
  • System Design: Describes desired features and operations in detail, including screen layouts, rules, guidelines, process (data flow and entity relation) diagrams, pseudocode and other documentation.
  • Development: The real code is written here.
  • Integration and testing: Brings all the modules (pieces) together into a special testing environment, then checks for errors, bugs and interoperability.
  • Maintenance: During the maintenance stage of the SDLC, the system is assessed to ensure it does not become obsolete. This is also where updates are made to the initial software. It involves continuous evaluation of the system in terms of its performance and completing the change requests based on the feedback.

Design Thinking Process:
User submitted image
Empathize: Work to fully understand the experience of the user for whom you are designing. Do this through observation, interaction, and immersing yourself in their experiences.

Define: Process and synthesize the findings from your empathy work in order to form a user point of view that you will address with your design.

Ideate: Explore a wide variety of possible solutions through generating a large quantity of diverse possible solutions, allowing you to step beyond the obvious and explore a range of ideas.

Prototype: Transform your ideas into a physical form so that you can experience and interact with them and, in the process, learn and develop more empathy.

Test: Try out high-resolution products and use observations and feedback to refine prototypes, learn more about the user, and refine your original point of view.

No comments:

Post a Comment