What Is a Discovery Phase and Why Do I Need One for My Project

What is the discovery phase of a project? Imagine hiring an employee without knowing what tasks he needs to perform, what you would be paying him/her and the reason you are employing him. You’d never do that would you? Similarly, when you take up a project, you need to go through the discovery phase.

What is the Discovery Phase?

Discovery phase is the time you take to understand and analyze the project that you are about to invest your time, effort and money into. It helps to reduce failure and ensures that you maximize the potential of the idea. Basically, the discovery phase is where you conduct all the research and plan your entire digital project, as well as understand the stakeholders and the needs of the end customers. This phase helps to reveal the real pain points that you might face while developing the project and understand the how and why. 

Develop a blueprint of your project – outline a project goal statement that includes the exact outcome of the project. You can jot down the following outcomes:

  • Major milestones of the project
  • Cost estimated
  • Functional requirements
  • Potential visual designs
  • Information architecture that explains how the content should be displayed


Basic Steps of the Discovery Phase

Data analytics
Learn about the user habits and go through the analytics of a similar project that is conducted. Look at the areas where the users drop off and the pages of high and low traffic. Try and understand why these problems are occurring and make sure that you don’t make the same mistakes while developing your project.

Audience poll
Understanding what the users want is the key to creating a successful end product. Users can be categorized in age groups, demographics and backgrounds. They all have different needs and wants out of the end product. You can either plan your project so that its applicable to all users or focus on a certain type of users and base your project around that.

Map the journey
Making a plan on the whiteboard is never waste of time. Jotting down the steps and different stages of the project is of key importance. Ensure that when you map your journey, you give enough time for any hiccups that might occur while planning the project.

Questions to be Asked during the Discovery Phase

What are the business needs?
Imagine you are awarded a project that needs to see the light of day. The first step is to identify the stakeholder. Once you identify them, don’t assume that they are going to come with their exact needs. You will need to ask them the following questions:

  • Who their target audience is?
  • Who are the competitors?
  • What the current website content is?
  • How is the content structured? 
  • What is the performance indicator and how are we going to measure it?


What are the user needs?

As mentioned before, determining user needs has a detrimental effect on the finished product. In the discovery phase, you are expected to conduct surveys, expert reviews, speak to focus groups to gather user needs.
You can ask questions such as:

  • Why do the users want to use the service or website?
  • What sort of users are you going to have?
  • What is the user’s journey while using the product going to be?

 
Consequences of Skipping the Discovery Phase

So, what if you plan to skip the discovery phase? What happens then?
Your guesses can go off the mark and you cannot give accurate estimates. You might have to make a “best guess” approach which might go amiss.
The costing is likely to increase if a certain functionality or content does not produce the results as expected. This would increase the overall timeline and efforts for the project.
New or different technologies cannot be put to use if there is no expert advice taken or any research done. This could mean the loss of opportunities to explore ideas.

Conclusion

 As the old saying goes, “It is always better to be safe than sorry!” Getting the discovery phase right is crucial in creating a successful project. It defines the problem space, and sets the parameters for what that service is trying to achieve. The customer satisfaction at the end of the project will heighten the chances of bagging more projects in the future. They may not know the endless meetings and diagrams that were made at the beginning of the project but they will be satisfied with the end product from the get-go. So why not limit the risks to failure by just putting in a little more effort before you start the project? Think about it!
 
 

Why Mobile App Developers Need To Know About Blockchain

Bitcoin has been the latest topic of discussion between work colleagues, business meals and even amongst friends. This virtual currency has made millionaires. Some believe that Bitcoin is a bubble that’s about to burst; while others think that it’s going to magnify its presence and believe that in the near future each Bitcoin could cost around $60,000. Who wouldn’t want to invest in a market where the returns are phenomenal? Everyone wants a piece of this pie!
Like the old saying goes, “With great power comes great responsibility!” Here, the responsibility lies on the digital ledger that records the transactions in a decentralized database located in multiple places – also known as the blockchain. 

What is a Blockchain?

The word blockchain literally means a chain made of blocks. A block is the permanent set of data that is recorded in a ledger. For example, Jack has made a certain monetary transaction with Rose. This information is encrypted and stored on every computer on the system. These blocks are stored in a chronological order and such a chain of records is called a blockchain. The order of these blocks is important as each block has to contain a link of the previous one. These links help to secure the whole data system, so if any one adds any block between two chronological boxes, it is impossible to do without getting noticed. In 2017, the global blockchain technology market is predicted to reach 339.5 million U.S. dollars in size and is forecast to grow to 2.3 billion U.S. dollars by 2021.
Source: https://www.statista.com/statistics/647231/worldwide-blockchain-technology-market-size/
But can a blockchain only be used for financial transactions? Well, the answer is no. Blockchain can be used in various different branches and it can be used in your app too!

Key Point

​The key point to note here is that blockchain technology doesn’t need the support of a middleman or a third party to conduct transactions. One of its most vital features is that it is based on a peer to peer payment. This mechanism will ensure that blockchain can go really far in the app industry.
Global spending on blockchain solutions in 2018, according Stacey Soohoo, Research Manager, Customer Insights and Analysis at IDC, says, “The year 2018 will be a crucial stage for enterprises as they make a huge leap from proof-of-concept projects to full blockchain deployments. As a leader in blockchain innovation and integration, the US will continue to invest in blockchain throughout the forecast, spending heavily in financial services, manufacturing, and other industries.”
Source: https://enterprisersproject.com/article/2018/2/5-blockchain-statistics-cio-reality-check

Blockchain and Mobile Apps

An app based on blockchain technology can be used to make payments, transfer money, prove identity (in case of enterprise apps) and manage health care and property records.
Firstly, the developer needs to create the architecture for the app that is similar to bit coin. But note that the design will vary as per the requirements of the app.
Secondly, the developers should be aware that to develop the app with this technology can be a tricky situation. The developer needs to test and debug the software so that it can run on a single system.
Thirdly, the developers should know about heisenbug – a bug that changes computer operations behavior. Another types of bug is mandelbug – this one creates problems such as abstract behavior of computer, whereas, a bug called schrödinbugs could lead to the app displaying unexpected behavior during an unconventional use.

Benefits of Using Blockchain

Identity Protection
When it comes to security, blockchain has trustworthy mechanism that can assign private key encryption to users and work on cryptography. As we know it is impossible to modify information while working on this decentralized public database.
Also, every data that is entered in blockchain becomes general knowledge with its track record of origin. Blockchain makes data transparent by giving all the parties a direct access to the reports.
Source: Tech Crunch

Infrastructure Protection
A major hack on the brand’s infrastructure can be removed by storing the DNS entries on blockchain. Hence, when the domain records are under the owner’s control it’s impossible for another individual or government to manipulate the entries.

Alternative to Passwords
As we know that the data is already protected by the infrastructure of blockchain technology, its distribution allows authentication of devices and users without the need of password protection. The network decentralization helps in creating consensus between parties for authentication through the blockchain-specific SSL certificates.

Case Studies on the Usage of Blockchain Technology

IBM is launching a network in the early 2018 in Canada where the people’s identity will be verified using a mobile app. They are building a network using blockchain that verifies people’s identities when they use services such as opening new bank accounts or getting driver’s licenses.
Another company called Landmapp is developing a service and mobile app that uses blockchain to document land titles and land rights. This will help developing countries, especially Africa to reduce the cost for titles. ShelterZoom has also built a service and mobile app that focuses on streamlining real estate offers are made using blockchain technology.
Forbes states that “Only 1.2 billion people have access to a bank account with payment capabilities, while there are approximately 5 billion unique mobile phone subscribers.” A partnership between the blockchain mobile payment company TelCoin and telecom companies will allow people who only have mobile phones and no bank accounts to make secure mobile payments using mobile apps. TelCoin co-founder and CEO Claude Eguienta said that the app will “provide financial services to billions of people.”
Source: Forbes Link
 
Conclusion

This technology doesn’t only make it beneficial for the app developers but they also make the application secure for the customers. Also, one can add the element of confidentiality and develop the advanced peer-to-peer payment platforms with the help of distributed nature of the blockchain.
Now that the fundamentals are covered, the developers need to decide whether blockchain fits the specific needs. The blockchain technology definitely seems to have a bright future when in the tech industry. 

Google Plans To Improve App Security: How can it affect your Android App?

With the rise of Android apps, Google Play has strived to focus on security and performance! There are more than 2 million Android devices, and in the year 2017, 82 billion apps were installed on Google Play. So, it is vital that Google Play makes it a positive experience for their users to discover and install apps that they love.

Source: https://www.androidcentral.com/over-82-billion-apps-have-been-installed-google-play-last-year
As we know, every Android application operates within a “process sandbox”. These silos can detect malware and contain them. But if the app requires data sources outside of its unique sandbox, they require permission. Even though Google has tried to keep the app secured, scanners don’t manage to catch everything. The user is not updated about the new permission until he/she updates the app. This makes the users data exposed to malware.
Hence, in the year 2018, Google has announced enhancements for increasing the security and performance for the app. Edward Cunningham, Product Manager of Android states that there are going to be three key changes in year 2018-2019.

Changes in API Requirement

In the second half of 2018, the new apps and app updates in Google Play must be built on APIs which can be optimized for performance and security. Google Play console will require the following updates:

  • August 2018: New apps required to target API level 26 (Android 8.0) or higher.
  • November 2018: Updates to existing apps required to target API level 26 or higher.
  • 2019 onwards: Each year the targetSdkVersion requirement will advance. Within one year following each Android dessert release, new apps and app updates will need to target the corresponding API level or higher.

This update will encourage the developers to create apps that have the latest user-interfacing interface, along with security enhancements. On the other hand, apps that do not adhere to the latest API update will be restricted. Google Play states that it wants to “proactively reduce fragmentation in the app ecosystem”.

64-bit Support Equipment

By August 2019, Android devices will only support the 64-bit code. Android 5.0 Lollipop was the first mobile operated system that introduced higher architecture. Today, more than 40% of devices support 64-bits, and at the same time maintain the 32-bit compatibility.
“The Play Console will require that new apps and app updates with native libraries provide 64-bit versions in addition to their 32-bit versions. This can be within a single APK or as one of the multiple APKs published.”
 
Source: https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html

Security Metadata

In early 2018, Google Play plans to start adding a small amount of security metadata on top of each APK to verify the authenticity of the app. The developers or end users have to take no action on this update. This metadata is small and will not alter the functionality of the app. Google Play has further stated, “This metadata will enable new distribution opportunities for developers in the future and help more people keep their apps up to date”.
The metadata that will be added to APK will be like a Play badge of authenticity for the Android app. This will be just like the ‘Trust’ badge that is seen while buying any authentic product. Google Play further states, “We’ll adjust Play’s maximum APK size to take into account the small metadata addition, which is inserted into the APK Signing Block and does not alter the functionality of your app. In addition to enhancing the integrity of Play’s mobile app ecosystem, this metadata will enable new distribution opportunities for developers in the future and help more people keep their apps up to date”.
Source: https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html

Additional Security Measurements

Further, Android is imposing restrictions on giving permissions. Permissions are of two types: dangerous and normal. When the app requests for the user’s calendar, camera, contacts, location, microphone, SMS or storage, they are classified as dangerous permissions, which are as of now granted. But by the year 2019, every call for private data will be in the hands of the user.
Another component of Android’s security changes is the function that prevents the OS from trusting user-added certificate authorities (CAs) by default. The goal for changing how Android treats CAs is to provide secure app traffic. Android now offers a standardized protocol for integrating trusted system CAs.  

Conclusion

Google Play has gone tremendously in the year 2017 by reducing the risk within the Android app ecosystem. Although, Google cannot predict the new malware of tomorrow, it is taking all the measures to improve security and provide a seamless experience to the user. In the year 2018-2019, we can foresee the measurements that will be taken to protect user data for Android users, thereby improving app security.