Software Project Documentation. Types of Project Documents  Project Charter  Requirements  Mockups and Prototypes  Test Cases  Architecture / Design.

Slides:



Advertisements
Similar presentations
User Experience Krista Van Laan. Agenda What is User Experience? How does a User Experience team support the rest of the organization? What processes.
Advertisements

Chapter 11 Designing the User Interface
Requirements Specification and Management
Taavi Tamberg What is screen? Device User Interface Information Service Innovation.
Alternate Software Development Methodologies
02/12/00 E-Business Architecture
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
MSIS 110: Introduction to Computers; Instructor: S. Mathiyalakan1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Information Networking Security and Assurance Lab National Chung Cheng University 1 Top Vulnerabilities in Web Applications (I) Unvalidated Input:  Information.
Quality Assurance CS Pace University Jim Leonardo Milo Auguste Jr. Ritu Mehrotra.
Quality Assurance CS 615. Mission Statement The Quality Assurance team will provide assurance to stakeholders in CS-615/616 projects that their projects.
Fundamentals of Information Systems, Second Edition
CS 290C: Formal Models for Web Software Lecture 1: Introduction Instructor: Tevfik Bultan.
Interpret Application Specifications
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
Effort in hours Duration Over Weeks Or Months Inception Launch Web Lifecycle Methodology Maintenance Phases Copyright Wonderlane Studios.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
MSF Testing Introduction Functional Testing Performance Testing.
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
The Software Development Life Cycle: An Overview
Web Development Process Description
Samuvel Johnson nd MCA B. Contents  Introduction to Real-time systems  Two main types of system  Testing real-time software  Difficulties.
FINAL DEMO Apollo Crew, group 3 T SW Development Project.
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Roles and Responsibilities
Ladd Van Tol Senior Software Engineer Security on the Web Part One - Vulnerabilities.
Software Testing Life Cycle
Lecture 7 Interaction. Topics Implementing data flows An internet solution Transactions in MySQL 4-tier systems – business rule/presentation separation.
Objectives  Testing Concepts for WebApps  Testing Process  Content Testing  User Interface Testing  Component-level testing  Navigation Testing.
Discussion Panelists: Justin C. Klein Keane Sr. Information Security Specialist University of Pennsylvania Jonathan Hanny Application Security Specialist.
OHT 11.1 © Marketing Insights Limited 2004 Chapter 9 Analysis and Design EC Security.
 Chapter 6 Architecture 1. What is Architecture?  Overall Structure of system  First Stage in Design process 2.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
U.S. Department of Agriculture eGovernment Program Design Approach for usda.gov April 2003.
Lecture 7: Requirements Engineering
12 Developing a Web Site Section 12.1 Discuss the functions of a Web site Compare and contrast style sheets Apply cascading style sheets (CSS) to a Web.

1 Chapter Nine Conducting the IT Audit Lecture Outline Audit Standards IT Audit Life Cycle Four Main Types of IT Audits Using COBIT to Perform an Audit.
Slide 12.1 Chapter 12 Implementation. Slide 12.2 Learning outcomes Produce a plan to minimize the risks involved with the launch phase of an e-business.
Systems Development Life Cycle
Lesson 19-E-Commerce Security Needs. Overview Understand e-commerce services. Understand the importance of availability. Implement client-side security.
Web Development Process The Site Development Process Site Construction is one of the last steps.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Principles of Information Systems, Sixth Edition 1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Workforce Scheduling Release 5.0 for Windows Implementation Overview OWS Development Team.
Date : 3/04/2010 Web Technology Solutions Class: PHP Web Application Frameworks.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Software Requirements Specification Document (SRS)
Web-based Front End for Kraken Jing Ai Jingfei Kong Yinghua Hu.
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
Network Monitoring Through Mobile (MOBTOP) Developed By : Akanksha Jain. (102199) Shikha Arora (101319) Team Name: Beans Course: CS532 Guided By:Prof.
The overview How the open market works. Players and Bodies  The main players are –The component supplier  Document  Binary –The authorized supplier.
Electronic Commerce Semester 1 Term 1 Lecture 7. Introduction to the Web The Internet supports a variety of important tools, such as file transfer, electronic.
1 Sean Aluoto Anthony Keeley Eric Werner. 2 Project Plan Overview Project Lifecycle model Time line Deliverables Organization plan Risk management Design.
NAVSEA Liaison Scott Huseth Faculty Advisor Dr. Jiang Guo Team Members Areg Abcarians David Ballardo Niteen Borge Daniel Flores Constance Jiang June 3,
Advanced Higher Computing Science The Project. Introduction Worth 60% of the total marks for the course Must include: An appropriate interface using input.
Testing and delivery Web design principles. Web development is software development.
Advanced Higher Computing Science
WEB TESTING
Architecture Review 10/11/2004
Web Application Security
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
DCR ARB Presentation Team 5: Tour Conductor.
Database Driven Websites
Lecture 1: Multi-tier Architecture Overview
Proposal Presentation
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Presentation transcript:

Software Project Documentation

Types of Project Documents  Project Charter  Requirements  Mockups and Prototypes  Test Cases  Architecture / Design Documents  Environment Diagrams  Security Model  Implementation / Support Documentation

Documents  The type of software methodology used will determine the quantity and quality of project documentation  Agile processes tend to have documentation generated as you go with final documents being delivered at the end  Traditional models (Waterfall/Spiral) require more initial documentation at early stages  Project teams also dictate the amount of documentation required

Project Charter  Statement of scope, objectives and participants in a project  One of the first documents to be generated  Goals  Identifies roles and responsibilities  Outlines project objectives  Identifies main stakeholders  Defines authority of the project manager  Serves as a reference of authority for the future of the project

Purpose of charter  Identify reasons for undertaking the project  Objectives and constraints of the project  Directions concerning the solution  Identities of main stakeholders  Identify in-scope and out of scope items  High level risk management plan  Communication plan  High level budget and spending

Three main uses of charter  To authorize the project  Serves as a primary sales document for the project  Serves as focal point throughout the project

Software Requirements Specification  These are flushed out during analysis sessions  Complete description of the behavior of a system to be developed  May include use cases which describe interactions users will have with the software  There must be a clear and thorough understanding of the product to be developed

Example of Requirements format

Mockups and Prototypes  Help to visually document ideas for user interfaces  Generally presented to the business (customers) to iron our requirements  Provide clarity on user interaction and implementation  It is cheaper and easier to do screen mockups rather than refactor completed code later on  Descriptions should accompany each screen to highlight use case features and important notes

Test Cases  Provide a concrete plan for testing the product  Ensures that the product adheres to the original requirements  Provides a repeatable way to deliver software quality  Extremely important in identifying problems as early as possible

Testing Web Applications  Areas to consider when testing web applications Functionality Testing Performance Testing Usability Testing Client Side Compatibility Security

Functionality Testing  In testing the functionality of the web sites the following should be tested: Links i. Internal Links ii. External Links iii. Mail Links iv. Broken Links  Forms i. Field validation ii. Error message for wrong input iii. Optional and Mandatory fields  Database * Testing will be done on the database integrity.  Cookies * Testing will be done on the client system side, on the temporary Internet files.

Performance  Used to determine the web site’s scalability  Used to benchmark performance  Can assist in validating third party products (e.g. servers and middleware) for potential purchase  For mobile applications, keep payloads small because of network / data constraints  Use lean data formats (e.g. json)

Usability Testing Usability testing is the process by which the human-computer interaction characteristics of a system are measured, and weaknesses are identified for correction. Ease of learning Navigation Subjective user satisfaction General appearance

Client Side Compatibility  Testing the application on various browsers  Ensuring that application renders well or is legible on smaller device form factors (mobile phones or tablets)  Ensuring javascript works across all browsers  Validation of markup, css etc

Security  The primary reason for testing the security of a web is to identify potential vulnerabilities and subsequently repair them. Network Scanning Vulnerability Scanning Password Cracking Log Review Integrity Checkers Virus Detection  Cross site scripting  SQL Injection  Denial of Service attacks

Architecture/Design  Technical detail on how system was designed  Coding specs and documentation  Document often contains the various components of the architectural view model  Good Resource  Software Architecture Document Guidelines Software Architecture Document Guidelines

Environment Diagrams  Demonstrate server and network infrastructure  Shows how traffic from external user reaches application servers and database servers  Illustrates load balancing and failover checks and balances  Shows security features such as firewalls, DMZ setup etc  Types of servers  Web (Apache, IIS, Tomcat)  Application (PHP,.NET, Ruby, Python etc)  Database (MySQL, SQL Server, Oracle, PostgreSQL)  Middleware (Java,.NET etc)

Implementation / Support  FAQs for help and troubleshooting  Tutorials and How-To guides for using the software  Problem resolution systems for bug reporting and tracking  Mechanisms for handling support (help desk, call center etc)  Documentation of scripts that have to be run nightly or batch processes to maintain data quality