Are you ready for HIMSS19? We Are!

We’ve been SUPER focused prepping for what will be our fourth year in a row exhibiting at the HIMSS Global Conference & Exhibition. Nitor is excited to connect and collaborate with colleagues around the world.

I can’t wait to share how our partnerships and business have evolved and are taking on new innovative and dynamic forms! In the last two years, our Healthcare business has grown by a staggering 200%. We have been able to achieve this by inculcating disruptive thoughts to bring about transformation at the forefront of healthcare. This time around, we promise to continue our innovation with Peer Product Management. Our idea is to help build the talent capabilities and putting in place the right healthcare product operating model and infrastructure, tailored for your product context.

We are also proud to be the first company to introduce the concept of Research as a Service for Healthcare at HIMSS19. The primary value propositions of our RaaS for the Healthcare organizations will be – innovation, disruption, scalability, flexibility, cost-effectiveness and much more.

I am excited that Nitor’s experienced team will be at HIMSS, the industry-leading conference for professionals in the field of healthcare technology. The conference will bring together more than 40,000 health IT professionals, clinicians, administrators, and vendors to talk about the latest innovations in health technology.

This year, HIMSS will aim to provide solutions to your biggest challenges – cybersecurity, connected health, precision medicine, disruptive technologies, population health and more – with exceptional education sessions. Additionally, it will uncover innovative solutions that enable seamless, secure, interoperable health information exchange and improve individual and population health at the HIMSS Interoperability Showcase. Interestingly, our two core offerings Peer Product Management & Research as a Service aims to provide answers to many of the above challenge.

This year’s conference will be held at the Orange County Convention Centre in Orlando, Florida from February 11 – 15, 2019. You can visit us at booth #7447. We will be highlighting, How Data can drive healthcare transformation. Additionally, we will highlight our Peer Product Management & Research as a Service capability.

Nitor’s Guide at HIMSS19

If you plan to be at HIMSS19, Nitor would like to connect with you. For our ISV customers and others who want to help usher a new era of healthcare, we will be showcasing various activities at our booth #7447.

Here is a quick summary of some of Nitor’s activities at HIMSS including a dedicated Peer Product Manager.

At the booth, we will display our offerings spread across different stages of a data journey, guiding you on the road to digital transformation, which includes Modernization & Digitization, Integration & Transformation.

We will highlight how we leverage platform oriented strategic partnerships to deliver data-driven transformations. How is that we along with our solutioning strategy strive to deliver secured healthcare interoperability and digitalization. Nitor experts, who will answer questions regarding solutions, app development, interoperability and much more, will be there at the booth.

A Peer Product Manager only for you!

Talk to your Peer Product Managers – Priyank Chopra and Pushyamitra Daram to find out how they can help you improve your cost & efficiency around product development. The Peer Product Managers will help you create and scale your product management function to set and achieve ambitious product goals. Let them walk you through our Peer product model, which can help you bridge the gap between Enterprise and IT Vendor.

To know more about our Peer Product model & managers click here

On-Demand Demos:

We will have on-demand demos about how our accelerator frameworks can transform your data, and unlock your organization’s full potential. We will be running Demos every day on various topics, some of the topics include:

  • Chatbot
  • MIPS Rule Engine
  • Patient Portal
  • Progress Health Cloud Demos

You can schedule and find more information about our Demos here.

https://www.nitorinfotech.com/events/himms19/#Modernization-digitization

Raffle Prize

For all the attendees who are ready to celebrate HIMSS in style and love to take selfies, there is a treat in store. Join us at our booth #7447, just ask for our Peer Product Manager, take a selfie with them, tag @NitorInfotech on Twitter/LinkedIn and stand a chance to win an exciting stress tracking gadget ‘The Pip’.

This year is going to be Nitor’s biggest year ever at HIMSS. Above all, I am excited about the Healthcare future and are committed to making positive contributions – today and tomorrow – that will benefit the world in which we live and future generations alike. Let’s Connect at HIMSS and let’s transform healthcare together.

You can find Nitor’s full HIMSS Schedule here

See you in Orlando!

Demystifying usage of AI and ML with Azure Server-less

As I made my way into the city of Mumbai, I started realizing that it is actually happening, the big day you have been waiting for so anxiously is finally here.

It was an honour to deliver a session at 2019 Azure AI tour in Mumbai. I was invited as a speaker and held a 45-min session on “AI/ML with Azure Server-less”. The Conference was held at the Microsoft office, Santacruz East, Mumbai. This was my first time attending the Microsoft Azure conference. It was great fun and the conference was very well organized.

Here are a few stats from the conference; it had around 70 attendees from different states and 7 speakers delivered 7 sessions.

Event kicked off on bright note,  Noelle LaCharite, the developer experience lead for Applied AI at Microsoft covered various aspects of AI, with ease of learning and provided code base for developers. She also presented handful demos of few cognitive services.

Gandhali Samant (Sr. S/W Engineering Manager – Financial Services Cloud architect at Microsoft), presented different business case studies where Microsoft Azure AI was widely and successfully being used. Along with the informative slides presentation, she also presented few videos documented as a part of Artificial Intelligence implementation.

I had the pleasure to deliver a 45-min session and it was wonderful interacting with a lot of Azure architects, .Net Devs and Data science experts.

 Here are the quick highlights of my session:

My session started with Azure AI computer vision service, custom vision service and Azure Functions. Furthermore, I demonstrated the usage of services in Azure functions by bindings and Azure Signalr. I also spoke about code in .Net and Python.

Some of the highlights of my session are below:

  • Serverless architecture: The What & Why

The ‘What’ part included:

  • managed compute service (FaaS)
  • Leverage SaaS products

The ‘Why’ part included:

  • Reduced Ops, Focus on Business Logic, Reduced Time to Market

I further explained Solution implementation using Azure function .net and python sdk and Azure signalr.

  • Azure function

Triggers Timer, Http, Blob, Cosmos Db, Queue, Event Hub

  • Bindings

Blob and signalr

One of the most pivotal things I displayed, were the use cases for Computer Vision Service. It customises your own state-of-the-art computer vision models for your unique use case. Just upload a few labelled images and let Custom Vision Service do the hard work. With just one click, you can export trained models to be run on device or as Docker containers. The use cases included the following:

Use case 1:

Requirement:

When image is uploaded:

  • identify applicable tags
  • identify face, gender, age
  • suggest possible description
  • send real-time notification

Use case 2:

Requirement:

Predict anomaly

  • trained using scikit-learn
  • saved using pickle on Azure blob
  • solution to be available as service

My overall objective was to let know people that Serverless computing is a relatively new paradigm in server technology which will helps organizations convert large functionalities into smaller discrete on-demand functions that can be invoked and executed through automated triggers and scheduled jobs. Additonally, I enjoyed the overall event as it shared valuable & informative session on AI/Cognitive services/IoT/ Serverless & Cloud concepts.

Overall, the enthusiasm among all the attendees was commendable with utmost excitement to learn about Artificial intelligence. I thank Microsoft and Azure India for providing me with this opportunity. Let us learn and grow together!

Additionally, I would love to connect with you people on topics related to Serverless, Artificial intelligence. Please feel free to connect with me at akshay.deshmukh@nitorinfotech.com

You can find the detailed information about my session by clicking on https://bit.ly/2shrlCz

About Akshay Deshmukh:

Senior Lead Engineer – Nitor Infotech

Blogger, MVP @C Sharp Corner

https://www.c-sharpcorner.com/members/coder30

Author @Dot Net Tricks

https://www.dotnettricks.com/mentors/akshay-deshmukh

LinkedIn – https://www.linkedin.com/in/akshaydeshmukhis

Love to use Azure ML, IoT, Microsoft Bot Framework, .Net Core, Angular

Love to code in C#, Python, Scala, TS, JS

DevOps: Plan smarter, collaborate better and deliver faster

Modern market is a thing full of twists and turns at every corner, that requires flexibility and ability to adapt to the ever-changing state of things. “Agility” is the word that best describes what it takes to be competitive in the modern world.

Your organization simply won’t get anywhere if you aren’t ready to adjust according to the situation and bend it to your benefit. It is true for most industries, but especially so in software development. In order to be the best at what an organization can achieve, there are tons of things, which need to come to the fore. The higher the networking capability between the employees, the greater the efficiency of the apps and tools used within the organization. Many have asked how their transformations could be taken further.

By adopting DevOps practices, agile organizations can further enhance the efficiency, agility, and quality of their development sprints. That bring us to the question, what exactly is DevOps? In addition, how important is it for your company?

What is DevOps?

DevOps is the combination of cultural philosophies, practices, and tools that increase an organization’s ability to deliver applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes. This speed enables organizations to better serve their customers and compete more effectively in the market.

The Necessity of the DevOps approach

The world of IT is changing fast. Requirements change very often, and software must be developed at an ever increasing pace. Not only must software and web applications be marketed faster, but it must also be possible to constantly update them, easily add new features and fix any bugs found. This leads to the Agile Development model.

However, the team of developers should not be the only ones to react quickly and efficiently. The operational team, which has to deploy and monitor the new applications, should also react the same way. This leads to the DevOps approach.

The Motivation behind the practices:

The traditional silos between developers, testers, release managers and system administrators are broken down. They work more closely together during the entire development and deployment process, which enables them to understand each other’s challenges and questions better.

The DevOps approach thus requires people with multidisciplinary skills – not only people who are comfortable with both the infrastructure and configuration, but also those who are capable of performing tests and debugging software. DevOps is a bridge builder; it is for those who are skilled in every field.

Some of the common motivating factors are:

  1. Extremely high deployment time sometimes as much as 24 hours or even more
  2. Enormous Application Downtime
  3. Extended wait time for smaller fixes
  4. Tedious process of replicating environment
  5. Automating and streamlining software development
  6. Automating infrastructure management processes
  7. Automating monitoring and analysis
  8. Very frequent but small updates
  9. Considerable reduction in time to market
  10. Micro-services architecture to make applications more flexible and enable quicker innovation

DevOps may be essentially disruptive, but it is here to stay because it is a very practical and can be a valuable asset for organizations. Let us look at some of the benefits DevOps provide:

  1. Rapid Time-to-Market

Improved business agility is one of the fundamental gains of implementing DevOps. Reducing the time between development and launch phases will enable your business to generate competitive advantage – by rolling out new features to customers at much higher frequencies – and drastically lower the time it takes to respond to failures.

  1. Improved collaboration between teams

In the past there were no links between developers and operations, innovation was carried out in seclusion, making things all the more elusive and secretive. However, as times have changed, so have the methods of performing innovation. DevOps not only brings key concepts and tools to create automated workflows for a system’s development life cycle (SDLC); it also allows integration of team collaboration tools to these workflows.

  1. Security

While DevOps does not require the use of any specific type of tool, DevOps teams tend to favor next-generation architectures and technologies, like micro-services and containers. These help to make apps more secure by reducing attack surfaces and enabling quicker reaction. If you deploy your app using containerized micro-services, it becomes harder for attackers to compromise your entire app, because an attack against one micro-service does not give them control over the other ones.

  1. Quicker Deployment

If your business has successfully launched DevOps, it is getting ready for the next level of deployment. Through the right approaches, an organization can benefit by deploying their new systems in a more enhanced, efficient manner, while keeping the efficiency intact. This way, innovation and continual deployment becomes synonymous with each other, thereby making the deployment easier and quicker.

The above-mentioned benefits are some of the most important ones out of the many that DevOps has to offer. With so many benefits being achieved through DevOps, there is no denying the fact that DevOps is the future of the production cycles.

After reading all this you must surely be thinking – How to get started?

Developing a DevOps culture requires planning.  These tips can help you develop a DevOps mindset:

  1. Think about how you want your web team to operate over a period of 12-18 months.
  2. Examine your current work processes and ask yourself (and your team!) what can be improved, and what the risks are.
  3. Encourage your teams to have their say: How do they think that the processes could be realistically improved?
  4. Feel free to share your conclusions and your plans with other units: cross-functional teams can be involved in your entire organization to improve efficiency!

Don’t worry, we at Nitor can get you started by offering you our DevOps assessment tool. The tool would primarily assess your maturity in terms of DevOps processes, your key pain areas and then come up with few recommendations, which could make a lot of difference in how your projects work. Nitor can assist you in all ways possible to achieve a mature and robust DevOps Model.

To learn more click on the link and start with your DevOps Assessment  – https://www.nitorinfotech.com/devops-diagnostic-tool/

To know more about Nitor and DevOps services email  us at marketing@nitorinfotech.com/

Reactive Programming – Tame the complexity of asynchronous coding

So, you have caught wind of reactive programming, RXjava, responsive extensions and all the promotion around them but you’re not able to get your head around them. You do not know if they are a solid match for your project; whether you should begin utilizing them and where to begin learning. Let’s try to make this easy and simple for you.

With an explosion in both the volume of internet users and the technology powering websites over the years, reactive programming was born as a way of meeting these improved demands for developers. Of course, app development is just as important now and reactive programming is as vital a component in that sphere too.

What is Reactive Programming?

Reactive programming is programming with asynchronous data streams, to be specific, make it responsive. Typical click events are actually asynchronous event streams, on which you can observe and create side effects to make the code easily readable. With Reactive, you are able to create data streams out of anything, not just from events or AJAX calls or Event Buses. To sum up, Reactive programming runs asynchronous data flows between sources of data and components that need to react to that data.

Diagram: RX Observables

Why is being ‘Functional’ important?

Functional reactive programming (or FRP for short) is an asynchronous programming paradigm that allows data flows from one system component to propagate the same changes to other components that have been registered to accept them. Compared to previous programming paradigms, FRP makes it simple to express static or dynamic data flows via the programming language. It came into existence because modern apps and websites needed a way of coding that provided fast, user-friendly results.

On top of the streams, we have an amazing toolbox of functions to combine, create and filter any of those streams. This is when the “functional” thrill kicks in; a stream can be used as an input to another one. In addition, multiple streams can function as inputs to other streams. Furthermore, you can merge two streams and filter a stream to get another one that has only those events you are interested in. You can also map data values from one stream to another new one.

What are the benefits?

There are many reasons why you should use reactive programming as a business or developer.  Some of the most common ones are:

Why use reactive programming?

  1. Asynchronous operations
  2. Smoother UI interactions
  3. Callbacks with Operator Chaining, without that notorious “callback hell”              
  4. Easier complex threading with hustle free concurrency

It is quite clear Reactive programming composes asynchronous operations making smooth UI interactions; here are some of the major benefits you should know:

How does it benefit you?

  1. Enhanced user experience – This is at the very heart of why you should be using reactive programming for your apps or websites. The asynchronous nature of FRP means that whatever you program with it will offer a smoother, more responsive product for your users to interact with.
  2. Easy management – One big bonus with reactive programming is that it is easy to manage as a developer. Blocks of code can be added or removed from individual data streams, which means, you can easily make any amendments via the stream concerned.
  3. Simpler than regular threading – FRP is actually less of a hassle than regular threading due to the way it allows you to work on data streams. Not only is this true for basic threading in an application but also for more complex threading operations, you may need to undertake.

What are the challenges?

While reactive programming is a great tool for developers to use, it does have a couple of challenges to overcome:

  1. Hard to learn – In comparison with the previous ways of working, RP is quite different. This leads to a steep learning curve when you start using it, which may be a shock to some.
  2. Memory leak – When working this way, it can be easy to handle subscriptions within an app or a site incorrectly. This can lead to memory leakage, which could end up seriously slowing things down for users.

In conclusion

Reactive Programming is not easy, and requires tremendous learning, as you will have to move on from imperative programming and begin thinking in a “reactive way”. In a scenario where the code already addresses the issues properly, reactive programming can provide major lines-of-code savings.

We at Nitor believe that Reactive programming brings smoother & quicker programming results and makes user interaction much better. Naturally, this converts into happier customers and more sales for your business.

For more information, please contact marketing@nitorinfotech.com

Performance Testing – Assured Speed, Scalability and Stability of Applications

Today we have more expectations from software than we used to have earlier. This is the primary reason why Performance testing is turning out to be so critical. Performance testing is a part of any organization IT system. It’s a given that modern application regardless of volume usage should undertake standard Performance testing. These tests reveal defective assumptions about how applications handle high volume, guarantee framework-scaling works as anticipated and recognize load-related defects. Performance testing’s capacity to identify defects happening under high load can help enhance applications regardless of scale.

It is unusual that organizations keep on ignoring the significance of Performance testing, often-deploying applications with slight or no understanding of their performance. This mentality has changed little in the course of recent years as failure of high-profile software applications remains the bottleneck.

In short, Performance testing should be the topmost priority of the organization before releasing a software or an application.

Why Performance Testing?

Performance testing is used to check how well an application can deal with user traffic. By putting a repeated scenario on an application or site, it is likely to analyse breaking points and assess projected behaviour. In particular, Performance testing is performed to identify reliability, speed, scalability, responsiveness and stability of the software.

As a code change from a team that is endlessly incorporating new features, bug fixes can influence how an application looks, and functions on different devices and browsers.  It can change how rapidly that application loads across machines.erformance testing is used to check how well an application can deal with user traffic. By putting a repeated scenario on an application or site, it is likely to analyse breaking points and assess projected behaviour. In particular, Performance testing is performed to identify reliability, speed, scalability, responsiveness and stability of the software.

This is why performance testing is so crucial to a well-rounded QA strategy— checking an application’s performance, ensuring consumers are experiencing acceptable load time, and site speed is foundational to high-quality software.

Importance of Performance Testing

1.     Quick functional flows matters

Every end user of Software expects that each transaction s/he makes should be completed quickly, or take less time. Performance Testing plays crucial role in the same.

2.     Capacity Management

A performance test gives inputs on whether hardware or production configuration needs any improvement, before a new software is released on a live environment.

3.     Software Health Check-up

A performance test helps check the health of any software, and gives inputs for additional fine-tuning.

4.     Quality Assurance

A performance test also inspects the quality of code written in the development life cycle. It is a crucial part to identify if the development team needs special training, etc.  to create more fine-tuned code.

Now that you clearly know the importance of Performance testing, finding the bottleneck should be your next goal.

In a complex system, built with many pieces like application servers, network, database servers and many more there are high chances of you facing a problem. Let us discuss about the possible Bottlenecks.

What are Bottlenecks?

Performance bottlenecks can lead an otherwise functional computer or server to slow down or crawl. The term “bottleneck” can be used for both an overloaded network and the state of a computing device where any two components at any given time do not match pace, thus slowing down the overall performance. Solving bottleneck problems usually results in returning the system to operable performance levels; yet, addressing bottleneck fix involves first identifying the underperforming component.

Here are four common causes of bottlenecks

CPU Utilization

According to Microsoft, “processor bottlenecks occur when the processor is so busy that it cannot respond to requests for time.”  Simply put, these bottlenecks are a result of an overloaded CPU that is unable to perform tasks in a timely manner.

CPU bottlenecks appear in two structures:

  • a processor running at more than 80 percent volume for a prolonged period, and
  • an excessively long processor queue

CPU usage bottlenecks regularly originate from the lack of a system memory and constant disruption from I/O devices. Settling these issues includes improving CPU power, including more RAM, and enhancing programming coding proficiency.

Network Utilization

Network failures happen when the correspondence between two devices comes up short on bandwidth or processing capacity and is unable to finish the task rapidly. According to Microsoft, “network bottlenecks occur when there is an overloaded server, an overburdened network communication device, and when the network itself loses integrity”. Solving network usage issues normally includes adding or upgrading servers, and upgrading network hardware like hubs, routers and access points.

Software Limitation

Often problems related to performance occurs from within the software itself. At times, programs can be designed to deal with just a limited number of tasks at once, this makes it impossible for the program to use up any extra CPU or RAM assets even when they accessible. Furthermore, a program may not be written to work with numerous CPU streams, thus only using a single core on a multicore processor.

These issues are settled through rewriting and fixing software.

Disk Usage

The slowest segment inside a PC or server is generally a long-term storage, which involves HDDs and SSDs, and is usually an inevitable bottleneck. Additionally, the most rapid long-term storage solutions have physical speed limits, making this bottleneck cause one of the most troublesome ones to investigate. In most cases, disk usage speed can develop by reducing fragmentation problems and increasing data caching rates in RAM. On a physical level, you can solve insufficient bandwidth problem by moving to faster storage devices and expanding RAID configurations.

High-level activities during Performance Testing

Test Coverage

Test coverage includes a colossal ability to cover all functionalities while conducting performance testing. Although, the scenarios must be exhibitive of different parameters, you can attempt automating key functionalities by assembling many scenarios. User data must be projected properly, as there would be several users using the system in their own context.

Non-Functional Requirements

Functional as also non-functional requirements  hold equal importance in performance testing. Functional requirements are far more specific and contain within them input data types, algorithms, and functionality to be covered. The real challenge is identifying less specific non-functional requirements- some of which are  stability, capacity, usability, responsiveness, and interoperability.

Performance Test Analysis

Analysing the performance test results is the most challenging and key task in performance testing. It requires you to have detailed knowledge and good judgment to analyse reports and tools. Moreover, you need to regularly update the tests based on the situation.

Conclusion

Proactive Performance testing efforts help customers get an early feedback and assist in baselining application performance. This in turn ensures that cost of fixing the performance bottlenecks at later stages of development is drastically reduced. It is always easier and less costly to redesign an application in its early stages of development than at a much later stage.

This also makes sure that performance bottlenecks such as concurrency, CPU or memory utilization & responsiveness are addressed early on in the application life cycle.

Nitor excels at evaluating  the performance of different technology& domain applications. It has well defined processes & strategies for baselining the application performance.

Nitor TCoE has expert performance testers who are capable of executing the performance engagement with close coordination with various stakes holders. Nitor performance testers are highly skilled in carrying out performance testing activities through open source tool or Microsoft tools set.

For more information, please contact marketing@nitroinfotech.com

Microsoft PowerApps – Build your Business Apps Faster & Smarter

One Platform- Unlimited Benefits

Traditional approaches to business seems to be collapsing, and companies are trying to develop innovative solutions. Furthermore, in today’s fast paced environment you need tools that work faster, perform better, and can scale with your business.

No matter where we go to a meeting, maybe even on airplanes, work happens on our tablets, laptops and phones. Mobile technology, cloud, skilled expertise and limitless computers have transformed the way we do business. Yet, the apps we use to do business are slow to stay pace with business demand.

While organisations are turning more and more towards SaaS solutions for precise scenarios like HR, hospitality and travel utilizing services like Microsoft Dynamics, Concur or Workday, most business app scenarios still remain bolted on premises, dependent on corporate connected PCs.
`

Too often, they are not easily integrated with other services like virtual meeting tools, HR applications and many more not accessible when and where people need them most – on the system they want to use in that moment. The business application classification is always a step behind consumer applications, the primary reason being the richness and ubiquity that the latter provides.

Microsoft PowerApps has an exclusive answer to these issues. PowerApps is an enterprise service for technology frontrunners enabling them to connect everywhere, create and share business apps with their team on any device in minutes. Additionally, PowerApps benefits anyone in the enterprise to unlock new business agility.

So what exactly are PowerApps?

Fundamentally speaking, Microsoft PowerApps is a Platform as a Service (PaaS). It enables you to create Mobile apps that run on Windows, IOS, Android etc. – with almost any Internet browser. PowerApps is a platform for developing and using custom business apps that connect to your data and work across the mobile and the web, without the expense of custom software development in a short period.
Not just a platform, PowerApps can also be a standalone mobile app as well! Traditionally, mobile app development was all about creating apps for each operating system. This was a headache as it used to triple up an organization’s development time, eventually tripling up the cost. Furthermore, organizations would require more resources to create business apps.
Everything created in the Powerapp will function through and within the PowerApps Mobile App. This reduces the gap between the operating systems and allows you to run your apps. In simple terms, it is a bridge that provides mobile apps an easier pathway to function across mobile platforms.
PowerApps also has the web version. It is the same concept but runs through any modern web browser instead of a mobile app.
The highly productive platform has made its mark in the market and it helps organizations deliver business smarter and faster. Let us look at a few benefits, which form a great user experience and benefits businesses.

One Platform, Unlimited Benefits:

Mobile-First

Microsoft’s PowerApps embodies a withdrawal from its earlier strategy in which PowerApps were designed to be used on mobile devices. It is irrelevant if you use an Apple device, a Windows phone, an Android, or a tablet. You can still utilize an app designed with PowerApps.

Cost effective

For the organizations that outsource their app development this is extremely important. PowerApps enables you to build in-house – a move, which will save your organization from taking a beating. Additionally, this allows your present employees to focus on ensuring that line-of-business users have a unified app experience.

Makes Data easy to Manage

Many organizations have various solutions supporting their business with data stored in different locations. Eventually it comes with its own risk in terms of management and getting all that data working in agreement all the time can prove tough.
With PowerApps, you have the magic of its connectors. It has over 230 of them and they are growing every day. Salesforce, Dropbox, Smartsheet, Oracle are just a few and you can flawlessly use all of these without having to write any code.

Incorporating Multiple Platforms

Incorporating different stages and applications has reliably been a testing task. A few ventures have slowed down due to inability or high expenses related to building the interface for the platforms. With PowerApps and its connectors, organizations can integrate them with multiple platforms. Office 365, Salesforce, Mailchimp and many more can be used effectively and integrated with ease.

Having read all the pros about Microsoft PowerApps, it may seem infallible. However, it also has few cons.

The ‘NO’s’ of PowerApps

PowerApps are essentially Business Mobile Apps – which means internal use. You are not going to make a PowerApps that you can share with everyone. These are not intended for consumer consumption, mostly due to technical limitations it has while sharing with external users and licensing model.
Additionally, majority of the usefulness in PowerApps is “no-code.” So, your in-house designers are restricted and cannot include any custom HTML, JavaScript or add a hackable element to it.

Conclusion

It is crystal clear that PowerApps helps us to create apps platform with ease, which leads to less development time and effort helping organizations to automate their processes. Organizations can connect it to different cloud services like Office 365, Dynamic CRM, Salesforce, Dropbox etc. PowerApps accelerates how business apps are built which results in time efficiency.
Nitor is an early adopter of Microsoft PowerApps. Our development teams are working to utilize PowerApps to develop a range of solutions for businesses. We at Nitor can help your business hop on to the new platform quickly. Our experts can assess and identify the need gaps and recommend the best pathway.

For more information, please contact marketing@nitorinfotech.com

Progress Kinvey – Build Better & Faster Applications for Tomorrow

The current scenario

Mobile existence is indispensable to remain in any game in the long run – a fact, organizations have now learnt, and most associations have built a mobile presence somehow. Whether that presence is a mobile enabled website or a mobile application appears to rely upon differing variables, like the spend strategy, range of abilities, prioritization, and understanding client needs.

A portion of the key activities driving the mobile economy have been broadening or replacing client benefit by means of self-service, expanding field labourer efficiency, going paperless, faster issue resolution at a lower cost, and better client commitment and trust. Many organizations first attempting at mobile presence have missed the mark regarding both business and client expectations, and have been unsuccessful to provide the strategic business value or help attain digital business goals.

A number of organizations lack developer bandwidth, as they are clearly required for fixes, enhancements and to keep up with latest upgrades. Additionally, organizations find it difficult to build a feature rich app experience with the tools, teams and infrastructure on-hand.

Each of these organizations actively sought a better way to achieve their digital business strategy via their mobile apps. They evaluated several approaches and chose Kinvey’s Backend as a Service.

Kinvey – The Future is Bright

Kinvey is a pioneer in mobile Backend as a Service (mBaaS), inventing the category more than six years ago. It uses unified Application Programming Interfaces (APIs) and Software Development Kits (SDKs) to connect mobile, web, and IoT apps to backend resources in the Cloud. Kinvey mBaaS can also be used to federate enterprise and Cloud services and provides common app features such as data mashups, push notifications, business logic, identity management, social networking, integration and location services.
Its sole aim is to reduce Time to Market of new mobile application development by around 50%. Kinvey enables developers by completely decoupling and extracting the server-side infrastructure. Frontend developers have a unique protocol, data format, and query language to access any organization or cloud system.

Benefits for you

Following are some of the benefits Kinvey can offer:

1. Server-less Architecture
Enables deployment on the server-less platform – a developer favourite. It also has Cloud portability – an architect’s first choice.

2. Run in the Cloud
Allows to build and run applications without having to manage the infrastructure on Cloud

3. Secure, Data-Rich Apps
Enables secured, data-rich apps through no-code and low-code enterprise system integration

4. NoSQL Storage
Kinvey uses NoSQL (MongoDB) and allows users to store all types of data like collections (Tables) or Blobs (Files)

Benefits for your developers

• Deliver features and capabilities needed to achieve your business goals faster
• Provide whatever you can imagine without technology or resource constraints
• Ensure that you meet your time to market goals
• Reduce time from ideation to delivery and more enhancements per release
• Create flexibility by allowing the use of any development resource
• Guarantee zero delay in getting your project started and access data from any application or data source from within mobile apps

When software development teams leverage the abilities of the Kinvey platform, the fundamental roadblocks to development agility are cleared and you can gain through agile development processes, including the power of responding to user feedback rapidly and efficiently. With the use of Kinvey, organizations can significantly cut their development release cycles.

Business Value

The business value of Kinvey can be distilled down to some of these factors:

Kinvey provides a fully managed service with pre-built frontend and backend mobile application development accelerators and built-in operational intelligence for rapid troubleshooting of user issues. There is no need for customers to develop their own mobile app delivery foundation, since Kinvey provides all of the services that enable customers to focus on what is important- viz. value added features and rapid response to user issues.

By abstracting future backend system changes through the Kinvey platform, development teams will no longer need to know the nuances of enterprise systems data access paradigms, allowing them to focus 100% on frontend work. Backend engineers will provide controlled access to enterprise systems via a reusable service catalog that developers need to set up just once.

And finally, how is Nitor leveraging the Kinvey platform?

With over 30,000 applications and 85,000 developers in their community, Kinvey is the leading mobile application Backend as a Service (mBaaS) for the digital enterprise.

We at Nitor started with Kinvey by primarily migrating backend for some of our mobile applications. We were amazed at the ease with which we were able to implement it. Nitor’s experienced team by leveraging Kinvey platform helps enterprises create feature rich application with almost 40% to 50% less Time to Market.

Performance Engineering – Ensure Reliable, Scalable and Seamless Application performance

Being a developer involves a lot more than just coding. As extremely distributed applications turn out to be more mind boggling, developers need to guarantee that the end product is easy to understand, secure, and as scalable as possible. With the correct resolution, software teams can categorize possible performance issues in their applications prior in the development cycle and make steady astounding fixes.
Everything from systems administration, frameworks, running a cloud infrastructure, to assembling and analysing more UX information requires your software teams to fuse solid testing methods throughout your application’s development stage.
Effective performance engineering is the way to go forward. Performance engineering does not allude just to a particular role. For the most part, it alludes to the arrangement of abilities and practices that are systematically being comprehended and embraced across organizations, to focus on accomplishing more elevated level of execution in technology innovation, in the business, and for end users.

Why is Performance Engineering important?

Performance engineering entails practices and abilities to build quality and superior execution throughout organization, including functional necessities, security, ease of use, technology platform, gadgets, outsider administrations, the cloud, and more. The goal is to deliver better business value for the organization by discovering possible issues early on in the development cycle.
Performance Engineering is a vital part of software delivery, yet many IT organisations find it an expensive and a challenging thing to do. Despite big performance failures that have been making continuous headlines, Performance Engineering has been unsuccessful in getting the attention and budget spending it deserves in many companies.

How to make the most of performance engineering?

Here are things to keep in mind when incorporating the performance engineering process into your model.

1. Build a Strategy

Building a Performance Engineering approach is a vital part of the process and you need to be sure about how to align it into your organisation and delivery model.
– Identify the SMEs and the touchpoints that you will require in your development lifecycle.
– Comprehend what are the quality gates and in what capacity they will be administered.
Always remember that it all starts with the requirements. If your product owner recognizes what level of performance they want from the system, then it gets easier for engineer to meet the system requirement.

2. Plan the Costing

One thing is for sure, it takes a good sum of amount to build a high-end performance engineering practice. As you are building up your execution guide, you may need to experience various spending cycles with a specific end goal to get all the infrastructure and tools ready.
– Remain solid and positive
– Utilize the failures which organizations faced in the past to persuade the stake holders of the significance of Performance Engineering

3. Classify Crucial Business Workflows

If you do not have information about the right tools then get in touch with the vendor as it can turn out to be costly and time-consuming.

Always remember it is better to spend time on creating workflows that are critical to the business and that have the maximum throughput.

4. Find the Baseline and Test Regularly

The next stage is to benchmark the performance pattern with an arrangement of execution tests. These test can be used on numerous occasions.

– Set up a history of your production runs marked by trends to check for patterns in framework execution. In an ideal scenario, this needs to be done in every release and every integration. If the trend examination can be automated as part of a CI/CD process, nothing like it.

5. Use the best Tools and Hardware

You will require the best possible APM, diagnostic and testing tools for Performance Engineering. It’s imperative that you distinguish things you’ll require and those you won’t, to legitimately run tests and analyse bottlenecks.

Production-like settings are usually costly. Preferably, you’ll have one for your Performance Testing in any case. If you are testing frequently with each deployment, then the pattern in any case point to a bottleneck that the engineers need to be vigilant about.

6. Have Data Strategy in place

As you will test frequently, you should have the capacity to make test information rapid and effective. It is imperative that the information you have is alike to the production environment. Remember, if you are not using representative data set then query plans will be different.


What are the Business Benefits?

As you can clearly see, the above steps are vital when it comes to incorporating a performance engineering process into your business model. These steps ensure that your organization benefits out of it.

Listed below are some of the benefits of performance engineering from an organization’s perspective:
1. Decreased burden: Reduced vulnerability of applications when the anticipated load is high

2. Optimal utilisation of resources through performance engineering: The infrastructure may be over-provisioned or under, PE lets us know the utilisation graphs and helps in making strategic decisions.

3. Guaranteed support: Ensured level of commitment for an application to perform in the given supported criteria

4. Future ready: Helps in taking future decisions for scaling the applications

5. Increased adaptability: Helps in determining the application design and in case if you want to do incremental changes in the applications

What can we conclude?

It is quite clear that performance engineering helps in benchmarking the application performance and allows organizations to identify all business-critical scenarios for performance testing. Additionally, it helps to determine the extent of availability and reliability of the application, while instilling mechanisms to constantly advance application performance.
In short, Performance engineering should be a priority before releasing any software or an application. It should be executed early on in the development phase to catch more bugs in advance and increase user satisfaction while saving you time and money down the line.
Nitor possesses proficiency at providing exquisite user experience through reliable application performance. It encompasses various frameworks and tools in order to test, monitor and streamline performance and optimise infrastructure cost.

To know more please drop us email at marketing@nitorinfotech.com

BDD – Be Agile, Create Value & Build Highly Visible Test Automation

Everybody likes to complete things in their own specific manner. However, when it comes to software programming, it would always be beneficial in having a set of principles for each phase of software development.

Opening the discussion and keeping various technical teams on the same note can allow software to work seamlessly. As organizations move towards coding phase they need to adjust the procedures to fit their present work processes. So what is it that can define user behaviour prior to writing test automation scripts?

That is called BDD (Behaviour Driven Development).

What is BDD?

BDD is a development process, which explains the behaviour of an application for the end user. It is an extension of TDD (Test Driven Development). In BDD, the behaviour of the user is defined and converted to automated scripts to run against a functional code. These test scripts are written in a business readable and domain specific language known as Gherkin, which ultimately reduces a risk of developing a code. Following are some of the points, which clearly outline the value of BDD.

1. BDD is not testing, it is a process of developing a software. It considers questions like ‘where to start in the testing process; what to test and what not to; how much to test in one instance; what to name the tests and how to understand when and why it fails. It is what can be called a rethinking of unit testing and acceptance testing.

2. Before BDD, TDD had tests that were developed first and failed until a functional code was arrived at. This point was when a test was considered to have passed. This enhanced with BDD, where the tests were written in a specific format.

3. Since the language used in BDD was domain specific the requirements are now more real time and meaningful, where all stake holders are on the same page, as opposed to the earlier ‘ only developer and tester friendly’ ones.

4. BDD does not change/replace traditional UI automation tools like selenium or appium.

5. In terms of test automation, it represents a presentation layer, in other words it can present data in a clear-cut manner and in a standardized format.

As you can clearly see, BDD has nothing to do with the technical side of the Testing, let us try to understand why and how BDD is important.

BDD helps bridge the communication gap between clients, developers and other stakeholders.

Collaboration – In traditional testing, nobody would recognize what part of the test/scenario was failing. With the BDD approach, everyone including stakeholders, product team and developers understand testing, making it a win-win situation for organizations.

Requirement Change Management – Traditionally, the requirements clarity were logged in collaboration tools like Jira or other project management tools. With BDD, any changes in requirements would automatically be documented as tests.

Test Management Tools – In traditional method, test management was separate and were automated and manually marked within the test repository. But, with the advent of BDD tools, static metrics such as “#” of specs, “#” of scenarios are collected automatically. Furthermore, other test metrics can effectively be expanded.

Single Source of Truth – Traditionally, requirements would be transferred from project management to test management, and finally to automation. With BDD, in a mature agile process, specs are written correctly in Jira and can serve as source of truth. This is in contrast to testers reading requirements.

Phases of BDD

The overall BDD process involves two important phases – Process insights & Tools/Technologies. Let us look in detail how vital Process insights & Tools/Technologies are when it comes to BDD process.

a.  Process Insights

To benefit from BDD based test automation, it is imperative to have process overarching Planning, BDD Design and Test Automation Framework.

Planning – Priority based stories/features should be picked up for automation.  Undertaking  an iterative discussion helps to know what activities would be beneficial to ongoing automation efforts.  For best results, effort estimation could be followed up by stabilization of test automation activity instead of the usual factory approach, if the product is still evolving.

BDD Design – It is recommended that, scenarios be designed by QA/BA rather than Quality Engineers. This is instinctively due to fact that they are owners of product quality. In addition to this, principle of collaboration mandates that, they own up this part of automation effort.

Also the scenarios should be reviewed from the point of functional flow, behavior semantics and step reusability by all concerned stakeholders – QA, BA and Engineers. Review process should be a de-facto part of design process.

Test Automation Framework – BDD design ensures that reusability is complemented by the implementation component. Standard automation and development practices must be followed to ensure efficient output.

b. Technologies/ Tools

Some automation tools that support BDD are listed below:

Platform BDD Tool
Java JBehave, Cucumber, Gauge
C# SpecFlow
Python Behave
Ruby Cucumber
Javascript GaugeJS
PHP Behat

Apart from automation tools, Test Management based on BDD test designs play an important role. There are tools like TestRail, HipTest, which now support BDD based test editor functionality and guarantee better integration of processes and implementation.

Business Benefits

Once the Process insights & Tools/Technologies are in-sync, BDD automatically offers benefits:

  • Know What You Test (KWYT) – Since testing is not performed in isolation, continuous tracking and reading of what is being tested becomes possible. Coverages cannot be missed and product owners can now chip in proactively if something is being missed.
  • High Visibility – Due to collaboration, the tests, their quality and their results are visible to all management stakeholders which gives confidence in taking decisions for product releases.

Conclusion

Behaviour Driven Development helps in building quality and creating value. Instead of having tests that are only useful for engineers, BDD aims at tests useful for all. Additionally, it improves the partnership between the parties and allows developers to get a clearer scope of essential features and the customer gets a better knowledge of what will be delivered, with accurate estimates.

Nitor excels at streamlining and operationalizing BDD Based Test Automation through its ready-to-use frameworks, successfully employed strategies and efficient use of tools/technologies.

If you are interested in finding out more about BDD, write to us at marketing@nitorinfotech.com

Boost your business foundation with Microsoft Dynamics xRM

Regardless of what industry your company works, clients are your most vital resource and handling those client relationships is the establishment for developing your business. Additionally, plenty of the organizations look for CRM to manage sales, customer service and marketing. A CRM (Client Relationship Management) software can help gather, sort and deal with the majority of your client information, and is integrated from finance to operations.

One such CRM, Microsoft Dynamics, is one of the most popular tools in the market. Not only does it meet the needs as well as the budgets of smaller, middle-sized and large organizations but it also makes marketing more effective and assists you in getting more out of your customer relationships. Furthermore, Microsoft Dynamics CRM offers the flexibility of both on-demand and on-premise deployments. Additionally, the powerful CRM program offers unparalleled integration with Microsoft Office suite, Microsoft SQL Server, Microsoft Exchange Server, and Microsoft SharePoint, some of the most widespread applications in the business world.

Do you need a Software that is a Step ahead?

A term often associated with CRM, with a twist- is– ‘xRM’ or ‘eXtreme Relationship Management’. xRM is nothing but an extension to CRM, if your organization deals with policies, property taxes, building assets and list goes on. With xRM you can manage the relationship of anything within your company. Additionally, xRM is ‘extended Relationship Management’, which represents the extension of CRM platforms allowing organizations to thrive by helping them manage employees, process, suppliers, assets and much more.

An XRM has a several key components, which can give a strategic approach to building a unified system that connects all aspects of a business together. Following are the XRM components:

1. Entities & Records

2. Fields

3. Forms

4. Web Resources

5. Workflow Processes

6. Plugins

7. Web Services

As you can clearly see, the above components are essential to manage xRM. However, the question remains is, is it useful to deploy a solution like xRM? Will organizations reap any benefit out of it? Or is it just a fad? Well, to answer that honestly xRM is necessary if you already have the CRM within your organization. It has several crucial advantages, which can be vital for developers as well as for organization.

What is in it for Developers/Organizations?

These days there is little time to write a lot of custom code to deliver solutions. With xRM, developers can aim to develop applications rapidly. To meet requirements for business applications, xRM has a framework that provides the agility and flexibility to adapt to changes and get user acceptance and adoption.

From an organization’s point of view, when you take Dynamics 365 and utilize it as a stage for building an XRM system, you get a rock-solid foundation on which to build ‘line-of-business’ (LOB) solutions. Everything can be tailored according to your company’s need and incorporated smoothly with other critical systems.

xRM solutions offer flexibility and customization to meet almost any business or organizational need. Integrating an xRM solution with the Microsoft Dynamics CRM will provide you with several important advantages.

Automation at its best – Microsoft Dynamics integration with xRM automates important tasks that employees would otherwise have to complete manually.

Rapid deployment – Developers do not have to worry about building an LOB software from scratch, as software plugins extend the functionality of the core Microsoft Dynamics CRM system.

Robust Security – Another key advantage is that xRM provides robust security features. It has security roles for users and objects that restrict access to sensitive data, SSL connections for data transfer, and more.

Native Integration – xRM solutions can connect existing systems to CRM, freeing data trapped in outdated systems. Microsoft Dynamics CRM also provides native integration with Microsoft SharePoint® and Microsoft Office® applications including Outlook®, Excel®, and Word.

We at Nitor take pride in our xRM solution capabilities. We specialize in xRM plug-in development, OOTB customizations and creating custom workflows to benefit your organizational requirements.

Find out how xRM would eliminate silos and build a unified marketing & sales funnel, write to us at marketing@nitorinfotech.com.