1 / 34

CSSE 371– Software Requirements Engineering

CSSE 371– Software Requirements Engineering. Steve Chenoweth (Sec 01 & 02) & Chandan Rupakheti (Sec 03 & 04) RHIT. Lecture slides for Week 0, Day 1, V 11.2. Introductions. Name Major An interesting thing you did over the summer. Who’s Steve, anyway?.

Download Presentation

CSSE 371– Software Requirements Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSSE 371– Software Requirements Engineering Steve Chenoweth (Sec 01 & 02) & Chandan Rupakheti (Sec 03 & 04) RHIT Lecture slides for Week 0, Day 1, V 11.2

  2. Introductions • Name • Major • An interesting thing you did over the summer

  3. Who’s Steve, anyway? • Steve Chenoweth – name’s from Cornwall, England • Grew up close by here - Indy • Went to Butler U, majored in math • Did what you’re going to do, for a living • Got an MBA and a PhD in CS,while working • Summer before last –

  4. Last summer – Catapult • This team wrote a math help program. • A “green green field” program – they also decided requirements! • End result solved real geometry problems. • On the way to their OO design, They invented a combination of storyboards and user stories!

  5. Course Overview • Materials on AFS site - http://www.rose-hulman.edu/class/csse/csse371/ • Syllabus • Schedule • PowerPoint “Lectures” • Turn-ins go in Moodle drop boxes • Combined sections 01 and 02 on Moodle • Start with a “CSSE371 Student Entry Survey” – take by Fri 5 PM • Project – big, shared • Guest Speakers – expecting some alums • Attitude for this class –  ? More on each topic…

  6. Do you need to know this stuff? • Here’s the first “Software Engineering” job listed 8/25/2013 on monster.com. It’s with Lockheed Martin, and it’s typical: Basic qualifications for this position will include a BS degree in Computer Science (BSCS), Computer Information Systems, Math, Physics, or related technical field and 9 years of career experience. Expert Java coding knowledge and experience is required. Strong SQL experience is required. The engineer must be able to write effective software code for sustained periods of time. Experience with the software development life cycle: requirements, design, code & unit test, integration and sustainment is required. The successful candidate will have a desire for continuous learning and self-improvement. Proficiency with mastering and applying new skills is required. The ability to work effectively with teammates and leadership is required. Strong collaboration skills are required.

  7. Syllabus - General Themes • How do we interact with clients to obtain requirements? • How do we use the requirements to design the software? • How do we use the requirements to verify client needs? • How do we use the requirements to design the interaction? • How do we plan, monitor and control a project? (Mostly 372) • How do we work together on coordinated teams? • How do we position a product in its domain? • How do we start building prototypes and the system? Project and Discussion versus Lecture

  8. Syllabus - General Info • General info on assignments – See the syllabus! • E.g., The goals for Project Milestones 1 – 5 • Books – 371 – You will need to read these regulary! • Managing Software Requirements: A Use Case Approach, Second Edition, by Dean Leffingwell and Don Widrig • Interaction Design: beyond human-computer interaction, Third Edition, by Jennifer Preece, Yvonne Rogers and Helen Sharp • Office Hours • Check the schedule by my office door – F-220

  9. Schedule - How the class sessions will go each week… • MTR – Class Discussion • Objective is to use class time to try to apply what you read • Will include working with your team • Will include applying new skills to the project • You read ahead of time and turn in or bring to class a daily quiz, filled-out – your choice • Quiz questions can come directly from reading assignments • Notes are in the slides, which also point to quiz questions • We’ll start each day with questions on the reading / quiz • F – Project Client Interactions • Fridays – check the class schedule – a few additional things • 5th hour class meets 10th hour, here, instead!

  10. Course Components • Project • This is the most important part of the learning experience • 5 Milestones (Typically due on Friday) • 50% of the grade • Exams • 20% of the grade • Two “mid-terms” in weeks 4 & 8 (No Finals) • Assignments (Homework) • 9 (Typically Due on Tuesday or Friday) • A few Case Studies (Typically on Friday, Monday) • 20% of the grade • Class Interaction/Pre-class Quizzes/In-Class Activities • 10%

  11. The Project It’s the big deal for this course – Elicit and manage requirements for a real project with a real client! It is a large project with 5 collaborating teams of 4-5 students each. We expect the project to be at least two years long!

  12. Possible life cycle – This is a standard cartoon…

  13. Ok, that was funny – How to avoid that… • We work really hard to communicate with customers. • We try lots of ways to do that. • Like interacting personally • Like observing in addition to asking • Like understanding their culture • Like use cases • Like pictures • Like prototypes • We write down what they said. • And send it to them to verify. • We find similarly good ways to translate it for our own team. • We keep checking back with them.

  14. Junior Project Sequence – The real life cycle for your project We’ll have occasional “advisories” from the CSSE senior projects, too!

  15. Project • Real clients with real needs • Simulate the real world • Each project is intended for real use at Rose • Teams • Each team will have 4-5 students. • Management assigned, but you pick your own roles. • Teams will document so as to assist collaboration with other teams • Project Managers (the TA’s for this course) – some of: • Jeremy Tramm trammjn@rose-hulman.edu Sec 01 Projects • Alexander White whiteaj@rose-hulman.edu Sec 02 Projects • Adam Westerman westeras@rose-hulman.eduSec 01-02 HW & Q • Steven Moyes moyessa@rose-hulman.edu Sec 03-04 • Michael McDonald mcdonamp@rose-hulman.edu Sec 03-04

  16. Project Deliverables

  17. Project Deliverables And – We’ll do Team Member Evaluations twice!

  18. Project Presentation – Week 10 • Client Presentation • An in-class presentation • Final client meeting

  19. Project - Team Activities • Meet with client in person about once a week (Fridays) • Meet with project manager once a week (you arrange) • Meet on teams regularly – multiple times a week • Plan – you are relying on other teams, and they on you • Meet with them as necessary – possibly every week • We’ll also rely on shared repositories • Use your project manager and instructors expertise. • Plan ahead

  20. Project – Suggested Team Roles • Secretary – Writes notes that are available to other teams • Contacts • Project Manager • Instructor • Client • Other teams – see last point here! • Tasks • Assigner • Monitor • Vertical integration of technical work: • A “back end” (database) person on each team • Two “front end” (GUI) people on each team • One or two “application” people on each team • Each sub-team is responsible for coordinating with other teams!

  21. Project Manager (a TA assigned to your team) • Assist the team with process • Supervisory role, like a real PM • Review teams artifacts • Typically a week before I grade them • Evaluate team’s performance • Sends me info on team performance and dynamics • Can recommend that a team member be fired • That’s based on your “team rules” – which you need to agree on! • What’s your team meeting attendance policy? • How do you agree to treat each other? • What if people don’t get things done that they promised?

  22. Project - Weekly Assessment Report • Due weekly to the PM and Primary Instructor • PM – 12 hours before Meeting • Instructor – Friday at the start of class(Hard Copy) • It records • Weekly Status • Tasks to be completed next week • High Level Summary • Who is responsible for them? • Tasks completed last week(same as above) • Key issues and problems(include a mitigation strategy) • Weekly Metrics(hours of work estimated, actual and variance from previous weeks and total to date) • Starting in Week 5, we’ll track “risks” for each team in this report

  23. Project – Document Writing • Professionally written • No slang, chat lingo … • Free of grammatical and spelling errors • Well organized • Thorough and complete • Must be submitted to Project Manager before final submission • Each team member must approve the submission. • Use the learning center I will be happy to review any portion of the document before final submission

  24. Project - Milestone 1 – 5 Document content, in general • Signed Title Page • Table of Contents • Executive Summary • Introduction • Milestone specific content • References • Appendix • Index • Glossary There is a Rubric you can see, for each Milestone Submissions will be a docx or pdf on Moodle

  25. Feedback – Let’s do it in person!Practice being influential… We will also have a mid-term plus/delta, and end-of-term course evals!

  26. Attitude for this class • You already know a lot about CS stuff • Like coding and testing algorithms • The technical half of the battle • Software development is a business that people also love to do as a hobby, like photography. • The business requires a different attitude • It takes a team, working together, to produce something people want • They need your individual strengths and your cooperation – both! • And, you need to develop an awareness of what’s going on around you… • You will be yielding power to others: • Teammates • Your client • Your users Above - “Double Truck” Andreas Feininger, Life magazine’s most famous photographer: “First I did it for myself. Then I did it for my friends. Finally, I did it for the money.”

  27. Attitude – In the software business you’re preparing for • The best technical contributors at Bell Labs have been their effective communicators. • Your clients who pay you will all be from different organizations in curious domains of endeavor: • They don’t think exactly like us; not even like each other. • You’ll need to work hard to overcome your differences and natural biases, so as to really get what they mean. • Your users could be world-wide. Consider any app in the iPhone store. Who’ll click “Buy” next? • All these people will have unique personal values and quirks, to top it off. • Microsoft “hires for technical skill and promotes for social skill.” They’re big on diversity and inclusiveness. • Your teammates and collaborators will be from different cultures and subcultures. Their subtle signs that “the code is now ok” aren’t the same as yours. • How you look or where you’re fromhave nothing to do with how well you can contribute on a software team. • You, the software writer, are a social change agent: • Most such change is abrupt, with unpredictable results. • You will spur new winners and losers. They’ll know that. • Be open – You need to practice trying to anticipate! Right - Here’s your next client now – Bashar Dahabra from the UAE. He needs an app for football reporting and an app for prayer timing. The data has to read right-to-left in Arabic. Lots more comments in the notes!

  28. Attitude – What are your learning preferences?

  29. Attitude – What are my learning preferences?

  30. Attitude – Where I come from • In software requirements elicitation, watching and listening are half the work. • The other half is stimulating things worth listening to. • To cause that, you are better off not being the expected expert, nor even being expected at all! • People don’t expose deeper interests to an expert. • Experts will cut them off with, well, expertise. • People tell familiar folks whatever fits the shared vibes. • Not good info for new system building! • People will talk more openly when taken off guard. • The subconscious bubbles-up while they figure you out. • People will try a different angle on a fresh face. • They will have new ideas in an uncommon setting. • They will have amazing thoughts when amazed. • Strangers could be magic – who knows? • Sometimes even finger puppets do it! My well-known propensity is to appear disparately every day, giving you a new target to adjust to as we interact. It’s perfect practice for your lifetime of world-wide project realizations. What I pick for this always has some studied significance, which I’m happy to explain. Here, the scarab pendant is for Carl Jung’s famous therapy anecdote; he used the astonishing arrival of a beetle to jolt a stuck patient out of her existing frame of reference. Lots more comments in the notes!

  31. Attitude – What kind of career to expect! • At Rose, you get much more of the things Lockheed Martin wants – and most other employers of software engineers! • Rich teamwork experiences • Knowing the whole software lifecycle • Requirements and software design principles – even for CS majors! • Based on my review of all CSSE alums this summer: • 90% of you will have careers “in the business” • Over 1/3 of you will end up in positions of leadership (including titles like “software architect” and “lead designer”) • 14% of you will end up as pure managers • 4% of you will end up as CEO’s or senior managers Wes Winham, 2007 CS grad, who was involved in startups even before he graduated, is PolicyStat’s VP of Product Development. See their company website http://www.policystat.com/policystat-management/. Jack Mayo, a 1992 CS grad, is group program manager for Microsoft's Windows division. He has contributed to every major release of Microsoft's Windows operating system, since Windows 2000 and including IE8. He has led teams ranging in size ranging in size from two to 30 or more people.

  32. Starting Points - Today • “My Colorful Portrait” – Do today, turn-in at end of class or tomorrow when you walk into class • We will give you yours back on Monday of week 10! • What is your class’s project? • Sec 01 – RHIT Registration System • Matt Boutell and David Mutchler, CSSE, clients • Sec 02 – RHIT Course Catalogue Semantic Wiki • Christina Selby, Math, client

  33. Starting Points – Coming up • “CSSE371 Student Entry Survey” – take by Fri 5 PM • It’s on Moodle • Forming teams – • Partly this will be based on skills matching • Team and role may change over the term • Tomorrow – “Meetings, bloody meetings!” • No pre-discussion for this case study • It’s a video we’ll watch in class • Post-discussion – see Notes, below. • Get ready for Monday • Chandan will be in class for me • Read Ch 1 – 4 in the Requirements book! • Do the “daily quiz” before class!

  34. More Questions???

More Related