Front-end Software Quality Framework – Spring 2015

When:
April 7, 2015 @ 8:30 am – 5:00 pm America/New York Timezone
2015-04-07T08:30:00-04:00
2015-04-07T17:00:00-04:00
Where:
Crowne Plaze Hotel
15 Middlesex Canal Park Drive
Woburn, MA 01801
USA
Front-end Software Quality Framework - Spring 2015 @ Crowne Plaze Hotel | Woburn | Massachusetts | United States

This course has been canceled.

 

Speaker: Arie Avnur, AA Software Development

By: March 23

Members: $240
Non-Members: $260

After: March 23

Members: $260
Non-Members: $270
Decision: Wednesday, March 25

Phone 781-245-5405
email sec.boston@ieee.org
Fax 781-245-5406

Make Checks payable to:
IEEE Boston Section
One Centre Street, Suite 203
Wakefield, MA 01880

Course Overview:

This course teaches 3 methods for developing software better – with less defects. These are more sophisticated than the baseline approach. The emphasis is on “correct by design” i.e. developing “more” correctly in the first place. Formal methods are tools to develop error free software, but they are hard and require a lot of effort and time. This course teaches semi-formal methods that are very easy to learn, require way less time and effort to apply, and get extensive benefit by producing much cleaner product–80% of the benefit for 20% of the investment.
Benefits: Producing cleaner code lets the developer finish tasks on time by reducing test-fix cycles, improves job performance and competitiveness. These methods “level the playing field.” We know software development performance is highly individual dependent; with these and similar methods all developers can produce high quality code.
OUTLINE
Introduction and overview – quality software development (1 hour)
o Quality definition,
o Dependability measure – less defects
o Requirements as the tool to understand what the customer expects
o FSM model in requirements, design, implementation and test
o Error conditions – a major quality factor
o Test-fix cycles and their inefficiency
o How can agile development benefit from correct by design methods
Requirements (2 hours)
o Requirement levels: Product and software requirements
o Software requirement templates and content
o Pre/post-conditions
o Agile requirements – scrum user stories
o Functional and quality (non-functional requirements
o Error conditions in requirements
o Requirements validation
o FSM modeling for behavior and workflow requirements
FSM and Event-state analysis (2 hour)
o The FSM model in more details
o Applications of FSM
o Event-state analysis for complete and correct FSM model
o Example
Exception by contract (1 hour)
o Pre and post conditions
o Exceptions from pre-conditions
o Exceptions in requirements, design and implementation
Design workshops (1 hour)
o What can be improved in design review
o Design workshop in details
o Example
o Design workshop with agile methods
Recap and Conclusions (1 hour)
o Recap
o Participants conclusions – what do they want to implement and how
o Course evaluation
Target Audience
Software developers, team leaders and managers
Benefits of attending the course
Personal:
1. Gain engineering skills of software development
2. Develop better
3. Improve self esteem
4. Improve respect of team mates and superiors
Organizational:
5. Produce cleaner, better software
6. Better predictability of projects quality and timelines
7. Better teamwork, team feeling
Speaker Bio: Arie Avnur has been developing software for close to 40 years; coding all along while advancing in responsibilities from individual contributor to team leader, mid-level manager, and executive. Currently, he consults and promotes software quality concepts. Arie earned this experience with all sizes of organizations: Fortune 500 companies to small startups. He had the privilege to be close to some of the early concepts of software engineering like information hiding, working on the system that was the study case for that concept and publication (L. Parnas, 1972), and continue with the field to the latest AOP and Agile concepts.
Material: Lecture slide files downloaded, example and exercise downloads.