Microsoft Product Support

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Wednesday, 31 March 2010

Microsoft Dynamics GP Architectural Foundations Series - Built to Grow

Posted on 05:00 by Unknown
This is article 3 of 7 from the series Microsoft Dynamics GP Architectural Foundations Series - featuring Microsoft's Tim Brookins.

Tim's whitepaper was originally published in 1999 and it's reproduced here with his permission.








Built to Grow

We began our discussion with the premise that the true value of a business management system is in the product’s functionality. Our “Built to Last” architectural value allows us to “plug in” new technologies, giving end users access to leading edge technologies while also protecting the functionality from changes in technology.

We have established an architecture that allows our product to be “Built to Last,” which allows us to turn our attention to the task of ensuring we can add new functionality to the product. We call this value “Built to Grow.” At Great Plains, we ensure our product is built to grow in three primary ways.


    Solid Foundation
    A software developer can’t add new functionality if they are always busy fixing the old functionality. Dynamics has exceptional product quality levels. This high-quality
    product gives a solid foundation on which to base new functionality.

    Best Practices
    Great software doesn’t happen by accident. This is especially true for very large and technically complex software like business management systems. You can’t simply
    throw hundreds of developers into a room and expect robust, high-quality software to come out.

    Great software requires a comprehensive strategy from requirements gathering at the beginning to testing and product shipment at the end. With this in mind, Great Plains has a corporate commitment to promoting the best practices for software development.

    Great Plains bases its process effort on the Capability Maturity Model (CMM). Pioneered by the Software Engineering Institute at Carnegie Mellon University. The Capability Maturity Model provides a framework to guide and measure software engineering improvement efforts by enabling organizations to assess their software
    engineering capabilities. You can learn more about the work of the Software Engineering Institute on the CMM at http://www.sei.cmu.edu/

    Supporting Systems
    Established processes are a must for great software development, but a “paper process” is only the beginning. Companies must act on those best practices by investing in supporting systems. Great Plains has a long history of making these important investments. Let’s begin by taking a look at just one area where Great Plains has invested in supporting systems: testing.

    Since the first day Dynamics shipped back in 1993, Great Plains has committed to test each and every product feature. Before any feature is implemented, the SQA
    staff defines a paper-based test plan. This plan is then put into action by recording an automated test (called a macro). As the Dynamics product has grown over the years, the test cases have also grown. Today the testing suite has grown to more than 4,000 unique cases, all backed by automated macros.

    If performed by hand, this suite of test cases would take an estimated minimum of 3,000 hours of testing time to complete, equivalent to two months of work for a 10-person team. Because we’ve recorded these tests as macros, we’ve reduced the workload by a factor of 100, to around 30 hours of machine time.

    But we want to be able to test our product even faster, more often, to make the code as clean as we possibly can. In response, Great Plains has increased its investment in supporting systems to build a distributed testing environment. Before development team members go home for the evening, they indicate that their machines may be used for testing by running a small application. This application communicates with a central testing server, and the result is that hundreds of machines can be used for testing. The testing server automatically downloads the version of Dynamics to be used for testing to the team member’s machine, enabling us to run tests all night on hundreds of machines simultaneously. At 7:00 am, the tests automatically stop running, the results are uploaded to a central database, and the copy of Dynamics is deleted from the team member’s machine. This distributed testing environment allows us to test many features in Dynamics in a single evening.

    You may be thinking this is nothing special. “Of course all business management system vendors fully test their software.” I can assure you this is not the case. Customers cannot simply assume their business management vendor fully tests the product. Due diligence during the product evaluation phase should absolutely include
    an evaluation of the vendors’ testing methods.

    When you perform this evaluation, you will be shocked to find out that some vendors have no formal testing process. The product is tested by throwing a few support
    people into a room and letting them “play with the software” for a few days before the new version is released. Other vendors rely on Beta releases to customers to
    ensure product quality. At best, this is the vendor making the customer test the product. In reality, most customers don’t really exercise a Beta product, and the
    product is simply not tested.

    Some vendors have begun to realize the disastrous consequences of releasing products that are not fully tested. These vendors are engaged in a “catch-up” phase where they are trying to retrofit automated testing into an existing product. Keep this in mind when evaluating a vendor. If they tell you, “We use automated testing,” you need to follow up and ask them how much of the product is tested with these automatic tools. In reality, many of these vendors have just started, and only a few tests are actually in use. This perspective shows what an impressive asset the 4,000 existing Dynamics macros are to the customer’s productive use of the software. It has taken a software quality assurance staff of more than 50 people working for over seven years to build this test base. During this time, the testing staff also has continued to grow to support new initiatives and technologies. Vendors who are starting from scratch today will never catch up.



In the next article Tim reviews "Built to Leverage".

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com/
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
Posted in Architecture, Article, Roadmap | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • The Open XML SDK 2.0 for Microsoft Office
    Along with the introduction of Microsoft Dynamics GP 2010 Word Templates came a little known software development kit: Open XML SDK 2.0. Ope...
  • Year-to-year Inventory Margin Report using the PIVOT operator in T-SQL
    As of late I have been camping out at the SQL Developer Center's   Transact-SQL Forum  and I have to say, I have learned a great deal fr...
  • Web Client Wednesday - Browser Support
    Last week MVP Mark Polino started a series called Web Client Wednesdays, which is actually a Microsoft Dynamics GP community outreach to st...
  • SmartList Designer: a nice addition to Microsoft Dynamics GP 2013 SP2
    12.00.1482 - the build number for Microsoft Dynamics GP SP2 - brought with it a new list of awesome enhancements. The SmartList reporting to...
  • Granting Access and Binding Defaults when recreating SQL Tables: a follow up
    In his most recent article, Granting Access and Binding Defaults when recreating SQL Tables , my good friend, David Musgrave, points out how...
  • VBA - Suppressing CTRL+Break or CTRL+C in VBA Customizations
    VBA is by far one of the best customization tools available to Microsoft Dynamics GP developers and as such it is widely used across a numbe...
  • Printing to screen and PDF file causes default printer to change to Acrobat PDF Writer
    A user recently reported a strange Microsoft Dynamics GP behavior when trying to print any report in to file in PDF format, while simultaneo...
  • Rejecting duplicate checks during Bank Transactions import with Integration Manager
    One of the interesting things about checkbooks setup in Microsoft Dynamics GP is that you have the ability to prevent duplicate checks from ...
  • Microsoft Dynamics GP Add-In for Microsoft Word not enabling despite several attempts to install
    Just recently, I ran into a situation with the Microsoft Dynamics GP Add-In for Microsoft Word where, after following all the installation s...
  • Adobe PDF Converter error when sending report to PDF in Microsoft Dynamics GP
    Just recently, I was working on a few Report Writer reports for a client and assisting with installing the latest Adobe Acrobat Standard ver...

Categories

  • Ad Campaigns
  • ADO
  • Adobe Acrobat
  • Analytical Accounting
  • Architecture
  • Around the Blogosphere
  • Article
  • Azure
  • Bank Reconciliation
  • Best of 2009
  • Best of Series
  • Best Practices
  • Bing Maps Enterprise
  • Books
  • Business Alerts
  • Business Analyzer
  • C#
  • Code
  • COM
  • Community
  • Compliance
  • Connect
  • Continuum
  • Convergence
  • Corporate Performance Management
  • CRM
  • Database Maintenance Utility
  • Decisions Conference
  • DEX.INI
  • DEXSQL
  • Dexterity
  • Discussions
  • Drill-Down Builder
  • Dynamics GP 10
  • Dynamics GP 11
  • Dynamics GP 12
  • Dynamics GP 2010
  • Dynamics GP 2010 R2
  • Dynamics GP 2013
  • eConnect
  • EFT
  • Electronic Banking
  • Encumbrance
  • Events
  • Extender
  • Field Services
  • Fixed Assets
  • Forecaster
  • From the Newsgroups
  • FRx
  • Functionality
  • General Ledger
  • GPUG
  • Home Page
  • Human Resources
  • Humor
  • IMHO
  • Installation
  • Integration
  • Integration Manager
  • Internet Explorer
  • Inventory
  • Kinnect
  • Maintenance
  • Management Reporter
  • Manufacturing
  • Menus for Visual Studio Tools
  • Microsoft Office
  • Modifier
  • Multicurrency Management
  • Multitenancy
  • MVP Summit
  • MVPs
  • Named Printers
  • Navigation Pane
  • Notes
  • ODBC
  • Office Web Components
  • OLE Container
  • Online Services
  • OpenXML
  • Partner Connections
  • Payables Management
  • Payroll
  • Performance
  • PO Commitments
  • Printer Compatibility
  • Product Feedback
  • Project Accounting
  • Purchasing
  • Receivables Management
  • RemoteApp
  • Report Writer
  • Reporting
  • Roadmap
  • SafePay
  • Sales Order Processing
  • Season Greetings
  • Security
  • Service Call Management
  • SharePoint
  • SmartList and SmartList Builder
  • SQL Reporting Services
  • SQL Scripting
  • SQL Server
  • Support Debugging Tool
  • Tax Updates
  • Technical Conference
  • The Partner Event
  • The Technology Corner
  • Training
  • Translation
  • Troubleshooting
  • Upgrades
  • VAT
  • VB.NET
  • VBA
  • VBScript
  • Visual Studio 2008
  • Visual Studio Tools
  • Web Client
  • Web Services
  • Windows 7
  • Windows 8
  • Word Templates
  • XBox
  • XBRL

Blog Archive

  • ►  2013 (68)
    • ►  December (2)
    • ►  November (8)
    • ►  October (5)
    • ►  September (5)
    • ►  August (3)
    • ►  July (8)
    • ►  June (5)
    • ►  May (5)
    • ►  April (2)
    • ►  March (11)
    • ►  February (6)
    • ►  January (8)
  • ►  2012 (101)
    • ►  December (8)
    • ►  November (6)
    • ►  October (15)
    • ►  September (16)
    • ►  August (9)
    • ►  July (4)
    • ►  June (4)
    • ►  May (6)
    • ►  April (4)
    • ►  March (11)
    • ►  February (4)
    • ►  January (14)
  • ►  2011 (158)
    • ►  December (7)
    • ►  November (17)
    • ►  October (7)
    • ►  September (8)
    • ►  August (8)
    • ►  July (12)
    • ►  June (12)
    • ►  May (13)
    • ►  April (23)
    • ►  March (21)
    • ►  February (10)
    • ►  January (20)
  • ▼  2010 (168)
    • ►  December (15)
    • ►  November (11)
    • ►  October (12)
    • ►  September (24)
    • ►  August (13)
    • ►  July (12)
    • ►  June (8)
    • ►  May (17)
    • ►  April (14)
    • ▼  March (9)
      • Microsoft Dynamics GP Architectural Foundations Se...
      • Microsoft Dynamics GP Architectural Foundations Se...
      • Microsoft Dynamics GP Architectural Foundations Se...
      • Microsoft Dynamics GP Architectural Foundations Se...
      • RW - Creating Branching Logic Fields in Report Writer
      • Moving Items out of Inventory and into Fixed Assets
      • New Article on MSDynamicsWorld: "Support Incidents...
      • New Site Features!
      • VBA - Suppressing CTRL+Break or CTRL+C in VBA Cust...
    • ►  February (16)
    • ►  January (17)
  • ►  2009 (5)
    • ►  December (5)
Powered by Blogger.

About Me

Unknown
View my complete profile