answersLogoWhite

0


Best Answer

Documentation

· Software documentation or source code documentation is written text that accompanies computer software.

· It either explains how it operates or how to use it, and may mean different things to people in different roles.

Role of documentation in software developmentDocumentation is an important part of software engineering. Types of documentation include:

1. Requirements - Statements that identify attributes, capabilities, characteristics, or qualities of a system. This is the foundation for what shall be or has been implemented.

2. Architecture/Design - Overview of software. Includes relations to an environment and construction principles to be used in design of software components.

3. Technical - Documentation of code, algorithms, interfaces, and APIs.

4. End User - Manuals for the end-user, system administrators and support staff.

5. Marketing - How to market the product and analysis of the market demand.

Requirements documentationRequirements documentation is the description of what a particular software does or shall do. It is used throughout development to communicate what the software does or shall do. It is also used as an agreement or as the foundation for agreement on what the software shall do. Requirements are produced and consumed by everyone involved in the production of software: end users, customers, product managers, project managers, sales, marketing, software architects, usability engineers, interaction designers, developers, and testers, to name a few. Thus, requirements documentation has many different purposes.Requirements come in a variety of styles, notations and formality. Requirements can be goal-like (e.g., distributed work environment), close to design (e.g., builds can be started by right-clicking a configuration file and select the 'build' function), and anything in between. They can be specified as statements in natural language, as drawn figures, as detailed mathematical formulas, and as a combination of them all.The variation and complexity of requirements documentation makes it a proven challenge. Requirements may be implicit and hard to uncover. It is difficult to know exactly how much and what kind of documentation is needed and how much can be left to the architecture and design documentation, and). The need for requirements documentation is typically related to the complexity of the product, the impact of the product, and the life expectancy of the software. If the software is very complex or developed by many people (e.g., mobile phone software), requirements can help to better communicate what to achieve. Traditionally, requirements are specified in requirements documents (e.g. using word processing applications and spreadsheet applications). To manage the increased complexity and changing nature of requirements documentation (and software documentation in general), database-centric systems and special-purpose requirements management tools are advocated. Architecture/Design documentationArchitecture documentation is a special breed of design document. In a way, architecture documents are third derivative from the code (design document being second derivative, and code documents being first). Very little in the architecture documents is specific to the code itself. These documents do not describe how to program a particular routine, or even why that particular routine exists in the form that it does, but instead merely lays out the general requirements that would motivate the existence of such a routine. A good architecture document is short on details but thick on explanation. It may suggest approaches for lower level design, but leave the actual exploration trade studies to other documents.

A very important part of the design document in enterprise software development is the Database Design Document (DDD). It contains Conceptual, Logical, and Physical Design Elements. The DDD includes the formal information that the people who interact with the database need. The purpose of preparing it is to create a common source to be used by all players within the scene. The potential users are:

Database Designer;Database Developer;Database Administrator;Application Designer;Application Developer

When talking about Relational Database Systems, the document should include following parts:

· Entity - Relationship Schema (enhanced or not), including following information and their clear definitions:

o Entity Sets and their attributes

o Relationships and their attributes

o Candidate keys for each entity set

o Attribute and Tuple based constraints

· Relational Schema, including following information:

o Tables, Attributes, and their properties

o Views

o Constraints such as primary keys, foreign keys,

o Cardinality of referential constraints

o Cascading Policy for referential constraints

o Primary keys

Technical documentation

This is what most programmers mean when using the term software documentation. When creating software, code alone is insufficient. There must be some text along with it to describe various aspects of its intended operation. It is important for the code documents to be thorough, but not so verbose that it becomes difficult to maintain them. Several How-to and overview documentation are found specific to the software application or software product being documented by API Writers. This documentation may be used by developers, testers and also the end customers or clients using this software application. Today, we see lot of high end applications in the field of power, energy, transportation, networks, aerospace, safety, security, industry automation and a variety of other domains. Technical documentation has become important within such organizations as the basic and advanced level of information may change over a period of time with architecture changes. Hence, technical documentation has gained lot of importance in recent times, especially in the software field.

Often, tools such as Doxygen, NDoc, javadoc, EiffelStudio, Sandcastle, ROBODoc, POD, TwinText, or Universal Report can be used to auto-generate the code documents-that is, they extract the comments and software contracts, where available, from the source code and create reference manuals in such forms as text or HTML files. Code documents are often organized into a reference guide style, allowing a programmer to quickly look up an arbitrary function or class.

The idea of auto-generating documentation is attractive to programmers for various reasons. For example, because it is extracted from the source code itself (for example, through comments), the programmer can write it while referring to the code, and use the same tools used to create the source code to make the documentation. This makes it much easier to keep the documentation up-to-date.

User documentationUnlike code documents, user documents simply describe how a program is used.

In the case of a software library, the code documents and user documents could be effectively equivalent and are worth conjoining, but for a general application this is not often true.

Typically, the user documentation describes each feature of the program, and assists the user in realizing these features. A good user document can also go so far as to provide thorough troubleshooting assistance. It is very important for user documents to not be confusing, and for them to be up to date. User documents need not be organized in any particular way, but it is very important for them to have a through index. Consistency and simplicity are also very valuable. User documentation is considered to constitute a contract specifying what the software will do. API Writers are very well accomplished towards writing good user documents as they would be well aware of the software architecture and programming techniques used. See also Technical Writing.

There are three broad ways in which user documentation can be organized.

1. Tutorial: A tutorial approach is considered the most useful for a new user, in which they are guided through each step of accomplishing particular tasks.[1]

2. Thematic: A thematic approach, where chapters or sections concentrate on one particular area of interest, is of more general use to an intermediate user. Some authors prefer to convey their ideas through a knowledge based article to facilitating the user needs. This approach is usually practiced by a dynamic industry, such as Information technology, where the user population is largely correlated with the troubleshooting demands [2]

3. List or Reference: The final type of organizing principle is one in which commands or tasks are simply listed alphabetically or logically grouped, often via cross-referenced indexes. This latter approach is of greater use to advanced users who know exactly what sort of information they are looking for.

Marketing documentationFor many applications it is necessary to have some promotional materials to encourage casual observers to spend more time learning about the product. This form of documentation has three purposes:-

1. To excite the potential user about the product and instill in them a desire for becoming more involved with it.

2. To inform them about what exactly the product does, so that their expectations are in line with what they will be receiving.

3. To explain the position of this product with respect to other alternatives.

One good marketing technique is to provide clear and memorable catch phrases that exemplify the point we wish to convey, and also emphasize the interoperability of the program with anything else provided by the manufacturer.

User Avatar

Wiki User

11y ago
This answer is:
User Avatar

Add your answer:

Earn +20 pts
Q: Explain all the major types of documentation?
Write your answer...
Submit
Still have questions?
magnify glass
imp
Continue Learning about Engineering

What is shipping documentation?

shipping documentation are the documents which are prepared to export all shipment.


IS it necessary to have same size for all members in an union Explain?

it is not necessary to have same size for all members in an union ..because unions holds different data types..


Purpose of documentation?

The main purpose of documentation is to keep records. Documentation is an integral part of all sectors of business and technology has simplified it.


What types of ic chips are there?

Thousands, if not millions. There are so many that it would be a major task to catalog them all. They could be categorized by technology used or by function.


What is the importance of documentation in programming life cycle?

Documentation is critical unless you are the only person who will ever, ever, ever look at a piece of code. And even then, if you go away from it for 6 months you will probably have trouble remembering what you did. In business, code MUST be commented because the person fixing or enhancing the program is often not the person who wrote it. It can take 4 or 5 times as long to figure out what a program is doing when you only have the computer-language logic available, as opposed to an English-language explanation of the underlying concepts. It's also critical to keep the documentation up to date and accurate in both facts and spelling. If the code has been changed and the documentation hasn't, that disagreement can mislead anyone who comes along and tries to work on the code later. If you can't spell or use lousy grammar, it can make it a lot harder to perform text searches looking for a particular phrase that's likely to appear in a comment. Try searching for PARAMETER when somebody spelled it PARAMATER, for example (I've had to do just that!!) The above is an explanation to why documentation is important in one of levels of software documentation - Technical or Code Documentation. There are other levels of documentation including Software Requirements Documentation, Software Architectural/Design Documentaion and End-User Documentation (e.g.: Manuals, Tutorials). Documentation at each of these levels is usually necessary, or at least desired, for most non-trivial software projects. For more information on these levels of documentation and to who and how it may be important, pls see http://en.wikipedia.org/wiki/Software_documentation

Related questions

Explain the historical development of human rights?

Explain the types of state duties imposed by all human rights treaties?


What are the 6 major crystal types?

amethyst that's all i no


What aircraft engine documentation is an AFTO IMT 95 primarily used for?

The AFTO IMT 95 is not used for any A/C engine documentation specifically. It's used for all types of documentation for many different AF assets. It's primary purpose is documentation of Significant Historical Data, hence it's title: AFTO IMT 95, Significant Historical Data.


What is shipping documentation?

shipping documentation are the documents which are prepared to export all shipment.


What documentation does one need to start a company?

Different types of businesses require different types of documentation. Generally, most or all business require a registered business name, or DBA, which is the company's legal name. Companies also need to register a tax ID and may need various permits depending on the type of company.


Explain briefly about all types of taper turning?

taper turning by setting over tailstock of center


How many types of submarine robots are they?

There are literally hundreds of types of submarine robots. All major countries of the world develop them.


Who is the primary POC for receiving documentation?

AFI 33-112 identifies the BECO as the primary POC for all necessary documentation. This does not relieve you of certain documentation requirements


What contains all of the documentation for a project?

Repository


2 major softwares developing companies and the type of software they develop?

1. microsoft: all types 2. apple: gay types


What do the major types of molecules that make up all living things have in common?

Carbon atoms


What do the major types of molecules that make living things have in common?

they all contain carbon atoms