ANGARAI, a company based in Prince George’s county, signed an MoU with CI to pursue opportunities in mobile and web applications. The MoU was signed during the signing of ‘Sister State Agreement’ between Andhra Pradesh and Maryland.
To read more:
December 1, 2011
September 27, 2011
App-stores are increasingly playing a major role in the mobile software market. There are number of tools, libraries and frameworks available in the market for creating of native apps and web apps. The technology for creating mobile apps can be classified as follows:
September 19, 2011
The technology market is buzzing with news about Windows 8 after Microsoft showcased it in the recently held developer conference. It sure looks promising. But what would motivate a user/company to upgrade to Windows 8 if they have recently invested in Windows 7.
These are some basic features which I found interesting after reading through different features of Windows 8. Windows 8 is supposedly going to work well with touchscreen as well mouse and keyboard. The features are leaning towards touch enabled computers mainly. To learn about Windows 8 features terminology you can click here. References for this post have been taken from cio.com.au.
August 25, 2011
Unit testing is done to validate a piece of code. Developers use unit tests to test a unit of code and to improve code quality. Code Contracts complement unit testing. It was introduced by Microsoft in .NET framework 4. The contracts take form of pre-conditions, post-conditions and object invariants for the classes. Code contracts provides feedback as code is written. It gives useful information about the code being develop. These help in ensuring software correctness in three ways:
They are part of the method implementation and contribute to ensuring the function abides by its contract. Second they force developers to think about what each method if expected to do and why. Finally contracts are form of metadata and the information they convey can be consumed by other code analysis tools like Microsoft static checker. The static checker is triggered by code changes, compile steps and ensures that pre-conditions and post-conditions match. It also ensures that conditions that must hold for a class at all times is always met.
If the contract defined for the classes are correct and no warnings are generated from static analysis then the code is likely to be correct. Correctness refers to the correct flow of actions and data which contracts can verify. Implementation details are verified with unit tests. Unit tests and code contracts complement each other.
Reference for this blog post has been taken from Information Week magazine.
August 18, 2011
Configuration management is key in a software development environment. It helps in maintaining sanity when there are multiple developers across multiple locations working in different time zones. But the success of maintaining the configuration management system lies in the hands of the developer. The developer needs to maintain the check-in check-out discipline. Even if it is not maintained for a day then the sanity of the system can be questioned. At CI we use the following best practices related to check-in:
Please feel free to share any best practices related to check-in policies.
July 4, 2011
With all the hype and information surrounding cloud, the decision to switch over to the cloud can lead anyone’s mind spinning. The move from a desktop based product to a SaaS based business model requires a specialized provider. This post lists the most important factors that ISV’s should look into before engaging with a service provider.
Business: Assess the business drivers behind considering cloud adoption like moving to a newer business model. If there is no immediate competition then the need to migrate may not be necessary. But if moving to the cloud helps lower the operational expenditure then migration would make sense.
Risk: Switching to the cloud completely changes the business model. What was once a license based business model would become a subscription based business model. Customer service becomes key in success of the product as the switching costs for the customer become very low. Risks in terms of frequent product releases, availability, security become pertinent.
While technology is relevant it may not necessarily be as important as the business and risk factors. Compatibility in terms of infrastructure and application platform helps narrow down the choice in choosing the appropriate technology.