Posts

Showing posts with the label Functional

Digital Transformation

Digital transformation is gaining a lot of ground in recent times as companies try go more digital. So, what is digital transformation? What does it mean? Digital transformation means transforming the business processes using digital technologies. Transformation is a continuous process and is not a one time activity. Transforming can be further explored as below: Create business processes wherever required  Re-engineer processes to eliminate non-essential and non-value adding steps Add newer steps for creating value Streamline the process flow to increase efficiency    Digital technologies can be understood as technologies that use digital data Now, how can we have bring about digital transformation? Digital Transformation aims to create value in each stage or step of a process. For this value should be first created for the overall process. This value should also need to be measurable so that analysis can be done. For making it measurable, it is important that the o...

RACI matrix

RACI is a matrix used to assign roles and bring in accountability to complete tasks and deliverable in projects. It is a responsibility assignment matrix. R- Responsible - This is assigned to the person who is responsible to complete the task. There can multiple people with this roles and there should be at the least one person with this role for any given task A-Accountable- This is assigned to the person who is accountable for the task and signs offs the change/task/deliverable. He/she is the one who is answerable for the task. There should only be 1 person who is accountable for any given task C- Consulted- This is assigned to those people whom the doers of the task consult in case of queries and clarifications. They are SMEs or business people in most cases. I- Informed- This is assigned to those people who should be informed of the task

Requirement Prioritization

Any project will start with a requirement. Requirements are the fundamental building block of a project. Based on the various constraints present we will have to prioritize the requirements in order to build a robust product in successful iterations. In simple terms prioritization means ranking of requirement subject to constraints. General constraints that we face are budgetary, timelines, resources and business impact.It is imperative that the requirements are prioritized and that too early in the project. The most common method that I use is the MoSCoW technique.This can be broken down as-Must Have, Should Have, Could Have and Won't have. Must Have- These requirements are those which are the most critical pieces of the project without which the project will not be complete. These MUST be taken up.  Should Have-These requirements are important ones but are not as critical as must haves. There could be workarounds available and these SHOULD be taken up based on the constrain...

A few marketing fundamentals

Maslow's hierarchy of needs Physiological Safety Love/belonging Esteem Self actualization Porter's 5 forces Bargaining power of Customers Bargaining power of Suppliers Threat of new Entrants Threat of substitutes Competitive rivalry within the industry SWOT:  Strength Weakness Opportunities Threats

User stories

User stories are the smallest unit of activity of a functionality. They are used capture an activity or feature that an end-user does or is impacted with. In essence, user stories are made from functional requirements. A functional requirement can have multiple user stories. User stories should have the following structured in anyway deemed fit- User story number Parent functionality number Name Created by Created/Last Updated Date Actor(s) Description Trigger Pre-condition(s) Post-condition(s) Success criteria A good user story will have the following qualities- Simple Clear Concise Verifiable/testable Complete Consistent Viable A good user story will also contain the answers to what, why, when, where and how questions.

Mobile Wallets- Game changers

Image
Sources:  http://timesofindia.indiatimes.com/tech/computing/A-guide-to-mobile-wallets/articleshow/48641325.cms https://www.techinasia.com/talk/mobile-wallet-wars-india

21 tips to understand an AS-IS process

Learning the AS-IS process of a system is the first and foremost thing a person has to do while designing a solution to automate it. Here are few pointers on how to go about understanding it. Learn the basic end to end flow Know what are the data entry points Understand what happens to the data that enters a system The places where data are presented to the user The points where communication is send to the customer/user Make a list of systems that interact with the concerned application The different protocols (like SOAP) used to communicate between applications If there is a communication, the acknowledgements being sent/received if any The various validations that happen at various places within and outside the system Check for duplicate validations Make a list of manual interactions that take place in the process Figure out error prone areas- Tip: manual interactions are error prone Thoroughly understand exception handling situations What happens when one of the in...

User story template

Things to keep in mind while writing a user story What is being performed – there should be single action in a story What is input to the action? What is output? What if the output is not as expected? – it should be error What do we do for error? – just log the error in system/display on screen/send communication (any combination of these) Are we connecting to any other system? If YES then what is protocol to connect. E.g. HTTP/HTTPS/SOAP/SQL query/STORED PROC What if we are not able to connect to system? – how to handle that error Error message to be displayed??? User Requirement ID User Story Name: User Story Number: Created By: Date Created: Actor(s): Description: Trigger: Pre-conditions: Post-conditions: Success Criteria Special Com...

Design Patterns commonly used in OOP

A design pattern is a general reusable solution to a commonly occurring problem within a given context in software design. It is a framework based on which applications can be made. They are widely used in Object Oriented Programming/Design. The intent of this post is to give general awareness on the various design patterns that are commonly used.  Strategy Pattern According to the GoF book, Strategy design pattern should “Define a family of algorithms, encapsulate each one, and make them interchangeable. Strategy lets the algorithm vary independently from clients that use it.”  You encapsulate code in external algorithms for easy use rather than spreading it around inside your core code and modifying it throughout that code. Decorator Pattern According to the GoF book, Decorator Pattern should “Attach additional responsibilities to an object dynamically. Decorators provide a flexible alternative to subclassing for extending functionality.” Factory Pattern Ac...