E N D
The team projects will consist of a series of iterations which are composed of a number of ‘activities’ which we will call work items. A work item is a unit of work and will frequently result in producing an artifact, such as a document like a use case, perhaps a test plan, a source code module, a user interface prototype, or perhaps an executable. Each iteration (deliverable) will also include some project management documents, such as an executive summary and statements of work, plus the development artifacts. The iterations will be realized in a series of what we will call "sprints," an element of the Scrum project management approach, which is agile in nature (discussed later). Each iteration will provide a measurable increment of real application (business) value to the client. Thus our applications will evolve from providing key, risk-driven required core values into a fully functional system. ProjectOverview for CEN 4010
Every iteration will include an Executive Summary. This is to be a single page document and should summarize the contents of the iteration: What work items were undertaken (list) What work items may have been changed from previous iteration Note: revising artifacts is the norm in an iterative approach to software development. Executive Summary is likely developed by team lead and backup. Executive Summary
Each iteration consists of work items undertaken. Each Work Item will be included in your iteration deliverable to me. The Statement of Work (SOW) (ahead) must include the name(s) of the individual(s) primarily responsible for accommodating each work item along with projected and actual time expenditures. (Some work items will be done by individuals; others by more than one team member.) Work Items
You are to include each individual team member’s statement of work (SOW) Develop a document of sequential SOWs and include as a work item. The template for SOW submission is found on my web page. Please fill it in accurately. No grades are dependent on the content, but good project management requires time accountability. Statement of Work
Development Environment • While we will use Scrum as our agile approach to development work, Scrum is not considered a process by some. Rather it is an management approach. • Many will argue this point. That is fine. But it is, together with elements of the Unified Process, oftentimes considered the most popular hybrid approach to software development. • We will undertake the traditional activities in software engineering ranging from gathering requirements and documenting them in use cases that will be used to drive the user interface, database design, architectural design, design, functional programming, testing, and validation. • Your choice of suitable programming language must fit the application component, from interface design and implementation to functional development to database design and implementation. • Under NO circumstances will poor grammar or ill-conceived sentences be considered acceptable work. Remember: you only get one chance to make a first impression. Poorly done work will really hurt your grade and perception of what otherwise might be high-quality work. This is a graduate level course and mature, professionalism is expected.
Under NO circumstances will poor grammar or ill-conceived sentences be considered acceptable work. Remember: you only get one chance to make a first impression. Poorly done work will reallyhurt your grade and perception of what otherwise might be high-quality work. This is a senior-level capstone course and mature, professionalism is expected. EACH work item of EACH iteration must be reviewed While each team will have a Quality Assurance Manager (ahead) please recognize that every deliverable is the overall responsibility of the entire team. I cannot stress too strongly emphasis placed on professionalism in organization, content, presenting and reporting. Grammar, Wording, and Professionalism
Team Formation, Project Identification, Roles, initial Scope, and initial Product Vision Iteration #1due 16 Jan 2013 – Start of Class
Project Title Standard contents (see previous generic description) Project lead (interim or permanent) will develop the Executive Summary Team roles (initial cut) Initial project scope Initial product vision Describe in summary form the work items undertaken for this iteration. Include any issues encountered. Work Item: Executive Summary(Word document)
Risks will be identified, quantifed, and prioritized. See Risk List in the Word Templates links provided. Undertake an initial risk assessment as best you are able at this time. It will change. In the Iteration Assessment, risk mitigation must be addressed. Work Item: Risk List
List the team members by name and the role(s) each will undertake. Use the descriptors on the next slide. Please realize this may change and be modified as individuals take on new roles as the project evolves, but you should make every effort to nail down roles. While we will be developing the applications using agile development and Scrum in particular, one primary precept of agile development is the self-governing characteristic of Agile. Simply put, this means that the team must govern itself from role selection to planning workload distributions, planning meetings, and more. Work Item: Team Formation
Team lead and backup: Team Quality Assurance Manager : (responsible for ensuring all work items are properly reported, formatted, included on time and more; responsible for work item reports to RTC) Functional Analysts (Requirement Specifications) Application Designers (Modelers; architects) Application Programmers (API / IDE specialists) Database Specialists (database designers; interfacing…) Testing and Reporting ( client representative, analysts; others) Team Roles and Responsibilities (sample roles)
See templates on my web page and sample student work. Give this a shot. Will be fully completed on next iteration. Initial Product Vision
Topic must be pre-approved well before it becomes a part of this iteration. Include full write up. Title Description – several paragraphs Need – Significance? Usefulness? Clients? Availability of Resources to Specify Sources of knowledge Overall Software Development Plan (See Software Development Plan in Templates) It is conceivable that you may not have this item thought out yet. But give it a shot. Will change later. Work Item: Approved Project Description
Frank assessment of iteration 0. (5-10 minutes) One or more team members will report on Iteration 0 in classroom setting. (good, bad, and ugly) What can be done to improve this process? Iteration 0 will be graded. Grades: not team grades. Individual Peer Reviews must be submitted no later than class time on the date on which the Iteration Reports are due/presented. Likely accomplished by Team Leader See Iteration Assessment in Templates Work Item: Iteration Assessment
I certify that to the best of my ability all work items have been completed and are included in the iteration report. _____ Quality Manager’s (QMgr) Name _____ Team Leader’s (TL) Name Comments optional. Work ItemQuality Manager’s Certification
Application Modeling Iteration #2due February 6th
Purpose: To understand the structure and dynamics of the organization within which the application will operate; To ensure customers, end-users, and developers understand the organization; To derive requirements on systems to support the organization; Iteration #1 Application Modeling
Executive Summary Team Member’s Statement of Work (See link on web page) Application Vision Document – Completed and comprehensive. Application Glossary – See templates Application Rules – See templates Application Risk List – See templates This is a hefty assignment. Start early!! Iteration 2 – Application Modeling and Work Items
See earlier slide. Overview of the iteration from top to bottom. No more than one page. Work Item: Executive Summary
You are to include each individual team member’s statement of work (SOW) in a single SOW. Add to previous SOW from last iteration. Work Item: Statement of Work
Use the appropriate forms on my web page: Link to Useful Templates You Will Need. This is a Word document. This captures the purpose of the application domain. What services are they providing? What are they all about? Who are the customers? What are the goals of this business? Primary stakeholders?? Points of contact: emails and telephone and any notes such as availability / non-availability; where they work, office symbols, tech support, BAs, etc. This is about the business, enterprise, environment.) Work Item: Application Vision Document (1 of 2)
Use the BusinessVision Template (see web page) but you must MODIFY it so that it does NOT address a project; rather, it will capture the vision of the enterprise itself. Normally, in “Stakeholders,” we address those interests NOT from a project perspective but from an organization’s perspective: customers, users, etc. In our case, address the interests of the stakeholders for the projects you are undertaking. There is no Product Overview But the vision document should address what the business is all about. Add major sections that you deem appropriate. Application Vision Document (2 of 2)
Use the Business Glossary template. Definitions of important terms used in the enterprise. (alphabetical) Key words: (sometimes these are called ‘core abstractions.’ ) These are often the ‘things’ the enterprise deals with. Nouns. A Student Registration system might have key words like Course, Schedule, Payment, Registration, Student, Professor, …. What is needed here are acronyms, important definitions, basically the jargon of the organization. These will be heavily referred to when we do use cases! Work Item: The Application Glossary (1 of 2)
Use the Business Rules template. See examples on my web page. These are merely samples. Be careful: The samples on my web page are Rules for an Application. In principle, the formal approach is to develop business rules for the entire organization and not for the specific application domain. For our projects this year, you are to develop businessrules for the specific application domain for which we will be developing the application. Business Rules are policy declarations or conditions or guidelines that must be satisfied in running the business. Work Item: The Application Rules
Use Business Risks template. What are some of the risks that the organization and developers must be constantly assessing: Clients: market share, technology awareness, new statutes from Washington D.C., the state of Florida; trends in the industry; demographics; Developers: Include environmental considerations; personnel risks; technology risks; economic risks; time constraints; give this some thought…. Work Item: Risks
Features List And Façade Use Cases Sprint #3due: Feb 27th (tentative)
Executive Summary Iterate Previous Work Team Statement of Work Features List Initial Use Cases – Façade Level Quality Manager Assessment Work Items
See lecture slides and templates provided on my web page. I am after a short description (paragraph at most) for the Product Vision. This results in scoping the project (together with Needs and Features ahead. The Product Features Section (section 5) is essential and is to include identification of stakeholder needs and their mapping to features via the traceability matrix shown in referenced articles. The QA individual must develop a Traceability Matrix that maps Features back to Needs (here). So the SQA will have two matrices prepared. (See sample article for guidance) Work Item: Product Vision Statement
When we are dealing with ‘needs’ and ‘features’ we are dealing with reasonably high levels of abstraction. But it is critical to capture the features in the Vision Document for a new application, because it is these features that must be accommodated in the delivered system. Needs are higher level and often include very high level statements of desired needs not all of which are features which can be implemented in a system. The Features drive the development of the use cases – our functional requirements, and the development of our supplementary specifications – our non-functional requirements. Features List
Features are not behavioral (like the Use Cases - coming). These are typically text descriptions. See text books. Example of features: (We will discuss) ClassicsCD.com Web Shop Need a Secure payment method. There must be easy browsing for available titles. Users need the ability to check the status of an order. Application must provide Customer e-mail notification. The catalog shall be highly scaleable to include many titles and effective searching through those titles. The Customer shall be able to customize the Web site. The Customer shall be able to register as a user for future purchases without needing to re-enter personal information. More on Sample Features
Executive Summary Iterate Previous Work Team Statement of Work Use Case Index Use Cases including all Façade and Filled (basic use cases and those containing happy path Traceability Matrices Quality Manager Assessment Static and Dynamic Modeling??? Iteration #3due: ~TBD
1. Executive Summary. Summarize the Iteration. 2. Iterate / Review / upgrade previous artifacts including the Features List Based on evaluation of your iteration, Your changes should be annotated in the Executive Summary. All previous deliverables should be reviewed and potentially updated. 3. Team Statement of Work Assigning responsibilities to different roles to be accommodated on the team. This text document should be developed by the team leader in concert with individuals. Team leader must provide direction and guidance. All tasks and sub-task-ids should be clearly delineated. Team members decide on allocation of Work Items. 4. Update Features List to cover but not exceed Scope; Add comments. 5. Provide Use Case Index (see slides for examples and description) 6. Provide Use Case Diagrams for each use case specification (may include with the Use Case Specification (Narrative). 7. Provide Use Cases: one set of filled use cases (use case that includes only the happy path) 8. *Provide complete use cases (all alternatives / exceptions included) (coming) 9. Provide Traceability Matrices for Needs to Features to Use Cases and vice versa.. 10. Quality Manager’s certification artifacts are reviewed. Iteration #3 – Work Items - Overview
As previously done. Summarize the Iteration. The good, bad, and ugly. Assess how all went and ways to improve Overview of artifacts developed and your assessment of them. How did the team do? No more than one page. Work Item: Executive Summary
Review primary Needs and Features recognizing team members know more about the application domain. Review and update the domain model to include additional / modified business entities. Work Items: Review Previous Artifacts
You are to include the Statement of Work from my web page updated with this Iteration’s efforts. Include each individual team member’s statement of work (SOW). I am after a personal self-assessment as well from individuals. Remind all team members to email their personal self-assessments / team assessments to me. Work Item: Statement of Work
Update Features list with current knowledge. Work Item: Update Features List
See examples on my web page. This is a one-pager listing the use cases to come. Each entry should have a short user-stories as the description of the use case. Work Item: Create Use Case Index
Develop Use Case Diagrams to include actors and use cases. You may include individual use-case diagrams with their specific use case specification, if you wish. Not a bad idea, however, to have them all listed one after the other here… Work Item: Develop Use Case Diagrams
The use cases are to be (first) a set of façade level use cases. Secondly, each use case is to have a second one that includes a the basic couse of events. Be aware, the next iteration will have all alternatives / exceptions developed… Work Item: Develop Use Case Specifications
There needs to be a traceability matrix outlining needs mapped to features mapped to use cases. See examples in my slides and in the article by Leffingwell. Work Item: Develop Traceability Matrices
Need sign off that the entire team approves of the deliverable constituting the third Iteration. Work Item: Quality Manger’s Certification
Very important deliverable as we approach the end of this semester. Work items and artifacts follow (you know the drill by now): 1. Executive Summary 2. SOW 3. QM certification. Ensure ALL review these documents 4. Features List (taken from Product Vision will likely be okay) 5. Traceability Matrices for Needs to Features to Use Cases 6. “Complete” Use Cases with all alternatives and exceptions. Use Case Diagrams too. Precede this with the Use Case Index. 7. Initial Data Base Design. (Team 1 will present theirs.) 8. Upon feedback from me, please down load in hard copy the use cases, traceability matrices (from product vision and this one), and the data base design. 9. Team 1 is to present their artifacts. Iteration #4due: 26 Nov 2012
The Features List will be input to the COJ and to UNF (re your team). The Clients will prioritize their needs based on these features. These constitute the product backlog owned by clients. Development teams (soon) will develop their own Sprint backlogs (we will discuss) 4. Features List
Traceability Matrices mapping Needs to Features to Use Cases are needed. See samples for format. Essential for tracking our progress via Sprints and ensuring we are working on real requirements. 5. Traceability Matrices
Essential component of the iteration. Preceded by the Use Case Index (one page) and accompanied by Use Case Diagrams per use case, you are to significantly expand your use case specifications to include all scenarios worthy of expansion. Several samples are available for your study. This essentially ‘ends’ or creates a base line of functional specs, so it is essential that you attempt to capture all that needs to be documented. Of course, the use cases are ‘never’ totally complete. J 6. “Complete” Use Cases
Your Work Item here is to develop and document your first cut at a viable data base design given your many constraints. Visual modeling is critical along with text to accompany / explain your modeling This will be supplied to our clients (COJ and UNF) for verification, so we are after your best attempt at a good data model. 7. Initial Data Base Design
Be prepared to download, print, and provide a professional portfolio of your work to be submitted to the client. More later on format, etc. 8. Preparation for Incremental Delivery to Clients
In lieu of a final exam, we have a short term iteration for these work items.. 1. Exec Summary, SOW, QM Certification. 4. Refinements of iteration 4. These could be significant. 5. Initial prototype of your Interface. Provide documentation on how you addressed the many points in the User Interface Design power point notes. 6. Upon feedback from me, please down load in hard copy of revised documentation from iteration #4 plus images of your interface design. 7. Team 3 will present theirs for the class More later on this deliverable. 8. Development Plan based on Features / Use Cases – coming in early January J Iteration #5due: 5 Dec 2012
Have Database design – first cut Have initial Interface design – first cut. Do we undertake analysis modeling??? Need Architectural Design asap for our architectural model Development Plan – Iteration Planning (short documents to explain each of these approaches and rationale….) Based on Features, Use Cases, etc. Priorities should be submitted from clients based on needed business value and risk. Features / Use Cases used to suggest the iterations (sprints) Need mapping of Features to Use Cases in Traceability Each with defined, measurable inputs / outputs, etc…validation criteria, inspection (Includes design packages for a group of features / use cases) Static models (classes) and sequence diagrams (dynamic modeling) Future Iterations
Acceptance tests for each reuqirement Setting up test suits for frequent use Regression tests Test suites for frequently changed software. Configuration management tool use Set up team for management, coding, architectural concerns, testing and test case development; Scrum management, configuration control, documentation, etc.