Wednesday, 8 October 2014

Programming

Computer programming process (often referred as programming), very simplistically,
 
Problem in hand -- > Algorithm to solve the problem -- > Making it as an executable application
It involves analysis, understanding of the problem It involves verification of requirements of the algorithm including its correctness and its resource consumption, implementation (commonly referred to as coding) of the algorithm It involves executable Application or Component that gets installed or referenced

Software Development Process
 
Core Activities
 
Requirements-Specifications-Design-Construct-Testing-Deployment-Maintenance.
 
Methodologies
 
Water fall, Prototype, Iterative, Spiral, Agile
 
Supporting disciplines
 
Configuration Management, Software Quality Assurance (SQA), Project Management, User Experience.
 

Wednesday, 17 September 2014

SCRUM Study


I always wanted (as brief as possible) to keep important material in writing and here is one in Agile methodology space, SCRUM Fundamentals. Based on SBOK Guide book, SCRUM fundamentals are broadly divided into following three main areas.

1. Principles: There are six principles which form foundation on which SCRUM is based.
2. Aspects: There are five Aspects that are important considerations.
3. Processes: There are nineteen Scrum Processes.

Description of each one in brief as follows.

SCRUM Principles

1. Empirical Process Control: This principle emphasizes the core philosophy of Scrum based on the three main ideas of Transparency, Inspection, and Adaption
 
2. Self-Organization: This principle focuses on today's workers, who deliver significantly greater value when self-organized and this results in better team buy-in and shared ownership; and innovative and creative environment which is more conducive for growth.
 
3. Collaboration: This principle focuses on the three core dimensions related to collaborative work; Awareness, Articulation, and Appropriation. It also advocates project mgmt. as a shared value-creation process with teams working and interacting together to deliver the greatest value.
 
4. Values-based Prioritization: This principle highlights the focus of Scrum to deliver maximum business value, from early in the project and continuing throughout.
 
5. Time-Boxing: This principle describes how time is considered a limiting constraint in Scrum, and used to help effectively manage project planning and execution. Time-boxed elements in Scrum include Sprints, Daily Standup Meetings, Sprint Planning Meetings and Sprint Review Meetings.
 
6.Iterative Development: This principle defines iterative development and emphasizes how to better manage changes and build products that satisfy customer needs. It also delineates the Product Owner's and organization's responsibilities related to iterative development.

Scrum Aspects

1. Organization
a) Core Roles:
  Product Owner: Voice of customer and is responsible for achieving max. business value.
  Scrum Master: Facilitator and is responsible for clearing any impediments for the team.
  Scrum Team: Group or Team of people who is responsible for deliverables.
b) Non core Roles:
  Stakeholder(s): includes customer, users and sponsors interacting with core team
  Scrum Guidance Body: consists of set of documents and/or a group of expects involved
                                    in defining objectives related to quality, Gov. regulation,
                                    security and other key organizational parameters.
  Vendor(s): External individual or organization provide product and/or services
  Chief Product Owner: Facilitating the work of multiple product owners and maintaining
                                   business justification for larger project
  Chief Scrum Master: Coordinating multiple scrum teams working in parallel.

2. Business Justification: Prior starting any project, it is important to perform proper business assessment. Business Justification in SCRUM is based on the concept of Value-Driven Delivery.
   
3. Quality: In Scrum, Quality is defined as the ability of the completed product or deliverables to meet the acceptance criteria and achieve the business value expected by the customer.
  

4. Change: Scrum projects welcome change by using short, iterative Sprints that incorporate customer feedback on each Sprint’s deliverables.

5. Risk: Risks should be identified, assessed, and responded to based on two factors: the probability of each risk’s occurrence and the possible impact in the event of such occurrence

Scrum Processes

Phase                                          Process
---------------------------------------------------------------------------------------------
Initiate                                               1. Create Project Vision
                                                            2. Identify Scrum Master and Stakeholder(s)
                                                            3. Form Scrum Team
                                                            4. Develop Epic(s)
                                                            5. Create Prioritized Product Backlog
                                                            6. Conduct Release Planning
----------------------------------------------------------------------------------------------------------------
Plan and Estimate                            7. Create User Stories
                                                            8. Approve, Estimate and Commit User Stories
                                                            9. Create Tasks
                                                            10. Estimate Tasks
                                                            11. Create Sprint Backlog
----------------------------------------------------------------------------------------------------------------
Implement                                         12. Create Deliverables
                                                            13. Conduct daily standup
                                                            14. Groom prioritized Product Backlog
----------------------------------------------------------------------------------------------------------------
Review and Retrospect                   15. Convene Scrum of Scrums
                                                            16. Demonstrate and Validate Sprint
                                                            17. Retrospect Sprint
----------------------------------------------------------------------------------------------------------------
Release                                               18. Ship Deliverables
                                                            19. Retrospect Project 


Source http://www.scrumstudy.com/). You can download complete PDF document "SCRUM Body of Knowledge" (SBOK Guide) from this website.

Wednesday, 10 September 2014

iPhone 6, iPhone 6 Plus and iWatch

Apple on Tuesday,9 Sept, 2014 introduced two new phones, the iPhone 6 and the iPhone 6 Plus, both bigger but sill thinner that anything the company has offered so far. But the real stunner was the new Apple Watch, a stunning new device that will take the wearables race to a whole new level.

Apple CEO Tim Cook introduces the new Apple Watch, on Tuesday in California.
Apple's new wearable device marks the company's first major entry in a new product category since the iPad's debut in 2010


Various comparison parameters between "iPhone 6" and "iPhone 6 Plus"

Parameter            iPhone 6                              iPhone 6 Plus
---------------------------------------------------------------------
Display size           4.7 inch                               5.5 inch
---------------------------------------------------------------------
Resolution             1335 x 750                           1080 x 1920
---------------------------------------------------------------------
Weight                  129 g                                    172 g

********************************************************
Various comparison parameters between "iPhone 6 plus" and "Samsung Galaxy Note 4"

Parameter            iPhone 6 plus                      Galaxy Note4
---------------------------------------------------------------------
display size           5.5 inch                               5.7inch
---------------------------------------------------------------------
Resolution            1080 x 1920                         1440 x 2560
---------------------------------------------------------------------
O/S Version           iOS 8.0                                Android 4.4
---------------------------------------------------------------------
Processor               A8 with MB Co-processor     QUALCOMM SnapDragon 805
                                                                       , quad-core
---------------------------------------------------------------------
RAM                       NA                                      3 GB

---------------------------------------------------------------------
Primary Cam          8 MP                                    16 MP
---------------------------------------------------------------------
Secondary Cam      1.2 MP                                 3.7 MP
---------------------------------------------------------------------
Weight                  172 g                                    176 g