54
Project Overview for CEN 4010 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

Project Overview for CEN 4010

  • Upload
    tamal

  • View
    34

  • Download
    1

Embed Size (px)

DESCRIPTION

- PowerPoint PPT Presentation

Citation preview

Page 1: Project Overview for CEN 4010

Project Overview for CEN 4010The 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.

Page 2: Project Overview for CEN 4010

Executive Summary 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.

Page 3: Project Overview for CEN 4010

Work ItemsEach 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.)

Page 4: Project Overview for CEN 4010

Statement of Work

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.

Page 5: Project Overview for CEN 4010

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.

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.

Development Environment

Page 6: Project Overview for CEN 4010

Grammar, Wording, and Professionalism

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 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.

Page 7: Project Overview for CEN 4010

Iteration #1due 16 Jan 2013 – Start of Class

Team Formation, Project Identification, Roles, initial Scope,

and initial Product Vision

Page 8: Project Overview for CEN 4010

Work Item: Executive Summary(Word document)

Project TitleStandard contents (see previous generic description)Project lead (interim or permanent) will develop the Executive Summary

Team roles (initial cut) Initial project scopeInitial product visionDescribe in summary form the work items undertaken for this iteration.

Include any issues encountered.

Page 9: Project Overview for CEN 4010

Work Item: Risk List

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.

Page 10: Project Overview for CEN 4010

Work Item: Team FormationList 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.

Page 11: Project Overview for CEN 4010

Team Roles and Responsibilities (sample roles)

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)

Page 12: Project Overview for CEN 4010

Initial Product VisionSee templates on my web page and sample student work.Give this a shot.Will be fully completed on next iteration.

Page 13: Project Overview for CEN 4010

Work Item: Approved Project Description

Topic must be pre-approved well before it becomes a part of this iteration.

Include full write up.TitleDescription – several paragraphsNeed – Significance? Usefulness? Clients?Availability of Resources to Specify

Sources of knowledgeOverall 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.

Page 14: Project Overview for CEN 4010

Work Item: Iteration AssessmentFrank 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 LeaderSee Iteration Assessment in Templates

Page 15: Project Overview for CEN 4010

Work ItemQuality Manager’s Certification

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.

Page 16: Project Overview for CEN 4010

Iteration #2due February 6th

Application Modeling

Page 17: Project Overview for CEN 4010

Iteration #1 Application Modeling

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;

Page 18: Project Overview for CEN 4010

Iteration 2 – Application Modeling and Work Items

Executive SummaryTeam Member’s Statement of Work (See link on web page)Application Vision Document – Completed and comprehensive.

Application Glossary – See templatesApplication Rules – See templatesApplication Risk List – See templatesThis is a hefty assignment. Start early!!

Page 19: Project Overview for CEN 4010

Work Item: Executive Summary

See earlier slide.Overview of the iteration from top to

bottom.No more than one page.

Page 20: Project Overview for CEN 4010

Work Item: Statement of Work

You are to include each individual team member’s statement of work (SOW) in a single SOW.

Add to previous SOW from last iteration.

Page 21: Project Overview for CEN 4010

Work Item: Application Vision Document (1 of 2)

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.)

Page 22: Project Overview for CEN 4010

Application Vision Document (2 of 2)

Use the Business Vision 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.

Page 23: Project Overview for CEN 4010

Work Item: The Application Glossary (1 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!

Page 24: Project Overview for CEN 4010

Work Item: The Application Rules 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 business rules 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.

Page 25: Project Overview for CEN 4010

Work Item: Risks 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….

Page 26: Project Overview for CEN 4010

Sprint #3due: Feb 27th (tentative)

Features ListAnd

Façade Use Cases

Page 27: Project Overview for CEN 4010

Work ItemsExecutive SummaryIterate Previous WorkTeam Statement of WorkFeatures ListInitial Use Cases – Façade LevelQuality Manager Assessment

Page 28: Project Overview for CEN 4010

Work Item: Product Vision StatementSee 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)

Page 29: Project Overview for CEN 4010

Features List

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.

Page 30: Project Overview for CEN 4010

More on Sample Features

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.

Page 31: Project Overview for CEN 4010

Iteration #3due: ~TBD

Executive SummaryIterate 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 MatricesQuality Manager Assessment

Static and Dynamic Modeling???

Page 32: Project Overview for CEN 4010

Iteration #3 – Work Items - Overview1. 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.

Page 33: Project Overview for CEN 4010

Work Item: Executive SummaryAs 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.

Page 34: Project Overview for CEN 4010

Work Items: Review Previous Artifacts

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.

Page 35: Project Overview for CEN 4010

Work Item: Statement of Work

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.

Page 36: Project Overview for CEN 4010

Work Item: Update Features List

Update Features list with current knowledge.

Page 37: Project Overview for CEN 4010

Work Item: Create Use Case Index

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.

Page 38: Project Overview for CEN 4010

Work Item: Develop Use Case Diagrams

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…

Page 39: Project Overview for CEN 4010

Work Item: Develop Use Case Specifications

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…

Page 40: Project Overview for CEN 4010

Work Item: Develop Traceability Matrices

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.

Page 41: Project Overview for CEN 4010

Work Item: Quality Manger’s Certification

Need sign off that the entire team approves of the deliverable constituting the third Iteration.

Page 42: Project Overview for CEN 4010

Iteration #4due: 26 Nov 2012

Very important deliverable as we approach the end of this semester.

Work items and artifacts follow (you know the drill by now):1. Executive Summary2. SOW3. QM certification. Ensure ALL review these documents4. Features List (taken from Product Vision will likely be okay) 5. Traceability Matrices for Needs to Features to Use Cases6. “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.

Page 43: Project Overview for CEN 4010

4. Features List

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)

Page 44: Project Overview for CEN 4010

5. Traceability Matrices

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.

Page 45: Project Overview for CEN 4010

6. “Complete” Use Cases

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

Page 46: Project Overview for CEN 4010

7. Initial Data Base Design

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.

Page 47: Project Overview for CEN 4010

8. Preparation for Incremental Delivery to Clients

Be prepared to download, print, and provide a professional portfolio of your work to be submitted to the client.

More later on format, etc.

Page 48: Project Overview for CEN 4010

Iteration #5due: 5 Dec 2012

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

Page 49: Project Overview for CEN 4010

Future IterationsHave 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)

Page 50: Project Overview for CEN 4010

Acceptance tests for each reuqirementSetting up test suits for frequent use

Regression testsTest suites for frequently changed software.

Configuration management tool useSet up team for management, coding, architectural concerns, testing and test case development; Scrum management, configuration control, documentation, etc.

Page 51: Project Overview for CEN 4010

Creation of a test team forUIDatabase and any refactoring neededFunctionality

Maintain test case library

Learning about builds and how to test, document, report via Scrum, configure, etc…

Test execution, reporting, archiving….

Page 52: Project Overview for CEN 4010
Page 53: Project Overview for CEN 4010

Need a software development plan for the iterations…

Page 54: Project Overview for CEN 4010

That’s it for now.Starting in January, we will be deeply immersed in development starting with the architecture followed by the MVC design strategy and implementation.

All teams will, upon prioritization of needs by our clients (their product backlog), will decide your own sprint backlog. This will take participation of all team members in deciding the contents of each sprint and commitments thereto.

We will talk more later, but from here on, the development will be directed by the team using a Scrum process – as nearly as possible.