Ramm Soft The Key To Your Success Rapid
- Slides: 47
Ramm. Soft The Key To Your Success Rapid Development Part 2 February 20, 2008 Mihail V. Mihaylov (Mike Ramm) CEO, Ramm. Soft www. rammsoft. com
Ramm. Soft What Is Rapid Development? • Speedy development • Shorter schedules • Developing software faster than you do now 2
Who Invented It? Steve Mc. Connell http: //www. stevemcconnell. com/ http: //www. construx. com/ Ramm. Soft http: //blogs. construx. com/blogs/ 3
Ramm. Soft Steve Mc. Connell’s Books • Code Complete (1993) / (2004) • Rapid Development (1996) • Software Project Survival Guide (1997) • After The Gold Rush (1999) / Professional Software Development (2003) • Software Estimation: Demystifying the Black Art (2006) 4
Rapid-Development Strategy • Avoid classic mistakes • Apply development fundamentals • Manage risks to avoid catastrophic setbacks Ramm. Soft • Apply schedule-oriented practices 5
Ramm. Soft The Four Pillars of RD 6
Ramm. Soft Efficient Development 7
Ramm. Soft The Four Pillars of RD 8
Ramm. Soft Efficient Development Risk Management Development Fundamentals Classic Mistakes Avoidance 9
Software-Development Fundamentals Management fundamentals • Technical fundamentals • Quality-assurance fundamentals Ramm. Soft • 10
Ramm. Soft Management Fundamentals Scope Classic Trade-off Triangle Schedule Resources 11
Ramm. Soft Management Fundamentals • Planning • Analyzing the scope • Acquiring resources • Planning the work • Tracking • • Monitoring and directing the resources Measurement 12
Ramm. Soft Planning • Determining the size of the product • Functionality, complexity, etc. • Allocating resources • Estimation and scheduling • Organizing the team • Managing risk • Making strategic decisions 13
Ramm. Soft Tracking • Management-level controls • • Task lists, status meetings, status reports, milestone reviews, budget reports, management by walking around Technical-level controls • Technical audits, technical reviews, quality gates 14
Measurement • • How much? • How often? Comparing with past projects Ramm. Soft • Collecting metrics 15
Software-Development Fundamentals Management fundamentals • Technical fundamentals • Quality-assurance fundamentals Ramm. Soft • 16
Technical Fundamentals Requirements management • Design fundamentals • Construction fundamentals • Configuration management Ramm. Soft • 17
Ramm. Soft Requirements Management • Gathering requirements • Recording them • In a document, email, UI storyboard, prototype, RM software, etc • Tracking the design and code against them • Managing changes 18
Requirements Management The top 3 reasons that projects fail: Lack of user input • Incomplete requirements • Changing requirements Ramm. Soft • 19
Ramm. Soft Requirements Fundamentals • Requirements-analysis methodologies • Structured analysis • Object-oriented analysis • System-modeling practices • Communication practices 20
Ramm. Soft Requirements-Analysis Methodologies • Structured analysis • Functional view (DF diagrams) • Data view (ER diagrams) • Dynamic view (ST diagrams) • Object-oriented analysis • The things in the system (objects), the things outside the system (actors, data), their relationships • Class diagrams, UML 21
System-modeling practices Class diagram Ramm. Soft • 22
System-modeling practices Data-flow diagram Ramm. Soft • 23
System-modeling practices Database diagram Ramm. Soft • 24
System-modeling practices State-flow diagram Ramm. Soft • 25
Communication Practices Joint Application Development (JAD) • UI prototyping • General interview practices • Observation by walking around Ramm. Soft • 26
Technical Fundamentals Requirements management • Design fundamentals • Construction fundamentals • Configuration management Ramm. Soft • 27
Ramm. Soft Architecture and Design Fundamentals • Major design styles • Foundational design concepts • Standard design approaches • Domain-specific design considerations • Use of design tools 28
Ramm. Soft Major Design Styles • Structured design • • Every program can be created with a limited number of structural elements Object-oriented design • OOD elaborates the analysis models to produce implementation specifications • OOA focuses on what the system does, OOD on how the system does it 29
Ramm. Soft Object-oriented Pradigm 30
Ramm. Soft Foundational Design Concepts • Information hiding • Modularity • Abstraction • Encapsulation • Inheritance • Polymorphism • Basic algorithms and data structures • Design patterns 31
Ramm. Soft Standard Design Approaches • Exception handling • Internationalization and localization • Portability • Input / output • Memory management • Floating-point arithmetic • Database design • Reuse 32
Domain-Specific Design Considerations Financial applications • Scientific applications • Embedded systems • Real-time systems Ramm. Soft • 33
Technical Fundamentals Requirements management • Design fundamentals • Construction fundamentals • Configuration management Ramm. Soft • 34
Ramm. Soft Construction Fundamentals (1) • Coding practices • • Variable and function naming, layout, documentation Data-related concepts • • Scope, persistence, binding time Guidelines for using types of data • Enumerated types • Arrays • Pointers 35
Ramm. Soft Construction Fundamentals (2) • Control-related concepts • Conditionals • Unusual structures - goto and return • Recursive procedures • Error-detection practices • • Assertions Rules for packaging code into routines, modules, classes, and files 36
Ramm. Soft Construction Fundamentals (3) • Unit-testing and debugging practices • Integration strategies • Incremental integration, big-bang integration, evolutionary development • Code-tuning strategies and practices • Use of construction tools • IDEs, source-code control, code libraries, code generators 37
Technical Fundamentals Requirements management • Design fundamentals • Construction fundamentals • Configuration management Ramm. Soft • 38
Ramm. Software Configuration Management Practices for managing project artifacts • Evaluating proposed changes • Tracking changes • Handling multiple versions • Keeping copies of project artifacts through time 39
Ramm. Software Configuration Management • Most often used to manage source code • Can be applied to • Requirements • Plans and Designs • Test cases • User documentation • Data 40
Software-Development Fundamentals Management fundamentals • Technical fundamentals • Quality-assurance fundamentals Ramm. Soft • 41
Ramm. Soft QA Fundamentals • Reworking defective requirements, design, and code consumes 40 -50% of the total cost of the development • 1 hour spent on defect prevention reduces repair time 3 to 10 hours • Reworking a requirements problem in operation stage costs 50 to 200 times more than in requirements stage • About 60% of all defects exist at design time 42
Classic Mistakes Reducing the time on design and code reviews • Compressing the test schedule Ramm. Soft • 43
Ramm. Soft Why QA practices are important? • Software quality and software schedules are related • Poor quality is one of the most common reasons for schedule overruns • 95% of defect addressed is the optimal value 44
Ramm. Soft Best Possible Schedule 45
Ramm. Soft QA Practices • Error-prone modules analysis • Testing • Technical reviews • Walkthroughs • Code reading • Inspections • Find 60 -90% of the defects 46
Ramm. Soft Thank You! • Email: mikeramm@rammsoft. com • Official website: • http: //www. rammsoft. com • Professional blogs: • http: //pmstories. com • http: //spriipomisli. blogspot. com 47
- Ramm
- Ramm contractor
- Your child's success or lack of success
- Your child's success or lack of success
- Communication skills for workplace success
- Key partners adalah
- Key partners key activities key resources
- Give us your hungry your tired your poor
- Burger industry analysis
- Faktor yang mempengaruhi implementasi strategi
- Teamwork is the key to success
- The key to success grit
- Key success factors of nestlé
- What factors affect region/community location decisions
- The key to oneida's financial success was
- Interchange key to success
- Chapter 1 preparing your path to success
- 6 key soft skill binus
- Hình ảnh bộ gõ cơ thể búng tay
- Ng-html
- Bổ thể
- Tỉ lệ cơ thể trẻ em
- Voi kéo gỗ như thế nào
- Chụp phim tư thế worms-breton
- Chúa sống lại
- Môn thể thao bắt đầu bằng chữ f
- Thế nào là hệ số cao nhất
- Các châu lục và đại dương trên thế giới
- Công thức tiính động năng
- Trời xanh đây là của chúng ta thể thơ
- Mật thư tọa độ 5x5
- Phép trừ bù
- độ dài liên kết
- Các châu lục và đại dương trên thế giới
- Thể thơ truyền thống
- Quá trình desamine hóa có thể tạo ra
- Một số thể thơ truyền thống
- Cái miệng bé xinh thế chỉ nói điều hay thôi
- Vẽ hình chiếu vuông góc của vật thể sau
- Thế nào là sự mỏi cơ
- đặc điểm cơ thể của người tối cổ
- V cc cc
- Vẽ hình chiếu đứng bằng cạnh của vật thể
- Fecboak
- Thẻ vin
- đại từ thay thế
- điện thế nghỉ
- Tư thế ngồi viết