Amidst all the hype concerning Service-Oriented Architecture (SOA) for large organizations, small and mid-sized enterprises (SMEs) seem to have been overlooked as potential adopters of this concept. The benefits of SOA are not limited to large enterprises. Understand what SOA is, the opportunities for SMEs, and when, or if, adoption is appropriate.
User experience engineering (UXE) is a structured research, design, and evaluation process with the goal of improving the usefulness and usability of an application or Web site. Typically, enterprises reap an ROI of at least two dollars for every one spent, making UXE a good investment for any enterprise involved in customizing packaged software, developing homegrown software, or designing a Web presence.
Time-boxing is a time management technique: the art of breaking down a project into component segments, each with its own budget and deadline. Use time-boxing to keep a project on track and manage scope change, while still delivering on time and budget.
A post implementation review is a critical element of closing and wrapping up a project. Close projects properly; conduct a post implementation review.
User experience engineering (UXE) ensures that custom software is not only useful, but also effective, efficient, and easy to learn. While end users appreciate a friendly UI, the big payoff goes to the enterprise: an ROI of at least two dollars for every dollar spent is typical, making user experience engineering a good investment for any development organization.
Agile software development has become a major catch phrase over the last several years. Such development concepts can provide significant business value, but without clear understanding of the processes, they can also deliver major failures. Knowing what is and is not critical to an agile software development environment is essential to moving forward successfully.
Selecting the best project management methodology is an important decision for any organization. Adopting the wrong method can be disastrous for projects. Take the time to understand the importance of project management methodologies and become familiar with popular project methods to increase the chances for project success.
Application development is a well-researched area and there are no shortages of articles, books or blogs written about it. Yet, even the brightest and best developers sometimes fail to identify inefficiencies in their development processes. Learn about some of the myths in application development, and how to address them if you find them in your team.
Given the pressure to deliver, application developers will inevitably resort to less than perfect behaviors. When such behaviors turn into habits, everyone suffers; moreover, habits are difficult to alter. Watch out for these habits before they take root in your application development team.
Many IT managers face a fundamental question: Java or Microsoft's .NET. Info-Tech's analysis indicates that .NET is far more popular than Java regardless of enterprise size or industry sector.
Microsoft Visual Studio Team System (VSTS) 2008 supports collaborative Application Lifecycle Management (ALM) by combining four flavors of Visual Studio with Team Foundation Server. Microsoft development shops with collaborative workflows should consider implementing VSTS 2008 as a tool for automating app development and maintenance.
As agile software development methods continue to gain popularity, so too does the software to support agile processes. Danube Technologies released ScrumWorks Pro 3.1 in July, 2008 to support Scrum-style product management. Development teams who are already using the Scrum method should evaluate this product to determine if it is a good fit for their development organization.
In the Web 2.0 world, JavaScript libraries are used to simplify the development of the browser-based user interfaces (UI) that jazz up Web sites and support rich Web applications. Apply the seven key considerations outlined in this note to choose the right library.
Source control software ? also called Software Configuration Management (SCM) software ? is crucial to every application development environment. Understanding how source control software works is a must for development managers if they expect to reap the full rewards of these systems.
Adoption of agile methods can be a difficult process. IT leaders must match company needs and agile method capabilities to find the best methodology "fit" and to increase the success of software development projects.
Adoption of agile methods can be a difficult process. IT leaders must match company needs with agile method capabilities to increase the success of software development projects and reduce the risk of the wrong methodology choice.
Application maintenance is a significant cost concern for many enterprises. The best way to control maintenance costs is through active management of the application portfolio. Follow Info-Tech's recommendations to attain a 30% reduction in application portfolio costs.
Efficiently managing application development projects can be a challenge at the best of times. The cost-conscious and tactical advice in this podcast provides insight on how to develop a strategy to align app development with business-critical needs. Use this guidance to reach short, medium, and long-term cost-reduction targets, and save on the bottom line.
This research note provides techniques for cost reduction within the application development services area. The techniques are categorized according to time frame and are accompanied by potential pitfalls to help IT align the need to reduce costs with the need to meet business requirements.
Unit testing focuses on getting developers to test application code as it is developed. Understand how to ensure code does what is expected with this unit testing primer.
IT managers who strive to improve the functional quality of software need only concern themselves with six primary testing goals. To meet these goals, six basic types of testing can cover the gamut and effectively contribute to application quality. Focus on these primary objectives of testing to successfully validate functional requirements.
Release management is the process by which new applications or modifications to existing ones are moved into the production environment.
A release management process ensures that changes released into the production environment are stable. Application changes are not released directly into production; instead they go through a series of checks and balances to confirm quality and correctness. Follow these seven steps to implement a disciplined release management process.
As agile software development methods increase in use, confusion arises due to the apparent mismatch between underlying project management principles and techniques of agile methods. IT leaders employing agile methods for the first time must understand how the phases of iterative development map to the PMI's Project Management Body of Knowledge to avoid project management pitfalls.
Strict guidelines to implement agile software development do not exist. Agile methods alone do not provide sure-fire recipes for agile software development success. Avoid common implementation pitfalls with Info-Tech's framework for adopting agile.