Software Project Management, 9th Sep.

Similar documents
Introduction to User Stories. CSCI 5828: Foundations of Software Engineering Lecture 05 09/09/2014

CS 160: Evaluation. Outline. Outline. Iterative Design. Preparing for a User Test. User Test

CS 160: Evaluation. Professor John Canny Spring /15/2006 1

1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake

HCI and Design SPRING 2016

The requirements engineering process

OUTCOME OF THE 3 RD MEETING OF TARGET CONSOLIDATION CONTACT GROUP (TCCG)

Optimize tomorrow today.

Agile Software Development Agile UX Work. Kati Kuusinen TUT / Pervasive / IHTE

Administrivia. Added 20 more so far. Software Process. Only one TA so far. CS169 Lecture 2. Start thinking about project proposal

COMP208/214/215/216. Lecture 4. Requirements Walk-through

Process Models. Projects Process. Common Process Models. Typical Student Process Model. Waterfall Model

Design Heuristics and Evaluation

Level: M.Ed. Credit Hour: 3 (2+1) Semester: Second Teaching Hour: 80(32+48)

Topic 01. Software Engineering, Web Engineering, agile methodologies.

WHO SHOULD ATTEND? ITIL Foundation is suitable for anyone working in IT services requiring more information about the ITIL best practice framework.

INTRODUCTION. 2. User-centred interface design.

COMP6471 WINTER User-Centered Design

Analytical Evaluation

User-Centered Development

Chapter 8. Achmad Benny Mutiara

CONFERENCE PROCEEDINGS QUALITY CONFERENCE. Conference Paper Excerpt from the 28TH ANNUAL SOFTWARE. October 18th 19th, 2010

CHAPTER 18: CLIENT COMMUNICATION

Technical Qualifications How to book assessments

Lecture 7: Software Processes. Refresher: Software Always Evolves

MGA Developing Interactive Systems (5 ECTS), spring 2017 (16 weeks)

CUBE. Configuration Management Report. Hakan Nizamoğlu Yiğitalp Ertem Murat Toprak Saim Güveloğlu

Creating an Intranet using Lotus Web Content Management. Part 2 Project Planning

Overview of Today s Lecture. Analytical Evaluation / Usability Testing. ex: find a book at Amazon.ca via search

User Documentation Development Life Cycle (UDDLC)

CS 4317: Human-Computer Interaction

Introduction to Software Engineering

2/18/2009. Introducing Interactive Systems Design and Evaluation: Usability and Users First. Outlines. What is an interactive system

Agile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process

Software Quality. Martin Glinz. Thomas Fritz. Lecture 7 UI Design, Usability & Testing. Many thanks to Meghan Allen and Daniel Greenblatt.

ISTQB Advanced Level (CTAL)

User Interface Evaluation

EXAM PREPARATION GUIDE

Additional reading for this lecture: Heuristic Evaluation by Jakob Nielsen. Read the first four bulleted articles, starting with How to conduct a

CPSC 444 Project Milestone III: Prototyping & Experiment Design Feb 6, 2018

Lecture 8 Requirements Engineering

02161: Software Engineering I

TMap Suite Test Engineer

Assignment 5 is posted! Heuristic evaluation and AB testing. Heuristic Evaluation. Thursday: AB Testing

Business Analysis for Practitioners - Requirements Elicitation and Analysis (Domain 3)

Foundation Level Syllabus Usability Tester Sample Exam

A Usability Evaluation of Google Calendar

CREATING EFFECTIVE USER STORIES

Requirement Engineering within an Agile Environment BY KEJI GIWA. Digital Bananas Technology

15/16 CSY2041 Quality and User-Centred Systems

CSCE 315 Fall Team Project 3

DSDM Agile Professional Candidate Guidelines October I do it right

ISM 324: Information Systems Security Spring 2014

Testing in Agile Software Development

Interaction Design. Heuristic Evaluation & Cognitive Walkthrough

Chapter 2 Web Development Overview

Systems Analysis & Design

Part 5. Verification and Validation

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method

CS3500: Object-Oriented Design Fall 2013

EXAM PREPARATION GUIDE

Scrums effects on software maintainability and usability

How Can a Tester Cope With the Fast Paced Iterative/Incremental Process?

User Experience Metric (UXM) and Index of Integration (IoI): Measuring Impact of HCI Activities

Incremental development A.Y. 2018/2019

Step-by-Step Localization Eva Müller

Lecture 14: Heuristic Evaluation. Fall UI Design and Implementation 1

Pearson Edexcel Award

Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not.

INFS 2150 (Section A) Fall 2018

Second. Incremental development model

CSE 440: Introduction to HCI User Interface Design, Prototyping, and Evaluation

I am Stephen LeTourneau from Sandia National Laboratories Sandia s National Security Missions include: Nuclear Weapons Defense Systems & Assessments

Using Storyotypes to Split Bloated XP Stories

Guidance for IT staff on priorities to be used when logging incidents.

EXAM PREPARATION GUIDE

Collaboration at Scale: Prioritizing a Backlog. 13-Dec-2017

EVALUATION OF PROTOTYPES USABILITY TESTING

Approaches for Auditing Software Vendors

Heuristic Evaluation. Hall of Fame or Shame? Hall of Fame or Shame? Hall of Fame! Heuristic Evaluation

DOWNLOAD PDF SIXTY MILESTONES OF PROGRESS,

The purpose of the Risk Log is to provide a list of risks confronted during the Tempus project.

USER INTERFACE DESIGN + PROTOTYPING + EVALUATION. Heuristic Evaluation. Prof. James A. Landay University of Washington CSE 440

EXAM PREPARATION GUIDE

EVALUATION OF PROTOTYPES USABILITY TESTING

EXAM PREPARATION GUIDE

Quality Assurance & Standards

INTERNATIONAL STANDARD

EXAM PREPARATION GUIDE

18-642: Software Development Processes

Synergy Distributed Meeting Scheduler. Project Plan. Revision 2.0. CS 6361 Advance Requirements Engineering Fall 2008

Exam Questions

cs465 principles of user interface design, implementation and evaluation

Certified Software Quality Engineer Preparation On Demand, Web-Based Course Offered by The Westfall Team

Effective Virtual Meetings & Basics for Using the Skype for Business Tool

Mobile UX or WHITEPAPER

EXAM PREPARATION GUIDE

Chapter 5: Planning in Web Engineering

Internet Praktikum TK WS17/18 (Kickoff) Lecturer: Christian Meurisch, Sebastian Kauschke

Up and Running Software The Development Process

Transcription:

Software Project Management, 9th Sep. Working hour reporting Preliminary analysis Project planning, development models Usability team co-operation Short project presentations on 16th September Course homepage: http://www.cs.uta.fi/pt/2009_10 Lecturer and project supervisor : Timo Poranen, tp@cs.uta.fi, r. B1042. 1

Working hour reporting All work done (except in usability team) will be divided into nine categories: Project planning and management, Requirements specification, Design, Code, Integration and testing, Review, Repair, Studying and Other. See course homepage: Document Templates. Usability team members maintain: Project related working hours, Studying, and Other (usability team meetings, lectures, etc.) and UT managers maintain: Project related working hours, Planning and management, Studying, and Other. In the project homepage, there must be a cumulative working hour table, where different work activities form a matrix. In the weekly reports there must be the total working hours for the period for each project member. 2

Development models - Why? Dalcher lists benefits of using a standard development approach: attaining visibility, identifying the tasks breaking work into manageable chunks providing a framework for co-ordinating and managing controlling project finance encouraging systematic evaluation of options and opportunies providing a problem-solving perspective encouraging continuous monitoring managing uncertainty providing a common and shared vocabulary 3

Development models - Waterfall Preliminary analysis requirements specification analysis and design implementation testing maintenance. Projects are sequenced into a set of steps that are completed serially. Products are fed into to the next step and frozen upon completition of a milestone. Changes can cause confusion as the project proceeds. It is often difficult to state all requirements in the beginning of the project. Have to see first. The customer must have patience. The first working version will not be available until late in the project time-span. Inspections, reviews and prototypes decrease risk of constructing a wrong product. Compulsory inspections for project plan, requirements specification, test plan and implementation plan. 4

Development models - Incremental I Preliminary study requirements specification for each increment: analysis and design implementation and integration testing (fixing) end; maintenance. After requirements specification is ready, it might be possible to split the development phase into several increments. Each increment is designed (increment s content, implementation, unit testing, integration, integration testing) separately. Usually it is wise to construct first most important / most risky part of the software. There is no need to design whole implementation before you can start coding. Client (and usability team) can give feedback earlier, just after the first increment is ready! 5

Development models - Incremental II What if you choose wrong architecture for the first increments? Refactorisation of the code or start the design from the beginning... Increments can be parallel. The lenght of an increment should be 2-3 weeks in this course. Number of increments? 3-7? Sometimes it is possible to start increments before all requirements are recognised. Inspections in this course: Project plan, Requirements specification, and reviews for two increments. The design and test plan documents can be divided into increments. 6

Other development models It is ok to apply any widely recognised (and documented) model: Scrum, XP, other Agile models, iterative, prototyping,... Inspections in this course: Project plan. Three reviews for iterations. In the reviews team gives a demo on achievements of the previous iteration. Then we check requirements, design and test documents for the next iteration. You define the reviews in the project plan. In total: 6-7 iterations and their reviews? You should follow your development model s recommendations. For example, http://en.wikipedia.org/wiki/scrum_(development) It is necessary that you produce partially running software much earlier when compared to WF. 7

Development models - References Pressman, R.:Software Engineering - Practitioner s approach, 6th edition, pages: 51-126. Sommerville, I.: Software Engineering 7, pages: 63-91, 389-414 Hughes and Cotterell: Software Project management. Benediktsson, O., Dalcher, D. and Thorbergsson H.: Comparison of software development life cycles: a multiproject experiment. IEE Proceedings Software, 153(3), June 2006, 87-101. Abrahamsson et al.: Agile software development methods: review and analysis, 2002 Wikipedia, youtube. 8

Preliminary analysis meeting with the course supervisor See http://www.cs.uta.fi/pt/2009_10/, Document Templates, Preliminary analysis. Deadline 23.9. The document must be returned to the supervisor 24 hours before the meeting. Reserve 30 min timeslot from the lecturer by email. Reserve a meeting room. Free timeslots: http://www.cs.uta.fi/~tp/schedule.txt. 9

Project Plan For a project plan we will apply a template based on IEEE 1058 standard. See http://www.cs.uta.fi/pt/2009_10/, Document Templates. All (main) tasks and deliverables should be mentioned in the plan (if possible, agile projects?). Start date, end date, how many hours it will take, who is in charge. Start to design project plan with your group and client as soon as possible. The inspection deadline is Friday 9.10. Sen the document to all stakeholders 5 days earlier. Require that all read carefully the document. It is important to introduce your development model and how you apply it! Plan must be updated regularly. 10

Usability team - www.cs.uta.fi/~uteam Kajaste, I., Mathew, D., Peltomäki, S. and Poranen, T.: Using usability experts to improve software quality, 2007, http: //www.cs.uta.fi/~tp/pub/usability-team-inspire.pdf Usability team has 10 PW students and 2 managers: Ari Koivuniemi and Jonna Paananen. One (or more) student from the usability team co-operates actively with your team if you have any usability needs. He or she is your team member. Share project s information with UT member and UT project managers. UT managers will inform within two weeks, who is your usabilityn team representative. See usability team project stories to see what kind of deliverables usability team produced last year. 11

Co-operation with the usability team... A great benefit from this co-operation is that you get usability related documents and external feedback from the usability team. The team members will also help in usability tests. This makes managing slightly more complex, but gives realism to the projects. Send your project information to the usability managers! Co-operation guidelines will be discussed on the next week after UT presentation. The project plan should also contain all usability related tasks (their start date, end date, person in charge, how many hours it takes,...)! Add UT representative to your weekly report mailing list and make sure that they really belong to your team. 12

2 managers for one project? You can decide your own responsibility areas. You should prepare for meetings etc. together before the meetings. It is ok if managers move from a passive role to an active role and vice versa during the project. To avoid possible problems, pay attencion on communication and planning to get a common view for important issues. Roles: quality manager, risk manager, scrum master,... 13

Technical help for projects To work in projects, department s computer classes can be used. For some projects, client gives equipments, for most projects not. Department has, for example, subversion installed. If you need user accounts for subversion, send an email to the lecturer and (jori.mantysalo@cs.uta.fi (room B2040-2041, Mondays 8-12, Tuesdays 12-16, Thursdays 8-12 and Fri 12-16). You need a name for your project before that. You can add and remove users normally. Tuomas Tauriala helps if there is a need for virtual servers (Tuomas.Tauriala@uta.fi, room B1052). 14

Short presentations on 16th September Each project manager gives a 7 minutes presentation: Introduce your project shortly. Describe what kind of group you have. Meetings, communication with the client, communication with the group... Main project risks, how to avoid them. Development model Other management related issues. 3 minutes time for questions and discussion. Presentation schedule: First presentation starts 10:15 last ends 13.00. Let s try to maintain the schedule in the Moodle! So, reserve your project s 10 minutes from the Wiki Presentations 16.9. 15

Other important topics Common problems in requirements specification Common problems in design document Common problems in test plan Reviews/inspections Course homepage: http://www.cs.uta.fi/pt/2009_10/ Lecturer and project supervisor : Timo Poranen, tp@cs.uta.fi, r. B1042. 16

Problems in Requirements Specification Missing requirements, use cases / user stories. Missing use case and sequence diagrams (UML). Database tables and fields (UML class diagram). http://www.cs.uta.fi/pt/2009_10/material/ QualityRequirementsChecklist-RM.doc: correctness, comprehensibility (unambiquity, right level of detail), completeness, consistency, priorities. Place requirements into groups. Use understandable IDs, not REQ123... In the end requirements specification must correspond to the actual implementation. UI specification? Usability requirements? 17

Problems in Design Document There must be architectural diagrams (component diagram or deployment diagram or package diagram or composite structure diagram) and a class diagram (UML). Missing definitions for some (interface) functions. No list of error messages or program files with their descriptions. All database data must be defined. UI documentation is missing or it is not tied with design document (which function is called when I press this button?). 18

Problems in Test Plan Not all features are tested - There must be at least one test for each requirement. For each test case, write down which requirements it tests. Use a text file to store all test inputs. (Automated) Unit testing? Testing diary? Start testing after first classes/components are ready. Make sure that you have enough time for testing. Output from testing is a test report. From the test report one can verify that you have done tests and that corresponding requirements are implemented correctly. 19

Inspections and reviews Contents How these do relate to projects? What can be reviewed? Goals of reviews. Benefits of reviews and inspections. Review and inspection methods. How the reviews are arranged on the project work courses. Original slides by Isto Aho. Modified by Timo Poranen. 20

Goals and benefits Early recognition of faults, miscomprehensions and problems. cheaper and easier to correct faults can be found from functioning, logic and implementation. reviews expose different faults than testing. Teaching method inexperienced may learn from the experienced (is a mentoring method). Client may set requirements with regards to reviews. Client acceptance and opinion. To agree on the parts of product that either don t need or which we don t want to improve. 21

More goals and benefits Quality assurance. Is related to standards, like ISO 9001 and IEEE 1028. Ensure that software meets its specification and requirements. Ensure that software and its functioning will be represented by methods and standards defined beforehand. Ensure that software is developed with uniform methods. 22

More goals and benefits Nowadays reviews are an essential part of WF model. Project is more manageable. The technical quality of work will improve and is more uniform. The project tracking will be clearer, the predictability of progress and success improves. Ensures and improves the continuity of project, since people will get familiar with the parts they have not seen before. 23

Reviews, inspections, walk-throughs Inspection: A static analysis technique that relies on visual examination of development products to detect errors, violations of development standards, and other problems. Review: A process meeting during which a work product, or set of work products, is presented to project personnel, managers, users, customers or other interested people for comment or approval. Walkthrough: A static analysis technique in which a designer or programmer leads members of the development team and other interested parties through a segment of dicumentation or code, and the participants ask questions and make comments about possible errors, violation of development standards, and other problems. 24

What to inspect? All material that will be produced: documents, for example requirements specification project plan testing plan implementation plan instruction manual 25

code review reports (meeting minutes) progress reports (weekly reports) test reports running software, release plans in XP, increment plans etc. If some document or other product is very large, it should be reviewed with partial reviews (e.g., max about 50 pages or 500 lines of code at a time). 26

Fagan s Inspection Design (planning): who will take part, sharing material, agenda for the inspection. Preparing: participants get familiar with the material beforehand, each separately. Meeting: the length is limited (max 2 hours), discussions will be focused, problem cases will be brought up but are not solved here. Repairs: after the meeting, the problems should be fixed. Continuity: ensure that the problems have been fixed (correctly). 27

Example inspecting implementation plan This example focuses on the preparing and meeting phases. Design (planning): Each participant will get the implementation plan. Ensure that everybody has the requirements specifications and agenda. Preparings: Everybody will get familiar with the material (implementation plan) and mark the faults found. To ease the reading, check lists can be given. The idea is help to find out the problems. 28

Example inspecting implementation plan Meeting: Length at most 2 hours. Roles for the participants. We go though the document page by page or section by section or chapter by chapter. Purpose of the meeting: Each will show the problematic parts they have found. New problems are sought actively. The implementation plan is checked systematically (e.g., with the help of use cases or standards). Ensure together that everybody has a common view learning. 29

Eliminate wrong problems (problem candidates that the group will decide not to be problems). 30

Roles Leader: leads the meeting, keeps with the time schedule, limits debate, rebuttal and, explanations, and encourages or provoces passive. Secretary: will take written notes, especially the problem cases (e.g., inspection form). Project manager: checks that corrections are done. Other participants do not have a role related to organizing the inspection. Instructions for the producer: do not bring an unfinished product to be checked. 31

Check lists These help in the preparing phase. Participants will use these when they get familiar with the review object. Check lists: a set of questions, with which the readers attention can be focused to the desired cases. In the example, part of the list items maybe based on requirements specifications. Other part can be based on standards and used software process (which have been agreed to be followed). 32

More instructions on reviews The following list is from Pressman s book: Review the product, not the producer. Set an agenda and maintain it. Limit debate and rebuttal. Enunciate problem areas but don t attempt to solve every problem noted. Limit the number of participants and insist upon advance preparation. Develop a checklist for each product that is likely to be reviewed. Allocate resources and time schedule for reviews. Conduct meaningful training for all reviewers. Take written notes. Review your early reviews. 33

References Pressman, Software Engineering, A Practitioner s Approach Haikala ja Märijärvi, Ohjelmistotuotanto Hughes and Cotterell, Software Project Management ISO 9000 -standards (e.g. Schmauch, ISO 9000 for Software Developers, or http://www.iso.ch) IEEE -standards (especially IEEE 1028, IEEE Standard for Software Reviews and Audits, http://standards.ieee.org/software/) 34