plans 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.rspec +3 -0
- data/.versions.conf +2 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +102 -0
- data/Guardfile +46 -0
- data/LICENSE +22 -0
- data/README.md +100 -0
- data/Rakefile +6 -0
- data/bin/_guard-core +16 -0
- data/bin/console +14 -0
- data/bin/guard +16 -0
- data/bin/rake +16 -0
- data/bin/rspec +16 -0
- data/bin/setup +7 -0
- data/exe/plans +5 -0
- data/lib/plans/cli.rb +121 -0
- data/lib/plans/command.rb +61 -0
- data/lib/plans/init.rb +19 -0
- data/lib/plans/list.rb +47 -0
- data/lib/plans/new.rb +29 -0
- data/lib/plans/publish.rb +98 -0
- data/lib/plans/thumbs.rb +47 -0
- data/lib/plans/version.rb +3 -0
- data/lib/plans.rb +15 -0
- data/plans.gemspec +31 -0
- data/template/README.md +39 -0
- data/template/doc/README.md +12 -0
- data/template/doc/img/.empty_directory +0 -0
- data/template/doc/publish/.empty_directory +0 -0
- data/template/doc/reference.docx +0 -0
- data/template/doc/template.yml +3 -0
- data/template/functional/README.md +60 -0
- data/template/functional/img/.empty_directory +0 -0
- data/template/functional/publish/.empty_directory +0 -0
- data/template/functional/reference.docx +0 -0
- data/template/functional/template.yml +3 -0
- data/template/glossary/README.md +20 -0
- data/template/glossary/img/.empty_directory +0 -0
- data/template/glossary/publish/.empty_directory +0 -0
- data/template/glossary/reference.docx +0 -0
- data/template/glossary/template.yml +3 -0
- data/template/scope/README.md +127 -0
- data/template/scope/img/.empty_directory +0 -0
- data/template/scope/publish/.empty_directory +0 -0
- data/template/scope/reference.docx +0 -0
- data/template/scope/template.yml +3 -0
- data/template/users/README.md +13 -0
- data/template/users/img/.empty_directory +0 -0
- data/template/users/publish/.empty_directory +0 -0
- data/template/users/reference.docx +0 -0
- data/template/users/template.yml +3 -0
- metadata +210 -0
@@ -0,0 +1,98 @@
|
|
1
|
+
require 'plans/command'
|
2
|
+
|
3
|
+
module Plans
|
4
|
+
class Publish < Command
|
5
|
+
def do(path)
|
6
|
+
# Create the thumbnails first.
|
7
|
+
say 'Updating thumbnails.'
|
8
|
+
Thumbs.new(shell, options).do(path)
|
9
|
+
|
10
|
+
path = pathname(path)
|
11
|
+
toc_flag = options[:toc] ? "--toc" : ""
|
12
|
+
open_flag = options[:open]
|
13
|
+
|
14
|
+
plans_path = plans_pathname(options[:'plans-path'])
|
15
|
+
check_plans_pathname_exists(plans_path)
|
16
|
+
|
17
|
+
source_file = path + 'README.md'
|
18
|
+
check_source_file(source_file)
|
19
|
+
|
20
|
+
doc_type = get_doctype(path)
|
21
|
+
|
22
|
+
# Set the path to the reference doc for this type of document.
|
23
|
+
reference_docx = plans_path + doc_type + 'reference.docx'
|
24
|
+
check_reference_docx(reference_docx)
|
25
|
+
|
26
|
+
output_dir = path + 'publish'
|
27
|
+
# Make the publish directory if it does not exist.
|
28
|
+
FileUtils.mkdir output_dir unless Dir.exist? output_dir
|
29
|
+
output_file = output_dir + "#{doc_type}.docx"
|
30
|
+
|
31
|
+
# We need to set the current working directory to where the markdown file is so
|
32
|
+
# the images render correctly.
|
33
|
+
# Pandoc only looks in the current working directory.
|
34
|
+
Dir.chdir(path) do
|
35
|
+
`pandoc #{toc_flag} #{source_file} --reference-docx=#{reference_docx} --standalone -f markdown -t docx -o #{output_file}`
|
36
|
+
end
|
37
|
+
|
38
|
+
# Get the return code from pandoc.
|
39
|
+
pandoc_return = $?.to_i
|
40
|
+
check_pandoc_return(pandoc_return)
|
41
|
+
|
42
|
+
say "#{doc_type} published.", :green
|
43
|
+
|
44
|
+
# Open the word doc if requested
|
45
|
+
`open #{output_file}` if open_flag
|
46
|
+
end
|
47
|
+
|
48
|
+
def check_pandoc_return(pandoc_return)
|
49
|
+
unless pandoc_return == 0
|
50
|
+
say "Problem publishing #{doc_type}. (Pandoc ERR: #{pandoc_return})", :red
|
51
|
+
say " #{source_file}"
|
52
|
+
raise_error("Pandoc ERR: #{pandoc_return}")
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def check_reference_docx(reference_docx)
|
57
|
+
unless reference_docx.exist?
|
58
|
+
say 'Could not find the reference.docx for this type of file in the .plans directory.', :red
|
59
|
+
say 'Check to make sure that reference.docx is available here:'
|
60
|
+
say " #{reference_docx}"
|
61
|
+
raise_error('Reference.docx not found.')
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
def check_source_file(source_file)
|
66
|
+
unless File.exist? source_file
|
67
|
+
say 'Markdown file to be published does not exist.', :red
|
68
|
+
say " #{source_file}"
|
69
|
+
say 'Are you in the right directory?'
|
70
|
+
raise_error('README.md not found.')
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
# Get the document type from the YAML file next to the document.
|
75
|
+
#
|
76
|
+
# @param [Pathname] The path to the location of the template.yml file.
|
77
|
+
# @return [String] the type of the document found in the YAML file.
|
78
|
+
def get_doctype(path)
|
79
|
+
doc_type = nil
|
80
|
+
begin
|
81
|
+
metadata = YAML.load_file(path + 'template.yml')
|
82
|
+
doc_type = metadata['type']
|
83
|
+
if doc_type.nil?
|
84
|
+
say 'Type value not found. Check template.yml in the document directory', :red
|
85
|
+
say 'Make sure there is an entry `type: DOC_TYPE` in the file.'
|
86
|
+
say " #{path}"
|
87
|
+
raise_error('DOC_TYPE not found in template.yml')
|
88
|
+
end
|
89
|
+
rescue Errno::ENOENT # File not found
|
90
|
+
say 'No template.yml found in the document directory. Did you forget to add it?', :red
|
91
|
+
say 'Did you run the command in the directory where the document is located?'
|
92
|
+
say " #{path}"
|
93
|
+
raise_error('template.yml not found')
|
94
|
+
end
|
95
|
+
return doc_type
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
data/lib/plans/thumbs.rb
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'plans/command'
|
2
|
+
|
3
|
+
module Plans
|
4
|
+
class Thumbs < Command
|
5
|
+
|
6
|
+
def do(path)
|
7
|
+
img_path = pathname(path) + 'img'
|
8
|
+
|
9
|
+
unless img_path.exist?
|
10
|
+
say 'Images directory (img) does not exist.'
|
11
|
+
say " #{img_path}"
|
12
|
+
if (yes? 'Would you like to create the directory?')
|
13
|
+
say 'Creating it.'
|
14
|
+
FileUtils.mkdir img_path
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
images = Dir.glob(img_path + '*.*')
|
19
|
+
if (images.length == 0)
|
20
|
+
say 'Nothing to do. No images found in img directory.', :green
|
21
|
+
say " #{img_path}"
|
22
|
+
return
|
23
|
+
end
|
24
|
+
create_thumbnails(200, images, img_path)
|
25
|
+
create_thumbnails(400, images, img_path)
|
26
|
+
create_thumbnails(600, images, img_path)
|
27
|
+
say 'Thumbnails creation complete.', :green
|
28
|
+
end
|
29
|
+
|
30
|
+
def create_thumbnails(size, images, path)
|
31
|
+
target_directory = path + "#{size}px"
|
32
|
+
FileUtils.remove_dir target_directory if Dir.exist? target_directory
|
33
|
+
FileUtils.mkdir target_directory
|
34
|
+
FileUtils.cp images, target_directory
|
35
|
+
`mogrify -resize #{size} #{target_directory}/*.*`
|
36
|
+
# Check mogrify's return code.
|
37
|
+
if $?.to_i == 0
|
38
|
+
say "Created #{images.length} #{size}px images."
|
39
|
+
else
|
40
|
+
say "Problem creating #{size}px images. (Mogrify ERR: #{$?.to_i})", :red
|
41
|
+
say " #{target_directory}"
|
42
|
+
raise_error("Mogrify ERR: #{$?.to_i}")
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
data/lib/plans.rb
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'plans/version'
|
2
|
+
require 'plans/cli'
|
3
|
+
require 'thor'
|
4
|
+
|
5
|
+
module Plans
|
6
|
+
|
7
|
+
# Determine where gem is installed.
|
8
|
+
#
|
9
|
+
# @return The path to the gem.
|
10
|
+
def self.source_root
|
11
|
+
File.absolute_path(File.join(File.dirname(__FILE__), '..'))
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
|
data/plans.gemspec
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'plans/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "plans"
|
8
|
+
spec.version = Plans::VERSION
|
9
|
+
spec.authors = ["Gabriel Cook"]
|
10
|
+
spec.email = ["gabe@codelever.com"]
|
11
|
+
|
12
|
+
spec.summary = %q{Command line application for creating markdown documents from templates and publishing them in MS Word.}
|
13
|
+
spec.description = %q{Command line application for creating markdown documents from templates and publishing them in MS Word.}
|
14
|
+
spec.homepage = "https://github.com/code-lever/plans-gem"
|
15
|
+
spec.license = "MIT"
|
16
|
+
|
17
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
18
|
+
spec.bindir = "exe"
|
19
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
20
|
+
spec.require_paths = ["lib"]
|
21
|
+
|
22
|
+
spec.add_development_dependency "bundler", "~> 1.10"
|
23
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
24
|
+
spec.add_development_dependency "rspec"
|
25
|
+
spec.add_development_dependency "guard"
|
26
|
+
spec.add_development_dependency "guard-rspec"
|
27
|
+
spec.add_development_dependency "terminal-notifier-guard"
|
28
|
+
spec.add_development_dependency "aruba"
|
29
|
+
|
30
|
+
spec.add_dependency 'thor'
|
31
|
+
end
|
data/template/README.md
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
# Plans templates for code lever.
|
2
|
+
|
3
|
+
This project contains the following document templates.
|
4
|
+
|
5
|
+
* [Vision and Scope](./scope)
|
6
|
+
* [Functional Specifications](./functional)
|
7
|
+
* [User Classes and Characteristics](./users)
|
8
|
+
* [Glossary](./glossary)
|
9
|
+
* [Plain Document](./doc)
|
10
|
+
|
11
|
+
Templates are composed of a folder containing a few documents. The first is the initial version of the markdown document. This document is named *README.md*. The second is the reference document, named *reference.docx*. This is the word file used by Pandoc for style information publishing the document.
|
12
|
+
|
13
|
+
## README.md
|
14
|
+
|
15
|
+
When you create a new document based on this template, this file will be copied to the new document location to be used as a starting point.
|
16
|
+
|
17
|
+
## reference.docx
|
18
|
+
|
19
|
+
When you render the markdown document into MS Word, the styles, headers and footers of the reference.docx will be used as the basis for the published document. Modify the reference.docx to change the look and feel of the rendered document. You can, for example, add images to the header for a company logo.
|
20
|
+
|
21
|
+
From [pandoc.org](http://pandoc.org/README.html)
|
22
|
+
|
23
|
+
> Use the specified file as a style reference in producing a docx file. For best results, the reference docx should be a modified version of a docx file produced using pandoc. The contents of the reference docx are ignored, but its stylesheets and document properties (including margins, page size, header, and footer) are used in the new docx. If no reference docx is specified on the command line, pandoc will look for a file reference.docx in the user data directory (see --data-dir). If this is not found either, sensible defaults will be used. The following styles are used by pandoc: [paragraph] Normal, Body Text, First Paragraph, Compact, Title, Subtitle, Author, Date, Abstract, Bibliography, Heading 1, Heading 2, Heading 3, Heading 4, Heading 5, Heading 6, Block Text, Footnote Text, Definition Term, Definition, Caption, Table Caption, Image Caption, Figure, Figure With Caption, TOC Heading; [character] Default Paragraph Font, Body Text Char, Verbatim Char, Footnote Reference, Hyperlink; [table] Normal Table.
|
24
|
+
|
25
|
+
You can modify the document styles and add items to the headers and footers of the *reference.docx* to customize the output. One thing to note, Pandoc seems to work best if the document is blank, so clear any text in the *reference.docx* before using it.
|
26
|
+
|
27
|
+
## template.yml
|
28
|
+
|
29
|
+
Metadata for the template.
|
30
|
+
|
31
|
+
# The longer title of the document
|
32
|
+
# Used help for plans.
|
33
|
+
title: User Classes and Characteristics
|
34
|
+
|
35
|
+
# A description of the document
|
36
|
+
# Used by help for plans.
|
37
|
+
description: A list of all of the users and their major characteristics. These users should be referenced by the Vision and Scope document and any associated Functional Specifications.
|
38
|
+
|
39
|
+
Note that the name of the document used by plans is the name of the folder. To create the *User Classes and Characteristics* document above, you would enter the command `plans create user`.
|
File without changes
|
File without changes
|
Binary file
|
@@ -0,0 +1,60 @@
|
|
1
|
+
---
|
2
|
+
title: <%=@project.project_name%>
|
3
|
+
subtitle: Functional Specification - <%=@name%>
|
4
|
+
---
|
5
|
+
|
6
|
+
**Revision History**
|
7
|
+
|
8
|
+
|Name|Date|Reason for Changes|Version|
|
9
|
+
|----|----|------------------|-------|
|
10
|
+
|G. Cook| July 22, 2015 | Initial draft. | v0.1 |
|
11
|
+
|
12
|
+
# Overview
|
13
|
+
<!-- A brief description of the feature -->
|
14
|
+
|
15
|
+
# User Stories
|
16
|
+
<!-- Repeat the following for each user story. -->
|
17
|
+
|
18
|
+
## User Story
|
19
|
+
<!--
|
20
|
+
User stories are short, simple descriptions of a feature told from the perspective of the person who desires the new capability, usually a user or customer of the system. They typically follow a simple template:
|
21
|
+
|
22
|
+
As a <type of user>, I want <some goal> so that <some reason>.
|
23
|
+
-->
|
24
|
+
|
25
|
+
### Scenarios
|
26
|
+
<!-- Write out scenarios using Gherkin syntax.
|
27
|
+
|
28
|
+
https://github.com/cucumber/cucumber/wiki/Gherkin
|
29
|
+
|
30
|
+
Use Given to establish preconditions for the scenario.
|
31
|
+
Use When to describe the key actions preformed by the user.
|
32
|
+
Use Then to observe outcomes. In general, these will be responses form the System
|
33
|
+
|
34
|
+
Here is an example:
|
35
|
+
|
36
|
+
Given some precondition
|
37
|
+
And some other precondition
|
38
|
+
When some action by the user type
|
39
|
+
And some other action
|
40
|
+
And yet another action
|
41
|
+
Then some testable outcome is achieved
|
42
|
+
And something else we can check happens too
|
43
|
+
|
44
|
+
Make the user one of the user types defined in the User Classes document.
|
45
|
+
-->
|
46
|
+
|
47
|
+
### Mockups
|
48
|
+
<!-- Show each of the mockups used by the scenarios here.
|
49
|
+
Add any additional detail about the mockup below it. For example, important validations or data types for fields.
|
50
|
+
-->
|
51
|
+
|
52
|
+
### Confirmations
|
53
|
+
<!-- Something the system must do that needs to have a test. A requirement that is important to the customer and must be verified. These can also be non-fuctional requirements related to the feature.
|
54
|
+
|
55
|
+
Ex: Test different privacy status - private, public, unlisted.
|
56
|
+
-->
|
57
|
+
|
58
|
+
|
59
|
+
|
60
|
+
|
File without changes
|
File without changes
|
Binary file
|
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
title: <%=@project.project_name%>
|
3
|
+
subtitle: Glossary
|
4
|
+
---
|
5
|
+
|
6
|
+
**Revision History**
|
7
|
+
|
8
|
+
|Name|Date|Reason for Changes|Version|
|
9
|
+
|----|----|------------------|-------|
|
10
|
+
|G. Cook| July 22, 2015 | Initial draft. | v0.1 |
|
11
|
+
|
12
|
+
# Glossary
|
13
|
+
|
14
|
+
<!--
|
15
|
+
Define any specialized terms that a reader needs to know to understand the document, including acronyms and abbreviations. Spell out each acronym and provide its definition. Consider building a reusable enterprise-level glossary that spans multiple projects and incorporating by reference any terms that pertain to this project.
|
16
|
+
-->
|
17
|
+
|
18
|
+
Term
|
19
|
+
: Definition.
|
20
|
+
|
File without changes
|
File without changes
|
Binary file
|
@@ -0,0 +1,127 @@
|
|
1
|
+
---
|
2
|
+
title: <%=@project.project_name%>
|
3
|
+
subtitle: Vision and Scope
|
4
|
+
---
|
5
|
+
|
6
|
+
**Revision History**
|
7
|
+
|
8
|
+
|Name|Date|Reason for Changes|Version|
|
9
|
+
|----|----|------------------|-------|
|
10
|
+
|G. Cook| July 22, 2015 | Initial draft. | v0.1 |
|
11
|
+
|
12
|
+
# Business Requirements
|
13
|
+
<!-- The business requirements provide the foundation and reference for all detailed requirements development. You may gather business requirements from the customer or development organization’s senior management, an executive sponsor, a project visionary, product management, the marketing department, or other individuals who have a clear sense of why the project is being undertaken and the ultimate value it will provide, both to the business and to customers.-->
|
14
|
+
|
15
|
+
## Background
|
16
|
+
<!-- This section summarizes the rationale for the new product. Provide a general description of the history or situation that leads to the recognition that this product should be built.-->
|
17
|
+
|
18
|
+
|
19
|
+
## Business Opportunity
|
20
|
+
<!-- Describe the market opportunity that exists or the business problem that is being solved. Describe the market in which a commercial product will be competing or the environment in which an information system will be used. This may include a brief comparative evaluation of existing products and potential solutions, indicating why the proposed product is attractive. Identify the problems that cannot currently be solved without the product, and how the product fits in with market trends or corporate strategic directions.-->
|
21
|
+
|
22
|
+
|
23
|
+
## Business Objectives
|
24
|
+
<!-- Describe the important business objectives of the product in a way that is quantitative and measurable. This section should focus on the value provided to the business. This could include estimates of revenue or cost savings, return on investment analysis, or target release dates.-->
|
25
|
+
|
26
|
+
## Success Metrics
|
27
|
+
<!-- Determine how success will be defined and measured on this project, and describe the factors that are likely to have the greatest impact on achieving that success. Include things within the direct control of the organization, as well as external factors. Establish measurable criteria to assess whether the business objectives have been met.-->
|
28
|
+
|
29
|
+
## Vision Statement
|
30
|
+
<!-- Write a concise vision statement that summarizes the purpose and intent of the new product and describes what the world will be like when it includes the product. The vision statement should reflect a balanced view that will satisfy the needs of diverse customers as well as those of the developing organization. It may be somewhat idealistic, but it should be grounded in the realities of existing or anticipated customer markets, enterprise architectures, organizational strategic directions, and cost and resource limitations.-->
|
31
|
+
|
32
|
+
<!-- Here is the template suggested by Wiegers.
|
33
|
+
For [target customer]
|
34
|
+
Who [statement of need or opportunity]
|
35
|
+
The [product name]
|
36
|
+
Is [a product category]
|
37
|
+
That [key benefit, compelling reason to buy or use]
|
38
|
+
Unlike [primary competitive alternative, current system, or current business process]
|
39
|
+
Our product [statement of primary differentiation and advantages of new product]
|
40
|
+
-->
|
41
|
+
|
42
|
+
## Business Risks
|
43
|
+
<!-- Summarize the major business risks associated with developing this product, such as marketplace competition, timing issues, user acceptance, implementation issues, or possible negative impacts on the business. Estimate the severity of the risks and identify any risk mitigation actions that could be taken.-->
|
44
|
+
|
45
|
+
## Business Assumptions and Dependencies
|
46
|
+
<!-- Record any assumptions that were made when conceiving the project and writing this vision and scope document. Note any major dependencies the project must rely upon for success, such as specific technologies, third-party vendors, development partners, or other business relationships. -->
|
47
|
+
|
48
|
+
# Scope and Limitations
|
49
|
+
<!-- The project scope defines the concept and range of the proposed solution. It’s also important to define what will not be included in the product. Clarifying the scope and limitations helps to establish realistic expectations of the many stakeholders. It also provides a reference frame against which proposed features and requirements changes can be evaluated. Proposed requirements that are out of scope for the envisioned product must be rejected, unless they are so beneficial that the scope should be enlarged to accommodate them (with accompanying changes in budget, schedule, and/or resources).-->
|
50
|
+
|
51
|
+
## Major Features
|
52
|
+
<!-- Include a numbered list of the major features of the new product, emphasizing those features that distinguish it from previous or competing products. Specific user requirements and functional requirements may be traced back to these features.-->
|
53
|
+
|
54
|
+
FE-1
|
55
|
+
: I'm a feature.
|
56
|
+
|
57
|
+
## Scope of Initial Release
|
58
|
+
<!-- Describe the intended major features that will be included in the initial release of the product. Consider the benefits the product is intended to bring to the various customer communities, and generally describe the product features and quality characteristics that will enable it to provide those benefits. Avoid the temptation to include every possible feature that any potential customer category might conceivably want some day. Focus on those features and product characteristics that will provide the most value, at the most acceptable development cost, to the broadest community.-->
|
59
|
+
|
60
|
+
|
61
|
+
## Scope of Subsequent Releases
|
62
|
+
<!-- If a staged evolution of the product is envisioned over time, indicate which major features will be deferred to later releases.-->
|
63
|
+
|
64
|
+
|
65
|
+
## Limitations and Exclusions
|
66
|
+
<!-- Identify any product features or characteristics that a stakeholder might anticipate, but which are not planned to be included in the new product.-->
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
# Business Context
|
71
|
+
<!-- This section summarizes some of the business issues around the project, including profiles of major customer categories, assumptions that went into the project concept, and the management priorities for the project.-->
|
72
|
+
|
73
|
+
## Stakeholder Profiles
|
74
|
+
<!-- Stakeholders are individuals, groups, or organizations that are actively involved in a project, are affected by its outcome, or can influence its outcome. The stakeholder profiles identify the customers for this product and other stakeholders, and states their major interests in the product. Characterize business-level customers, target market segments, and different user classes, to reduce the likelihood of unexpected requirements surfacing later that cannot be accommodated because of schedule or scope constraints. For each stakeholder category, the profile includes the major value or benefits they will receive from the product, their likely attitudes toward the product, major features and characteristics of interest, and any known constraints that must be accommodated. Examples of stakeholder value include:
|
75
|
+
|
76
|
+
|
77
|
+
improved productivity
|
78
|
+
reduced rework
|
79
|
+
cost savings
|
80
|
+
streamlined business processes
|
81
|
+
automation of previously manual tasks
|
82
|
+
ability to perform entirely new tasks or functions
|
83
|
+
conformance to current standards or regulations
|
84
|
+
improved usability or reduced frustration level compared to current applications
|
85
|
+
-->
|
86
|
+
|
87
|
+
### Stakeholder
|
88
|
+
|
89
|
+
* **Major value or benefit of the system**
|
90
|
+
|
91
|
+
*Info here*
|
92
|
+
|
93
|
+
* **Attitude toward system**
|
94
|
+
|
95
|
+
*Info here*
|
96
|
+
|
97
|
+
* **Major interests**
|
98
|
+
|
99
|
+
*Info here*
|
100
|
+
|
101
|
+
* **Constraints that must be accommodated**
|
102
|
+
|
103
|
+
*Info here*
|
104
|
+
|
105
|
+
|
106
|
+
## Project Priorities
|
107
|
+
|
108
|
+
<!-- Describe the priorities among the project’s requirements, schedule, and budget. The table below may be helpful in identifying the parameters around the project’s key drivers (top priority objectives), constraints to work within, and dimensions that can be balanced against each other to achieve the drivers within the known constraints. For more information, see chapter 2 of Creating a Software Engineering Culture by Karl E. Wiegers (Dorset House, 1996). Examples:-->
|
109
|
+
|
110
|
+
* **Schedule**
|
111
|
+
|
112
|
+
|
113
|
+
* **Features**
|
114
|
+
|
115
|
+
|
116
|
+
* **Quality**
|
117
|
+
|
118
|
+
|
119
|
+
* **Staff**
|
120
|
+
|
121
|
+
|
122
|
+
* **Cost**
|
123
|
+
|
124
|
+
## Operating Environment and Deployment Considerations
|
125
|
+
|
126
|
+
<!-- Summarize the information and activities that are needed to ensure an effective deployment of the solution into its operating environment. Describe the access that users will require to be able to use the system, such as whether the users are distributed over multiple time zones or located close to each other. State when the users in various locations need to access the system. If infrastructure changes are needed to support the software’s need for capacity, network access, data storage, or data migration, describe those changes. Record any information that will be needed by people who will be preparing training or modifying business processes in conjunction with deployment of the new solution.-->
|
127
|
+
|
File without changes
|
File without changes
|
Binary file
|
@@ -0,0 +1,13 @@
|
|
1
|
+
---
|
2
|
+
title: <%=@project.project_name%>
|
3
|
+
subtitle: User Classes and Characteristics
|
4
|
+
---
|
5
|
+
|
6
|
+
**Revision History**
|
7
|
+
|
8
|
+
|Name|Date|Reason for Changes|Version|
|
9
|
+
|----|----|------------------|-------|
|
10
|
+
|G. Cook| July 22, 2015 | Initial draft. | v0.1 |
|
11
|
+
|
12
|
+
# Overview
|
13
|
+
<!-- A brief description of the feature -->
|
File without changes
|
File without changes
|
Binary file
|