Archive for the 'Online Software Resources' Category

What is a Good Program Spec?

“Whenever you see a ratio of 1:4 analysts:programmers you will find systems analysis being performed at the wrong time and by the wrong person.”
- Bryce’s Law

INTRODUCTION

Since the industry is preoccupied with producing software faster
(and not necessarily better), let’s stop and consider how we typically approach programming and allow me to put my spin on it. There are fundamentally three aspects to any program development effort: defining the program’s specifications, designing and writing the program itself, and testing it. The software engineering gurus in the industry are primarily concerned with the internal design of the program, but there
is now a raft of consultants trying to determine the best way to
approach the program externally. Why? Because there is now many ways for producing software than just writing source code using a common text editor; e.g., visual programming aids/prototyping tools, workbenches, 4GL’s, program generators, etc. Such tools take the need for writing precise source code out of the hands of the programmers and allows them to concentrate on basic screen and report layout. They are excellent tools for most programming assignments, but they cannot do 100% of all of the programming for all applications. We still require
professional software developers with an intimate knowledge of programming languages and design techniques. Regardless if we write a program by hand, or use some sort of interpreter/generator, we still need to provide the programmer with precise specifications in order to perform their work.

Seldom do companies make use of a uniform approach for producing program specifications. It is not uncommon for programmers to receive specs in obscure ways, such as a memo from an end-user (the back of a cocktail napkin is my personal favorite). Rarely are specifications given in a consistent manner that can be evaluated for completeness. A standard approach would improve productivity and communications within the programming staff alone.

What should a good program spec include? Actually, its not too
difficult to figure out…

ELEMENTS OF A PROGRAM SPECIFICATION

Each program should be defined in terms of:

  1. Input Descriptions (to collect data or request an output) - be it implemented by a GUI, command line interface, verbal, optical, or through some other screen interface. All inputs should include:

    a. Name, alternate ID, program label, description.

    b. Defined layout and examples.

    c. Input transaction specifications, including default values and editing rules for data to be collected.

    d. Messages; e.g., data validation, and general processing.

    e. Panels (for screens).

    f. Relationship of inputs to outputs.

  2. Output Descriptions (to retrieve data) - be it implemented by a GUI, printed report, audio/video, or through some other screen interface. All outputs should include:

    a. Name, alternate ID, program label, description.

    b. Defined layout and examples.

    c. Panels (for screens), maps (for reports).

    d. Messages; e.g., general processing and program specific information/warning/error messages.

  3. Data Structure Descriptions (data bases, files, records, and data elements).

    NOTE: Programmers should NOT be in the business of designing
    data bases as they will only do what is convenient for their
    application, not others (thereby missing the opportunity for a
    company to share and re-use data). Physical files should be defined by Data Base Administrators.

    a. All data structures should include: Name, alternate ID, program label, description. They should also include…

    b. Data Bases - organization, key(s), labels, volume/size, backup requirements, internal structure.

    c. Files (both primary and working) - organization, key(s), labels, volume/size, backup requirements, internal structure, file-to-file relationships.

    d. Records - form, length, key(s), contents, record-to-record relationships.

    e. Data Elements - class, justification, fill character, void state, mode, picture, label, size, precision, scale, validation rules. If generated data, rules for calculation. If group data, rules for assignment.

  4. Program Description:

    a. Name, alternate ID, program label, description.

    b. Characteristics: Required processing speed, memory requirements.

    c. Dependencies to other programs externally (e.g., batch job stream).

    d. Dependencies to modules internally (e.g., DLLs, subroutines, etc.)

    e. Functions to be performed with Inputs, Outputs, and Data Structures (create/update/reference).

    f. Special processing rules (logic for processing)

    g. Command language required to execute the program (e.g., command files, JCL, etc.)

    h. Physical environment where program will be executed.

    i. Test Plan and how to assemble test data.

    j. Method of implementation - programming language(s) to be used, design techniques to be observed, tools to be used.

In-house software engineering standards complements any program specification (and should provide guidelines for writing the specification). Such standards define “best practices” for design and conventions to be observed during programming. As an aside, the objective of software engineering should be: Maintainability (easy to correct and update), Performance, Design Correctness (proof), International support (to accommodate languages and cultures), Integration (sharing and re-using code), and Portability (platform independence).

Between the programming spec as listed above and a good set of programming standards, it becomes rather easy to implement any program, be it by hand or through the use of a generator. As a matter of policy, specifications should be written under the assumption that a program generator will be used. This forces us to be more precise in our specifications.

OKAY, SO HOW DO WE GET THERE?

When it comes to assembling a program spec, I am of the philosophy that “You eat elephants one spoonful at a time.” It is difficult to gather the specs for a single program in one fell swoop. Plus, when we consider most development projects today involve more than one program, the problem is further complicated. For major development efforts, I am of the opinion that “layers” of documentation are required. For example, under “PRIDE-ISEM, we view a system as a collection of sub-systems (business processes), implemented by procedures (administrative and computer), administrative procedures consist of operational steps (tasks), and computer procedures consist of programs (which can be sub-divided into modules if so desired).

Basically, “PRIDE” views a system as a product that can be engineered and manufactured like any other product. From this viewpoint, we can make use of other engineering techniques, such as a top-down blueprinting approach to documentation where levels of abstraction define the different levels in the system hierarchy. For example, the Phase 1 Information Requirements contained in the “System Study & Evaluation Manual” define what system(s) are needed (either new or existing systems requiring modification); the Phase 2 “System Design Manual” includes specifies the sub-systems; the Phase 3 “Sub-System Design Manual” specifies the procedures
in the business process; the Phase 4-I “Administrative Procedure Manual” specifies the operational steps, and; the Phase 4-II “Computer Run Book” specifies the programs. This blueprinting approach allows us to progressively refine our specifications until we reach the bottom of the product structure. In other words, it is not necessary to define everything about an Input, Output, File, or Data Element all at once, but rather to initially identify the need for them, then progressively refine the details until we are ready to program.

This approach to documentation is sometimes referred to as “step-wise refinement” whereby the design of a structure, such as a product or building, is refined over various levels of abstraction. Only when we have completed these architectural
designs can the product move to manufacturing/building. Imagine trying to build an automobile or skyscraper without such a technique. It would be virtually impossible. Why should systems be any different? In order for this approach to
work, you must accept the concepts: a system is a product; that there are various levels of abstraction to it, and; there are standards for documenting each level. This is considerably different than a “forms driven” approach to development;
e.g., fill out forms in a regimented sequence without any thought in regard to the design of the system. Instead, documentation should be a natural by-product of the design process.

This also makes a clear delineation in terms of “types” of specifications; for example “information requirements” and “programming specs” are miles apart in terms of content and purpose. Whereas the former is a specification regarding the business needs of the user, the latter is a technical specification
for the programmer to implement.

This blueprinting approach also highlights the need for basic systems work in the earlier phases of design, with the programmers being the beneficiaries of more precise specifications (as opposed to vague concepts), thereby
simplifying their job.

CONCLUSION

So, what is a good program spec? Anything that eliminates the guesswork for the programmer. Consider this: if the up-front system design work was done right, programming should be less than 15% of the entire development process. Then why does it currently command 85% of our overall time (and financial resources)? Primarily because we have shifted our focus and no longer believe we are being productive unless we are
programming. After all, programming is perhaps the most visible evidence of our work effort; system design is less tangible.

Let me illustrate, back in 1976 I took an entry level COBOL training course from IBM in Cincinnati. Our class was divided into teams of three people and each team was given problems to solve. When we received an assignment, the other two programmers in my team immediately started to write code,
key their entries (Yes, we used keypunch equipment back then), then compiled the program. Inevitably, there were errors and they would go back-and-forth correcting errors until they finally got it right. As for me, when I got an assignment, I would pull out a plastic template and paper, and work out the logic of the program before writing the code. I would then key and compile, and would always complete the assignment before my partners. Curiosity got the better of me and I asked them, “Why do you do it that way?” They contended this was how they were expected to work by their superiors; that they weren’t being productive unless they were producing code. I countered that even though they were faster at producing code, I was still beating them every time, simply because I was thinking the problem through.

The IBM rep who registered me for the class happened to stop by and asked me if I was learning anything. I said I was learning more about “programmers” than I was about “programming.” I am still learning about programmers, but I haven’t noticed any significant changes in their attitudes
towards development since then. True, we now have some great tools to expedite programming. But if they are so good, why doesn’t our backlog diminish? Why are we constantly in a maintenance mode? Why can we never seem to complete our major applications on time? Why? Because we are no longer doing the up-front work.

Just remember, it is always “Ready, Aim, Fire” - any other sequence is simply counterproductive.

Tim Bryce is the Managing Director of M. Bryce & Associates (MBA)
of Palm Harbor, Florida, a management consulting firm specializing in Information Resource Management (IRM). Mr. Bryce has over 30 years of experience in the field. He is available for training and consulting on an international basis. His corporate web page is at:
http://www.phmainstreet.com/mba/

He can be contacted at: timb001@phmainstreet.com

Copyright © 2006 MBA. All rights reserved.

Create Your Own Power Pad

What makes Power Pads similar to the printed template?

The Power Page is a pad in template form that you can carry around with you when you visit clients. Why is the Power Pad a template when you write so much information on it and transfer it to a computer program? By template in this instance, we mean a “Form”.

You have all filled out order forms, forms for getting refunds, etc. Each of these forms requires the same information over and over again. We use forms to capture information and when you create your Power Pad templates, you will actually be creating a hand-written form that can be later transferred to the computer. Forms help you to be more organized and also to make sure you get all the information that you need when in a meeting. It will help you ask the right questions to fill in important information.

Creating your own template will also make you think about what is important. It will also help you to discard some data as totally irrelevant to the business at hand. You should carefully think about what to use and then design your form (template) so that it is easy to use. I know I have filled out information on some forms and wondered why they would need to know some of the things they ask for. Make it easy on yourself and know what it is you need to have in order to get to the proposal.

Do not give yourself lots of work; only gather what you need now and what you can use in the future. Design your template to be practical and useful. You can even have a space that records what promo items you have given to this client or to your potential customer. If gives you an excuse to call them and create yet another touch point.

Bette Daoust, Ph.D. - EzineArticles Expert Author

Bette Daoust, Ph.D. has been networking with others since leaving high school years ago. Realizing that no one really cared about what she did in life unless she had someone to tell and excite. She decided to find the best ways to get people’s attention, be creative in how she presented herself and products, getting people to know who she was, and being visible all the time. Her friends and colleagues have often dubbed her the “Networking Queen”. Blueprints for Success - Networking: 150 ways to promote yourself is the first in this series. Blueprints for Success Branding Yourself: Another 150 ways to promote yourself is planned for release in 2006. For more information visit http://www.BlueprintBooks.com

What is MySQL?

MySQL is a database system used on the web. Basically, a MySQL database allows you to create a relational database structure on a web-server somewhere in order to store data or automate procedures. If you think of it in comparison to Microsoft Access, MySQL is what holds all of your tables, PHP acts as your queries (among other things), and your forms are basically web pages with fields in them. With all of this combined, you can create truly spectacular projects on the web.

MySQL is also open source in that it’s free and falls under the GNU General Public License (GPL). Chances are, if you are getting your own web-page or already have one - your host supports MySQL and PHP. They are generally associated with (though not limited to) Unix/Linux based servers. If by chance you are considering getting your own page and want MySQL and PHP support, check out Dreamhost - I’ve been using them for years and they absolutely can’t be beat.

Interacting with a MySQL database is a little weird as you don’t have the tried and true WYSIWYG interface that something as easy as Microsoft Access affords. When creating tables, you’ll either have to create them by using SQL Statements, or by using another open-source tool available online called PHPMyAdmin. PHPMyAdmin gives you an easy-to-use interface that allows you to create tables and run queries by filling in a little bit of information and then having the tables created for you. This is good if you’re either lazy, or don’t feel like bothering with big and complicated SQL Statements.

In comparing MySQL to Access you’re going to have a truckload of differences. While MySQL isn’t exactly tough to tackle (once the tables are created - you’re pretty much done with it), it’s capabilities extend far beyond that of Microsoft Access when dealing with speed and reliability. It’s simply a better system - and it should be. Microsoft Access (as much as I love it) is only a desktop database system. And while a limit of 10-20 concurrent Microsoft Access users is fine for most small organizations - when you’ve got a webpage getting 10,000 hits a day you’ll need something that can handle all of those queries efficiently.

MySQL tables also have the luxury of using “real” data types - not those little fluffy ones you see in Microsoft Access. Need a text field that can hold over four billion characters? Not a problem, just use the LongText data type. Want the field to hold that many characters and be case-sensitive? Easy, just use the LongBlob data type. Need to store numbers from 0 to 18,446,744,073,709,551,615 (for those of you who are curious, that would be over 18 Quintillion), then use the BigInt data type. Indeed, 18 quintillion is a big integer.

As you can see, the limitations of Access fall well within the capabilities of MySQL. This is one of the many reasons that huge webpages use MySQL to handle their millions of daily hits. Well, that, and it’s free!

David Badurina, President of Blue Moose Technology, LLC, is a relational database design expert. David’s unique ability to explain virtually any technical concept has allowed him to work with companies such as AMD, Motorola, the American Heart Association, and countless small businesses. Learn more about database design right now at http://www.bluemoosetech.com

Great Plains Dynamics/eEnterprise Upgrade - Things to Consider and FAQ

If you have Great Plains Dynamics/eEnterprise (version 6.0 or earlier) and support it for your company then you need to know some technical details about Great Plains version upgrade and what is going on behind the scenes, which options do you have in case of Dexterity, VBA, SQL customization, additional complexity comes with migration from ctree/Pervasive to MS SQL/MSDE. Currently you are probably thinking to upgrade to Microsoft Great Plains 8.0 or 7.5.

What is upgrade in the language of technology? Upgrade has server and client sides.

  • Server side - upgrade converts tables from old format to the new one. In general words - Microsoft Business Solutions developers may change table structure, append additional fields to add new functionality, things like that. Upgrade copies the table with changes to temporary table, then drops original table, recreates it with new structure and copies all the data from temp table to the newly created one.

  • Workstation side - workstation is written in Great Plains Dexterity and has Dynamics.exe - engine and DYNAMICS.DIC - dictionary. These two plus all the additional files will be replaced with the new ones. Other dictionaries, such us REPORTS.DIC and FORMS.DIC should be also upgraded and upgrade will try to deal with them automatically. In some cases modified reports (in REPORTS.DIC) could not be upgraded and need to be recreated in the new version.

What is customization upgrade? You should consider different types of customizations: Dexterity, VBA/Modifier, SQL, ReportWriter, Crystal Reports

  • Dexterity Customization - being very short - Dexterity may have so called Custom Forms - these do not need upgrade - they should work as is. Then Dexterity may alter existing Great Plains forms (so-called Alternate Great Plains forms) - in this case Dexterity customization should be redone for these forms/screens. Plus additional consideration should be given to Dexterity triggers, shadow tables, etc.

  • VBA/Modifier customization - Modifier allows you to modify existing Great Plains windows - it creates so called modified Great Plains windows, stored in FORMS.DIC. Usually modification is placing new buttons or fields, which in turn will be given VBA scripts (stored in DYNAMICS.VBA). VBA scripts may call something nice, like Crystal Report, or have some data access logic. Usually the old version of DYNAMICS.VBA workds with the new version. You may need to rearrange buttons on the modified form.

  • SQL - you may have some stored procs for data integration, EDI or the like - if the addressed tables will be changed in the new version then you need to analyze your SQL code. The good news is - Microsoft Business Solution doesn’t make a lot of changes since version 7.0, because Microsoft is now trying to merge the products it owns: Great Plains, Solomon, Navision and Axapta - and so has different priorities

  • ReportWriter - MBS doesn’t change tables, but it keeps changing Dexterity formulas used in ReportWriter original reports - this is the problem in so-called Modified Reports upgrade - usually you have these reports modified: SOP Blank Invoice form, SOP Blank Picking ticket, etc. If report can not be upgraded - it should be redone in the new version with some exceptions.

  • Crystal Reports - the nice thing about Crystal Report - id doesn’t need to be upgraded (if the fields in the tables exist in the new version - which is usually true statement)

What is upgrade for third-party modules? Your Great Plains may have so-called third party modules: Mekorma, Kampdata, Horyzon, Wennsoft, Avalara, Truepay, Trinity, Intellisol to name a few

Third party modules may have their own utility for upgrade. You just need to know that your third-party is ready for the new Great Plains version - if not - you just wait and stay on the old version.

What is migration from Ctree/Pervasive.SQL 2000 to MS SQL/MSDE? MBS has migration tool. You need first to install Great Plains on SQL Server with exactly the same account/segments structure and then install migration tool (it is Dexterity chunk) on your ctree/Pervasive workstation - then, when you integrate the chunk - you will map it to target SQL-based Great Plains Company, select all system and company tables, click the button and it will move all your tables one-by-one. In the case when your Great Plains ctree/Pervasive has third parties - you need to check if the vendor has migration tool - otherwise you have to do manual move, use SQL Linked server to your legacy data

Do I need consultant? It is probably good idea to have consultant to do the upgrade. We strongly recommend you to use consultant in the following cases

  • You have Dexterity customization

  • You are doing migration from Pervasive/Ctree to Microsoft SQL Server/MSDE, especially when you have third-parties without migration tools

  • You have a lot or ReportWriter Modified Great Plains Reports

  • You have old version of Great Plains: Dynamics or eEnteroprise 6.0 or prior - in this case you can not appeal to Microsoft Technical Support - it is discontinued

  • Your Great Plains has more than 20 users and you have to have upgrade done over the weekend - if it fails - you have business problems

  • You don’t have support - in this case you have to select your Microsoft Business Solutions Partner and pay for the annual support/enhancement plan - you will get new registration key and will be ready for the upgrade

Good luck in upgrading and if you have issues or concerns - we are here to help! If you want us to do the job - give us a call.

About The Author

Andrew Karasev is Chief Technology Officer in Alba Spectrum Technologies - USA nationwide Great Plains, Microsoft CRM customization company, based in Chicago, California, Texas, Florida, New York, Georgia and having locations in multiple states and internationally (www.albaspectrum.com), he is CMA, Great Plains Certified Master, Dexterity, SQL, C#.Net, Crystal Reports and Microsoft CRM SDK developer. You can contact Andrew: andrewk@albaspectrum.com

akarasev@albaspectrum.com

1-866-528-0577

Improve Your Life And Business With Web 2.0

The web is changing faster than ever, thanks to the Web 2.0 movement which includes Ruby on Rails, Ajax, sleek design and “hover links with colorful background”. Are you up to the task of keeping up with it? In this article you will discover how to use those technologies to improve you life and business starting at no cost.

At the moment there are several excellent Web 2.0 applications loosed on the web, but usually they lack several features in order to compete with the big guys. Fortunately with the power of APIs, soon some of those applications will combine into a more robust solution.

+ Work Area

Protopage
———
Bad: Not enough widget applications, no JS support.

Does your monitor look like a sunflower at a distance from all the yellow sticky notes? Why don’t throw all that into the web? By doing so, you will be able to share it with co-workers and friends and access it form different locations. There’re several solutions out there, but the one that excels in usability is ProtoPage. The edge from this London based company is the ability to drag your panels without being constrained into a grid and to resize it. Also, you are able to create several “desktops”. One could be for your personal life, the other one for business, etc.
The service is great, but it lacks more widgets other than just the Weather.

Tip: Since you are not allowed to add a JS script, use the “Iframe tag” with the “src=page_with_your_js.html”. This will pull anything you want into your Protopage panel.

+ Sending Invoice

BlinkSale
———
Bad: The user cannot save the products and services to avoid typing again next time.

This is a software niche in which the creative and innovative power of the web did not touch for a long time. Consequently, small businesses were confined with proprietary software like QuickBooks, which is expensive and cluttered. BlinkSale is a very nice start to bring the financial industry into the Web 2.0 and hopefully shake things up a bit. The greatest thing about BlinkSale is to have your invoices in XML/RSS rather than a proprietary format. Although, at the moment, BlinkSale is not a replacement for QuickBooks yet due to lack of capabilities such having products and services list, reports and etc. BlinkSale is a basic invoicing solution for small companies, but this is just the beginning of a revolution in this area. Just wait until BlinkSale and Basecamp have their API out and well distributed. That would make several big corporations tremble, or to write fat checks to the owners.

+ Project Management

Basecamp
——–
Bad: You cannot set the time for your meetings in the milestone and some drag & drop capabilities would be great.

Online collaboration can give you the edge over your competitors by allowing your customers to log in and see how the project is going, add a file or a “to-do” item. Basecamp can be use for a wide range of situations. From a Web Design company to a wedding planning, this is the service to use. You can set up different users to access different projects and so on. This is a great out-of-the-box solution for any occasion, easy to use and open for collaboration.

+ Calendar

Planzo
——
Bad: Design is a little cluttered and RSS feeds are not well tagged.

One of the biggest headaches of the modern world is to sync your calendar. Most people have to struggle in organizing themselves among Outlook at work and sticky notes at home. Planzo delivers a nice start towards solving that problem by delivering reminders via email and SMS and connection with iCal.

But be careful, sometimes in the attempt of organizing yourself, you’ll end up with 10 different accounts in several services and that may worsen the situation.

One possible solution is to combine all services through RSS into a “work area” like ProtoPage. Then you can have the invoice list, your calendar, etc., all delivered into one place.

Thiago Leite is a freelance Web designer / Developer / Thinker ThiagoLeite.com

Imagine if Everyone Working In Your Office Was In Synch?

Microsoft-Outlook is a pretty amazing program. So much more than
simply an e-mail client, it provides a task list, a powerful
calendar with recurring scheduling capabilities, wonderful
electronic sticky notes, mail-merge capability with MS-Word
support and so much more.

The problem is, it is a little stingy with its data and doesn’t
like to share it with any of your employees unless you’re willing
to invest in the expense and headaches involved with running a
Microsoft Exchange Server.

Wouldn’t it be nice if you could use MS-Outlook to coordinate
meeting across multiple peoples’ calendars, share tasks and
delegate project responsibilities right from Outlook even if you
were working from the road? How about managing discussion groups,
sharing documents, synchronizing updates and even creating an
organization-wide shared contact list?

These are the kind of advantages that Fortune 2000 employees have
at their fingertips every day and take for granted. But those
less fortunate small business owners end up taking notes and
sticking them all over their monitors, playing voice mail tag
writing phone message on paper airplanes which they toss at their
co-workers in the next cubicle.

Office automation, collaborative work tools, open data
environment and remote access - these are all buzzwords that
appear in business magazines every day but whose functionality
continues to elude the small business owner.

Does a small business’s size mean that their clients are any less
important than those of the big boys? Are sales contracts any
less urgent? Are meetings any less productive? No, of course
they’re not. The problem is that high technology usually means
big budget expenditures that the average small business owner
cannot afford. Up until now, that is.

Sometimes it takes a small business to solve another small
business’s problem. And that’s exactly what the folks at
4Team.com have done with their flagship product, 4Team for
MS-Outlook.

Now any small business can be as competitive and productive as
any big company with access to the same high quality
communication, organization and collaborative tools that before
now were only available to companies with large IT budgets.

Even better, 4Team supercharges MS-Outlook with all those,
“Wouldn’t it be nice,” features without requiring Exchange Server
and without any recurring licensing fees. In fact, 4Team is so
inexpensive that you probably spend more on toner cartridges than
you’ll ever spend with this work-saving, profit-building
innovation.

You simply select the number of users, pay the one-time paltry
per-seat fee and you are good to go. Recognizing that the average
small business person is going to look at all the features that
4Team offers and say, “Yea, right, when pigs fly,” they even
offer a 30-day, 100% free trial so you can see that it’s all
true.

Imagine how your efficiency will improve when you and your staff
can drag and drop new shared projects into MS-Outlook and
instantly add, delete or change team members, deliverables,
priorities, due dates and even appoint project managers and team
leaders.

How easy will it be to schedule meetings with your staff, even
those who work remotely, when you can click one link and see all
of their calendars side by side? Imagine your field sales or
service people being able to duck into an Internet café or
Starbucks®, pick up their email messages, update their calendar
and electronically drop off their new orders with a simple point
and click.

The features in 4Team for Outlook are so powerful that you’ll
forget you are using MS-Outlook. It’s like layering a whole new
level of efficiency onto your organization without the huge
capital expenditure. Why not give it a try and see for yourself?

Copyright © 2004 Cavyl Stewart. Get the most out of the software you use everyday. Check out the add-in software directory for more information on 4Team for Outlook and other great time saving Outlook add-in tools. Visit: http://www.find-small-business-software.com/outlook-addins.html - Also, be sure to check out my Exclusive, 100% free, 100% original content ecourses.

Corporate ERP: Standard vs. Rich functionality - Microsoft Great Plains

Traditionally we were considering functionally rich systems, such as SAP, Oracle Financials, PeopleSoft, JDEdwards as the fit for large publicly traded corporation. There might be multiple opinions for the future corporate ERP/MRP systems. We would like to give you our prognosis: high-end systems will be losing market to generic granulated standard functionality systems. Customization will be in high demand - but it will be appropriate to go for light of medium customization versus purchasing high-end functionality system. It is not a secret, that nowadays multiple companies from Fortune 500 list use midmarket solution, such as Microsoft Great Plains as their corporate ERP. In this small article we’ll try to defend our position and give you highlights on deploying Microsoft Great Plains for large corporation.

• Computer Hardware Technology Breakthrough. Imagine you are back in old-good 1990th - high tech boom. If somebody would tell you that you can go to the store and purchase of the shelf 400GB IDE hard drive for $300 - you would probably laugh. We were used to 20GB hard drives those days and believed that such a high capacity devices attributable to mainframes. Another example - 1GB RAM memory stick for $100. Intel Xenon and AMD Optron based Servers are direct successors of IBM PC platform, designed in the 1980th as personal computer (PC). These are signs of the maturity in the industry and time to revise hardware pricing strategy - it should definitely drop.

• Elite DB Platforms Time is Over. Yes, it might be surprise, but Microsoft, which in the 1990th was targeting small business and developers community is now out there on the marketplace with Microsoft SQL Server, which is similar in its power and is a way more simple to support, than Oracle, DB2, Sybase, Progress, Ingress, SAP database and other “elite” platforms. Midsize companies switched to MS SQL Server and do their reporting, analysis and datawarehousing/OLAP on the Microsoft platform

• Custom Logic versus Functionally-Rich Module. The trends in the ERP/Accounting applications software industry ended up with required annual maintenance/enhancement program fee, which is usually close to 20% of the software list price. If you purchase expensive module and use 10% or its functionality, because the whole bundle has what you need among other features, then you are in trap of paying 20% annually for the logic you don’t need and don’t use. If you hire consultant to customize generic platform - you pay one time

• ERP Granules Standardizing. This should happen. We believe in this - seeing signs of maturing ERP software industry.

Good luck and you can always seek our help in customization, implementation, integration and support. Call us: 1-866-528-0577 or 1-630-961-5918, help@albaspectrum.com

Andrew Karasev is Chief Technology Officer in Alba Spectrum Technologies - USA nationwide Great Plains, Microsoft CRM customization company, serving Chicago, California, Arizona, Texas, Florida, Georgia, New York, Australia, UK, Canada, Continental Europe, Russia and having locations in multiple states and internationally ( http://www.albaspectrum.com ), he is Dexterity, SQL, C#.Net, Crystal Reports and Microsoft CRM SDK developer

Accounting Software: Why Switch?

Should your company use a new accounting software program or should you simply just go with what you have? There are many advantages to using software as opposed to relying on your employees. First, here are some of the reasons why you need to have the latest accounting software in order to keep your business on track.

• You need accuracy and you need to know it’s right. While humans can never be error free all of the time, you’ll find that software can be. Can you afford to let your guard down here?
• You also need the information at your fingertips quickly. You don’t have time for all the paperwork to get finished. You want to know if your company is in the red or the black. You need accurate reports in a moments notice. You need to be able to see what is happening, in detail in the middle of the night. Software can do all of these things for you.
• You also need something that is updated. Tax codes change so often that you can’t even have your employees finishing one course by the time the next one is set up. With automatic updates through the software distribution companies, you’re already set.
• You also need ease of use. As technology advances, so does the ability of it to become easier to deal with. You’ll find a wide range of options to consider here that are easy to use and just as complex in what they can provide for you.
• Lastly, you need something that is well within budget. Accounting software can do that for you because it is more than likely a one time purchase. Even if you do pay monthly for it, you’ll find it to be less expensive than those errors out there, right?

Accounting software can be purchased to make your business better, more efficient and easier to deal with all around.

for more information please see http://www.accounting-software-shack.co.uk

Make Documenting Your Software Easier Than Ever Before

Here at M6.Net we’ve just released our new control panel software, allowing for easier and better control over our clients’ website accounts. It was my task to write the documentation for this new software. After working through it in a traditional word processor application and subsequently producing a final product that was of little use, we came to realize that there needed to be a better way to write a manual, and to release it in multiple formats. One of the lead developers sent a link my way and after trying the evaluation copy of the software I realized that it was the package that we needed. ‘Help and Manual 4′ turns manual writing and distribution into a very simple affair.

The Help and Manual (hereafter known as H&M) homepage (http://www.helpandmanual.com/) states that “Help & Manual makes producing help a pleasure” and this is a fairly accurate little catchphrase. When I first tried the evaluation version or edition 3 a while ago, it frustrated me that I had to copy and paste every page of the manual from the word processor into H&M. This was a daunting task even for our modest sized manual that runs just over 50 pages. With the newer version however, all I had to do was export the document to Rich Text Format and use the import feature in H&M. The software went off and did its thing, returning to me with a nice manual file broken into sections based on the various headings in the document. While there were a few minor layout glitches these were easily solved, and the overall benefit of being able to directly import the manual was a huge timesaver. While it took me 3 shifts (about 4 hours a piece) to import and format the manual manually, with the new version of H&M, I had it all looking and working nicely within a single shift and still had time to edit and modify the document.

The second feature that impressed me greatly was the sheer number of output formats available to the manual writer. The formats include HTML Help, Classic Winhelp, VStudio help, Browser based help (HTML pages), Adobe PDF, MSWord manual and eBook. There’s bound to be an option or two that are right for your manual. For us it was perfect. We could create an HTML file for online help, and a downloadable PDF version of the document for offline perusal. Each output style is fully customizable, particularly the document outputs which can be modified with a handy tool called the “Print Manual Designer”. This comes included with H&M and allows you to design the overall look of your manual in an easy and self-affirming way.

I’ve spent a while talking about the input and output options, but not the functionality. I’m pleased to say that the interface is straight forward and all the expected options (or at least all the options that I expected) are included. You control the layout in a tree structure on the left hand side of the screen. This determines the numbering of your sections in the final exported manual. Then there are the many standard formatting options like font attributes, tables, character insertion, image insertion etc, but there are also more unique media options. It’s possible to embed movie, sound, flash, and other files straight into your manual. This allows you to make a demonstration video illustrating the point the manual is trying to make and include it as part of the documentation. Obviously the viability of this depends upon your chosen output format.

There are a few unique tools that I thought were exceptional concepts. The first is the Syntax Highlighter that allows you to highlight code in your manual to look much the same as code in a development environment. I didn’t actually have reason to use it and test it, but I think the idea is a great one.

The second is the Screen Capture tool. This useful little gadget hides the H&M window and allows you to capture an image of any control or window in an open program by simply holding the Ctrl key and then clicking the window. This image is saved into your images folder and inserted into the manual. It’s quick and easy to use and saves a lot of time when compared to the alternative method (opening the program, hitting print screen, cropping the image to a desired size, and importing it into the H&M software).

Overall I was very impressed with ‘Help and Manual 4′. Beyond being a basic conversion tool, it makes it very easy to write your entire manual using just the functionality of the software. Once your information is all inputted there are many customization and layout options to get it looking just how you want it. When you’re done you can output it to many different formats. Help and Manual made writing and distributing our manual quick and easy. Check it out at http://www.helpandmanual.com

Pros:

- Excellent output options
- Comprehensive formatting tools allow complete control of a project’s look
- Screen capture tool
- Good import options

Cons:

- There can be some formatting errors when importing from a document.
- You can’t select a network folder for your images folder. It is limited to your local hard drive(s).

Score: 4/5

Daniel Punch
M6.Net Web Helper
http://www.m6.net

Anthony Loeff nonprofit volunteer is writing about screen readers

Recent versions of Microsoft Windows come with the rather basic Narrator. The open source GNOME desktop environment long included Gnopernicus and now includes Orca. Nevertheless, using a screen reader is, according to some users, considerably more difficult than using a GUI and many applications have specific problems resulting from the nature of the application. While Apple Mac OS X includes VoiceOver, a more feature-rich screen reader. The primary audience for such applications is those who have difficulty reading because of learning disabilities or language barriers. Screen reader choice is contentious: differing priorities and strong preferences are common. A persons choice of screen reader is dictated by many factors, including platform and the role of organizations like charities, schools, and employers.

Screen readers are a form of assistive technology potentially useful to people who are blind, visually impaired, or learning disabled, often in combination with other AT such as screen magnifiers. However functionality remains limited compared to equivalent desktop applications, the major benefit is to increase the accessibility of said websites. The console-based Oralux Linux distribution ships with three screen-reading environments: Emacspeak, Yasr and Speakup. Linux distributions for the blind include Oralux and Adriane Knoppix.

This season Anthony Loeff nonprofit worker is reporting digital tools for visually impaired Later versions of Microsoft Windows include an Accessibility Wizard and Magnifier for those with partial vision, and Microsoft Narrator, a simple screen reader. The rest have some vision, from light perception alone to relatively good acuity. A screen reader is a software application that attempts to identify and interpret what is being displayed on the screen.

Screen readers can be assumed to be able to access all display content that is not intrinsically inaccessible.

The latter developed in part by Knopper who has a visual impairment. Web browsers, word processors, icons and windows and email programs are just some of the applications used successfully by screen reader users. More and more, screen readers are being bundled with operating system distributions. Almost 20 percent of those deemed legally blind, by any measure, have no vision. There are also open source screen readers, such as the Linux Screen Reader for GNOME and NonVisual Desktop Access for Windows.

Only a small fraction of this population, when compared to the sighted community, have Internet access.

Access technology such as screen readers and Screen magnifiers enable the blind to use mainstream computer applications. Most legally blind people 61 percent do not use computers. The Macintosh OS also comes with a built-in screen reader, called VoiceOver. Experimental approaches in sensory substitution are beginning to provide access to arbitrary live views from a camera.

The movement towards greater web accessibility is opening a far wider number of websites to adaptive technology, making the web a more inviting place for visually impaired surfers. This interpretation is then represented to the user with text-to-speech, sound icons, or a braille output.