The document outlines requirements for designing business and data access tiers for a library management application, including using stored procedures to access the database efficiently while minimizing resource usage and providing adequate error handling. It also describes the database design with tables for member, item, and loan information and relationships between them to model the library membership and operations. Validation rules and error handling must be implemented for data access.
Where is Joomla going and how do we get there? J and Beyond 2012Andrea Tarr
Joomla! 2.5 is settling in and we are looking forward to 3.x and even 4.x. What might Joomla look like in these future series? You have an influence on what Joomla will become in the next few years. You also have a part to play in how we get there. The Joomla Roadmap is both a way to promote ideas and a way to bring them come to life.
One of Joomla's greatest strengths is all the great extensions that can be integrated to add functionality to your website. From the point of view of the designer, this has always been one of the biggest problems -- How to make all these different extensions look like they are on the same site.
Joomla UI, with the included Bootstrap, is a way that Joomla 3.x fixes that. It is a stylesheet of UI -- the markup, the CSS, and the JavaScript behaviors, that extension & template developers can share. When templates and developers use the same UI, your site will look united.
This presentation will be an introduction to Bootstrap and JUI, what it is, what it can do, and how it will affect templates in Joomla. This talk will continue in the session on LESS, the CSS pre-compiler, that is used with Bootstrap.
Where is Joomla going and how do we get there? J and Beyond 2012Andrea Tarr
Joomla! 2.5 is settling in and we are looking forward to 3.x and even 4.x. What might Joomla look like in these future series? You have an influence on what Joomla will become in the next few years. You also have a part to play in how we get there. The Joomla Roadmap is both a way to promote ideas and a way to bring them come to life.
One of Joomla's greatest strengths is all the great extensions that can be integrated to add functionality to your website. From the point of view of the designer, this has always been one of the biggest problems -- How to make all these different extensions look like they are on the same site.
Joomla UI, with the included Bootstrap, is a way that Joomla 3.x fixes that. It is a stylesheet of UI -- the markup, the CSS, and the JavaScript behaviors, that extension & template developers can share. When templates and developers use the same UI, your site will look united.
This presentation will be an introduction to Bootstrap and JUI, what it is, what it can do, and how it will affect templates in Joomla. This talk will continue in the session on LESS, the CSS pre-compiler, that is used with Bootstrap.
Manual Testing
1. Introduction to Software Testing
1.1 What is Software Testing
“Software testing is a process of executing the application with the intent of finding the defects by comparing the output behavior of the application with expected behavior (requirement).”
In other words it’s comparing the actual behavior of an application with expected behavior.
1.2 Why Software Testing
Humans make mistakes all the time!!
“Software testing is really required to point out the defects and errors that were made during the development phases”.
We humans can’t identify our mistakes in a work done by us. We should get someone else to check our work because another person may identify the mistakes done by us. In the same way software developers may not identify the mismatches in a program or application implemented by them which can be identify by the another department called Software Test Engineer.
1.3 Benefits of Software Testing
“Software testing helps in finalizing the software application against business requirements.”
Software testing makes sure that the testing is being done properly and hence the system is ready for the customers to use.
Below are few benefits of software testing.
- Finding the defects before delivery
- Gaines the confidence about quality
- To Prevent defects
- Ensure the requirements are delivered to client
1.4 What is Quality
“Software quality is nothing but delivering a bug free application and delivered on time with all requirements.”
ISO 8402-1986 standard defines quality as “the totality of features and characteristics of a product or service that bears its ability to satisfy stated or implied needs.”
1.5 What is defect
“A defect is a deviation or mismatch from the requirements”.
When actual result deviates from the expected result while testing a software application or product then it results into a defect. Hence, any deviation from the specification mentioned in the functional specification document is a defect. In different organizations it’s called differently like bug, issue, incidents or problem.
1.6 Project Vs Product
“Project is developed for a single customer on his own requirements by the software companies and the project will be used by the customer only.”
“Product is developed for multiple customers on their consolidated requirements by the software companies and the product will be used by all customers.”
2. Software Development Life Cycle (SDLC)
2.1 What is Software Development Life Cycle
“SDLC is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software”
2.2 Why Software Development Life Cycle
“SDLC ensure success in process of software development.”
2.3 Phases of Software Development Life Cycle
• Initial
• Analysis
• Design
• Coding
• Testing
• Delivery & Maintenance
2.3.1 Initial
“Business requirements are gathered in this phase. “
this
1 GENERAL STANDARDS AND CRITERIA FOR PAPERS Papers .docxaryan532920
1
GENERAL STANDARDS AND CRITERIA FOR PAPERS
Papers should be 5-7 double-spaced pages, no longer than 8 pages.
Papers must be typed and have 1 inch left-side margins. Do not abuse font and page margin
technology. Generally the font should be 10-12 point, similar to regular typeface.
Information must be clear, current, and adequate for its purpose. Writing must be grammatical,
concise, and developed thematically. You are expected to properly reference your sources.
Key criteria for evaluation include:
completeness - addresses all parts of assignment
concreteness - uses specific and accurate details, examples, facts, and statistics
correctness - proper grammar, punctuation, spelling, documentation
craft - effectively connects with the audience, smooth and concise style.
References in text:
Any quote, specific statistic, or distinctive point made by a particular author should always be
referenced in the text. For these papers, keep the in-text references simple. Immediately after a
sentence or table that has a specific fact, quote, or distinctive point, note the author’s name or an
abbreviated version of the title in parentheses along with the page number where the information was
found.
Examples: (Clucas, p. 6) or (“2010 Electoral Results”, n.p.). Use n.p. if there is no page number.
Bibliography: Attach a bibliography listing your research sources.
Alphabetize entries and double space between entries, single space within them citation
Examples:
Aspen, Allen. “Leaves are Beautiful”. Journal of Foliage. Vol. 12, No. 2 (Autumn 2010),
pp. 10-15.
Cite them in this format:
On-line versions of journals, newspapers, or other regular publications, treat it like a regular
publication. If you use full text back issues of the Oregonian, from an index, simply refer to
the article like you would if you had the hard copy;
Author’s last name, first name. “Article title”. Periodical name. Volume #, Edition#, (Date),
page #s.
Example:
Smith, Roger. “Salmon in Crisis.” Oregonian (January 12, 1998), p. A1. (Often you can only
get the start page and sometimes no page at all. In that case, put “n.p.” in the text: (Smith, n.p.)
2
Paper: Community Political Profile
Introduce me to your community, introduce me to the people, introduce me to the politics, and teach
me about the political culture of your community.
Specific Task:
Introduction.
1) Research and define the meaning of two types of political cultures “conservative” and
“progressive”. Specify the typical socio-demographics (age, race, income, rural or urban,
type of employment industry, etc); political values (examples: specific positions a variety of
issues such as taxes, social issues, education, etc.); and political party affiliation of each
definition.
2) Make observations about the county/city in which you live (or are from) is it. For example
is it ...
The goal of the projects throughout this semester is to implement .docxrtodd194
The goal of the projects throughout this semester is to implement a “prototype” database system application for an eCommerce social-network system called UCOnline where users can explore information about books/music/software, rate your purchase, identify purchase price and see ratings of their friends.
The project will require your teams (see attached for group member breakout) to complete the assignment. Below you will find the ERD deliverable requirements. Each assignment has a specific grading rubric (scheme) associated with the assignment.
BUSINESS REQUIREMENTS ACROSS ALL ASSIGNMENTS
· You will work with book/music/media information, user information, ratings of books, and users’ social network
· Each book has an id, title, publication date, publisher, ISBN, functional category, page count, price (publisher), and product description
· There are 3 categories of book: fiction, non-fiction, and specialty
· There are 2 categories of music: digital and media-based
· An author can write one or more books.
· A musician can be a solo artist, part of a group, or both
· An author can also be associated with one or more publishers.
· A musician/group/act can be associated with one or more music houses
· An author’s book can have one or more editions.
· A song and or album can have more than one version/edition (i.e. EP, LP, CD, DVD etc)
· A publisher can have many authors and many books.
· A record company can have many artists associated and many albums associated with it.
· A record company can also be the publishing company (i.e. self-publishing)
· Many ISBNs can also be associated with a given publisher but only one ISBN per form of medium (ie the ISBN is the PK no matter what).
· An author can write many books.
· An artist can write many songs, albums etc.
· UCOnline needs to keep track of user ratings for each item sold in the online store (e.g., 1-5 and 1 for ‘Dislike’, to 5, for ‘Awesome!’).
· A particular user rates a particular item at a given time.
· A user CANNOT rate the same multiple times unless there are multiple editions of the item. Each edition can be rated separately.
· Each user who submits a rating will be identified by a unique id and has a name, gender, age, and location. Nothing is anonymous.
There is also a social network between users. Users can send communication requests (i.e. instant messages/emails) to other users. Such requests can be accepted or ignored. Once accepted, the two users are considered ‘book buddies.’ If ignored, the user can send the request again. We want to add a store when the requests were sent (timestamp), the result of the requests and when the request was answered (timestamp).
Tools can be used to prepared the ERD Diagram
1- erdpresentation.mp4
2- erd_508 ( We prefer MS Visio)- file attached.
Visio --- We need to use this tool. Microsoft Visio.
Visual Paradigm Online
SQLDBM
Draw.io
ERDPlus
Lucidchart
Note:- You need to send two file one VISIO where you can have ERD Diagram and One MS Wor.
Writing a MemoThe following was developed based on the d.docxambersalomon88660
Writing a Memo
The following was developed based on the document written by Matthew Ford at Northern Kentucky University and provided online at the linkhttp://www.nku.ed/~fordmw/memo.htm
Writing effective internal company memos is an acquired skill that frequently distinguishes the great manager inside a company. Senior executives usually take notice of lower level managers who precisely communicate issues in written form.
The key to effective internal memos is that they communicate much in a small amount of space. A cardinal rule of great memo writing is this: All important information must appear on the first page.
The following provides one way to organize an internal memo. This format is particularly applicable towards a memo that communicates the results of some project or investigation that has been assigned to the writer.
Example!!!
MEMO
Memorandum" (or "Memo") usually appears in bold letters either left- or center-justified at the top of the page. Other important information that appears at the top of page one includes:
Date:
To:
From:
Subject:
If this is a memo designed to communicate the findings of some project or investigation assigned to the author, then the structure of the memo typically progresses as follows:
Introduction
Two or three sentences that orient your reader about why you are writing to him or her. Your boss may not remember why he or she assigned you this project. In this section, refresh your boss's memory. The Introduction should inform the reader about specific background information regarding the project you are writing about (for example, who, what, when, where, why). In most analytical memos, your tone should be unemotional and objective. Avoid putting your conclusions or key points in this section--those things go in the next section.
Summary
This is where you place your key points for a busy executive that only has three minutes to read it. Key points are usually best communicated by listing them in “bullets” as single sentences, avoiding lengthy and wordy paragraphs. Your key points must all fit on the first page.
In an analytical memo your key points might consist of:
· Major strengths or weaknesses that you'd like to highlight.
· Opportunities for improvement.
· At least one recommendation for action.
Findings (to write finding for each bullet)
This is for the reader that needs more specific information than the summary information presented in the key points listed above. A useful rule: It should be easy for the reader to clearly link the portions of this section with each of the key points listed in the previous section.
Appendix
This attachment to the memo is where the reader will find a brief discussion about the data, the various techniques employed and the assumptions made, and any limitations regarding your analysis or findings. In addition, this is where reader will find the tables and charts referred to in the body of the memo.
Co.
CP3-2CP3-2Finding Financial InformationLO3-2, 3-4, 3-6Refer to the.docxfaithxdunce63732
CP3-2CP3-2Finding Financial InformationLO3-2, 3-4, 3-6Refer to the financial statements of Urban Outfitters in Appendix C at the end of the book.Required:1. What is the company's revenue recognition policy? (Hint: Look in the notes to the financial statements.)2. Assuming that $50 million of cost of sales was due to noninventory purchase expenses (distribution and occupancy costs), how much inventory did the company buy during the year? (Hint: Use a T-account of inventory to infer how much was purchased.)INVENTORY (in thousands)Inventory purchased during the year:3. Calculate selling, general, and administrative expenses as a percent of sales for each year presented. (Dollars in thousands.)Year EndedSG&A Expenses /Net Sales Revenue = Percentage201220112010By what percent did these expenses increase or decrease from fiscal years ended 2011 and 2012 and between 2010 and 2011? (Hint: Percentage Change = [Current Year Amount − Prior Year Amount]/Prior Year Amount.) % ChangeIncr. or Decr.Between years ended 2011 and 2012:Between years ended 2010 and 2011:4. Compute the company's net profit margin for each year presented. (Dollars in thousands.) Fiscal Year Ended Net Income /Net Sales (or Operating) Revenues = Net Profit Margin Ratio201220112010Explain net profit margin ratio and discuss the results shown above.
CP3-2 Check FiguresCP3-2Finding Financial InformationLO3-2, 3-4, 3-6Refer to the financial statements of Urban Outfitters in Appendix C at the end of the book.Required:1. What is the company's revenue recognition policy? (Hint: Look in the notes to the financial statements.)2. Assuming that $50 million of cost of sales was due to noninventory purchase expenses (distribution and occupancy costs), how much inventory did the company buy during the year? (Hint: Use a T-account of inventory to infer how much was purchased.)INVENTORY (in thousands)Inventory purchased during the year:3. Calculate selling, general, and administrative expenses as a percent of sales for each year presented. (Dollars in thousands.)Year EndedSG&A Expenses /Net Sales Revenue = Percentage201220112010By what percent did these expenses increase or decrease from fiscal years ended 2011 and 2012 and between 2010 and 2011? (Hint: Percentage Change = [Current Year Amount − Prior Year Amount]/Prior Year Amount.) % ChangeIncr. or Decr.Between years ended 2011 and 2012:Between years ended 2010 and 2011:4. Compute the company's net profit margin for each year presented. (Dollars in thousands.) Fiscal Year Ended Net Income /Net Sales (or Operating) Revenues = Net Profit Margin Ratio20127.5%20112010Explain net profit margin ratio and discuss the results shown above.
Sheet2List 1List 2BeginningIncreaseEndingDecreasePurchasesCost of Sales
1
Quick Guides to Successful Writing at Work, Concise Third Edition
ETHICS
• observing ethical behavior, p. 18
• resolving ethical dilemmas, p. 23
• writing.
Manual Testing
1. Introduction to Software Testing
1.1 What is Software Testing
“Software testing is a process of executing the application with the intent of finding the defects by comparing the output behavior of the application with expected behavior (requirement).”
In other words it’s comparing the actual behavior of an application with expected behavior.
1.2 Why Software Testing
Humans make mistakes all the time!!
“Software testing is really required to point out the defects and errors that were made during the development phases”.
We humans can’t identify our mistakes in a work done by us. We should get someone else to check our work because another person may identify the mistakes done by us. In the same way software developers may not identify the mismatches in a program or application implemented by them which can be identify by the another department called Software Test Engineer.
1.3 Benefits of Software Testing
“Software testing helps in finalizing the software application against business requirements.”
Software testing makes sure that the testing is being done properly and hence the system is ready for the customers to use.
Below are few benefits of software testing.
- Finding the defects before delivery
- Gaines the confidence about quality
- To Prevent defects
- Ensure the requirements are delivered to client
1.4 What is Quality
“Software quality is nothing but delivering a bug free application and delivered on time with all requirements.”
ISO 8402-1986 standard defines quality as “the totality of features and characteristics of a product or service that bears its ability to satisfy stated or implied needs.”
1.5 What is defect
“A defect is a deviation or mismatch from the requirements”.
When actual result deviates from the expected result while testing a software application or product then it results into a defect. Hence, any deviation from the specification mentioned in the functional specification document is a defect. In different organizations it’s called differently like bug, issue, incidents or problem.
1.6 Project Vs Product
“Project is developed for a single customer on his own requirements by the software companies and the project will be used by the customer only.”
“Product is developed for multiple customers on their consolidated requirements by the software companies and the product will be used by all customers.”
2. Software Development Life Cycle (SDLC)
2.1 What is Software Development Life Cycle
“SDLC is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software”
2.2 Why Software Development Life Cycle
“SDLC ensure success in process of software development.”
2.3 Phases of Software Development Life Cycle
• Initial
• Analysis
• Design
• Coding
• Testing
• Delivery & Maintenance
2.3.1 Initial
“Business requirements are gathered in this phase. “
this
1 GENERAL STANDARDS AND CRITERIA FOR PAPERS Papers .docxaryan532920
1
GENERAL STANDARDS AND CRITERIA FOR PAPERS
Papers should be 5-7 double-spaced pages, no longer than 8 pages.
Papers must be typed and have 1 inch left-side margins. Do not abuse font and page margin
technology. Generally the font should be 10-12 point, similar to regular typeface.
Information must be clear, current, and adequate for its purpose. Writing must be grammatical,
concise, and developed thematically. You are expected to properly reference your sources.
Key criteria for evaluation include:
completeness - addresses all parts of assignment
concreteness - uses specific and accurate details, examples, facts, and statistics
correctness - proper grammar, punctuation, spelling, documentation
craft - effectively connects with the audience, smooth and concise style.
References in text:
Any quote, specific statistic, or distinctive point made by a particular author should always be
referenced in the text. For these papers, keep the in-text references simple. Immediately after a
sentence or table that has a specific fact, quote, or distinctive point, note the author’s name or an
abbreviated version of the title in parentheses along with the page number where the information was
found.
Examples: (Clucas, p. 6) or (“2010 Electoral Results”, n.p.). Use n.p. if there is no page number.
Bibliography: Attach a bibliography listing your research sources.
Alphabetize entries and double space between entries, single space within them citation
Examples:
Aspen, Allen. “Leaves are Beautiful”. Journal of Foliage. Vol. 12, No. 2 (Autumn 2010),
pp. 10-15.
Cite them in this format:
On-line versions of journals, newspapers, or other regular publications, treat it like a regular
publication. If you use full text back issues of the Oregonian, from an index, simply refer to
the article like you would if you had the hard copy;
Author’s last name, first name. “Article title”. Periodical name. Volume #, Edition#, (Date),
page #s.
Example:
Smith, Roger. “Salmon in Crisis.” Oregonian (January 12, 1998), p. A1. (Often you can only
get the start page and sometimes no page at all. In that case, put “n.p.” in the text: (Smith, n.p.)
2
Paper: Community Political Profile
Introduce me to your community, introduce me to the people, introduce me to the politics, and teach
me about the political culture of your community.
Specific Task:
Introduction.
1) Research and define the meaning of two types of political cultures “conservative” and
“progressive”. Specify the typical socio-demographics (age, race, income, rural or urban,
type of employment industry, etc); political values (examples: specific positions a variety of
issues such as taxes, social issues, education, etc.); and political party affiliation of each
definition.
2) Make observations about the county/city in which you live (or are from) is it. For example
is it ...
The goal of the projects throughout this semester is to implement .docxrtodd194
The goal of the projects throughout this semester is to implement a “prototype” database system application for an eCommerce social-network system called UCOnline where users can explore information about books/music/software, rate your purchase, identify purchase price and see ratings of their friends.
The project will require your teams (see attached for group member breakout) to complete the assignment. Below you will find the ERD deliverable requirements. Each assignment has a specific grading rubric (scheme) associated with the assignment.
BUSINESS REQUIREMENTS ACROSS ALL ASSIGNMENTS
· You will work with book/music/media information, user information, ratings of books, and users’ social network
· Each book has an id, title, publication date, publisher, ISBN, functional category, page count, price (publisher), and product description
· There are 3 categories of book: fiction, non-fiction, and specialty
· There are 2 categories of music: digital and media-based
· An author can write one or more books.
· A musician can be a solo artist, part of a group, or both
· An author can also be associated with one or more publishers.
· A musician/group/act can be associated with one or more music houses
· An author’s book can have one or more editions.
· A song and or album can have more than one version/edition (i.e. EP, LP, CD, DVD etc)
· A publisher can have many authors and many books.
· A record company can have many artists associated and many albums associated with it.
· A record company can also be the publishing company (i.e. self-publishing)
· Many ISBNs can also be associated with a given publisher but only one ISBN per form of medium (ie the ISBN is the PK no matter what).
· An author can write many books.
· An artist can write many songs, albums etc.
· UCOnline needs to keep track of user ratings for each item sold in the online store (e.g., 1-5 and 1 for ‘Dislike’, to 5, for ‘Awesome!’).
· A particular user rates a particular item at a given time.
· A user CANNOT rate the same multiple times unless there are multiple editions of the item. Each edition can be rated separately.
· Each user who submits a rating will be identified by a unique id and has a name, gender, age, and location. Nothing is anonymous.
There is also a social network between users. Users can send communication requests (i.e. instant messages/emails) to other users. Such requests can be accepted or ignored. Once accepted, the two users are considered ‘book buddies.’ If ignored, the user can send the request again. We want to add a store when the requests were sent (timestamp), the result of the requests and when the request was answered (timestamp).
Tools can be used to prepared the ERD Diagram
1- erdpresentation.mp4
2- erd_508 ( We prefer MS Visio)- file attached.
Visio --- We need to use this tool. Microsoft Visio.
Visual Paradigm Online
SQLDBM
Draw.io
ERDPlus
Lucidchart
Note:- You need to send two file one VISIO where you can have ERD Diagram and One MS Wor.
Writing a MemoThe following was developed based on the d.docxambersalomon88660
Writing a Memo
The following was developed based on the document written by Matthew Ford at Northern Kentucky University and provided online at the linkhttp://www.nku.ed/~fordmw/memo.htm
Writing effective internal company memos is an acquired skill that frequently distinguishes the great manager inside a company. Senior executives usually take notice of lower level managers who precisely communicate issues in written form.
The key to effective internal memos is that they communicate much in a small amount of space. A cardinal rule of great memo writing is this: All important information must appear on the first page.
The following provides one way to organize an internal memo. This format is particularly applicable towards a memo that communicates the results of some project or investigation that has been assigned to the writer.
Example!!!
MEMO
Memorandum" (or "Memo") usually appears in bold letters either left- or center-justified at the top of the page. Other important information that appears at the top of page one includes:
Date:
To:
From:
Subject:
If this is a memo designed to communicate the findings of some project or investigation assigned to the author, then the structure of the memo typically progresses as follows:
Introduction
Two or three sentences that orient your reader about why you are writing to him or her. Your boss may not remember why he or she assigned you this project. In this section, refresh your boss's memory. The Introduction should inform the reader about specific background information regarding the project you are writing about (for example, who, what, when, where, why). In most analytical memos, your tone should be unemotional and objective. Avoid putting your conclusions or key points in this section--those things go in the next section.
Summary
This is where you place your key points for a busy executive that only has three minutes to read it. Key points are usually best communicated by listing them in “bullets” as single sentences, avoiding lengthy and wordy paragraphs. Your key points must all fit on the first page.
In an analytical memo your key points might consist of:
· Major strengths or weaknesses that you'd like to highlight.
· Opportunities for improvement.
· At least one recommendation for action.
Findings (to write finding for each bullet)
This is for the reader that needs more specific information than the summary information presented in the key points listed above. A useful rule: It should be easy for the reader to clearly link the portions of this section with each of the key points listed in the previous section.
Appendix
This attachment to the memo is where the reader will find a brief discussion about the data, the various techniques employed and the assumptions made, and any limitations regarding your analysis or findings. In addition, this is where reader will find the tables and charts referred to in the body of the memo.
Co.
CP3-2CP3-2Finding Financial InformationLO3-2, 3-4, 3-6Refer to the.docxfaithxdunce63732
CP3-2CP3-2Finding Financial InformationLO3-2, 3-4, 3-6Refer to the financial statements of Urban Outfitters in Appendix C at the end of the book.Required:1. What is the company's revenue recognition policy? (Hint: Look in the notes to the financial statements.)2. Assuming that $50 million of cost of sales was due to noninventory purchase expenses (distribution and occupancy costs), how much inventory did the company buy during the year? (Hint: Use a T-account of inventory to infer how much was purchased.)INVENTORY (in thousands)Inventory purchased during the year:3. Calculate selling, general, and administrative expenses as a percent of sales for each year presented. (Dollars in thousands.)Year EndedSG&A Expenses /Net Sales Revenue = Percentage201220112010By what percent did these expenses increase or decrease from fiscal years ended 2011 and 2012 and between 2010 and 2011? (Hint: Percentage Change = [Current Year Amount − Prior Year Amount]/Prior Year Amount.) % ChangeIncr. or Decr.Between years ended 2011 and 2012:Between years ended 2010 and 2011:4. Compute the company's net profit margin for each year presented. (Dollars in thousands.) Fiscal Year Ended Net Income /Net Sales (or Operating) Revenues = Net Profit Margin Ratio201220112010Explain net profit margin ratio and discuss the results shown above.
CP3-2 Check FiguresCP3-2Finding Financial InformationLO3-2, 3-4, 3-6Refer to the financial statements of Urban Outfitters in Appendix C at the end of the book.Required:1. What is the company's revenue recognition policy? (Hint: Look in the notes to the financial statements.)2. Assuming that $50 million of cost of sales was due to noninventory purchase expenses (distribution and occupancy costs), how much inventory did the company buy during the year? (Hint: Use a T-account of inventory to infer how much was purchased.)INVENTORY (in thousands)Inventory purchased during the year:3. Calculate selling, general, and administrative expenses as a percent of sales for each year presented. (Dollars in thousands.)Year EndedSG&A Expenses /Net Sales Revenue = Percentage201220112010By what percent did these expenses increase or decrease from fiscal years ended 2011 and 2012 and between 2010 and 2011? (Hint: Percentage Change = [Current Year Amount − Prior Year Amount]/Prior Year Amount.) % ChangeIncr. or Decr.Between years ended 2011 and 2012:Between years ended 2010 and 2011:4. Compute the company's net profit margin for each year presented. (Dollars in thousands.) Fiscal Year Ended Net Income /Net Sales (or Operating) Revenues = Net Profit Margin Ratio20127.5%20112010Explain net profit margin ratio and discuss the results shown above.
Sheet2List 1List 2BeginningIncreaseEndingDecreasePurchasesCost of Sales
1
Quick Guides to Successful Writing at Work, Concise Third Edition
ETHICS
• observing ethical behavior, p. 18
• resolving ethical dilemmas, p. 23
• writing.
2. Library – Windows Front-End Application (Phase 1)
Objective
A database has been created to support the principal functions of a lending library‟s day-
to-day operations: adding new members (adult and juvenile) and checking books in and
out. An assembly has been created that contains classes and interfaces that provide
access to the database for these functions. What is needed is a Windows Forms-based
front-end application that will provide a librarian with a visual interface through which he
or she may perform the desired functions. Creating that application will be your task.
Provisions
• An interface that specifies the methods supported by the Data Access tier used for
all database access and a class that implements the interface are provided.
Classes that represent various “business entities” (e.g., an AdultMember class)
are also provided. Detailed information appears in Appendix B.
• A reference implementation that illustrates one possible solution for this project is
provided. The reference implementation is not intended as a model to be
emulated in your solution; rather, it serves only to illustrate how you might
implement your solution, rather than how you must implement your solution. If
you wish to use the reference implementation as a basis for how your
implementation will appear and function, you are free to do so, but you are not
obligated to replicate the appearance of the reference implementation.
Validation
• First name, Last name must be non-empty strings consisting of alphabetic
characters only, with a leading uppercase character and all others in
lowercase, at most fifteen characters in length.
• Middle initial is optional, but if entered it must be one uppercase alphabetic
character.
• Street address and city must be non-empty strings, no more than fifteen
characters in length each.
• State must be two uppercase alphabetic characters.
• Zip must be a non-empty string in the format: ##### or #####-####,
where # is a digit (0-9).
• Phone is optional, but if entered it must be in the format: (###)###-####.
• For a juvenile member, birth date must be a valid date (MM/DD/YYYY format),
and the birth date must fall within the eighteen-year period ending on the
current date.
• ISBN, Copy number, and Member ID must be positive integer values (>0).
ISBN must be a 32-bit integer value. Copy number and Member ID must be
16-bit integer values.
Overview of Library Operations
Before a database to support library operations was implemented, an interview was
conducted with the librarians who would be performing these operations using the new
application. The following sections describe the considerations that influenced the design
and implementation of the database.
Shade Olageshin .NET Portfolio Page 1
3. Uniquely Identifying Books
Some books may have the same title; therefore, titles cannot be used as the sole means
of identification. Librarians call books items. Items are identified by the International
Standard Book Number (ISBN). Books with the same title can have different ISBN
numbers if they are in different languages and have different bindings (hard cover or soft
cover). Multiple copies of a given item may be held in the library‟s collection. Copies of a
given item are numbered with copy numbers from 1 through n, where n is the number of
copies of that item. A physical item is thus uniquely identified by the pairing of its ISBN
and its copy number.
Enrolling Members
To become a library member, an individual must provide his or her mailing address and,
optionally, his or her phone number. A librarian then issues the individual a numbered,
machine-readable card. This card is good for one year from the date of issue.
Juveniles are considered to be individuals under the age of eighteen. A juvenile can be a
member of the library, but must have an adult member sign for them when they join. The
juvenile‟s address and phone number information is that of the sponsoring adult member,
and the juvenile‟s card is valid only until the sponsoring adult member's card expires. The
only information that the library keeps on a juvenile member is his or her name,
sponsoring adult member card number, and his or her date of birth.
Checking Out Books
Books are checked out for 14 days. Members are allowed to have at most four books
checked out at a time. Members bring books to the front desk after they locate the ones
that they want to check out. A librarian then enters the card number from the member's
card. A screen displays information about the member's account, such as name, address,
phone number, and the card's expiration date. Ideally, cards that have expired will be
highlighted. The screen also displays information about a member's outstanding loans,
including title, checkout date, and due date.
If a member's account is in order (i.e., the card is not expired and fewer than four books
are on loan to the member currently), a librarian checks out the books. Librarians check
out books by entering the ISBN and copy number of the item, both of which appear in a
label on the book‟s spine. The ISBN, copy number, title, and author information then
appear on the computer screen so that the librarian may verify that the database entry
corresponds to the item being checked out. The librarian then can elect to check the book
out or to cancel the check-out operation.
Occasionally, books are accidentally re-shelved before librarians check them in. If a
librarian tries to check out a book that the database lists as already checked out, the
librarian should be alerted and be given the opportunity to check the book in before
proceeding with the check-out operation.
Checking In Books
When a book is returned to the library, a librarian checks it in by entering the ISBN and
copy number that appears on the book‟s spine. The ISBN, copy number, title, and author
information then appear on the computer screen, as well as the card number and name of
the member to whom the book is checked out, and the book's due date. The librarian can
then elect to check the book in or to cancel the check-in operation.
Shade Olageshin .NET Portfolio Page 2
4. Data Validation
To enroll an adult member, the required fields are:
• First name
• Last name
• Street
• City
• State
• Zipcode
Middle initial and phone number are optional fields.
To enroll a juvenile member, the required fields are:
• First name
• Last name
• Adult member ID
• Birthday
Middle initial is an optional field.
First name and last name fields must be validated to ensure that the values contained in
these fields are alphabetic only and that the first character of each of these fields is
uppercase.
The Zipcode field must be validated to ensure that only a five-digit (XXXXX) or a nine-
digit (XXXXX-XXXX) value is entered.
If a value is entered into the middle initial field, that field must be validated to ensure that
the value entered is a single alphabetic character.
If a value is entered into the phone number field, that field must be validated to ensure
that the value conforms to the format (XXX)XXX-XXXX, where X is a digit from 0 through
9. Note there is no space after the right parenthesis; the field in the database for the
phone number is thirteen characters long, so including a space at this point would cause
the phone number to be truncated.
The adult member ID field must be validated to ensure that it contains only a numeric
value in the range 1 through 32767 inclusive.
The birthday field must be validated to ensure that it contains a value in the format
MM/DD/YYYY and that the value parses to a date that is no more than eighteen years
prior to the current date.
When a member ID is entered to perform a member lookup, that field must be validated
according to the same rule specified for the adult member ID field above.
For the ISBN and copy number fields used in the check-in and check-out operations, these
fields must be validated to ensure that only numeric values are entered. For the copy
number field, the value must be in the range 1 through 32767 inclusive.
Shade Olageshin .NET Portfolio Page 3
5. MDF Container – Matthews’ Library Interface
Diagram 1 – MDF Parent (Library Main Window)
Diagram 1.1 - add juvenile Diagram 1.2 – add adult
Matthew’s Library - Menu Items
File
Close – Closes the Application
Edit Members
o On clicking on a menu item a new window opens up to perform the
specified function
Add Adult
Add Juvenile
Shade Olageshin .NET Portfolio Page 4
6. o These menu items are disabled until a member id has been entered into
the view member form or a new member has been added.
Check In
Check Out
View Members
o On clicking on this menu item a new window opens up
Get Member Information
public Member GetMember(short memberId)
{
member = lda.GetMember(memberId);
}
using (SqlConnection conn = new
SqlConnection(connectstring))
{
using (stproccmd = new
SqlCommand("dbo.get_Adult"))
{
stproccmd.CommandType = CommandType.StoredProcedure;
stproccmd.Connection = conn;
SqlParameter input = new SqlParameter();
input.DbType = DbType.Int16;
input.Direction = ParameterDirection.Input;
stproccmd.Parameters.AddWithValue("@member_no", memberNumber);
conn.Open();
adult = new AdultMember();
Shade Olageshin .NET Portfolio Page 5
7. Validation
Member ID must be 16-bit integer values.
Get Member (unpopulated)
Get Member (Juvenile Type)
Shade Olageshin .NET Portfolio Page 6
8. Data Validation
To enroll an adult member, the required fields are:
• First name
• Last name
• Street
• City
• State
• Zipcode
Shade Olageshin .NET Portfolio Page 7
10. Required Functionality – Stored Procedures (Phase II)
CREATE PROC [dbo].[add_Adult]
--Member properties
@insertMemberID smallint OUTPUT,
@lastname varchar(15),
@firstname varchar(15),
@middleinitial char(1)=NULL,
@photograph image = NULL,
--adult properties
@street varchar(15),
@city varchar(15),
@state char(2),
@zip varchar(10),
@phone_no varchar(15)=NULL
, @expr_date datetime OUTPUT
AS
BEGIN
IF @lastname IS NULL OR
@firstname IS NULL
BEGIN
RAISERROR('You must provide name information',10,1);
RETURN -10
END
BEGIN TRANSACTION
INSERT Member (lastname,firstname,middleinitial,photograph)
VALUES (@lastname, @firstname,@middleinitial,@photograph)
IF @@ERROR <> 0
BEGIN
RAISERROR ('Error during insert of member', 15,1);
ROLLBACK TRAN
Data Validation
To enroll a juvenile member, the required fields are:
• First name
• Last name
• Adult member ID
• Birthday
Shade Olageshin .NET Portfolio Page 9
11. Error provider for
Data Validation
The birthday field must be
validated to ensure that it
contains a value in the
format MM/DD/YYYY and
that the value parses to a
date that is no more than
eighteen years prior to the
current date.
Data Validation
ISBN, Copy number, and Member ID must be positive integer values (>0). ISBN
must be a 32-bit integer value. Copy number and Member ID must be 16-bit
integer values.
Shade Olageshin .NET Portfolio Page 10
12. Error provider
for Data
Validation
For the ISBN and
copy number fields
used in the check-
in and check-out
operations, these
fields must be
validated to
ensure that only
numeric values
are entered. For
the copy number
field, the value
must be in the
range 1 through
32767 inclusive.
Multiple windows
capabilities
Shade Olageshin .NET Portfolio Page 11
13. Member ID 962 page with check in form - prior to ISBN 8, copy 3 being checked
in
Member id 962 after book check in
Shade Olageshin .NET Portfolio Page 12
14. Required Functionality – Cancel Checkout(Card Expired)
If a member's account is in order (i.e., the card is not expired and fewer than four books
are on loan to the member currently), a librarian checks out the books. Librarians check
out books by entering the ISBN and copy number of the item, both of which appear in a
label on the book‟s spine. The ISBN, copy number, title, and author information then
appear on the computer screen so that the librarian may verify that the database entry
corresponds to the item being checked out. The librarian then can elect to check the book
out or to cancel the check-out operation.
Shade Olageshin .NET Portfolio Page 13
15. Library – Windows Business & Data Access tiers (Phase 2)
Requirements
• Design the Business and Data Access tiers
• Develop code that is easily maintainable.
• Provide adequate error handling.
• Use database-programming techniques that provide maximum programming
flexibility and control while minimizing resource utilization.
• Work with your instructor who will act as the project DBA for any required SQL
help.
Library Database Design
Based on the information that librarians presented, the project database designer
decided to implement the entities from the scenario presented in Phase 1 of the Library
Project in three groups of tables: tables that contain member information; tables that
contain item (book) information; and tables that contain loan information.
Member Information
The member table is the master table, while adult and juvenile are subtables. All three
tables use the member_no column as a primary key. The member_no column in the
member table is also an autoincrementing column; i.e., it is an identity column. Since a
member is identified uniquely by his or her member number, the member_no column is
a good choice for a primary key.
These entities could have been modeled alternatively in a couple of different ways: as a
single table; or as member and juvenile tables. If a single table had been used for all
members, many addresses would have been duplicated because juveniles in this model
have the same address as their parents. Since birth dates must be stored only for
juveniles, splitting the membership information into several tables eliminates the null
column values that would have resulted for the birth dates of adults. Dividing the tables in
this fashion also models the scenario in a way that reflects the membership of the library:
member-toadult is a one-to-one relationship, while adult-to-juvenile is a one-to-many
relationship.
Loan Information
The reservation, loan, and loanhist tables contain the library's loan information. The
reservation table tracks current reservations for each book; the loan table tracks
information on books that are currently on loan: and the loanhist table stores information
on books that have been loaned and returned. It is possible to combine the loan and
loanhist tables to reduce redundancy, but this may create other problems.
The loanhist table is essentially a history of all loans and could become unwieldy. Over
time, librarians may want to back up information from this table, so it makes sense to
keep all of this information in its own table. In addition, this business model requires
that several queries be made against the loanhist table. These queries would be easier
to implement and faster to run if the history information were kept separate from the
loan information.
The loan and loanhist tables also represent different functions of the application. When a
member checks out a book, an entry is made to the loan table. When a member returns a
book, an entry is made to the loanhist table, and the corresponding entry is deleted from
Shade Olageshin .NET Portfolio Page 14
16. the loan table. By maintaining separate tables for each function and denormalizing the
tables, users can access the information more quickly. However, because the tables are
denormalized they require more maintenance. For example, when item.title_no is
updated, the title_no column must be updated in the loan, loanhist, and copy tables as
well. Because updates to the title_no column may be infrequent, denormalization may
speed queries.
Required Functionality
In Phase 1 of this ongoing project, you were provided with an assembly that
encapsulated all the data access logic for your application. The assembly in Phase 1
employed ADO.NET to provide access to the library database. It did not, however, use
any stored procedures, which could have made database operations more efficient. In
Phase 2, you are to design and implement your own business and data access tiers. Use
stored procedures which must be commented thoroughly and your code should not
contain any SQL statements.
You were also provided an assembly that contained business entity classes needed for
the project (e.g., Item, ItemsDataSet, Member, etc.). You must not use either of the
assemblies that were provided to you in your Phase 2 project. You must implement the
business entity classes yourself.
In Phase 1 of this ongoing project, verification that an item presented for checkout is
loanable was not a requirement. In this phase, you must perform that verification and
prevent an item that is not loanable from being checked out.
Focus your efforts on the following:
• Add Adult: Rows are added to both the member table and the adult table
• Add Juvenile: Verification that the sponsoring adult member‟s record exists (and is
unexpired) must be performed. The juvenile‟s age should be verified that is an acceptable
age of a juvenile. Rows are added to both the member table and the juvenile table.
• Checkout item: Verification that item exists and is not already on loan must be
performed. Verification that item is loanable must be performed. Row is added to loan
table. Update copy table‟s on_loan field to „Y‟.
• Checkin item: Verify that the item exists and is on loan. Delete row from loan
table. Add row to loanhist table. Update copy table‟s on_loan field to „N‟.
Shade Olageshin .NET Portfolio Page 15
17. Required Functionality –add Juvenile
Add Juvenile: Verification that the sponsoring adult member‟s record exists (and is
unexpired) must be performed. The juvenile‟s age should be verified that is an acceptable
age of a juvenile. Rows are added to both the member table and the juvenile table.
Shade Olageshin .NET Portfolio Page 16
18. Get Juvenile after adding to database
Juvenile table with newly added member
Required Functionality - Checkout
Shade Olageshin .NET Portfolio Page 17
19. Checkout item: Verification that item exists and is not already on loan must be performed.
Verification that item is loanable must be performed. Row is added to loan table. Update copy
table‟s on_loan field to „Y‟.
Member # 1235 , with no items on loan, Checking out book ISBN #7, Copy #1,
already on loan to another member
Confirm check out, check in from loan to other member information returned by
Library Exception
catch (LibraryException le)
{
String message="ISBN #" + isbn + " Copy # " + copyNumber + " already on
loan to
if (memberID == le.OtherMemberID)
{
checkOutToolStripStatusLabel.BackColor = Color.Blue;
Shade Olageshin .NET Portfolio Page 18
20. Member #1235 page after Checkout
Loan history table
Shade Olageshin .NET Portfolio Page 19
21. Web Application (Phase 3)
Requirements: Create a web application that supports all the functionality required for
Phase I and II of the Library project.
Additional requirements:
When displaying an adult's information, the application should detect if the card
is expired and give the librarian a chance to renew the card. Librarian must be
able to choose whether or not to renew the card. The renewal date is today plus
one year.
Members cannot check out books if the card is expired.
When dealing with juveniles, the application should detect if the juvenile is 18
years old or older and convert the member to an adult (row deleted in the
juvenile table, row added to the adult table). This operation is not at the
discretion of the librarian; i.e. the upgrade must take place automatically and
the librarian must be notified that the upgrade has taken place.
Overdue books, shown in any display, must be highlighted.
The librarian must be able to enter a new book into the database. If the ISBN
already exists in the database, all that is needed is to add a record for a new
copy number. If the ISBN does not yet exist in the database, you must add all
necessary records for the new ISBN and a new copy number 1 for that ISBN.
Use of hyperlinks to navigate between pages.
Project locations and requirements:
Create your web application project as a File System project. Your solution folder
must contain all your project folders so that when you submit the solution folder all
necessary parts of your application are present. Your solution must include the
source for all your projects; i.e. not just the DLLs for your business tier and data
access tier projects.
The web application project must use Forms-based authentication and
authorization.
Only members of the Librarian role must be able to access the web application.
(Use the membership and role management features of ASP.NET 2.0. Create a
Librarian role and at least two Librarian users.)
Shade Olageshin .NET Portfolio Page 20
31. Web Services (Phase 4) – XML, SOAP Messaging, Encryption, WSE 3.0 security.
Requirements: Create a Web service that calls into either the business or data layer. Do
not re-write either layer. Simply have the service call in the appropriate layer.
Update layers in the system to use the service as deemed appropriate. For
example, if the service layer called the business layer, then the user interface (i.e.
the client) will need to change to use the Web service instead.
Make sure the Web service supports the Basic Profile. The service should use
Document/Literal formatting of the SOAP messages.
Customize formatting of XML for some business types.
Employ WSE 3.0 security using Certificates. Signing, encryption and secure
sessions are required.
Support previous functionality
Shade Olageshin .NET Portfolio Page 30
33. Get Member from Library.asmx: Web Service Method
…………….
using Microsoft.Web.Services3;
using SO.LibraryBusiness;
using System.Windows.Forms;
using System.Xml.Serialization;
using System.Data;
using System.Xml;
using System.Xml.Schema;
using System.IO;
using SO.LibraryEntities;
/// <summary>
/// webservice class
/// </summary>
[SoapDocumentService(Use = SoapBindingUse.Literal)]
[WebService(Description = "Basic Service", Namespace = "http://www.library.com/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[Policy("SecurityPolicy")]
public class LibraryService : System.Web.Services.WebService
{
/// <summary>
///
/// </summary>
public LibraryService()
{
}
/// <summary>
Shade Olageshin .NET Portfolio Page 32
34. /// </summary>
/// <param name="memberid"></param>
/// <returns></returns>
[WebMethod]
[XmlInclude(typeof(AdultMember)), XmlInclude(typeof(JuvenileMember))]
public Member GetMember(short memberid)
{
Member member = null;
BusinessLayer bl = new BusinessLayer();
try
{
member = bl.GetMember(memberid);
}
catch (LibraryException le)
{
string message = le.message;
//this constructor is called on Library exception because of message
format sent down to other layers
le = new LibraryException(le.LibraryErrorCode, ref message);
throw new SoapException(message, SoapException.ClientFaultCode,
Context.Request.Url.AbsoluteUri, le);
}
catch (Exception e)
{
throw new SoapException("Server Error", SoapException.ServerFaultCode,
Context.Request.Url.AbsoluteUri, e);
}
return member;
}
Add Adult.cs from AddAdult.aspx-ASP.NET Method modified for WSE
security
protected void Button1_Click(object sender, EventArgs e)
{
proxy = new LibraryServiceWse();
proxy.SetPolicy("SecurityPolicy");
try
{
adult = new AdultMember();
adult.FirstName = TextBox1.Text;
adult.MiddleInitial = TextBox2.Text;
adult.LastName = TextBox3.Text;
adult.Street = TextBox4.Text;
adult.City = TextBox5.Text;
DateTime today = DateTime.Now;
adult.ExpirationDate = today.AddYears(1);
DropDownList1_SelectedIndexChanged(sender, e);
adult.State = DropDownList1.Text;
adult.ZipCode = TextBox6.Text;
adult.PhoneNumber = TextBox7.Text;
Member member = this.adult as Member;
member.AddMember = "Adult";
proxy.AddMember(ref member);
short MemberID = member.MemberNumber;
member = proxy.GetMember(MemberID);
member.ExpirationDate.ToShortDateString();
Shade Olageshin .NET Portfolio Page 33